Documente Academic
Documente Profesional
Documente Cultură
Calitatea imaginii
- Se poate realiza compresie cu pierderi sau fr pierderi.
- Compresia cu pierderi folosete o codare mai eficient dect codarea fiecrei valori din fluxul de
date de intrare.
- Reducerea numrului de bii (cuantizarea) pentru compresia cu pierderi se face pe baza unor:
- evaluri subiective (cele mai importante):
Scor
5
4
3
2
Calitate
Foarte Bun
Bun
Acceptabil
Slab
1 Proast
Modificarea imaginii
Imperceptibil
Abia perceptibil dar nesuprtoare
Perceptibil i puin suprtoare
Suprtoare dar fr pierderea
semnificaiei
Foarte suprtoare i cu pierderea
semnificaiei
PSNR = 10log
PSNR
> 40dB
30 40dB
< 30dB
2552
X ( i, j ) Y ( i, j )
(dB)
Calitate
Foarte bun
Bun
Slab
EANTIONAREA
Pentru o reprezentare discret n timp semnalele continue sunt eantionate cu o frecven de
eantionare;
Pentru ca semnalul original s poat fi refcut trebuie ca frecvena de eantionare s fie de dou
ori mai mare dect frecvena maxim a spectrului semnalului continuu;
CUANTIZAREA
Eantioanele au ns valori reale. Pentru o reprezentare discret
eantioanelor este necesar cuantizarea;
pe un numr de bii a
n funcie de numrul de bii ales putem reprezenta mai multe niveluri ale amplitudinii
eantioanelor. (3 bii nseamn 8 niveluri, 4 bii - 16 niveluri etc.)
Teorema lui Shannon: Pentru un proces aleator Gausian alb cu lrgimea de band W rata de bit
depinde de raportul semnal-zgomot:
De exemplu:
Semnal vocal cu banda W = 4kHz i SNR = 40dB
Distorsiunea de cuantizare provine din faptul c pentru fiecare bit n plus eroarea de cuantizare
se njumtete i distorsiunea se micoreaz de 4 ori: D 22 B .
2
De asemenea D este proporional cu energia semnalului: D x .
10
11
7 dB .
12
Valoar
e
0
1
2
3
4
5
6
7
Probabilitatea
apariie
0,125
0
0,5
0
0,125
0,125
0
0,125
de Codare
PCM
000
001
010
011
100
101
110
111
Codare
entropic
100
0
101
110
111
13
- Exemplu de semnal fr o corelaie ntre amplitudinile succesive este zgomotul alb gausian.
- Putem exploata corelaia ntre eantioane prin:
- Predicia eantionului urmtor pe baza celui curent
x ( i, j ) = x ( i 1, j )
x ( i, j ) = x ( i, j ) x ( i, j ) = x ( i, j ) x ( i 1, j )
Aceast diferen are (n medie) un interval mult mai mic de valori (varian mai mic). => Se
poate cuantiza diferena pe un numr mai mic de bii.
Codarea Run-Length
Codarea Huffman
Codarea Aritmetic
14
Fr
pierderi
Predicie
Codarea
sursei
Codare
hibrid
Transformri
Codare pe
niveluri
DPCM
DM
FFT
DCT
Poziia biilor
Subeantionare
Codare pe
subbenzi
Cuantizarea vectorial
JPEG
MPEG
H.261
Cu pierderi
Iau n
considerare
coninutul
Codarea entropic
- Pentru un set de simboluri cu probabilitile de apariie cunoscute
p1 , p2 ,..., p N
- Informaia proprie simbolului i este:
I = log pi
E ( p1 , p2 ,..., pN ) = pi log pi
i =1
16
Exemplu:
flag = !, datele comprimate conin caracterul ! - numr de apariii
intrare: ABCCCCCCCCDEFGGGGG
ieire:
(18 caractere)
ABC!8DEFG!5
(11 caractere)
si
Ps(si)
0
1
2
3
4
5
0,005
0,05
0,14
0,20
0,51
0,08
Cuvntul
de cod
1001111
100110
101
11
0
1000
18
6
7
0,04
0,005
10010
1001110
19
1. Se calculeaz
probabilitile dinamic.
k 1
2. inf = pk ; sup = pk
1
3. r = min max
4. max' = min + r sup
2/3 _
1/3_
0
.6667
c 1/3
.5834
.6667
_ c 1/4
.6334
b 1/3
.4167
a 1/3
.3333
b 2/4
_ a 1/4
.6001
.6667
c
2/5
b
2/5
a
.5834 _ 1/5
c 3/6
.6501
_
b 2/6
.6390
.6334
a 1/6
- Valorile viitoare ale semnalului pot fi aproximate (prezise) din comportamentul (eantioanele)
anterioare datorit corelaiei ntre eantioanele semnalului.
- Codarea DPCM se bazeaz pe faptul c orice poate fi prezis din semnal la codare poate fi
reconstruit la decodare.
- Etapele codrii DPCM:
20
1. Prezicerea valorii curente x(n) din valorile anterioare x(n 1) , x(n 2) , ...
2. Calculul diferenei (eroarea de predicie) ntre valoarea curent i valoarea prezis:
x ( n ) = x ( n ) x ( n )
3. Codarea erorii prediciei (cuantizarea + codarea VLC = cu numr variabil de bii) se poate face
cu un numr mai mic de bii.
x ( n)
x(n)
Q
x (n)
Predictor
xq (n)
00010100101
VLC
Memorie
x ( n)
- Decodorul trebuie s reproduc aceeai valoare prezis x (n) din valorile anterior decodate
x ( n 1) , x ( n 2 ) ...
21
00010100101
v ( n)
x ( n)
VLD
Predictor
x (n)
Memorie
x (n) = hk x(n k )
k =1
- Eroarea de reconstrucie/codare:
22
x (n) = h1 x ( n 1) + h2 x ( n 2)
Codarea cu transformate
23
- O transformat convertete un set de date ntr-o reprezentare alternativ care este mai convenabil
pentru codare
- Transformatele sunt reversibile
Exemplu:
- un bloc de 2 x 2 pixeli:
Transformata: Transformata
invers:
A = X0
X0 = A
B = X1 + X0
X1 = B A
C = X2 + X0
X2 = C A
D = X3 + X0
X3 = D A
A, B, C i D au fiecare 8 bii
X0 este codat pe 8 bii (pixelul de baz)
X1, X2 i X3 necesit numai 4 bii
8 + (3 x 4) = 20 => 5bii/pixel
24
Cmn = km kn I yx cos
( 2 x + 1) m cos ( 2 y + 1) n
16
x =0 y =0
16
1
2 2 , pentru m, n = 0
k ,k =
unde m n 1
,
n rest
2
- Coeficientul C00 se numete coeficient DC i reprezint frecvena spaial 0 sau media valorilor
pixelilor din bloc.
25
Y = CT XC
unde X este un bloc de NxN pixeli din imagine, Y conine NxN coeficieni DCT, iar C este o
matrice NxN cu elementele:
Cmn = kn
2m + 1) n
(
cos
2N
1
2 2 , pentru n = 0
kn =
1,
n rest
2
26
I xy = ku kv Cvu cos
( 2 x + 1) u cos ( 2 y + 1) v
16
u =0 v =0
16
1
2 2 , pentru u, v = 0
k ,k =
unde u v 1
,
n rest
2
- Teoretic transformarea DCT IDCT este fr pierderi
Codarea n subbenzi
27
- S presupunem c un semnal are cea mai mare parte a energiei concentrate n domeniul
frecvenelor joase.
- Se efectueaz o eantionare cu 10kHz, 8 bii pe eantion. Rata de transmisie necesar este de
80kbii/s.
- O transmisie mai eficient se poate realiza diviznd domeniul de frecven n dou subbenzi:
FTJ
FTJ
FTS
FTS
28
Reprezentare polifazic
- Dac matricea E( z ) este matricea de la transformata DCT i R ( z ) este matricea de la
transformata IDCT atunci codarea pe subbenzi devine codarea cu Transformata Cosinus Discret.
- Codarea n subbenzi poate fi privit ca o codare prin transformate cu blocuri suprapuse. Deci
poate exploata corelaia ntre pixeli pe domenii mai largi.
29
q2 = c 22b x2
k
unde c = 1/12 .
- Eroarea total de cuantizare este:
1
=
M
2
q
k =1
1
b=
M
30
b
k =1
2
qk
- Se arat c
1/ M
2 b
2
q c 2 x2k
k =1
2
2
Egalitate avem pentru qk = q k
- Ctigul este
G=
1
M
2
xk
k =1
1/ M
xk
k =1
31