JPEG

Dans le calculant , JPEG (JAY-cheville prononcée de ; ˈdʒeɪpɛg ) est une méthode utilisée généralement de compression pour des images photographiques. Le JPEG de nom représente le groupe d'experts photographique de joint , le nom du comité qui a créé la norme. Le groupe a été organisé dans le 1986 , publiant une norme dans le 1992 , qui a été approuvé dans le 1994 comme OIN 10918-1. Le JPEG est distinct de MPEG (groupe d'experts d'image mobile ), qui produit des arrangements de compression pour la vidéo.

La norme de JPEG spécifie le codec , qui définit comment une image est comprimée dans un jet des bytes et décomprimé de nouveau dans une image, et le format de fichier employé pour contenir ce jet. La méthode de compression est habituellement la compression de lossy , signifiant qu'une certaine qualité visuelle est perdue dans le processus, bien qu'il y ait les variations sur le JPEG standard de ligne de base qui sont sans perte. Il y a également un " de entrelacé par ; " progressif de JPEG ; composer, dans lequel des données sont comprimées dans les passages multiples d'un détail progressivement plus élevé. C'est idéal pour les grandes images qui seront montrées tandis que téléchargement au-dessus d'un raccordement lent, permettant une prévision raisonnable après réception seulement d'une partie des données. Cependant, JPEGs progressif ne sont pas comme largement soutenu.

Le format de fichier est connu en tant que « format d'échange de JPEG », comme spécifique en annexe B de la norme. Ceci est souvent confondu avec le format , une version minimale d'échange (JFIF) de '' dossier '' de JPEG de du format d'échange de JPEG qui a été délibérément simplifié de sorte que c'ait pu être largement mis en application et devenu ainsi la norme de fait.

La raison de cette version simplifiée était que le format d'échange de JPEG souffre de trois points faibles qui l'empêchent d'être facilement compréhensibles et mis en application :
Définition d'espace chromatique
Définition composante d'enregistrement de sous-prélèvement
Définition d'allongement de Pixel En plus de JFIF, d'autres normes ont évolué pour adresser ces points faibles, y compris « le format de fichier échangeable  » (Exif) d'image de et la couleur de du ICC profile .

Des dossiers d'image qui utilisent la compression de JPEG s'appellent généralement le " ; Files" de JPEG ;. La plupart des logiciels d'édition d'image qui écrivent à un " ; File" de JPEG ; créent réellement un dossier dans le format du JFIF .

La prolongation de dossier la plus commune pour ce format est .jif sont également employés. Il est également possible que des données de JPEG soient enfoncées dans d'autres types de dossier, tels que des images de format de tiff .

JPEG/JFIF est le format plus utilisé pour stocker et transmettre des photographies sur le World Wide Web . Pour cette application, JPEG/JFIF est loin supérieur à GIF , qui utilise une palette avec une limite maximum de 256 couleurs distinctes (la plupart des photographies de couleur contiennent beaucoup de milliers de couleurs distinctes). JPEG/JFIF est également preferred à png , qui produit des dossiers d'image beaucoup plus grands pour ce type d'image dû à sa compression sans perte.

L'algorithme de compression de JPEG est le pas comme bien adapté pour des dessins au trait et d'autres graphiques textuels ou iconiques, et ainsi les formats de png et de GIF sont preferred pour ces types d'images.

Le type de supports de MIME pour le JPEG est l'image de /JPEG (définie dans RFC 1341).

Codec de JPEG

Bien qu'un dossier de JPEG puisse être codé dans diverses manières, le plus généralement il est fait avec le codage de JFIF. Le procédé de codage se compose de plusieurs étapes : La représentation des couleurs dans l'image est convertie du RVB en YCbCr , se composant d'un composant de luma (y), représentant l'éclat, et deux composants de chroma, représentant la couleur. Cette étape est parfois sautée.
  • La résolution des données de chroma est réduite, habituellement par un facteur 2. Ceci reflète le fait que l'oeil est moins sensible aux détails fins de couleur qu'aux détails fins d'éclat.
  • L'image est coupée en blocs de 8× ; 8 Pixel, et pour chaque bloc, chacune des données de Y, de Cb, et de Cr subit un le cosinus que discret transforment (DCT). Un DCT est semblable à une transformée de Fourier dans le sens qu'il produit un genre de spectre de fréquence spatiale.
  • Les amplitudes des composants de fréquence sont quantifiés par . La vision humaine est beaucoup plus sensible à de petites variations de couleur ou d'éclat au-dessus des vastes zones que la force des variations à haute fréquence d'un éclat. Par conséquent, l'importance des composants à haute fréquence sont stockées avec une exactitude inférieure que les composants de basse fréquence. L'arrangement de qualité des affects d'encodeur (par exemple 50% ou 95%) dans quelle mesure la résolution de chaque composant de fréquence est réduite. Si un arrangement de qualité excessivement devaient être employés, les composants à haute fréquence seraient jetés tout à fait.
  • Les données en résultant pour tout le 8× ; 8 blocs est encore comprimés avec un algorithme sans perte, une variante du codage de Huffman de . Les inverses de processus de décodage ces étapes. Dans le reste de cette section, le codage et les processus de décodage sont décrits en plus détail.

    Codage

    Plusieurs des options dans la norme de JPEG ne sont pas utilisées généralement, et comme mentionné ci-dessus, la plupart des utilisations de logiciel d'image le format plus simple de JFIF en créant un dossier de JPEG, qui spécifie notamment la méthode de codage. Voici une courte description d'une des méthodes plus communes de codage une fois appliquée à une entrée qui a 24 bits de par Pixel (huit de chacun de rouge, vert, et bleu de ). Cette option particulière est une méthode de la compression de données de lossy .

    Transformation d'espace chromatique

    D'abord, l'image devrait être convertie du RVB en espace chromatique différent appelé le YCbCr . Elle a trois composants Y, Cb et Cr : le composant de Y représente l'éclat d'un Pixel, les composants de Cb et de Cr représentent le Chrominance (couper en composants bleus et rouges). C'est le même espace chromatique qu'employé par la télévision en couleur numérique aussi bien que la vidéo numérique comprenant le DVDs visuel , et est semblable à la manière que la couleur est représentée dans la vidéo et le MAC analogues du pal mais pas par le analogue NTSC , qui emploie l'espace chromatique semblable du YIQ . La conversion d'espace chromatique de YCbCr permet une plus grande compression sans effet significatif sur la qualité perceptuelle d'image (ou la plus grande qualité perceptuelle d'image pour la même compression). La compression est plus efficace comme information d'éclat, qui est plus importante pour la qualité perceptuelle certaine de l'image, est confinée à un canal simple, représentant plus étroitement le système visuel humain.

    Cette conversion en YCbCr est spécifiée dans la norme de JFIF, et devrait être exécutée pour que le dossier en résultant de JPEG ait la compatibilité maximum. Cependant, quelques réalisations de JPEG dans le " ; le " le plus de haute qualité ; le mode n'appliquent pas cette étape et ne maintiennent pas à la place l'information de couleur dans le modèle de couleur du RVB , où l'image est stockée dans des canaux séparés pour la luminance de rouge, verte et bleue. Ceci a comme conséquence moins de compression efficace, et ne serait pas probablement employé si la taille de fichier de fichier étaient une issue.

    Downsampling

    En raison des densités des récepteurs de couleur et éclat-sensibles dans l'oeil humain, humains peut voir un détail considérablement plus fin dans l'éclat d'une image (le composant de Y) que dans la couleur d'une image (les composants de Cb et de Cr). Using cette connaissance, des encodeurs peuvent être conçus pour comprimer des images plus efficacement.

    La transformation dans le modèle de couleur de YCbCr permet la prochaine étape, qui est de réduire la résolution spatiale des composants de Cb et de Cr (appelés le " ; Downsampling " ou " ; " du sous-prélèvement de chroma de ;). Les rapports auxquels downsampling peut être fait sur le JPEG sont 4:4 de : 4 (aucun downsampling), 4:2 de : 2 (réduire par le facteur de 2 dans la direction horizontale), et le plus généralement 4:2 de : 0 (réduire par le facteur de 2 dans des directions horizontales et verticales). Pour le reste du processus de compression, Y, Cb et Cr sont traités séparément et d'une façon très semblable. Downsampling les composants de chroma sauve 33% ou 50% de l'espace pris par l'image sans affecter rigoureusement la qualité perceptuelle d'image.

    Division de bloc

    Après le sous-prélèvement , chaque canal doit être coupé en blocs 8×8 (de Pixel). Si les données pour un canal ne représentent pas un nombre de nombre entier de blocs puis l'encodeur doit remplir secteur restant des blocs inachevés d'une certaine forme de données factices :
    remplir Pixel de bord de couleur fixe (typiquement noir) crée les objets façonnés foncés le long de la partie évidente de la frontière
    la répétition des Pixel de bord est une technique commune mais non-optimale qui évite la frontière évidente, mais elle crée toujours des objets façonnés avec la colorimétrie des cellules remplies
    une meilleure stratégie est de remplir Pixel using les couleurs qui préservent les coefficients de DCT des Pixel évidents, au moins pour les de basse fréquence (par exemple remplir de couleur moyenne de la partie évidente préservera le premier coefficient de C.C, mais le meilleur ajustage de précision les deux prochains coefficients à C. produira des résultats bien meilleurs avec les bords moins évidents des cellules 8×8 le long de la frontière).
  • Le cosinus discret transforment

    Après, chaque composant (Y, Cb, Cr) de chaque bloc 8×8 est converti en représentation du domaine fréquentiel , using un type-II normal et bidimensionnel le cosinus que discret transforment (DCT).

    Comme exemple, si un tel subimage 8×8 à 8 bits est :

    \ commencer {le bmatrix} 52 et 55 et 61 et 66 et 70 et 61 et 64 et 73 \ \ 63 et 59 et 55 et 90 et 109 et 85 et 69 et 72 \ \ 62 et 59 et 68 et 113 et 144 et 104 et 66 et 73 \ \ 63 et 58 et 71 et 122 et 154 et 106 et 70 et 69 \ \ 67 et 61 et 68 et 104 et 126 et 88 et 68 et 70 \ \ 79 et 65 et 60 et 70 et 77 et 68 et 58 et 75 \ \ 85 et 71 et 64 et 59 et 55 et 61 et 65 et 83 \ \ 87 et 79 et 69 et 68 et 65 et 76 et 78 et 94 \ extrémité {bmatrix}

    La prochaine étape est de transformer le subimage d'une gamme positive à une concentrée sur zéro. Pour une image à 8 bits chaque Pixel a 256 valeurs possibles : 255. Pour concentrer sur zéro il est nécessaire de soustraire par moitié du nombre de valeurs possibles, ou 128. = de \ frac de

    2} {2^ {mordu}} {\ frac {2^8} {2} = 2^7 = 128

    La soustraction de 128 de chaque valeur de Pixel rapporte des valeurs de Pixel sur le 127

    \ commencer {rangée} {c} X \ \ \ \ de longrightarrow \ \ commencer {le bmatrix} -76 et -73 et -67 et -62 et -58 et -67 et -64 et -55 \ \ -65 et -69 et -73 et -38 et -19 et -43 et -59 et -56 \ \ -66 et -69 et -60 et -15 &16 et -24 et -62 et -55 \ \ -65 et -70 et -57 et -6 et 26 et -22 et -58 et -59 \ \ -61 et -67 et -60 et -24 et -2 et -40 et -60 et -58 \ \ -49 et -63 et -68 et -58 et -51 et -60 et -70 et -53 \ \ -43 et -57 et -64 et -69 et -73 et -67 et -63 et -45 \ \ -41 et -49 et -59 et -60 et -63 et -52 et -50 et -34 \ extrémité {bmatrix} \ extrémité {rangée} \ Orge à quatre rangs \ downarrow y

    La prochaine étape est de prendre le DCT bidimensionnel, qui est donné par :

    de \ G_ {u, v} = \ alpha (u) \ alpha (v) \ sum_ {x=0} ^7 \ sum_ {y=0} ^7 g_ {x, y} \ cos \ (x+ \ frac {1} {2} \ droit) u \ droit laissés \ laissés \ cos \ (y+ \ frac {1} {2} \ droit) v \ droit laissés \ laissés

    là où
    le \ u est la fréquence spatiale horizontal, pour le de nombres entiers \ 0 \ leq u < 8.
    le \ v est la fréquence spatiale verticale, pour le de nombres entiers \ 0 \ leq v < 8.
    \ alpha_p (n) = \ commencer {les cas} \ racine carrée {\ frac {1} {8}}, et \ \ de mbox {si} n=0 \ \ racine carrée {\ frac {2} {8}}, et \ mbox {autrement} \ extrémité {cas} est un

  • de normalisation de
      de fonction le \ g_ {x, y} est la valeur de Pixel au de coordonnées \ (x, y)
      Le \ G_ {u, v} est le coefficient de DCT au de coordonnées \ (u, v)

    Si nous ci-dessus, et puis exécutons cette transformation sur notre matrice en rond au nombre entier le plus proche, nous obtenons

    \ commencer {rangée} {c} \ d'u \ \ \ de longrightarrow \ \ commencer {le bmatrix} -415 et -30 et -61 et 27 et 56 et -20 et -2 et 0 \ \ 4 et -22 et -61 et 10 et 13 et -7 et -9 et 5 \ \ -47 et 7 et 77 et -25 et -29 et 10 et 5 et -6 \ \ -49 et 12 et 34 et -15 et -10 et 6 et 2 et 2 \ \ 12 et -7 et -13 et -4 et -2 et 2 et -3 et 3 \ \ -8 et 3 et 2 et -6 et -2 et 1 et 4 et 2 \ \ -1 et 0 et 0 et -2 et -1 et -3 et 4 et -1 \ \ 0 et 0 et -1 et -4 et -1 et 0 et 1 et 2 \ extrémité {bmatrix} \ extrémité {rangée} \ Orge à quatre rangs \ downarrow v

    Noter la valeur plutôt grande du coin dessus-gauche. C'est le coefficient de C. Les 63 coefficients demeurants s'appellent les coefficients à C. Le DCT augmente temporairement la peu-profondeur de l'image, puisque les coefficients de DCT d'image à 8 bits/composante prennent à 11 ou 12 bits (selon la fidélité du calcul de DCT) pour stocker. Ceci peut forcer le codec pour employer temporairement les casiers de 16 bits pour tenir ces coefficients doublant la taille formelle de la représentation d'image en ce moment. L'avantage du DCT est sa tendance d'agréger la majeure partie du signal dans un coin du résultat, comme peut être vu ci-dessus. L'étape de quantification à suivre accentue cet effet tout en simultanément ramenant la taille des coefficients de DCT à 8 bits ou à moins, ayant pour résultat un signal avec une grande région de remorquage contenant des zéros que l'étape d'entropie peut simplement jeter. L'augmentation provisoire de la taille n'est pas à ce stade un souci d'exécution pour la plupart des réalisations de JPEG, parce qu'en général seulement une partie très petite de l'image est stockée sous la pleine forme de DCT à un moment donné pendant le codage ou processus de décodage.

    Quantification

    L'oeil humain est bon pour voir de petites différences dans l'éclat au-dessus relativement des vastes zones, mais pas aussi bon pour distinguer la force exacte d'une variation à haute fréquence d'éclat. Ce fait permet à on de partir avec réduire considérablement la quantité de l'information dans les composants à haute fréquence. Ceci est fait en divisant simplement chaque composant dans le domaine de fréquence par une constante pour ce composant, et en arrondissant alors au nombre entier le plus proche. C'est l'opération principale de lossy dans le processus entier. En raison de ceci, c'est typiquement la caisse que plusieurs des composants plus élevés de fréquence sont arrondi à zéro, et beaucoup du repos deviennent de petits nombres positifs ou négatifs, qui prennent à beaucoup peu de peu au magasin.

    Une matrice commune de quantification de est :

    \ commencer {le bmatrix} 16 et 11 et 10 &16 et 24 et 40 et 51 et 61 \ \ 12 et 12 et 14 et 19 et 26 et 58 et 60 et 55 \ \ 14 et 13 &16 et 24 et 40 et 57 et 69 et 56 \ \ 14 et 17 et 22 et 29 et 51 et 87 et 80 et 62 \ \ 18 et 22 et 37 et 56 et 68 et 109 et 103 et 77 \ \ 24 et 35 et 55 et 64 et 81 et 104 et 113 et 92 \ \ 49 et 64 et 78 et 87 et 103 et 121 et 120 et 101 \ \ 72 et 92 et 95 et 98 et 112 et 100 et 103 et 99 \ extrémité {bmatrix}

    Les coefficients à quantification de DCT sont calculés avec

    B_ {j, k} = \ mathrm {rond)} \ laissé (\ frac {A_ {j, k}} {Q_ {j, k}} \ droit \ mbox {pour} j=0,1,2, \ cdots, N_1-1 ; k=0,1,2, \ cdots, N_2-1

    là où A est les coefficients unquantized de DCT ; Q est la matrice de quantification ci-dessus ; et B est les coefficients à quantification de DCT. (Note que ce n'est dans le aucune multiplication de Matrix de de la manière .)

    Using cette matrice de quantification avec la matrice de coefficient de DCT des résultats ci-dessus dans :

    \ commencer {le bmatrix} -26 et -3 et -6 et 2 et 2 et -1 et 0 et 0 \ \ 0 et -2 et -4 et 1 et 1 et 0 et 0 et 0 \ \ -3 et 1 et 5 et -1 et -1 et 0 et 0 et 0 \ \ -4 et 1 et 2 et -1 et 0 et 0 et 0 et 0 \ \ 1 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ extrémité {bmatrix}

    Par exemple, using −415 (le coefficient de C.C) et l'arrondissage au nombre entier le plus proche

    \ mathrm {rond} \ est parti ( \ frac {- 415} {16} \)

    droit

    \ mathrm {rond} \ est parti ( -25.9375 \)

    droit

    -26

    Codage d'entropie

    voient également :

    du codage d'entropie de Le codage d'entropie est un formulaire spécial de la compression de données sans perte . Il implique d'arranger les composants d'image dans un " ; zigzag" ; commander utiliser l'algorithme du codage (RLE) de Courir-longueur de qui groupe les fréquences semblables ensemble, en insérant des zéros de codage de longueur, et puis using le codage de Huffman de sur ce qui est laissé.

    La norme de JPEG laisse également, mais n'exige pas, l'utilisation du codage arithmétique , qui est mathématiquement supérieur au codage de Huffman. Cependant, ce dispositif est rarement employé pendant qu'il est couvert par les brevets et parce qu'il est beaucoup plus lent pour coder et décoder comparé au codage de Huffman. Le codage arithmétique rend typiquement des dossiers environ 5% plus petits.

    L'ordre de zigzag pour les coefficients ci-dessus quantifiés sont montrés ci-dessous. (Le format montré est juste pour la facilité de l'arrangement/du visionnement.)

    Taux et objets façonnés de compression

    Le taux de compression en résultant peut être varié selon les besoins en étant plus ou moins agressif dans les diviseurs utilisés dans la phase de quantification. Dix à une compressions ont habituellement comme conséquence une image qui ne peut pas être distinguée par l'oeil de l'original. 100 à une compressions sont habituellement possibles, mais regarderont distinctement artifacted par comparé à l'original. Le niveau approprié de la compression dépend de l'utilisation à laquelle l'image sera mise.

    Ceux qui emploient le World Wide Web peuvent être au courant des irrégularités connues sous le nom d'objets façonnés de compression de qui apparaissent dans des images de JPEG. Ce sont dus à l'étape de quantification de l'algorithme de JPEG. Ils sont particulièrement apparents autour des yeux dans les images des visages. Ils peuvent être réduits en choisissant un niveau plus bas de la compression ; ils peuvent être éliminés en sauvant une image using un format de fichier sans perte du , cependant pour des images photographiques que ceci aura habituellement comme conséquence une plus grande taille de fichier de fichier. Les objets façonnés de compression rendent JPEGs de basse qualité inacceptable pour stocker le Heightmaps les images créées avec des programmes de technique de tracé de rayons pour avoir des formes blocky apparentes sur le terrain.

    Quelques programmes permettent à l'utilisateur de varier la quantité par laquelle les différents blocs sont comprimés. Une compression plus forte est appliquée aux secteurs de l'image qui montrent peu d'objets façonnés. De cette façon il est possible de réduire manuellement la taille de fichier de fichier de JPEG avec moins de perte de qualité.

    Depuis les résultats toujours d'étape de quantification du dans une perte d'information, la norme de JPEG est toujours un codec de compression de lossy. (L'information est perdue dans la quantification et l'arrondissage des nombres à point mobile.) Même si la matrice de quantification est un Matrix de ceux , l'information sera encore perdue dans l'étape de arrondissage.

    Décodage

    Le décodage pour montrer l'image se compose faire tout le ce qui précède à l'envers.

    Prenant la matrice de coefficient de DCT (après avoir ajouté la différence du coefficient de C.C en arrière dedans)

    \ commencer {le bmatrix} -26 et -3 et -6 et 2 et 2 et -1 et 0 et 0 \ \ 0 et -2 et -4 et 1 et 1 et 0 et 0 et 0 \ \ -3 et 1 et 5 et -1 et -1 et 0 et 0 et 0 \ \ -4 et 1 et 2 et -1 et 0 et 0 et 0 et 0 \ \ 1 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ extrémité {bmatrix}

    et prenant le produit d'entrée-pour-entrée de avec la matrice de quantification des résultats ci-dessus dedans

    \ commencer {le bmatrix} -416 et -33 et -60 et 32 et 48 et -40 et 0 et 0 \ \ 0 et -24 et -56 et 19 et 26 et 0 et 0 et 0 \ \ -42 et 13 et 80 et -24 et -40 et 0 et 0 et 0 \ \ -56 et 17 et 44 et -29 et 0 et 0 et 0 et 0 \ \ 18 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ \ 0 et 0 et 0 et 0 et 0 et 0 et 0 et 0 \ extrémité {bmatrix}

    ce qui ressemble étroitement à la matrice originale de coefficient de DCT pour la partie dessus-gauche. La prise du DCT inverse (type-III DCT) a comme conséquence une image avec des valeurs (décalées toujours vers le bas par 128)



    \ commencer {le bmatrix} -68 et -65 et -73 et -70 et -58 et -67 et -70 et -48 \ \ -70 et -72 et -72 et -45 et -20 et -40 et -65 et -57 \ \ -68 et -76 et -66 et -15 et 22 et -12 et -58 et -61 \ \ -62 et -72 et -60 et -6 et 28 et -12 et -59 et -56 \ \ -59 et -66 et -63 et -28 et -8 et -42 et -69 et -52 \ \ -60 et -60 et -67 et -60 et -50 et -68 et -75 et -50 \ \ -54 et -46 et -61 et -74 et -65 et -64 et -63 et -45 \ \ -45 et -32 et -51 et -72 et -58 et -45 et -45 et -39 \ extrémité {bmatrix}

    et additionnant 128 à chaque entrée

    \ commencer {le bmatrix} 60 et 63 et 55 et 58 et 70 et 61 et 58 et 80 \ \ 58 et 56 et 56 et 83 et 108 et 88 et 63 et 71 \ \ 60 et 52 et 62 et 113 et 150 et 116 et 70 et 67 \ \ 66 et 56 et 68 et 122 et 156 et 116 et 69 et 72 \ \ 69 et 62 et 65 et 100 et 120 et 86 et 59 et 76 \ \ 68 et 68 et 61 et 68 et 78 et 60 et 53 et 78 \ \ 74 et 82 et 67 et 54 et 63 et 64 et 65 et 83 \ \ 83 et 96 et 77 et 56 et 70 et 83 et 83 et 89 \ extrémité {bmatrix}

    C'est le subimage non comprimé et peut être comparé au subimage original (voir également les images vers la droite) en prenant les résultats de différence (− original non comprimé) en valeurs d'erreur

    \ commencer {le bmatrix} -8 et -8 et 6 et 8 et 0 et 0 et 6 et -7 \ \ 5 et 3 et -1 et 7 et 1 et -3 et 6 et 1 \ \ 2 et 7 et 6 et 0 et -6 et -12 et -4 et 6 \ \ -3 et 2 et 3 et 0 et -2 et -10 et 1 et -3 \ \ -2 et -1 et 3 et 4 et 6 et 2 et 9 et -6 \ \ 11 et -3 et -1 et 2 et -1 et 8 et 5 et -3 \ \ 11 et -11 et -3 et 5 et -8 et -3 et 0 et 0 \ \ 4 et -17 et -8 et 12 et -5 et -7 et -5 et 5 \ extrémité {bmatrix}

    avec moyen absolu erreur de environ 5 valeur par Pixel (c., \ frac {1} {64} \ sum_ {x=1} ^8 \ sum_ {y=1} ^8 |e (x, y)| = 4.

    L'erreur est la plus apparente dans le coin fond-gauche où le Pixel fond-gauche devient plus foncé que le Pixel vers sa droite immédiate.

    Précision Required

    Le codage de JPEG ne fixe pas la précision requise pour pour produire l'image comprimée. Au contraire, la norme de JPEG (aussi bien que les normes dérivées de MPEG) ont des conditions très strictes de précision pour le décodage, y compris toutes les parties du DCT de processus de décodage (décodage de longueur variable, inverse, dequantization, renormalisation des sorties) ; le rendement de l'algorithme de référence ne doit pas dépasser :
    un bit du maximum 1 de différence pour chaque composant de Pixel
    basse erreur de moyenne carrée au-dessus de chaque bloc 8×8-pixel
    très bas erreur moyenne au-dessus de chaque bloc 8×8-pixel
    erreur de moyenne carrée très basse au-dessus de l'image entière
    extrêmement - basse erreur moyenne au-dessus de l'image entière
  • Ces affirmations sont examinées sur un grand ensemble d'images randomisées d'entrée, pour traiter les pires cas. Regarder la norme d'IEEE 1880-1990 pour la référence. Ceci a une conséquence sur l'exécution des décodeurs, et il est extrêmement critique parce que quelques procédés de codage (notamment utilisés pour des ordres de codage des images comme le MPEG) doivent pouvoir construire, du côté d'encodeur, une image décodée par référence. Afin de soutenir la précision à 8 bits par rendement composant de Pixel, le dequantization et le DCT inverse transforme sont typiquement mis en application avec au moins la précision de 14 bits dans des décodeurs optimisés.

    Édition sans perte

    Un certain nombre de changements peuvent être effectués à une image de JPEG sans n'importe quelle perte de qualité. Des blocs peuvent être tournés dans des incréments de 90 degrés, être renversés dans les haches verticales et diagonales horizontales et déplacer environ l'image. Non tous les blocs de l'image originale doivent être employés dans modifiée.

    Le dessus et à gauche d'une image de JPEG doit se trouver sur une frontière de bloc, mais le fond et le droit n'ont pas besoin de faire ainsi. Ceci limite les opérations sans perte possibles de récolte, et également ce qui renverse et tourne peut être exécuté sur une image dont les bords ne se trouvent pas sur une frontière de bloc pour tous les canaux.

    Il est également possible de transformer entre la ligne de base et les formats progressifs sans n'importe quelle perte de qualité, puisque la seule différence est l'ordre dans lequel les coefficients sont placés dans le dossier.

    En outre, si un JPEG est décomprimé, édité, et puis recompressed using les mêmes tables de sous-prélèvement et de quantification de chroma, puis des secteurs non édités de l'image devrait avoir la perte minimale de qualité.

    Quand l'utilisation de l'emblavage sans perte, si le fond ou le côté droit de la région de récolte n'est pas sur une frontière de bloc puis le reste des données des blocs partiellement utilisés sera présente dans le dossier cultivé et peut toujours être récupérée relativement facilement par n'importe qui avec un rédacteur hex et un arrangement du format.

    Syntaxe et structure

    Une image de JPEG contient un ordre des marqueurs de , qui commence par un byte 0xFF suivi d'un témoin de byte ce qui est un peu le marqueur il. Quelques marqueurs se composent juste de ces deux bytes ; d'autres sont suivis de deux bytes indiquant la longueur des données marqueur-spécifiques de charge utile qui suivent. (La longueur inclut les deux bytes pour la longueur, mais pas les deux bytes pour le marqueur.) Quelques marqueurs sont suivis des données entropie-codées ; la longueur d'un tel marqueur n'inclut pas les données entropie-codées.

    Dans les données entropie-codées, après n'importe quel byte 0xFF, un byte 0x00 est inséré par l'encodeur avant le prochain byte, de sorte qu'il ne semble pas y a un marqueur où aucun n'est prévu. Les décodeurs doivent sauter ce byte 0x00. Cette technique, appelée byte de bourrant , est seulement appliquée aux données entropie-codées, pas aux données de charge utile de marqueur.

    Profil de couleur

    Beaucoup de dossiers de JPEG incluent un profil de la couleur ICC (espace chromatique ). Les profils utilisés généralement de couleur incluent le sRGB et le Adobe RVB . Puisque ces espaces chromatiques emploient une transformation non linéaire, la dynamique d'un dossier à 8 bits de JPEG est environ 11 arrêts .

    Utilisation

    Le JPEG est à son meilleur sur des photographies et des peintures des scènes réalistes avec des variations sans heurt de tonalité et de couleur. Dans ce cas-ci il exécute habituellement des méthodes bien mieux que purement sans perte tout en donnant toujours une image belle. En fait, il produira habituellement des résultats bien meilleurs pour des images telles que, par exemple, le GIF, qui peut être couleurs sans perte tant que l'image contient 256 ou peu d'uniques mais exige la quantification grave pour des images polychromes.

    Quelques opérations sur des images de JPEG, telles que la rotation par des multiples de 90°, peuvent être effectuées losslessly tant que la taille d'image est un multiple 1 bloc de MCU unité codée minimum ) (habituellement 16 Pixel (de dans les deux directions, pour le 4:2 : 0). Un programme qui peut faire ceci est l'utilité de Jpegtran , qui vient avec l'exécution de référence.

    Photographies

    Les objets façonnés de compression de JPEG se mélangent bien dans des photographies avec des textures non-uniformes détaillées, permettant des taux de compression plus élevés. Notification comment un taux de compression plus élevé affecte d'abord les textures à haute fréquence dans le coin upper-left de l'image, et comment les lignes contrasting deviennent plus brouillées. Le taux de compression très élevé affecte sévèrement la qualité de l'image, bien que les couleurs et la forme globales d'image soient encore reconnaissables. Cependant, la précision de couleurs souffrent moins (pour un oeil humain) que la précision des découpes (basées sur la luminance). Ceci justifie le fait que des images devraient être d'abord transformées dans un modèle de couleur séparant la luminance de l'information chromatique, avant que sous-prélèvement les avions chromatiques (qui peuvent également employer la quantification de qualité inférieure) afin de préserver la précision de l'avion de luminance avec plus de peu de l'information.

    Pour information, les 24 images à mémoire d'image non comprimée du bit RVB ci-dessous (73.242 Pixel) exigeraient 219.726 bytes (à l'exclusion de tous autres en-têtes de l'information). Filesizes indiqué ci-dessous incluent les en-têtes internes de l'information de JPEG et quelques méta-données. Pour les pleines images de qualité (Q=100), environ 8.25 bits par Pixel de couleur est exigés. Sur des images grayscaled, 6.5 bits au minimum par Pixel est assez (une information comparable de couleur de la qualité Q=100 exige le peu plus codé environ de 25%). La pleine image de qualité ci-dessous (Q=100) est codée à 9 bits par Pixel de couleur, les utilisations de qualité moyenne de l'image (Q=25) 1 bit par Pixel de couleur. Pour la plupart des applications, le facteur de qualité ne devrait pas aller en-dessous de 0.75 bit par Pixel (Q=12.5), comme démontré par l'image de qualité. L'image à la qualité emploie seulement 0.13 bit par Pixel, et montre la couleur très pauvre, il pourrait seulement être utilisable après sous-prélèvement à une taille beaucoup inférieure d'affichage.


    Formation image médicale : Mode du bit de JPEG 12

    Il y a beaucoup de systèmes de formation image médicale qui créent et traitent 12 images de JPEG de bit. Le format de JPEG de 12 bits a fait partie des spécifications de JPEG pendant quelque temps, mais très peu de programmes du consommateur (navigateurs y compris de Web) soutiennent ce format rarement utilisé de JPEG.

    Issues de brevet potentielles

    Dans des réseaux de Forgent de du 2002 a affirmé qu'il a possédé et imposerait des juste du brevet sur la technologie de JPEG, résultant d'un brevet qui avait été introduit le 27 octobre , le 1986 , et accordé le 6 octobre , le 1987 (). L'annonce a créé une passion réminiscente le tentatives d'Unisys de des 'd'affirmer ses droites au-dessus de la norme de compression d'image de GIF.

    Le comité de JPEG a étudié les réclamations de brevet en 2002 et était de l'opinion qu'elles ont été infirmées par l'art antérieur . D'autres ont également conclu que Forgent n'a pas eu un brevet qui a couvert le JPEG. Néanmoins, entre le 2002 et le 2004 Forgent pouvait obtenir au sujet d'US$105 million en autorisant leur brevet à environ 30 compagnies. En avril 2004, Forgent a poursuivi 31 autres compagnies pour imposer d'autres paiements de permis. En juillet de la même année, un consortium de 21 grands sociétés informatiques a classé un countersuit, avec le but d'infirmer le brevet. Contrairement à d'autres sociétés informatiques importantes telles que Sony et Philips, Microsoft a lancé un procès important contre Forgent. En février 2006, le Etats-Unis brevettent et le bureau de marque déposée accepté pour réexaminer le brevet du JPEG de Forgent sur demande de la base publique de brevet de . Le le 26 mai , le 2006 l'USPTO a trouvé l'inadmissible de brevet basé sur l'art. L'USPTO a également constaté que Forgent a su l'art antérieur , et n'a pas indiqué l'office des brevets, adressant n'importe quel appel pour rétablir le brevet fortement peu susceptible de réussir.

    Forgent possède également un brevet semblable accordé par l'Office européen des brevets en 1994, bien qu'il soit peu clair comme il exécutoire est.

    En date le du 27 octobre , le 2006 , la limite de 20 ans du brevet des États-Unis semble avoir expiré, et en novembre 2006, Forgent a accepté d'abandonner l'application des réclamations de brevet contre l'utilisation de la norme de JPEG.

    Le comité de JPEG a en tant qu'un de ses buts explicites qui leurs normes (en particulier leurs méthodes de ligne de base) soient implantables sans paiement des redevances, et elles ont fixé des juste appropriés de permis pour leur norme prochaine de JPEG 2000 de plus de 20 grands organismes.

    Le 27 septembre 2007, une autre compagnie, possessions de brevet globales, réclamations leur brevet (), est pour le téléchargement des images de JPEG sur un site Web ou par l'email qui, sinon infirmé, s'appliquerait à n'importe quel site Web qui montre des images de JPEG. Dans son premier procès il a appelé les emballeurs de Green Bay, le CDW, le Motorola, l'Apple, l'Orbitz, l'Officemax, le Caterpillar, le Kraft et le Peapod comme défendeurs. Niro, Scavone, Haller et Niro est le lawfirm qui représente les possessions de brevet globales.

    Normes

    JPEG (lossy et sans perte) : ITU-T T.81, ISO/IEC EST 10918-1
    JPEG (prolongements) : ITU-T T.84
    JPEG-LS (sans perte, amélioré) : ITU-T T.87, ISO/IEC EST 14495-1
    JBIG (images noires et blanches) : ITU-T T.82, ISO/IEC EST 11544-1
    JPEG 2000 (successeur de de JPEG/JPEG-LS) : ITU-T T.800, ISO/IEC EST 15444-1
    JPEG-2000 (prolongements) : ITU-T T.801

    Voir également

    Compression d'image
    Formats de fichier d'image de
    Comparaison de des formats de fichier de graphiques
    Image de Windows de et visionneuse de fax
    Format de fichier échangeable (Exif) d'image de
    Format (JFIF) d'échange de dossier de JPEG de
    Règle de conception de pour le système de fichiers d'appareil-photo (DCF)
    JPEG 2000
    JPEG de mouvement de
    Graphiques de éditant le programme
    Section de vulnérabilité du GDI+ de l'article , bogue exploitable de GDI dans le JPEG manipulant le code de la bibliothèque de GDI+
    Comparaison de des moteurs de disposition (graphiques)
    Perte de génération de
    PGF
    Png
    Codec sans perte FELICS d'image de
    C-Cube en un applicateur tôt de JPEG sous la forme de morceau
    Libjpeg de groupe indépendant de JPEG
    Le filtre de dégagement de (vidéo) , les méthodes semblables de dégagement pourrait être appliqué au JPEG
    Lenna , l'image standard traditionnelle employée pour examiner des algorithmes à traitement d'images

    .

    Random links:Bâti Rushmore | Jours fériés en Finlande | Suzi Quatro | Capot de Jim | Genevieve Blanchett | JPEG