án tt nghip i hc c lc
Th Hnh – D04VT1 i
C LC
MC LC i
THUT NG VIT TT iii
DANH MC HÌNH V v
LI GII THIU vi
CHNG 1: TNG QUAN V NÉN NH VÀ CHUN NÉN NH JPEG 7
1.1. Gii thiu tng quan v nén nh 7
1.1.1 Phân loi k thut nén 8
1.1.2 Mt s k thut mã hóa 9
1.2 Chun nén JPEG 12
1.2.1 Gii thiu 12
1.2.2 Bin i cosin ri c DCT 14
1.2.3 Lng t hóa 19
1.2.4 Quét zig-zag 21
1.2.5 Mã hóa dài thay i VLC 23
1.2.6 Quá trình gii nén 25
1.2.7 Mã hóa và gii mã JPEG tun t 28
1.2.8 Nén JPEG y tin 29
1.3. Kt lun 30
CHNG 2: BIN I WAVELET 31
2.1 Bin i Wavelet 31
2.1.1 Bin i wavelet ri rc 33
2.1.2 Khái nim phân tích a phân gii 34
2.1.3 S dng b lc và thut toán hình chóp 36
2.2 M rng i vi các tín hiu 2-D. 39
2.3 Trin khai Lifting cho bin i wavelet ri rc 41
2.3.1 Lifting 43
2.3.2 S ph thuc d liu cho tính toán Lifting 47
2.4. Kt lun 49
DWT Decrete Wavelet Transform Bin i wavelet ri rc
EBCOT Embedded Block Coding with
optimized Truncation
Thut toán mã hóa cho BPC
EPH End of Packet Header Kt thúc tiêu gói
FDCT Forward Decrete Cosin Transform Bin i cosin ri rc thun
FIR Finite Impulse Response áp ng xung hn ch
ICT I Colour Transform Nhóm các nh
IDCT High Definition Television Truyn hình phân gii cao
ISO/IEC International Standards
Organisation/International
Electrotechnical Commission
T chc chun quc ty ban k
thutin quc t
IWT Interger Wavelet Transform Bin i Wavelet nguyên
JPEG Joint Photographic Experts Group Nhóm chuyên môn vnh
án tt nghip i hc Thut ng vit tt
Th Hnh – D04VT1 iv
JPWL JPEG Wireless JPEG cho không dây
LSB Least Significant Bit Bit có quan trng thp nht
MJPEG Motion JPEG Mt chun trong h JPEG
MPEG Motion Picture Experts Group Nhóm chuyên môn v phim nh
MSB Most Significant Bit Bit có quan trng cao nht
MSE Mean - Squared Error Sai s bình phng trung bình
PSNR Peak Signal to Noise Ratio T l tín hiu nh trên nhiu
QMF Quardrature mirror filters B lc gng cu phng
RGB Red, Green and Blue Các màu c bn
RCT Reversible Colour Transform Bin i màu thun nghch
RLC Run Length Coding Mã hóa dài chy
RVLC Reversible Variable Length Code Mã hóa dài thayi nghch
Hình 1.14 S khi h thng gii mã JPEG 25
Hình 1.15 Khôi phc các m nh trong khi 8x8 27
Hình 1.16 Sai s ca các m nh c khôi phc so vi giá tr ban u 27
Hình 1.17 S khi mã hóa và gii mã JPEG 28
Hình 1.18 Quá trình gii mã JPEG ly tin và tun t 29
Hình 2.1 Hàm wavelet m (t) 32
Hình 2.2 Phân tích và tái to tín hiu wavelet a phân gii 3 mc s dng cu trúc b
lc hình chóp. 38
Hình 2.3 Tính toán hàng-ct ca DWT 2-D. 40
Hình 2.4 M rng DWT cho các tín hiu 2-D 40
Hình 2.5 nh xe p ban u và sau các mc phân tích; 41
Hình 2.6 Phân tích và tái to tín hiu trong DWT 43
Hình 2.7 DWT thun và ngc da trên Lifting 45
Hình 2.8 S quan h d liu vi các h s lifting. 48
Hình 3.1 Kin trúc ca b mã hóa JPEG-2000 50
Hình 3.2 Ví d minh ha kh nng ca công ngh JPEG2000 53
Hình 3.3 Minh ha các kiu nén 55
Hình 3.4 S khi ca thut toán b mã hóa JPEG2000 và lung d liu 59
Hình 3.5 Lng t hóa dead-zone 63
Hình 3.6 Mã hóa theo vùng 64
Hình 3.7 Mt n ROI 65
Hình 3.8 MAXSHIF 66
Hình 3.9 Ví d cu trúc d liu cây tag 70
Hình 3.10 Cu trúc cây Quad 71
Hình 3.11 Lung bit c to ra sau mã hóa 71
Hình 3.12 nh dng lung bit 72
án tt nghip i hc Li gii thiu
Th Hnh – D04VT1 vi
I GII THIU
Nhng nm tr li ây, nén nh ã tr thành công ngh ch yu cho các ng
Mc ích ca chng này là gii thiu chung v nén nh, bao gm khái nim,
phân loi các k thut c bn ca nén nh, mt s phng pháp trong mã hóa nh: mã
hóa doán, mã hóa da trên phép bin i, mã hóa bng con. Chng 1 cng trình
bày v mt h thng nén nh theo chun JPEG.
1.1. Gii thiu tng quan v nén nh
S phân tích các tín hiu video cho thy có s liên quan cht ch gia các khung
nh liên tip và c trong bn thân nhng phn tnh. V mt lý thuyt, vic gim s
ng quan ca nhng tín hiu này có th dn ti vic nén bng tn mà không nh
ng áng k ti phân gii hình nh. Hn na, có th tn dng nhy ca h
thng th giác ca con ngi i vi s mt mát mt s thông tin có th gim c
nhiu s tng quan hn. Do ó, các công ngh nén có tn tht có thc s dng
làm gim s lng bit biu din trong khi vn gic mt cht lng hình nh
chp nhn c.
Nh vy, nhng tín hiu mang thông tin có thc nén, tc là chuyn sang mt
s biu din hoc mt dng mà yêu cu ít bit hn tín hiu ban u (không nén). Mt
thit b hoc chng trình dùng nén mt tín hiu là mt encoder và thit b hay
chng trình gii nén tín hiu là mt decoder. Mt b enCOder/DECoder c gi
là mt CODEC.
Hình 1.1 B mã hóa ngun, b mã hóa kênh, kênh
Hình 1.1 th hin mt ví dn hình v mt CODEC là mt phn ca h thng
truyn thông. Thông tin ban u (cha nén) c mã hoá (nén): ó là quá trình mã hoá
ngun. Tín hiu ã mã hoá ngun sau ó c tip tc mã hoá thêm kh nng
chng li (mã hoá kênh) và u tiên truyn dn qua mt kênh. Ti u thu, mt
b gii mã kênh s tách và (hoc) sa nhng li trong quá trình truyn dn và mt b
án tt nghip i hc Chng 1 Tng quan v nén nh…
Th Hnh – D04VT1 8
gii mã ngun s gii nén tín hiu. Tín hiu ã c gii nén có th ging ht nh tín
hiu ban u (nén không tn tht) hoc nó cng có th b méo hoc suy bin theo mt
vài cách nào ó (nén có tn tht).
1.1.1 Phân loi k thut nén
n (nguyên lý này c s dng trong mã hoá Huffman). Vic nén c to ra bi
vic làm gim s tha tnh trong file vn bn. Loi CODEC c s dng cho mc
ích này c bit n là CODEC entropy. Mô hình ngun s khai thác các c tính
ca d liu hình nh và biu din nó di mt dng có th nén bi mt b mã hoá
entropy. Hình 1.2 th hin mt thit k c bn ca mt CODEC hình nh hoc video
bao gm mt mô hình ngun và mt b mã hoá/gii mã entropy.
Hình 1.2 CODEC hình nh hoc video
1.1.2 Mt s k thut mã hóa
a) Mã hóa doán:
i vi mã hoá doán (predictive coding) các giá tr mang thông tin ã c gi
hay ang sn có sc s dng doán các giá tr khác, và ch mã hoá s sai lch
gia chúng. Phng pháp này n gin và rt phù hp vi vic khai thác các c tính
cc b ca bc nh. K thut DPCM chính là mt ví dn hình ca phng pháp
này. u. Trong phng pháp mã hoá d oán, sai lch nh gc và nh doán vn
có ý ngha (còn s dng bc tip theo) sau khi lng t hoá, chính u này làm
cho phng pháp mã hoá doán có nhiu d liu c truyn i hn so vi phng
pháp mã hoá bin i.
b) Mã hóa da trên phép bin i:
Mã hoá da trên phép bin i (transform based coding) thc hin nh sau: trc
tiên thc hin phép bin i vi nh chuyn s biu din nh t min không gian
sang mt min biu din khác. Các phép bin i thng dùng là: DCT - bin
i Cosine ri rc, DWT - bin i Wavelet ri rc tip ó thc hin mã hoá i vi
các h s bin i. Phng pháp này có hiu sut nén cao hn rt nhiu so vi phng
pháp nén doán bi vì chính các phép bin i (s dng các thuc tính nén nng
ng ca mình) ã gói gn toàn b nng lng bc nh ch bng mt s ít các h s,
s ln các h s còn li ít có ý ngha loi b sau khi lng t hoá và nh vy
án tt nghip i hc Chng 1 Tng quan v nén nh…
Th Hnh – D04VT1 10
ng d liu phi truyn nh i rt nhiMt phép bin i là mt hàm toán hc
c s dng bin i mt tp các giá tr này thành mt tp giá tr khác và to ra
quan tng không bao git c do nhng b lc này ch xp x vi các b lc lý
ng. Hình 1.3 di ây là s tng quát gii thích k thut mã hoá bng con.
Các b lc s dng trong mã hoá bng con là các b lc gng t phng – QMF
(quardrature mirror filters), do vy chúng ta ch cn thit k các b lc thông thp
có áp ng H còn áp ng ca các b lc thông cao ch là s dch pha 180
0
so vi b
lc thông thp. S chính xác ca b lc ph thuc vào s các h s ca b lc.
Mt trong các phng pháp mã hoá bng con ó là áp dng s phân ly cây bát
phân phân ly d liu nh thành các bng tn khác nhau. Ý tng ca
phng pháp này là: trc tiên lc và lc bnh phân ly nh thành các bng con
tn s cao và thp, sau ó tip tc phân ly nhng ch áp dng cho ng con tn s thp
to thành các bng con tn s cao và thp tip tc lc b. K thut này rt ph
bin và cng c áp dng trong các b mã s dng bin i Wavelet. u ra ca các
ng con sau khi ã gin lc sc lng t hoá và mã hoá c lp. Mi bng con
s s dng b lng t hoá riêng và mi b lng t hoá này có tc ly mu riêng
(bít/mu).
N vy rõ ràng mã hoá ng con không t c s nén, mà nó ch thc hin
vic gii ng quan d nh gc và tp trung ng ng ca nh vào mt s
ng con. Nén ch t c là do s c b nh
(decimation)
và do s lng t
hoá
(quantization)
.
Trong các h thng mã hoá bng con hai chiu thc t, ngi ta chia min tn s -
không gian hai chiu ca nh gc thành các bng khác nhau bt k mc nào.
án tt nghip i hc Chng 1 Tng quan v nén nh…
Th Hnh – D04VT1 12
Hình 1.4 Minh ho quá trình phân ly bng con cây bát phân
nó cho nh nén cht lng tt nht i tc bit thp và gii thut chuyn i nhanh và
d dàng thc hin bng phn cng. Trc khi a vào chuyn i DCT, nh gc phi
c x lý nén di tn tín hiu hiu màu và chia nh thành các block. Vic nén ph
tín hiu hiu màu làm gim tha tâm sinh lý. thut này da vào c trng h
thng th giác a con ngi. Mt ngi kém nhy vi s thay i tín hiu màu hn s
thay i tín hiu chói. Vì vy, ta không cn thit truyn i thông tin a tín hiu màu
vi tn s nh truyn thông tin tín hiu chói.
l ly mu thông ng là 4:2:2 và 4:1:1. nh ng 4:2:2 ngha là c 4 mu tín
hiu chói thì có 2 mu cho mi loi tín hiu hiu màu. Nói cách khác, c 2 mu tín
hiu chói có 1 mu tín hiu hiu màu. nh ng 4:1:1 ngha là c 4 mu tín hiu chói
thì có 1 mu cho mi loi tín hiu hiu màu. Gi s tín hiu hiu màu ch c ly
mu theo chiu c và mi mu có 8 bit, s bit trung bình trên mt pixel theo l ly
mu 4:2:2 là 8×4/2, hay 16 bit/pixel. Theo l 4:1:1 là 8×6/4, 12bit/pixel. thut
ly mu tín hiu hiu màu c áp ng hai chiu ngang và dc. nhiên, iu này
làm gim hn na lng thông tin v tín hiu hiu màu.
Trc khi thc hin bin i DCT, nh c chia thành các khi ln riêng bit
không chng nhau (MB-Marco Block). Mi MB bao gm 4 block các tín hiu chói (Y)
và 2,4 hoc 8 block các mu tín hiu hiu màu (Cr,Cb). S các block a tín hiu hiu
màu ph thuc vào tiêu chun ly mu a tín hiu video: 4:2:2, 4:1:1 hay 4:2:0 v.v.
Tt các block có cùng kích thc và mi block là mt ma trn im nh 8×8
pixel c ly t mt nh màn hình theo chiu t trái sang phi, t trên xung di.
Kích thc block là 8×8c chn bi hai lý do sau:
án tt nghip i hc Chng 1 Tng quan v nén nh…
Th Hnh – D04VT1 14
a) Th nht, qua vic nghiên cu cho thy hàm tng quan suy gim rt nhanh khi
khong cách gia các pixel vt quá 8.
b) Th hai, là s tin li cho vic tính toán và thit k phn cng. Nói chung,
phc p v tính toán ng nu kích thc block tng.
Hình 1.6 mã hóa và gii mã theo JPEG
1.2.2 Bin i cosin ri c DCT
X k C k xm
NN
π
−
=
+
=
∑
(1.1)
Hàm bin i DCT ngc (mt chiu):
( )
1
0
2 (2 1)
()()cos
2
N
k
mk
xm XkCk
NN
π
−
=
+
=
∑
(1.2)
trong ó: X(k) là chui kt qu.
x(m) là giá tr a mu m.
7
0
7
0
ππ vkuj
kjf
jk
++
∑∑
==
(1.3)
trong ó:
f(j,k)- các mu gc trong khi 8×8 pixel.
F(u,v)-các h s ca khi DCT 8×8.
( ) ( )
1/2 ,0
,
1 ,0
uv
Cu Cv
uv
=
=
≠
án tt nghip i hc Chng 1 Tng quan v nén nh…
00
( 2 1) ( 2 1)
, ( , )cos cos
4 16 16
uv
CuCv
ju kv
f jk Fuv
ππ
==
++
=
∑∑
(1.5)
Nh vy, bin i DCT ging nh bin i Fourier và các h s F(u,v) ng ging
nhau v ý ngha. Nó biu din ph tn tín hiu c biu din bng các mu f(j,k). n
thân phép bin i DCT không nén c s liu, t 64 mu ta nhn c 64 h s.
Tuy nhiên, phép bin i DCT thay i phân b giá tr các h s so vi phân b các
giá tr mu. Phép bin i DCT cho ta giá tr DC tc F(0,0) thng ln nht và các h
s trc tip k nó ng vi tn s thp có giá tr nh hn, các h s còn i ng vi tn
s cao có giá tr rt nh.
Hình 1.7 là mt ví d minh ha quá trình DCT hai chiu a mt khi 8×8
im nh (chói) c trích ra t mt nh thc. Nu dùng quá trình DCT cho các tín
hiu s thành phn Y, C
R
,C
B
thì các tín hiu C
B
,C
các giá tr pixels en (giá tr=0) và trng (giá tr=255) xen . Sau khi gim vi –128
thu c các giá tr pixels trong di ng +127 và –128. ây là khi nh có s bin
i ln nht v giá tr biên các im nh và các h s DCT kt qu xác nh nhn
xét này. Mc dù có nhiu h s tn s bng 0, giá tr ca các h s có tn s cao óng
vai trò quan trng trong vic tái o i hình nh khi bin i DCT ngc.
Tóm i, DCT làm gim ng quan không gian a thông tin trong block. iu
ó cho phép biu din thích hp min DCT do các h s DCT có xu hng có phn
tha ít hn. iu này có ngha là DCT gói mt phn ln nng lng tín hiu vào
án tt nghip i hc Chng 1 Tng quan v nén nh…
Th Hnh – D04VT1 19
các thành phn bin i có tn s ng i thp u tr hoc truyn dn, o 0 và
các giá tr rt thp i vi thành phn tn s cao.
Hình 1.9 Khai trin DCT cho khi nh có chói dng bàn c.
Nh c tính ca h thng nhìn a mt ngi, các h s DCT có th c mã hóa
phù hp, ch các h s DCT quan trng nht mi c mã hóa và truyn i. DCT
thun kt hp vi DCT nghch không cho tn tht nu dài t mã ca h s là 13
n 14 bit cho tín hiu video u vào c s hóa bng các mu dài 8 bit. Nu h s
c lng t hóa bng 11 bit (hoc ngn hn), thì nén bng DCT có tn hao.
1.2.3 Lng t hóa
Bc tip theo a quá trình nén trong nh là lng t hóa các h s F(u,v) sao
cho làm gim c s lng bit cn thit. Các h s ng ng vi tn s thp có các
giá tr ln hn, và nh vy nó cha phn nng lng chính a tín hiu, do ó phi
lng t hóa vi chính xác cao. Riêng h s mt chiu òi i chính xác cao
nht, bi nó biu th giá tr chói trung bình a tng khi phn tnh. Bt
mt sai sót nào trong quá trình lng t h s mt chiu u có kh ng nhn bit d
dàng bi nó làm thay i mc chói trung bình a khi. Ngc i, vi các h s
án tt nghip i hc Chng 1 Tng quan v nén nh…
Th Hnh – D04VT1 20
ng ng vi tn s cao và có các giá tr nh, thì có th biu din i bng tp giá tr
nh n hn các giá tr cho phép.
+
),(
2
),(
),(
vuQ
vuQ
vuF
(1.6)
Các giá tr Fq(u,v) s c mã hóa trong các công n tip theo.
Cn phi xác nh là trong quá trình lng t hóa có trng s có xy ra mt thông
tin, gây tn hao. ây là bc tn hao duy nht trong thut toán nén. Mc tn hao
ph thuc vào giá tr các h s trên ng lng t. Sau khi nhân các h s lng t hóa
Fq(u,v) vi Q(u,v) và bin i ngc DCT không nhn c block s cp các mu
f(j,k). Tuy nhiên, trong trng hp nh t nhiên và la chn các giá tr Q(u,v) thích
hp, s khác nhau nhn mc mà mt ngi không phân bit c gia nh gc
và nh biu din.
Hình 1.10 Các ng lng t cho tín hiu chói và màu theo chun JPEG
án tt nghip i hc Chng 1 Tng quan v nén nh…
Th Hnh – D04VT1 21
Các thành phn DC và tn s thp là các thông s nhy m nht a khi pixel
gc. H s DC c lng t vi chính xác 12 bit nhm tránh các nhiu xut
hin gia các khi im nh. Ngc i, các h s tn s cao có th lng t hóa thô
vi chính xác 2 bit-do kh ng m nhn a mt ngi gim tn s cao. Theo
ó, h s chia trong ng lng t hóa là nh i vi các h s có tn s thp và ng
t t i vi các h s có tn s cao hn.
Trong hình 1.10, giá tr khi xác nh cho phép các giá tr tín hiu chói và tín
hiu màu c lng t khác nhau. Nhiu lng t i vi tín hiu màu khó nhìn thy
n i vi tín hiu chói, cho nên có th thc hin lng t hóa thô tín hiu màu.
thut RLC c dùng mã hóa có hiu qu các h s DCT ã lng t hóa
n là dùng trc tip cho s liu nh. Sau quá trình quét zig-zag trên, RLC c
thc thi. Mt h s khác 0 sau giá tr DC c mã hóa bng 1 t mã bao gm 2 thông
s: s lng 0 chy trc 1 h s riêng khác 0 và mc a nó sau khi lng t hóa.
án tt nghip i hc Chng 1 Tng quan v nén nh…
Th Hnh – D04VT1 23
RLC thc cht là vic thay th các h s có giá tr 0 bng s lng các ch s 0 xut
hin.
Hình 1.12 là mt ví d v mã hóa entropy. Trong ví d này, chui mt chiu
các h s DCT sau khi quét zig-zag vi các giá tr ging nhau c gom i vi nhau
bng mã RLC. Lúc này, chui mt chiu có các n chui dài có cùng giá tr là các
symbol có dng:< chiu dài chui 0, giá tr>.
ây, giá tr 10 không có giá tr 0 nào trc ó c biu din bng <0,10>; giá
tr –2 có hai giá tr 0ng trc c biu din bng <2,-2>v.v Riêng mt du c
bit là End of Block (EOB) c dùng cho bit tt các h s tip theo trong khi
bng 0. Trong ví d này, ta có mt chui 49 t mã vi giá tr 0. Nh vy ch xét riêng
49 t mã giá tr 0c nén xung ch còn 3 t mã. iu này chng hiu sut nén rt
cao a mã hóa RLC. Nén bng mã RLC là quá trình nén không tn hao.
1.2.5 Mã hóa dài thay i VLC
Các t mã RLC tip c c mã hóa bng cách t các t mã ngn cho các mc
có xác sut xut hin cao và các t mã dài cho các mc có xác sut xut hin thp.
Bng 1.1 minh ha các phân nhóm các h s AC.
ng 1.2 là mt ví d v bng mã Huffman tng ng cho các nhóm. T mã ngn
báo hiu kt thúc khi (EOB) cho bit tt các h s còn i trong khi mang giá tr
0. Trong ví d khi h s DCT, h s DCT (40) c mã hóa DPCM bng cách dùng
giá tr DC (25) a khi DCT trc. Mã hóa DPCM m rng thang biu din tín hiu
Y t ( -1024 n 1016) n (-2048 n 2032).
ng 1.1 Phm vi giá tr các h s trong các nhóm (category).
Giá tr chênh lch h s DC c mã hóa VLC nh mt ng tìm kim (lookup
table). u ra a nó là mt s nh phân Huffman da trên giá tr chênh lch các h s