Ìmọ̀ Gbogbogbò

Báwo ni ìkóòdì JPEG ṣe ń ṣiṣẹ́?

Ìtúmọ̀ rọrùn ti àwọn ìgbésẹ tó wà lẹ́yìn ìkóòdì àwòrán tó munadoko

Bianca Palmer Tí òpẹ́ tuntun jùlọ ní

Ṣe o ti láìròyìn rí bí fónú tàbí kámẹ́rà rẹ̀ ṣe lè ya àwòrán kan, kí ní iṣẹ́ju díẹ̀ lẹ́yìn náà a ti fipamọ́ rẹ gẹ́gẹ́ bí JPEG tí ó kéré jù, yara jù, tí ó sì tún wò kedere? Ní abẹ́lẹ̀, ìlànà gígùn kan ló wà nínú iṣẹ́ tí ń dín àwọn fáìlì àwòrán ńlá sí ìdámẹ́ta tàbí kere sí i ti ìwọn ìbẹ̀rẹ̀ wọn, tí wọ́n sì ń pa dídùn rẹ̀ mọ́. Ṣùgbọ́n báwo ni tó ṣe ń ṣiṣẹ́ gan-an? Níhìn-ín, a máa wo JPEG compressionní pẹkipẹki a ó sì tú gbogbo ìgbésẹ̀ kálẹ̀ ní ọ̀nà tó rọrùn kí o lè lóye ìlànà ìdìpọ àwòrán yìí.

Kí ni JPEG?

JPEG (akótán fún Joint Photographic Experts Group) jẹ́ ọ̀kan lára àwọn fọ́ọ́mátì àwòrán tí wọ́n wọ́pọ̀ jù lọ. Ó jẹ́ àṣàyàn boṣewa fún fífi àwọn fọ́tò dídíjítàlì pamọ́. Àwọn ànfààní pàtàkì JPEG ni agbára rẹ̀ láti dín àwọn fáìlì àwòrán kù, tí ń jẹ́ kí wọ́n kéré gan-an láì sì jẹ́ kí ìparun dídùn hàn gbangba.

Fún àpẹẹrẹ, àwòrán gíga-dídùn tí a kò tíì dín kù lè jẹ́ 46 MB. Lẹ́yìn tí a bá ti dín un sí JPEG, àwòrán kan náà lè dín kù sí ìyẹn 4.1 MB péré. Ṣùgbọ́n báwo ni ó ṣe lè ṣe èyí tí àwòrán náà sì tún ń lári kedere?

Ìdáhùn wà nínú Ilana didín JPEG, tí ń lò bí ojú wa ṣe ń ṣiṣẹ́, tí ó sì ń yọ data tí a kò nílò kúrò.

Kí ni JPEG ń Ṣe?

Ní ṣókí, JPEG ń ṣiṣẹ́ nípa ìtúpalẹ̀ àwòrán náà tí ó sì ń yọ àwọn ìlànà tí ojú wa kò rírí rọrùn kúrò. Nígbà tí o bá dìn àwòrán kù pẹ̀lú JPEG, o lè ṣàkóso bó ṣe fẹ́ kí ìdìpọ náà pọ̀ tó. Nípa ṣíṣàtúnṣe àtòkọ "quality", o lè pinnu ìpò ààyè tí o fẹ́ fipamọ́. Bí dídùn (quality) ṣe ń ṣubú láti 100% sí 0%, ìwọn fáìlì náà náà sì ń dín kù.

Bí o ṣe ń dín un kù sí i, ipinnu àwòrán (resolution) kì í yí padà, ṣùgbọ́n o lè bẹ̀rẹ̀ sí rí díé lára àwọn àbùkù tàbí "artifacts" tí ń farahàn. Àwọn àbùkù wọ̀nyí sábà máa dà bí àpótí kékeré, tí ó sì sábà máa ṣòro láti rí bí o kò bá sun mọ́. Ète JPEG ni láti jẹ́ kí fáìlì náà kéré tó bá ti lè ṣe láì jẹ́ kí àwòrán náà dàbí ẹni pé ó bàjẹ́ ní ojú ènìyàn.

Àwọn Ìgbésẹ̀ Ìdìpọ JPEG

JPEG compression kì í ṣe ìgbésẹ̀ kan ṣoṣo. Ó jẹ́ àtẹ̀jáde àwọn ìlànà oríṣiríṣi tí a ṣe láti dín ìwọn àwòrán kù. Èyí ni àwọn ìgbésẹ̀ márùn-ún pàtàkì tí ń jẹ́ kí JPEG munadoko.

Ìgbésẹ̀ 1: Ìyípadà Ààyè Àwọ̀ (Color Space Conversion)

Àwọn àwòrán nípò àwọn píksẹ́lì, tí píksẹ́lì kọọkan sì ní àpọ̀ red, green, àti blue (RGB) tí wọ́n darapọ̀ pọ̀ láti dá àwọ̀ sílẹ̀. JPEG bẹ̀rẹ̀ nípa yíyí àwọn iye RGB wọ̀nyí sí ààyè àwọ̀ míì:

  • Luminance (Ìmọ́lẹ̀): Èyí ń ṣàfihàn bí píksẹ́lì ṣe mọ́lẹ̀ tàbí ṣe lọ́fà, tí ó sì ṣe pàtàkì fún pípín ìfarahàn àfihàn àwòrán lapapọ̀.
  • Chrominance (Àwọ̀): Ó ń ṣàfihàn ìlànà àwọ̀, tó fi mọ́ irú àwọ̀ (hue) àti ìrírí rẹ̀ (saturation).

Ìyípadà yìí ń lò òtítọ́ pé ojú ènìyàn ń rí ìmọ́lẹ̀ (luminance) dájú ju bí ó ṣe ń rí àwọ̀ (chrominance). Nípa yà ìmọ́lẹ̀ sọ́tọ̀ kúrò lọ́dọ̀ àwọ̀, JPEG ń jẹ́ kí a lè dín data kù nínú àwọn ìgbésẹ̀ tó tẹ̀lé láì fipá kan àwọn àlàyé àwòrán pàtàkì.

Kò sí data tí a pàdànù ní ìgbésẹ̀ yìí, ṣùgbọ́n ó ń pèsè àwòrán náà fún ìdìpọ tó munadoko.

Ìgbésẹ̀ 2: Chrominance Downsampling/Chroma Subsampling

Chroma Subsampling jẹ́ jẹ́ ìmúlò kan tí a máa ń lo lẹ́yìn ìyípadà ààyè àwọ̀. Rántí bí a ṣe sọ pé ojú wa kì í ráyè rí àwọ̀ (chrominance) dájú bí ó ṣe ń rí ìmọ́lẹ̀ (luminance)?

JPEG ń lò òtítọ́ yìí nípa dídín iye data àwọ̀ kù. Ó ń dín àwọn àwòrán chrominance buluu àti pupa kù nípa àpàpọ̀ wọn sínú àwọ̀n píksẹ́lì mẹ́rin kí ó lè ṣe àárín wọn. Èyí ń jẹ́ kí data àwọ̀ kéré gan-an láì sì ba luminance (ìmọ́lẹ̀) jẹ́. Ní àkókò yìí, àwòrán náà ti fẹrẹ́ di ààrin ìdìpọ rẹ̀.

Ìgbésẹ̀ 3: Discrete Cosine Transform (DCT)

Discrete Cosine Transform (DCT) jẹ́ ìmúlò ìṣirò amóhùnmáwòrán tí a fi ń yí data àwòrán padà látọ̀dọ̀ ààyè àfihàn (níbi tí a ti ń ṣe àfihàn àwòrán gẹ́gẹ́ bí gírídì píksẹ́lì) sí ààyè ìfarahàn (frequency domain). Ilana yìí ń ràn wá létí láti mọ àwon apá àwòrán tí ó kún fún àlàyé tó ṣe pàtàkì jù lọ àti àwọn apá tí a lè ti kọ silẹ.

DCT n pin aworan si awọn bulọọki 8x8 ki o si yipada bulọọki kọọkan si akojọ awọn iye igbohunsafẹfẹ. Awọn igbohunsafẹfẹ giga ti o n ṣe aṣoju awọn ayipada yiyara ninu awọn iye piksẹli, gẹgẹ bi eti tabi ariwo, maa n kere si han gbangba fun oju eniyan ati pe a le dín wọn ku tabi yọ wọn patapata.

Igbesẹ 4: Quantization

Lọ́pọ̀ ìgbà tí a bá ti lò DCT, data igbohunsafẹfẹ tí a gba yóò kọja sí quantization. Nípa ìgbésẹ́ yìí, àwọn iye igbohunsafẹfẹ yóò dín kù nípa pípin wọn pẹ̀lú àkójọ àwọn àdídá tí a ń pè ní quantization table. Ilana yi jẹ́ kíkà àgbékalẹ̀ àwọn iye igbohunsafẹfẹ náà sún mọ́ra láti jẹ́ kí wọn rọrùn síi.

Àwọn iye igbohunsafẹfẹ giga ni a máa ń ṣe quantize jù, èyí túmọ̀ sí pé wọn padanu ìtóye díẹ̀ síi nítorí pé wọn kéré sí pataki sí didara àwòrán lapapọ. Igbesẹ́ kẹ́rin yìí dín iye data tí a nílò láti ṣàfihàn àwòrán kù, tí ó sì jẹ́ kí faili náà kéré síi. Ṣùgbọ́n, quantization ju lọ lè fa àwòrán di aláìlera, bíi pípa díẹ̀díẹ̀ sí bulọọki tàbí fífi àwòrán jẹ́ mù, pàápàá jùlọ nípò ìdìkúrò data tó gígá jù.

Igbesẹ 5: Run Length ati Huffman Encoding

Lẹ́yìn quantization, data náà ṣì kì í ṣe kékeré tó fún ìpamọ́ tó munadoko. Níbi yìí ni Run Length Encoding (RLE) àti Huffman Encoding tí wọ́n ti bẹ̀rẹ̀ sí ṣiṣẹ́.

Àkọ́kọ́, a máa lo RLE láti mú kí àtẹ̀lé àkójọpọ̀ data tí ń tún ara wọn ṣe pẹ́ (bíi odo) rọrùn, nípa fífi iye àtúnse pamọ́ dipo kíkó gbogbo iye kọọkan pamosi. Lẹ́yìn náà, a máa lo Huffman Encoding, ìlànà kan tí ń rọ́pò àwọn iye tí ó máa ń ṣẹlẹ̀ lọ́pọ̀ pẹ̀lú àwọn kóòdù bit díẹ̀, kí faili naa lè túbọ̀ kéré síi.

Àwọn ọ̀nà ìkóòdù méjì yìí àwọn ọ̀nà encoding wọ̀nyí ń ṣiṣẹ́ pọ̀ láti dín ìwọn faili kù gidigidi láì fi púpọ̀ ninu didara àwòrán sílè!

Àwọn Àlàyé Àfikún

Bí JPEG tilẹ̀ jẹ́ fọ́ọ́mátì tí ó munadoko gan-an, àwọn nǹkan pàtàkì díẹ̀ wà láti rántí:

  • Ìpele ìdìkúrò: JPEG jẹ́ kí o yan ìpele ìdìkúrò, ṣùgbọ́n ìdìkúrò gígá dín ìwọn faili kù ó sì lè fa àfihàn àṣìṣe kedere bíi etí tí ó dà bí mù tàbí píksẹ́lù tí ń hàn gbangba. Èyí máa ń ṣẹlẹ̀ nígbà tí àwọn iye quantization table bá gígá jù, èyí tí ń dá sí ì pọ̀sí àwọn odo nínú data, tí ń jẹ́ kí faili kéré síi ṣùgbọ́n tí ń dín didara àwòrán kù.
  • Ìparun Data Igbohunsafẹfẹ Giga: Quantization dín ìtóye data igbohunsafẹfẹ giga kù (àlàyé bíi etí tó gígé), ìdí nìyẹn tí JPEG fi dára fún àwòrán pẹ̀lú àfarawà tó dan, ṣùgbọ́n tí ó lè ní ìṣòro pẹ̀lú àwọn ìlà gígé àti àwòrán vector.
  • Kì í ṣe dáradára fún Àwòrán Vector: JPEG kì í ṣe àṣàyàn tó dára fún dín àwòrán vector kù, nítorí pé ó lè fa àṣìṣe tí ó hàn gbangba ní ààlà àwọn àwòṣe tàbí àwọn ìlà.

Láìka àìlera wọ̀nyí, JPEG ṣì jẹ́ fọ́ọ́mátì àwòrán tí ó gbajúgbajà jù lọ, apá kan nítorí pé ó ti pé, a sì ti lóye rẹ̀ dáadáa, ó sì ṣeé lò láì san owó àṣẹ. Ṣùgbọ́n, àwọn fọ́ọ́mátì tuntun bíi WebP tàbí HEIF ń pèsè ìdìkúrò tó dára jù láì bà a jẹ́ didara, èyí tí ń jẹ́ kí wọ́n wúlò gẹ́gẹ́ bí ààrẹ míràn ní àwọn ipo kan.

Ní Ìparí

Algoridimu ìdìkúrò JPEG jẹ́ àṣeyọrí ńlá nínú ìṣàkóso data àwòrán. Nípa pípa àwòrán sí àwọn bulọọki kékeré, lílo àwọn ìyípadà ìṣirò, àti lílo àwọn ọ̀nà encoding tó munadoko bí Run Length àti Huffman Encoding, ó jẹ́ kí a lè pa àwòrán tó dára pamọ́ nínú àwọn faili tó kéré púpọ̀.

Bí JPEG tilẹ̀ ní díẹ̀ nínú àwọn àìlera, pàápàá ní ìpele ìdìkúrò gígá tàbí pẹ̀lú àwòrán vector, ìlò rẹ̀ káàkiri àti agbára rẹ̀ láti fúnni ní abájáde tó dára fún àwọn àwòrán fọ́tò jẹ́ kí ó jẹ́ ìlàkóso tó ń bá a lọ.