Formatet e skedareve grafike dhe teknikat e kompresimit Leksion 6 Formatet e skedareve te imazheve Kur ruhet nje imazh ne nje arkive ose duhet.

Download Report

Transcript Formatet e skedareve grafike dhe teknikat e kompresimit Leksion 6 Formatet e skedareve te imazheve Kur ruhet nje imazh ne nje arkive ose duhet.

Formatet e skedareve
grafike dhe teknikat e
kompresimit
Leksion 6
Formatet e skedareve te imazheve
Kur ruhet nje imazh ne nje arkive ose duhet te publikohet ne web,
eshte e rendesishme te percaktohet formati i imazhit:
Numri
Magjik
bytes
Te dhenat e imazhit
koka
Formatet e imazheve percaktojne nje lloj informacioni dhe
perbehen nga nje segment koke dhe segment te dhenash.
Koka fillon me nje “numer magjik” – nje sekuence e shkurter
baitesh e dizenjuar per te identifikuar skedarin si nje imazh me ate
format specifik.
Koka do te permbaje gjithashtu gjeresine dhe gjatesine e imazhit.
Kategorite e formateve te skedareve te imazheve

Formatet specifike per pajisjet (Device-specialized formats).
Struktura e skedarit te imazhit mund te perzgjidhet per te lehtesuar
paraqitjen e shpejte ne nje tip te vecante workstation-i.
Dizavantazhi i formateve te specializuar per pajisjet perfshin
mungesen e transportueshmerise (portabilitetit), dhe jane te
papershtatshem kur perdoren ne hardware te tjera.
Shembull: ICC – perdoren per printera Kodak

Formatet specifike per softwaret (Software-specialized
formats)
Jane ato formate te dizenjuar nga nje shites softwaresh, per t’u perdorur
me nje program specifik ose klase programesh specifike.
Shembuj: formatet PCX dhe Windows bitmap (BMP) qe gjenden
kryesisht ne PC, ose formati MacPaint i perdorur ne kompjutera Apple
Macintosh.

Formate te shkembyeshme (Interchangable formats): GIF,
PNG, JPEG
Formate grafike per World Wide Web
Ka disa lloje skedaresh grafike:
•Skedare Matricore (te quajtur edhe skedare bitmapped) permbajne informacion
grafik te paraqitur si piksel sic jane imazhet fotografike. Keto perfshijne GIF, PNG,
dhe JPEG.
•Formatet Animacion jane zakonisht sekuenca te dhenash matricore.
•Skedare Vektor permbajne te dhena per veprimet matematike dhe zakonisht
perdoren per te ruajtur artin e linjave dhe informacione CAD.
•Gjuhet e Pershkrimit te Faqes - Page Description Languages (PDL) perdoren
per te pershkruar layout-in e nje faqeje te printuar, qe permbane grafike dhe tekst,
si psh Adobe PDF.
•Formatet e objekteve shume-dimensionale i ruajne te dhenat grafike si nje
koleksion objektesh (te dhenat dhe kodin qe i perpunon ato)
•Gjuha e Modelimit te Realitetit Virtual - Virtual Reality Modeling Language
(VRML) eshte nje gjuhe object-oriented, 3D qe perdoret per te pershkruar “boten
virtuale” qe lidhet me hyperlink brenda World Wide Web-it.
•Formatet e skedareve Multimedia jane te afte te ruajne cdo tip te dhenash nga
tipet e mesiperme, shpesh duke perfshire edhe informacion audio dhe/ose video.
Shembuj formatesh te shkembyeshme:
- GIF - Graphics Interchange Format
- PNG - Portable Network Graphics
- JFIF - JPEG (Joint Photographic Experts Group) File
Interchange Format
- TIFF - Tagged Image File Format
- PGM - Portable Gray Map
-PBM - Portable Bit Map
-PPM - Portable Pix Map
- FITS - Flexible Image Transport System
Pse ka shume formate skedaresh?
Ekziston nje numer i madh formatesh te skedareve grafike.
1. Nje arsye per kete bollek tipesh te skedareve eshte nevoja per
kompresim.
 Skedaret e imazheve mund te jene te medhenj → kerkohet
me shume hapesire ne disk → download-im me i ngadalte
 Kompresimi (ngjeshja) eshte nje term qe perdoret per te
pershkruar menyrat e zvogelimit te madhesise se skedarit.
Skemat e kompresimit mund te jene “me humbje” ose “pa
humbje” (lossy or lossless)
Pse ka shume formate skedaresh?
2. Nje tjeter arsye eshte fakti qe imazhet ndryshojne ne numrin e
ngjyrave qe ata permbajne.
Nese nje imazh ka pak ngjyra, nje format skedari mund ta
shfrytezoje kete, si nje menyre per reduktuar madhesine e
skedarit.
Kompresimi me humbje vs. pa humbje


Nje algoritem “pa humbje” nuk tret (humbet) asnje
informacion. Ai kerkon per menyra me efikase te
paraqitjes se imazhit, duke mos prishur saktesine e
imazhit.
Ne dallim nga algoritmet pa humbje, algoritmet “me
humbje” pranojne ndonje degradim ne imazh, ne
menyre qe te arrihet madhesia me e vogel e skedarit
te imazhit. Keto algoritme mund te ruajne
informacionin e ngjyrave, ne nje rezolucion me te ulet
sesa vete imazhi, meqe syri nuk eshte aq i ndjeshem
ndaj ndryshimeve ne ngjyra ne nje distance te vogel.
Metodat e kompresimit pa humbje
Imazhi fillestar mund te rekuperohet ne forme absoutisht
identike ne çdo kohe, pas kompresimit çdo piksel ka saktesisht
vlerat qe ka patur perpara kompresimit.
Formatet qe jane ne pronesi te
programeve te editimit te
imazheve, si psh formati
*.PSD ne Adobe Photoshop –
zakonisht jane te pajisur me
algoritme kompresimi pa
humbje.
Numri i ngjyrave
Imazhet me te thjeshta mund te permbajne vetem dy ngjyra, si
psh: te bardhe e te zeze, dhe do te nevojitet vetem 1 bit per te
paraqitur secilin pixel.
Disa karta video per PC te hershme, suportonin vetem 16 ngjyra
te caktuara. Karta video te mevonshme suportonin 256 ngjyra
njekohesisht, ku secila prej tyre mund te zgjidhej nga nje
bashkesi prej 224 ose 26 milion ngjyrash.
Karta te reja caktojne 24 bite per çdo pixel, prandaj mund te
shfaqin 224 ose 16 milion ngjyra, pa kufizime. Meqe syri nuk i
dallon ndryshimet ndermjet ngjyrave te ngjashme, ngjyrat 24
bit ose 16 milion shpesh quhet TrueColor.
BMP






BMP (Bit Mapped Picture) eshte nje standart i formateve te
imazheve te Microsoft Windows.
BMP suporton 1, 4, 8 dhe 24 bit per pixel.
Keto skedare zakonisht krijohen duke perdorur programet
Microsoft Paint ose Paintbrush dhe mund te perdoren ne
Windows si wallpaper.
Browserat standarte nuk suportojne kete tip skedari pa
thirrur nje program si Microsoft Paint.
Formati BMP perdor vetem nje forme te thjeshte te nje
teknike kompresimi pa humbje.
Skedaret BMP zakonisht ruhen te pakompresuar, njihen
vetem ne platforme Windows.
BMP
Nga ana konceptuale imazhet Bitmap jane
me te thjeshta se vektorialet.
 Ne imazhet Bitmap ne çdo pike ruhet kodi
perkates i ngjyres.
 Imazhet vektoriale ruajne modelin matematik
te imazhit dhe jo pika.

(“Nuk ka asnje arsye qe te perdoret ky format
ndonjehere.”)
GIF (Graphic Interchange Format)



Lindja dhe zhvillimi i internetit ndikon ne standartizimin
e disa formateve te skedareve per imazhe.
Formati i pare qe sherbeu si standart per shkembimin
e skedareve te imazheve ne internet ishte GIF.
GIF u ndertua nga nje kompani kompjuterash si nje
format per shkembimin e imazheve Bitmap midis
platformave te ndryshme.
GIF (Graphic Interchange Format)


Skedaret GIF perdorin nje teknike kompresimi pa
humbje sepse cilesia e imazhit nuk ndryshon permes
shume shnderrimeve te formateve GIF, gjithashtu jane
te kufizuara ne perdorimin e 256 ngjyrave.
Pra nese imazhi ka me pak se 256 ngjyra, GIF jep
imazhin te sakte. Ndersa kur imazhi permban me
shume ngjyra, GIF perdor nje nder algoritmet per
perafrimin e ngjyres ne imazh, me nje ngjyre nga 256
ngjyrat qe ka ne dispozicion. Nganjehere GIF perdor
ngjyren me te afert per te paraqitur secilin pixel dhe
nganjehere ai perdor “shperndarje gabimi” per te
rregulluar ngjyren e pixelave fqinje ne menyre qe te
korrigjohet gabimi ne secilin pixel.
GIF (Graphic Interchange Format)




Kompresimi pa humbje llogaritet per te gjithe bitet e te
dhenave ne imazh, kur imazhi kompresohet. Ky
rezulton ne nje skedar me te madh, por cilesia e
imazhit nuk degradon kur kompresohet dhe
dekompresohet disa here.
Ky tip kompresimi pershtatet sidomos per hapesira te
medha me ngjyre te njejte.
Nje nga vetite me te perdorshme te ketij formati eshte
fakti qe nje ngjyre mund te caktohet si nje
transparence.
Kjo veti lejon krijimin e imazheve ne te cilin sfondi
eshte i padukshem, keshtu imazhi duket sikur eshte i
‘pikturuar’ direkt ne faqen Web.
GIF (Graphic Interchange Format)


GIF i animuar perdoret per te krijuar animacione te
thjeshta ku seri te imazheve GIF jane te vendosura
njera pas tjetres dhe ndryshohen shpesh.
GIF eshte i pershtatshem per imazhe te thjeshte dhe
jo per imazhe komplekse si fotografite e skanuara
(per keto imazhe perdoret formati jpg).
JPEG (Joint Photographers Experts Group)






Eshte nje zgjidhje me e mire per cilesi ngjyre sesa GIF sepse
suporton ngjyra si 8-bit ose 24-bit.
Nje skedar JPEG eshte gjithashtu me i vogel sesa nje skedar
GIF per te njejtin imazh sepse JPEG perdor nje kompresim me
te larte.
Megjithate duhet te jemi te kujdesshem kur ruajme disa here
nje skedar JPEG per arsye te perdorimit te kompresimit me
humbje per ruajtje te imazhit.
Cdo here qe nje imazh kompresohet ne formatin JPEG disa
pixel-a perjashtohen.
Heret e para kur kjo ndodh, nuk ndikon realisht ne imazh per
arsye se syri i njeriut nuk dallon kaq humbje te pakta te imazhit.
Por kur imazhi kompresohet shpesh ne formatin JPEG cilesia
e imazhit sa vjen dhe zvogelohet.
JPEG




Te gjithe browserat grafike suportojne formatin JPEG
dhe keta skedare njihen me prapashtesen .jpeg ose
.jpg.
Kur ruajme nje imazh JPEG shume editore
imazhesh ofrojne ta ruajne ne nje format ‘progresiv’.
Nje skedar imazhi progresiv ruhet me shtresa
(layers). Kemi mundesi zgjedhjeje nga 3 ne 7
shtresa.
Browserat grafike ngarkojne dhe shfaqin imazhin
JPEG nje shtrese ne nje kohe, qe ka efektin vizual te
ndertimit te imazhit.
Fatkeqesisht nje skedar imazhi progresiv eshte me i
ngadalte per t’u ngarkuar.
PNG






Nje tjeter format i ri qe po perdoret gjeresisht ne Web dhe po
zevendeson pak nga pak formatin GIF eshte PNG (Portable
Network Graphics).
Suporton 8-bit dhe 24-bit ngjyre.
Kufizimi tek GIF eshte algoritmi i kompresimit qe ai perdor
sepse ky i fundit zoterohet me nje pakete nga kompania
CNISYS qe kerkon nje liçense ne pagese per programin qe
perdor kompresimin dhe dekompresimin GIF.
PNG perdor nje tjeter teknike kompresimi pa humbje qe nuk
kerkon liçence, prandaj mund te perdoret lirisht.
Gjithashtu PNG nuk kufizohet me 256 ngjyra dhe ofron nje
forme me te sofistikuar transparence.
PNG eshte formati i rekomanduar nga W3C dhe interpretohet
sot nga shume browsera.
Shembuj
GIF Format
Stage.gif
File size – 13k
JPEG Format
Stage.jpg
File size – 28k
PNG Format
Stage.png
File size –164k
TIFF
TIFF (Tagged Image File Format) perdoret
zakonisht per te shkembyer dokumenta
ndermjet platformave te ndryshme
kompjuterike.
TIFF suporton 1, 4, 8 dhe 24 bite per pixel.
Formati TIFF perdor nje metode kompresimi
pa humbje, te njohur si metoda Lemple-ZifWelch (LZW). Megjithate, ky version, te cilin
programe te mira te editimit te imazheve e
ofrojne si nje opsion kur ruhet nje imazh,
Picmaster eshte nje vetem eshte i afte te reduktoje ne menyre te
shembull i nje
dukshme madhesine e imazheve qe
programi shareware permbajne proporcione relativisht te medha
qe ofron kompresim zonash nje-ngjyreshe.
LZW per formatin
Ne kete foto, ai redukton madhesine e
TIFF.
skedarit me 3%.
Cilin format duhet te perdorim?



TIFF eshte outputi me cilesine me te mire nga nje
kamera dixhitale. Pra TIFF ka cilesi me te mire se
JPG, por skedaret TIFF jane shume te medhenj.
Nuk duhet te perdoret ne faqe web, per arsye te
madhesise se skedarit, por edhe se shume
browsera nuk e suportojne kete format.
TIFF eshte nje format i mire per perpunim
imazhesh.
Cilin format duhet te perdorim?




JPG eshte formati me i perdorur per web.
Pasi perpunohet imazhi, atehere mund te ruhet si
skedar .jpg
Nuk duhet perdorur per artin e linjave, (pra kur
nevojiten imazhe me vija te drejta apo kende te
theksuara). Per kete mund te perdorni GIF ose
PNG
Nese imazhi permban me pak se 256 ngjyra dhe ka
shume zona me te njejten ngjyre, atehere GIF
eshte formati i pershtatshem.
Cilin format duhet te perdorim?

PNG eshte i pershtatshem ne keto raste:
1. Nese keni imazhe me zona te medha me te njejten
ngjyre, por qe permbajne me shume se 256 ngjyra. Pra
strategjia eshte e njejte me GIF por PNG suporton 16 milion
ngjyra.
2. Nese doni qe nje foto te afishohet saktesisht ne web, pra
pa humbje. Browserat e rinj suportojne PNG, dhe PNG
eshte formati i vetem pa humbje qe suportojne web
browserat.

PNG eshte superior ndaj GIF-it. Ai prodhon skedare me te
vegjel dhe lejon me shume ngjyra.
PNG gjithashtu suporton transparence te pjesshme, e cila
mund te perdoret per shume qellime, si psh per zbehje te
ngjyres se tekstit ose antialiasing.

Kompresimi i imazheve - RLE



Nje katror 128 me 128 pika i ruajtur si nje imazh
Bitmap me 256 ngjyra te ndryshme kerkon 16 kb.
Eshte e mundur qe imazhi te ruhet ne nje forme me
kompakte. Psh ne vend qe te ruajme ngjyren e çdo
pike mund te ruajme nje ngjyre dhe me pas nje
numerues per numrin e pikave te njepasnjeshme qe
kane kete ngjyre.
Psh rreshti i pare i tabeles se pikave perbehet nga 128
pika te gjitha me te njejten ngjyre. Pra per te ruajtur
kete rresht ne vend qe te perdorim 128 byte mund te
perdorim vetem 2 byte. Ne byte-in e pare ruajme
ngjyren dhe ne byte-in e dyte ruajme numrin 128
(numri i pikave qe kane te njejten ngjyre). Avantazhi
eshte i dukshem.
RLE




Kjo teknike kompresimi quhet RLE (Run Length
Encoding).
Efektiviteti i RLE-se varet nga natyra e imazhit.
Ne shembullin tone RLE eshte shume efektive, por
ne ndonje imazh tjeter ku pak pika te
njepasnjeshme kane te njejten ngjyre RLE eshte
plotesisht inefiçente.
Ne disa raste mund te ndodh qe nje imazh i
kompresuar te kerkoje me shume hapesire ne disk
sesa imazhi burim. Ne rastin me ekstrem ku çdo
pike e imazhit ka ngjyre te ndryshme teknika RLE
e dyfishon madhesine e imazhit ne vend qe ta
zvogeloje ate.
RLE




RLE eshte nje teknike kompresimi pa humbje.
Ne fakt RLE eshte teknika me e thjeshte e ketij
lloji. Ekzistojne te tjere algoritme kompresimi
shume me sofistikuara dhe efiçiente.
Nje pjese e tyre punojne duke koduar serish te
dhenat ne menyre qe vlerave qe hasen me
shpesh t’u caktohet nje kod me me pak bite.
Algoritmi me i njohur i kesaj klase eshte kodimi
Huffman.
Qe nga viti 1970 ky lloj kodimi me gjatesi
variabel te kodit ia ka lene vendin skemave te
kompresimit te bazuara ne fjalor.
Kompresimi me fjalor



Skemat e kompresimit te bazuara ne fjalor
funksionojne duke ndertuar nje tabele ose nje
fjalor ku futen stringje bytesh qe gjenden ne te
dhenat hyrese.
Sa here qe ne te dhenat hyrese gjendet nje
vlere e fjalorit (fjale) ne vend te saj vendoset nje
shenjues tek vendndodhja e kesaj fjale ne fjalor.
Ne ndryshim nga algoritmet e kompresimit me
kod variabel teknikat e kompresimit te bazuara
ne fjalor me gjatesi fikse, por keto kode jane
shenjues tek fjalet e fjalorit qe kane gjatesi
variabel.
Kompresimi me fjalor



Efektiviteti i ketyre menyrave te kompresimit
varet nga zgjedhja e fjaleve qe do futen ne fjalor.
Ne rastin ideal fjalet e fjalorit do te jene stringje
te gjate qe hasen shpesh, megjithate kjo eshte
karakteristike e te dhenave.
Aftesia e algoritmit qendron ne gjetjen e ketyre
fjaleve te gjata qe hasen shpesh, sigurisht nqs
ato ekzistojne.
Teknikat e kompresimit pa humbje mund te
perdoren per çdo lloj te dhenash.
Teknikat e kompresimit me humbje





Teknika me e rendesishme e kesaj kategorie eshte JPEG.
Vlerat e ndriçimit dhe te ngjyrave te nje imazhi mund te
shperbehen ne frekuencat e sinjalit te imazhit. Kjo lidhet me
hardware-in.
Cdo forme vale mund te transformohet ne nje bashkesi
frekuencash duke perdorur transformimin Furie.
Nga eksperimente te ndryshme ka rezultuar se njerezit nuk
dallojne mire efektin e frekuencave te larta ne menyre te
veçante ne imazhet me ngjyra.
Kompresimi JPG e transformon imazhin ne frekuencat
perberese te tij. Kjo nuk behet nepermjet transformimit Furie,
por nepermjet transformimit DCT.
Kompresimi JPEG
JPEG e ndan imazhin ne blloqe 8 me 8 pixel, dhe me pas llogarit
transformimin discrete cosine transform (DCT) te secilit bllok. Nje
kuantizues (quantizer) rrumbullakos koeficientet DCT sipas matrices se
kuantizimit. Ky hap prodhon natyren “me humbje" te JPEG, por lejon
shkalle te larte kompresimi. Teknika e kompresimit JPEG perdor nje
kod me gjatesi variable te ketyre koeficienteve, dhe me pas i shkruan
rrjedhen e te dhenave te kompresuara ne nje skedar output (*.jpg). Per
dekompresim, JPEG rikuperon koeficientet DCT nga te dhenat e
kompresuara, merr transformimin invers dhe paraqet imazhin.
Kompresimi JPEG





DCT nderton tabele koeficientesh qe perfaqeson frekuencen si te
dhena hyrese.
Ky transformim nuk e zvogelon madhesine e imazhit, por tashme
mund te hiqen disa informacione qe kane te bejme me frekuenca te
larta. Kjo behet duke percaktuar me pak vlera te ndryshme per
frekuenca te larta.
Psh nqs vlerat per v levizin nga 0-255 koeficiente e v me te vogla
mund te kene çfaredo vlere te plote midis 0-255.
Vlerat per v pak me te larta lejohet te kene vetem vlera qe
plotepjesetohen me 4.
Pra ulet numri i v te larta te mundshme duke i veçuar ato ne nivele te
caktuara numrash duke u lene me pak numra v me te larta.




Eshte e mundur te percaktohet niveli i ndarjes,
duke percaktuar ne kete menyre edhe nivelin e
kompresimit.
Ky proces ndan dhe redukton madhesine e
imazhit ne dy menyra:
Se pari shume koeficient do te beheshin 0 pasi
keto jane koeficientet qe i perkasin v te larta.
Se dyti duhet me pak vend per te ruajtur
koeficientet e ndryshem nga 0 sepse kemi
shume vlera qe perseriten.
Duke shfrytezuar keto karakteristika te reja
te te dhenave kompresohet imazhi
nepermjet dy teknikave te kompresimit pa
humbje.
 Se pari aplikohet kodimi Huffman qe
redukton vlerat 0 ne matricen e
koeficienteve.
 Se dyti aplikohet RLE qe pritet te jete i
efektshem sepse ka perseritje te vlerave.
