Download - KOMPRESIJA SLIKE
KOMPRESIJA SLIKE
ENCIKLOPEDIJA•500,000 stranica teksta (2 KB po stranici) – ukupno 1 GB;•3,000 kolor slika ( u prosjeku 640x480x24 bita = 1 MB po slici) – ukupno 3 GB;•500 mapa ( u prosjeku 640x480x16 bita = 1 MB po mapi) – ukupno 0.3 GB;•60 min stereo zvuka (176 KB po sekundi) – ukupno 0.6 GB;•30 animacija, u prosjeku po 2 minute (640x320x16 bita x 16 slika/sec = 6.5 MB/sec) – 23.4 GB;•50 digitalizovanih filmskih zapisa (video sekvenci) u prosjeku od 1 minuta (640x480x24 bita x 30 slika/sec = 27.6 MB/sec) – 82.8 GB.
•UKUPNO 111.1 GB
•Kompresija:•tekst 2:1•kolor slike 5:1•mape 10:1•stereo zvuk 6:1•animacije 50:1•video 50:1 Ukupno: 2.96 GB
KOMPRESIJA SLIKE
KOMPRESIJA SLIKE
Prikazivanje filma sa nekog memorijskog medija, recimo CD-ROM-a. Ako pretpostavimo kolor video sekvencu slika sa rezolucijom svake slike od 620x560 piksela i 24 bita/pikselu, trebaće nam oko 1MB memorije po slici. Za prikaz 30 slika u sekundi. Brzina prenosa bi trebala biti 30 MB/sekundi, dok postojeći uređaji imaju brzinu prenosa Kx150 KB/sekundi, što sa vrijednošću za K=52 iznosi 7.8 MB/sekundi. Još smo tehnološki daleko od brzine prenosa sa K=200.
KOMPRESIJA BEZ GUBITAKA
Hafmanovo kodovanje
0.30
0.26
0.15
0.12
0.10
0.03
0.02
0.02
0.04
0.07
0.17
0.27
0.43
0.57
1.00
i=2
i=1
i=3
i=0
i=4
i=5
i=6
i=7
Hafmanovo kodovanje
0.30
0.26
0.15
0.12
0.10
0.03
0.02
0.02
0.04
0.07
0.17
0.27
0.43
0.57
1.00 i=2 (01)
i=1 (10)
i=3 (001)
i=0 (000)
i=4 (110)
i=5 (1110)
i=6 (11110)
i=7 (11111)
0
0
0
1
1
0
1
1
0
00
10
1
1
KOMPRESIJA BEZ GUBITAKA
Hafmanovo kodovanje
i Hafmanov kod
0 000 1 10 2 01 3 001 4 110 5 1110 6 11110 7 11111
U navedenom primjeru prosječna dužina kodne riječi je L=2.55, pa je realizovani stepen kompresije 3/2.55= 1.176.
KOMPRESIJA BEZ GUBITAKA
Kodovanje dužina nizova
l1
l2
l3
lk
g 1
g 2
g 3
g k
iM
x i
Grupu piksela dužine li sa nivoom sivog gi, nazivamo niz. Ako se u
jednoj liniji nalazi k takvih segmenata, sadržaj linije slike se umjesto pojedinačnim vrijednostima piksela može predstaviti uređenim parovima (li, gi) i umjesto kodovanja pojedinačnih piksela može se kodovati cijela
grupa.
run-length coding - RLC
KOMPRESIJA BEZ GUBITAKA
LZW postupak kompresije (Lempel, Ziv, Welch)
KOMPRESIJA BEZ GUBITAKA
- generiše kodnu tabelu u toku postupka kodovanja i dekodovanja
Digitalna slika se posmatra kao dugačak jednodimenzionalni niz, sastavljen od podnizova čija dužina može biti različita, zavisno od primjene algoritma (npr. jedan bajt).
LZW postupak kompresije (Lempel, Ziv, Welch) - kodovanje
KOMPRESIJA BEZ GUBITAKA
Sadržaj kodne tabele na početku kodovanja/dekodovanja: (1) A (2) B (3) C Ulazni niz za kodovanje: Pozicija 1 2 3 4 5 6 7 8 9 Podniz A B B A B A B A C
Postupak kodovanja
Korak Poz Kodna tabela Izlaz 1. 1 (4) A B (1) 2. 2 (5) B B (2) 3. 3 (6) B A (2) 4. 4 (7) A B A (4) 5. 6 (8) A B A C (7) 6. -- -- (3)
Ako dolazi do popunjavanja kodne tabele, poslednji znak niza koji se upisuje u tabelu je jednak prvom znaku sljedećeg niza koji se šalje.
LZW postupak kompresije (Lempel, Ziv, Welch) - dekodovanje
KOMPRESIJA BEZ GUBITAKA
Pozicija 1 2 3 4 5 6 7 8 9 Podniz A B B A B A B A C
Korak Kod Izlaz Kodna tabela 1. (1) A -- 2. (2) B (4) A B 3. (2) B (5) B B 4. (4) A B (6) B A 5. (7) A B A (7) A B A 6. (3) C (8) A B A C
Ako stigne kod 7 čije mjesto je u tabeli još prazno, prethodno pristiglom nizu ("A B") se dodaje prvi znak njega samog "A“, taj niz ("A B A") se upisuje na slobodnu poziciju kodne tabele (7), i na izlaz se šalje taj isti kod ("A B A").
ZIP, ARJ, TIFF, GIF
Prediktivno kodovanje bez gubitaka
PREDIKTIVNE TEHNIKE ZA KOMPRESIJU SLIKE
WjijnimfPnmf ,)},,({),(ˆ ),(ˆ),(),( nmfnmfnme
Prediktor
Entropijskikoder
f(m,n)
f(m,n)
e(m,n)+
-^
Komprimovanipodaci
+
e(m,n)
Prediktorf(m,n)^
+
f (m,n)
Dekoder
Entropijskidekoder
Koder
C B
A X m
m-1
n-1 n
X = f(m,n)
Anmf ),(ˆ
Bnmf ),(ˆ
Cnmf ),(ˆ
CBAnmf ),(ˆ
2
Int),(ˆ CBAnmf
2
Int),(ˆ CABnmf
2
Int),(ˆ BAnmf
Prediktivno kodovanje sa gubicima
PREDIKTIVNE TEHNIKE ZA KOMPRESIJU SLIKE
diferencijalna impulsna kodna modulacija(Differential Pulse Code Modulation – DPCM).
Prediktor
Kvantizerf(m,n)
f(m,n)
e(m,n)
+ -^
Komprimovanipodaci
e'(m,n)
f '(m,n)
+
++
-e'(m,n)
Prediktorf(m,n)^
+f '(m,n)
Koder Dekoder
WjijnimfPnmf ,)},,({),(ˆ
),(ˆ),(),( nmfnmfnme
)],([),( nmeQnme
),(ˆ),(),( nmfnmenmf
C B
A X m
m-1
n-1 n
X = f(m,n)D
n+1
Prediktivno kodovanje sa gubicima
PREDIKTIVNE TEHNIKE ZA KOMPRESIJU SLIKE
C B
A X m
m-1
n-1 n
X = f(m,n)D
n+1
Anmf ),(ˆ
2),(ˆ BA
nmf
2),(ˆ DA
nmf
42
),(ˆ DBAnmf )(),(ˆ CBAnmf
2
),(ˆ CDAnmf
CBAnmf
2
1
4
3
4
3),(ˆ
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
lkQ
lkFRoundlkFq ,
,,
- gubitak detalja zbog eliminacije visokofrekventnih DCT koeficijenata, - granularnost strukture na površinama relativno uniformne osvjetljenosti kao posljedica grube kvantizacije DCT koeficijenata,- blokovski efekat pri većim stepenima kompresije.
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
originalna slika Saturn (512x512 piksela), rekonstruisana slika na osnovu 20 DCT koeficijenata (32x32 blok), slika greške
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
originalna slika Saturn (512x512 piksela), rekonstruisana slika na osnovu 12 DCT koeficijenata (32x32 blok), slika greške
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
originalna slika Saturn (512x512 piksela), rekonstruisana slika na osnovu 4 DCT koeficijenta (32x32 blok), slika greške
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
TRANSFORMACIONE TEHNIKE ZA KOMPRESIJU SLIKE
Internacionalna organizacija za standarde (ISO), Internacionalna elektrotehnička komisija (IEC) i Internacionalna telekomunikaciona unija (ITU) rade na standardizaciji metoda, hardvera i softvera za multimedijalne sisteme, videokonferencije, videotelefoniju i slične aplikacije. Do sada se pojavilo više standarda (JPEG, JPEG 2000 za kompresiju mirnih slika, MPEG-1, MPEG-2, MPEG-4, H.261, H.263, za kompresiju video sekvenci, itd.).
JPEG (Joint Photographic Experts Group) STANDARD
•Sekvencijalno DCT kodovanje: slika se koduje jednim prolazom kroz sliku, s lijeva na desno, pa odozgo prema dole.
•Progresivno DCT kodovanje: slika se koduje u više prolaza, s ciljem da korisnik što prije dobije makar i grubu sliku, a zatim sve finiju i finiju strukturu slike.
•Kodovanje bez gubitaka: garantuje se perfektna rekonstrukcija originalne slike, ali je stepen kompresije mali.
•Hijerarhijsko kodovanje: slika se koduje različitim rezolucijama, pri čemu za rekonstrukciju slike niže rezolucije nije potrebno poznavanje podataka o kodovanju slike više rezolucije.
JPEG STANDARD
Blok šema JPEG sekvencijanog kodera i dekodera
JPEG STANDARD - kodovanje
Na ulazu kodera, originalne vrijednosti piksela, koje su pozitivni cijeli brojevi iz opsega [0, 2p-1], se pomijeraju u opseg [ -2p-1, 2p-1-1]. p=8, [0, 255], [-128, +127].
1,0,2
)12(cos
2
)12(cos],[
][][],[
1
0
1
0
plkp
nl
p
mknmf
p
lklkF
p
m
p
n
.111
,0,21][
pj
jj
JPEG STANDARD - kodovanje
JPEG STANDARD - kodovanje
lkQ
lkFRoundlkFq ,
,,
JPEG STANDARD - kodovanje
Cik-cak poredak AC koeficijenata Vjerovatnoća da su DCT koeficijentirazličiti od nule
JPEG STANDARD - kodovanje
Prediktivno kodovanje DC koeficijenata
JPEG STANDARD - kodovanje
Binarna sekvenca:
(1) formira se tabela simbola,
(2) na osnovu Hafmanove tabelekonvertuju se simboli u binarnu sekvencu.
0,0,0,0,0,0,476 (6,9)(476) DUŽINA_NIZA=6, VELIČINA=9 i AMPLITUDA=476
(15,0)(15,0)(7,4)(12) DUŽINA_NIZA je jednaka 16+16+7=39, VELIČINA=4 i AMPLITUDA=12
Simbolom (0,0) se završava svaki 8x8 blok.
Za DC koeficijente se tabela simbola sastoji od: VELIČINA, AMPLITUDAKako se DC koeficijenti diferencijalno koduju, opseg vrijednosti je dvostruko veći nego kod AC koeficijenata
•(DUŽINA_NIZA, VELIČINA)
•(AMPLITUDA)
JPEG STANDARD - kodovanje
AC (1,4)(12)kod: (1111101101100)gdje je: (111110110) kod za (1,4)
(1100) kod 12
JPEG STANDARD - dekodovanje
vuQvuFvuF qi
q ,,,
7
0
7
0 2
)12(cos
2
)12(cos],[][][
4
1],[
k l p
nl
p
mklkFlknmf
.111
,0,21][
pj
jj
Pomijeranje dekompresovanih odmjeraka u opseg [0, 2p-1] .
Binarna sekvenca se konvertuje u sekvencu simbola koristeći Hafmanovu tabelu, a zatim se simboli konvertuju u DCT koeficijente.
JPEG STANDARD - primjer
22.598
512
98
864
bita broj kodovani
bita broj originalan
RC
53.164
98
piksela broj
bita broj kodovanibN
JPEG STANDARD - mjere kompresije
binarne slike 2 bita/pikselu,računarska grafika 4 bita/pikselu,grayscale slike 8 bita/pikselu,slike u boji 16, 24 ili više bita/pikselu.
kompresijenakon podataka kolicina
podataka kolicina originalnaRC
Stepen kompresije:
Broj bita po pikselu u komprimovanoj slici:
piksela broj
kodovanjanakon bita brojbN
2
1
ˆ1
n
iii XX
nRMS
Srednjekvardratna greška:
JPEG STANDARD - primjer
Originalna slika 500×362 piksela i kodovana sa 8 bita/pikselu
Slika komprimovana 4 puta
Slika komprimovana 10 puta Slika komprimovana 22 puta
JPEG STANDARD - primjer
JPEG STANDARD - primjer
JPEG STANDARD - primjer
JPEG STANDARD - primjer