JPEG: erinevus redaktsioonide vahel

Eemaldatud sisu Lisatud sisu
PResümee puudub
PResümee puudub
1. rida:
 
[[File:Felis silvestrissilv{{Keeletoimeta|lisaja=Kuriuss|aasta=2017|kuu=mai}}estris silvestris small gradual decrease of quality.png|thumb|240px| Kassi pilt, kus kvaliteet paraneb vasakult paremale]]
 
'''JPEG''' on digitaalsete piltide [[Andmete pakkimine|pakkimise]] standard, mis mõeldud iseäranis [[Digitaalfotograafia|digitaalse fotograafia]] jaoks.<ref name="4O8TY" /> Pakkimise määra saab kohandada, see laseb leida kompromissi talletatava faili mahu ja pildikvaliteedi vahel. JPEG võimaldab ilma suurema kvaliteedikaota 10:1 pakkimist.<ref name="1u9QW" />
24. rida:
JPEG-pakkimise algoritm on parim realistlike stseenide jaoks, kus on toonis ja värvis sujuvad üleminekud. JPEG on väga populaarne veebis kasutamiseks, sest seal on enamasti andmemaht oluline. JPEG/Exif on kasutusel ka digitaalsetes kaamerates.
 
Teisest küljest, JPEG ei pruugi olla parim lahendus jooniste ja teiste tekstilist graafikat sisaldavate piltide jaoks, kus teravad kontrastid kõrvuti asetsevate pikslite vahel võivad tekitada märgatavaid moonutusi. Sellised pildid on parem salvestada kadudeta pildivormingussepildivormingus, nagu TIFF, [[GIF]], [[PNG]] või ''raw'' (eeltöötlemata vorming). JPEG-standard sisaldab kadudeta pakkimise võimalust, kuid see ei ole enamikus toodetes toetatud.
 
Kuna tüüpiline JPEG kasutusala on kadudega pakkimine, mis kaotab pildi täpsust, siis ei peaks seda kasutama lahendustes, kus täpne andmete reproduktsioon on oluline (nagu näiteks mõned teaduslikud ja meditsiinis kasutatavad rakendused).
 
JPEG ei sobi ka selliste failide jaoks, mida töödeldakse korduvalt (pilditöötlus), sest iga kodeerimine ja dekodeerimine vähendab faili vastavust originaalile. Selle vältimiseks võib vastava pildi salvestada kadudeta vormingus ja hiljem levitamiseks uuesti JPEG-vormingus.
45. rida:
Plokke võib keerata 90 kraadi, ümber pöörata horisontaalselt, vertikaalselt ja diagonaalselt, ning liigutada pildis ringi. Muudetud plokk ei sõltu kõigist teistest plokkidest pildil.
 
Vasak ülemine äär JPEG pildil on 8 x 8 pikslise ploki piiril, kuid alumine parem ei pruugi selliseltniit olla. See ei võimalda kadudeta liigutada ja keerata pilti, mille alumine parem äär ei ole kõigil kanalitel 8 x 8 ploki äärel.
 
Pildi keeramine, kus ta ei ole 8 või 16 kordne (mis sõltub alladiskreetimisest), ei ole kadudeta. Sellise pildi keeramine tähendab, et need plokid arvutatakse uuesti ja nii kaotatakse kvaliteedis<ref name="Q72Ak" />.
74. rida:
===Värviprofiil===
 
Paljud JPEG-failid kasutavad ICC<ref name="zXPyl" /> värvimudelit. Kasutatavamad värviprofiilid on ka [[sRGB]] ja Adobe RGB<ref name="aBb5d" />. Kuna need värvimudelid kasutavad mittelineaarset teisendust, siis dünaamiline ulatus 8-bitbitisel JPEG -failil on umbes 11 ''stop''-i.
 
==Süntaks ja struktuur==
 
JPEG -pilt koosneb jadast segmentidest, mis algavad markeriga 0xFF, millele järgneb bait, mis näitab, millise markeriga on tegu. Mõned markerid koosnevad ainult neist kahest baidist; teistele järgnevad kaks baiti, mis näitavad järgneva sõnumi (vt. tabelit), mis on markeripõhiselt määratud, pikkust (pikkus sisaldab kaks baiti pikkuse jaoks, kuid mitte neid kahte markeri baiti). Mõnele markerile järgnevad entroopia-kodeeritud andmed, sellise markeri pikkus ei sisalda nende andmete pikkust. Kõrvuti asetsevad 0xFF baidid on samuti ka täiteks, kuid ainult entroopia-kodeeritud andmetele järgnevate markerite juhul.
 
Entroopia-kodeeritud andmete raames, peale 0xFF baiti on enne järgmist baiti lisatud 0x00 bait, et ei paistaks, nagu oleks marker seal, kuhu pole planeeritud. Dekodeerija peab selle 0x00 baidi vahele jätma. Seda tehnikat kasutatakse ainult entroopia-kodeeritud andmetega. Entroopia-kodeeritud andmetel on mõned oma markerid: ''reset'' markerid (0xD0 kuni 0xD7), mida kasutatakse entroopia-kodeeritud osade isoleermiseks, et saavutada paralleelne dekodeerimine. Kodeerijad võivad neid ''reset'' markereid sisestada korrapäraste intervallide järel (kuigi kõik kodeerijad ei tee seda)<ref name="XKGCs" />.
 
{| class="wikitable"
96. rida:
! SOF0
| 0xFF, 0xC0 || ''muutuva suurusega'' || Start of frame (põhinõuetele vastav DCT)
| Näitab, et see on põhinõuetele vastav DCT-põhine JPEG, ja täpsustab laiuse, kõrguse, komponentide arvu ja allasämplimise (näit.nt 4:2:0).
|-
! SOF2
| 0xFF, 0xC2 || ''muutuva suurusega'' || Start Of Frame (progressiivne DCT)
| Näitab, et see on progressiivne DCT-põhine JPEG ja täpsustab laiuse, kõrguse, komponentide arvu ja allasämplimise (näit.nt 4:2:0).
|-
! DHT
182. rida:
===Diskreetne koosinusteisendus===
 
Edasi iga komponendi 8 x 8 plokk viiakse üle sagedusvalda, kasutades normaliseeritud tüüp-2 DCT-d, mis on kasutusel 1974 aastast tänu N. Ahmed-ile<ref name="yHqG2" /> ja T. Natarajan-ile. Enne kui DCT-d rakendatakse igale 8 x 8 plokile, viiakse selle väärtused positiivsest vahemikust, vahemikku, mis on keskmega nullis – [-128, 127] [0, 255] asemel. See on vajalik järgneva DCT sammu jaoks, ja on samaväärne kui lahutada DC koefitsiendist peale teisenduse tegemist 1024, mis võib olla parem lahendus mõne arhitektuuri juures, sest siis tehakse ainult üks lahutamine 64 asemel. Edasi tehakse igale 8 x 8 plokile kahedimensiooniline DCT. Ülemisse vasakusse nurka jääb DC koefitsient, millel on suurim ulatus, ja mis defineerib kogu ploki heleduse. Ülejäänud 63 koefitsienti on AC-koefitsiendid koefitsiendid(nimed tulenevad elektrotehnikast). Järgneb kvantimise sammkvantimisetapp, mille käigus koefitsiendid jagatakse eraldi arvudega.
<math>\ G_{u,v} =
\frac{1}{4}
227. rida:
</math>
 
DC -koefitsient jääb vasakule ülesseüles, ja enamus arve on pealepärast kvantimist nullid (vt. antud maatriksit). Seda juhul, kui kõrvutised pikslid on algsel pildil sarnased.
 
===Entroopia-kodeerimine===
256. rida:
*JPEG 2000: ITU-T T.800, ISO/IEC 15444-1
*JPEG 2000 laiendused: ITU-T T.801
*JPEG XR (endine HD -foto) : ITU-T T.832, ISO/IEC 29199-2
 
== Vaata ka ==