You are on page 1of 105

MC LC

LI GII THIU...................................................................................................................................................6
CC THUT NG TING ANH..........................................................................................................................8
LI M U........................................................................................................................................................10
CHNG I.
C S V NN TN HIU VIDEO.............................................................................11
I.1
S CN THIT CA NN TN HIU..............................................................................................11
I.2

QU TRNH S HA TN HIU......................................................................................................12
I.2.1
I.2.2
I.2.3

LY MU.............................................................................................................................12
LNG T HA.................................................................................................................12
M HA...............................................................................................................................13
TC BIT V THNG LNG KNH TRUYN TN HIU S.............................................14

I.3.1
I.3.2
I.4

TC BT.........................................................................................................................14
THNG LNG KNH TRUYN.....................................................................................14
QU TRNH BIN I TN HIU MU.........................................................................................14

I.5

CC TIU CHUN LY MU TN HIU VIDEO S...................................................................16

I.6

M HNH NN TN HIU VIDEO...................................................................................................17

I.3

I.6.1
NN TN HIU VIDEO.......................................................................................................17
I.6.2
LNG TIN TRUNG BNH (ENTROPY)..........................................................................18
CHNG II.
CC K THUT NN VIDEO...................................................................................21
II.1
PHN LOI CC K THUT NN.................................................................................................21
II.2

QU TRNH BIN I.....................................................................................................................21

II.2.1
IU XUNG M VI SAI DPCM.........................................................................................22
II.2.2
M HA BIN I.............................................................................................................22
II.2.2.1
Bin i cosin ri rc DCT.................................................................................................22
II.2.2.2
Bin i Hadamard..............................................................................................................23
II.3
QU TRNH LNG T..................................................................................................................24
II.3.1
LNG T HA V HNG...........................................................................................24
II.3.2
LNG T HA VECTOR................................................................................................25
II.4
QU TRNH M HA.......................................................................................................................25
II.4.1
M HA DI THAY I.............................................................................................25
II.4.1.1
M ha Huffman.................................................................................................................26
II.4.1.2
M ho mc dc chiu di RLC..........................................................................................26
II.4.2
M HA S HC................................................................................................................27
II.5
TIU CHUN NH GI CHT LNG NH NN...................................................................30
CHNG III.
CC CHUN NN THUC H MPEG TRC MPEG-4 H.264/AVC.............31
III.1
GII THIU V LCH S PHT TRIN CA K THUT MPEG...............................................31
III.2

CC TIU CHUN NN TRC MPEG-4 H.264/AVC.................................................................31

III.2.1
TIU CHUN MPEG-1.......................................................................................................31
III.2.1.1
Cc c im ca tiu chun MPEG-1................................................................................32
III.2.1.2
Cu trc dng bit ca MPEG-1...........................................................................................33
III.2.2
TIU CHUN MPEG-2.......................................................................................................34
III.2.2.1
Cc c im ca tiu chun MPEG-2................................................................................34
III.2.2.2
S khc nhau chnh gia MPEG-1 v MPEG-2..................................................................35
III.2.3
TIU CHUN MPEG-4.......................................................................................................36
III.2.4
SO SNH C IM NI BT CA CC CHUN NN..............................................37
CHNG IV.
CHUN NN MPEG-4 H.264/AVC..........................................................................38
IV.1
TNG QUAN V CHUN NN MPEG-4 H.264/AVC....................................................................38
IV.1.1
IV.1.2
IV.1.2.1
IV.1.2.2

LCH S PHT TRIN CA MPEG-4 H.264/AVC...........................................................38


CC PROFLIES V LEVELS TRONG H.264/AVC..........................................................39
CC PROFILES.................................................................................................................39
CC LEVELS.....................................................................................................................40

IV.2

NHNG C TNH NI BT CA CHUN NN H.264/AVC....................................................41

IV.3

K THUT NN VIDEO H.264/AVC...............................................................................................44

IV.3.1
GII THCH NGUYN L HOT NG C BN.........................................................44
IV.3.1.1
S m ha.......................................................................................................................44
IV.3.1.2
S gii m.......................................................................................................................45
IV.3.2
KHI NN THI GIAN......................................................................................................46
IV.3.2.1
D on mt chiu (m ha nh Prediction).......................................................................46
IV.3.2.2
D on hai chiu( m ha nh Bidiriectional Prediction).................................................47
IV.3.2.3
D on lin nh (Inter-Frame)...........................................................................................51
IV.3.2.4
M ha nh SP (switching P) v SI (switching I)...............................................................53
IV.3.3
KHI NN KHNG GIAN..................................................................................................54
IV.3.3.1
Chia nh thnh cc MacroBlock.........................................................................................55
IV.3.3.2
D on trong nh (Intra-frame).........................................................................................56
IV.3.3.3
D on trng s:................................................................................................................62
IV.3.3.4
K thut tin on b chuyn ng v c lng chuyn ng.........................................63
IV.3.3.5
Php bin i nguyn ICT (Integer Discrete Cosin Transform).........................................71
IV.3.3.6
Qu trnh lng t...............................................................................................................75
IV.3.3.7
Qu trnh gii lng t:.......................................................................................................77
IV.3.3.8
Qut Zig-Zag.......................................................................................................................78
IV.3.3.9
M ha xen k.....................................................................................................................80
IV.3.3.10
Sp xp th t Slice.............................................................................................................80
IV.3.4
M HA ENTROPY............................................................................................................81
IV.3.4.1
M ha Entropy Exp-Golomb.............................................................................................82
IV.3.4.2
M ha di bin i thch nghi ni dung CAVLC..........................................................84
IV.3.4.3
M ha s hc nh phn thch nghi ni dung CABAC........................................................87
IV.3.5
B LC TCH KHI TRONG VNG...............................................................................89
IV.3.5.1
Nguyn tc ca lc tch khi..............................................................................................90
IV.3.5.2
Qu trnh lc khi................................................................................................................91
IV.3.6
CU TRC V C PHP CHUN H.264/AVC................................................................94
IV.3.6.1
Lp tru tng mng NAL.................................................................................................95
IV.3.6.2
Lp m ha video VCL (Video Coding Layer)...................................................................96
IV.3.6.3
K thut FMO v Data Partitioned Slices...........................................................................96
IV.3.6.4
K thut Arbitrary Slice Ordering.......................................................................................96
IV.3.6.5
Cu trc dng bit H.264/AVC.............................................................................................97
CHNG V.
MT S NG DNG CHUN H.264/AVC...............................................................99
V.1
TRUYN HNH INTERNET IPTV....................................................................................................99
V.2

TRUYN HNH V TINH DVB-S2.................................................................................................100

V.3

TRUYN HNH DI DNG...............................................................................................................100

CHNG VI.
VI.1

M PHNG QU TRNH NN-GII NN CA H.264/AVC BNG MATLAB


103
LU GII THUT....................................................................................................................103

VI.2

CHNG TRNH M PHNG:......................................................................................................103

VI.3

KT QU M PHNG....................................................................................................................104

PH LC.............................................................................................................................................................106
TI LIU THAM KHO...................................................................................................................................113

CHNG I.
I.1

C S V NN TN HIU VIDEO

S CN THIT CA NN TN HIU

Mt tn hiu video s thng cha mt lng ln d liu, do s gp rt nhiu kh


khn trong vic lu tr v truyn i trong mt bng thng knh truyn hn ch. Vi s
pht trin ca khoa hc k thut, ngy nay sn xut c b cm bin mu c
phn gii ln n 16 triu pixel tng ng vi mt bc nh c phn gii
4096x4096 pixels, nhng thc t ng dng cn phn gii cao nht hin nay cng
ch dng li 1920x1080 pixel, do c th tit kim khng gian lu tr v bng
thng knh truyn th cn nn tn hiu.
Qu trnh nn nh thc hin c l do thng tin trong bc nh c t chc, c trt t,
v vy nu xem xt k tnh trt t, cu trc nh s pht hin v loi b c cc lng
thng tin d tha, ch gia li cc thng tin quan trng nhm gim s lng bit khi lu
tr cng nh khi truyn m vn m bo tnh thm m ca bc nh. Ti u thu, b
gii m s t chc, sp xp li c bc nh xp x gn chnh xc so vi nh gc
nhng vn m bo thng tin cn thit. Tn hiu video thng cha ng mt lng
ln cc thng tin d tha, chng thng c chia thnh 5 loi nh sau:
C s d tha thng tin v khng gian: gia cc im nh ln cn trong phm
vi mt bc nh hay mt khung video, cn gi l tha tnh bn trong tng frame.
C s d tha thng tin v thi gian: gia cc im nh ca cc khung video
trong chui nh video, cn gi l tha ng gia cc frame
C s d tha thng tin v ph: gia cc mu ca cc d liu thu c t cc
b cm bin trong camera, my quay
C s d tha do thng k: do bn thn ca cc k hiu xut hin trong dng bit
vi cc xc sut xut hin khng ng u.
C s d tha tm th gic: thng tin khng ph hp vi h thng th gic con
ngi, nhng tn s qu cao so vi cm nhn ca mt ngi.
u im ca vic nn tn hiu:
Tit kim bng thng knh truyn ( trong thi gian thc hoc nhanh hn).

Ko di thi gin s dng ca thit b lu tr, gim chi ph u t cho thit b


lu tr.

Gim dung lng thng tin m khng lm mt tnh trung thc ca hnh nh.

C nhiu phng php nn tn hiu, phng php nn bng cch s ha tn hiu vn


t ra hu hiu trong mi thi i, mt mt n c th lm gim lng thng tin khng
quan trng mt cch ng k, mt khc n cn gip cho tn hiu c bo mt hn.

I.2

QU TRNH S HA TN HIU

Qu trnh s ho tn hiu tng t, bao gm qu trnh lc trc (prefiltering), ly mu,


lng t v m ho minh ha nh hnh I.1. Qu trnh lc trc nhm loi b cc tn s
khng cn thit tn hiu cng nh nhiu, b lc ny cn gi l b lc chng nhiu
xuyn knh Aliasing.
I.2.1 LY MU
Thc cht y l mt php ton ri rc hay l mt php iu bin xung PAM v c
thc hin bng cc mch Op-amp c cc khin strobe. N to ra gi tr tn hiu tng
t ti mt s hu hn cc gi tr c bin ri rc gi l cc mu. Cc mu c ly cch
u nhau gi l chu k ly mu. Tn s ly mu phi tho mn nh l NyquistShannon :
f s 2 f maz

Trong :

+ fs l tn s ly mu.
+ fmax l tn s cc i ca ph tn hiu tng t.

I.2.2 LNG T HA.


Qu trnh lng t l qu trnh chuyn mt xung ly mu thnh mt xung c bin
bng mc lng t gn nht hay ni cch khc l lng t chuyn i cc mc bin
ca tn hiu ly mu sang mt trong cc gi tr hu hn cc mc nh phn. Lng t
Tn hieu goc

ho bin i tn hiu lin tc theo thi gian thnh tn hiu c bin ri rc, nhm lm
gim nh hng ca tp m trong h thng, hn ch cc mc cho phpt ca tn hiu ly
Xung lay mau

mu v chun b truyn tn hiu gc t tng t sang s. Gi tr thp phn ca cc mu


sau khi lng t ho s c biu din di dng s nh phn n bit (N= 2 n), vi n l
phn gii lng t ho, n cng ln th chia cng mn, do chnh xc cng cao.
TS chu ky lay mau
t
Do lm trn cc mc nn tn hiu b mo dng do sai s lng t gi l mo lng t,
Tn hieu c lay

t s tn hiu trn mo lng


mau t (S/N) c xc nh bi:
S
6,02n 1,76( dB)
N

t
Ma hoa tn
hieu

1000
0001
0000

4
Hnh I.1: S o qua trnh tao tn hieu so.

Lng t ha c hai loi:


Lng t tuyn tnh: php nn tn hiu theo quy lut ng cong ng u,
bc lng t bng nhau.
Lng t phi tuyn: php nn tn hiu theo quy lut ng cong khng ng
u, tp trung nhiu mc lng t nhng vng tn hiu nh. Trong k thut
nn nh, nn video th loi lng t phi tuyn c dng nhiu hn v n gim
dung lng n mc ti a vi mo lng t c th chp nhn c.
I.2.3 M HA
L qu trnh thay th mi mc in p c nh sau khi lng t bng mt dy nh phn
gi l t m. Tt c cc t m u cha s xung nh phn c nh v c truyn trong
khong thi gian gia 2 thi im ly mu cnh nhau. B m c s dng ti to
cc xung nh phn hoc cc t m t cc gi tr lng t xut hin u ra ca b
lng t ho.

I.3

TC BIT V THNG LNG KNH TRUYN TN HIU S

I.3.1 TC BT
Tc bit l s lng bit c truyn i hay lu tr trong mt n v thi gian.
C fs * n

(bit/s)

Trong :

+ f s l tn s ly mu (Hz).
+ n l s bit nh phn trong mt k hiu.
+ C l tc bit (bps).
I.3.2 THNG LNG KNH TRUYN
L tc s liu cc i c th truyn c trn knh truyn c rng bng tn B.

C B. log 2 (1 S ) (bps)
N
Trong
+ C l tc bit (bps)
+ S N l t s tn hiu trn nhiu trng.
+ B l bng thng knh truyn (Hz).
Tc bit cng ln th tn hiu tng t khi phc li cng trung thc tuy nhin n s
l cho dung lng lu tr v bng thng knh truyn cng ln. Trong thc t truyn
3
4

tn hiu c tc bit l C (bps) th cn bng thng knh truyn l: B C (Hz)


V d: vi n = 4, fs = 44,1Khz th:
Tc truyn thng tin l : C = n x fs = 4 x 44,1 = 176,3.103 bits/s
3
4

V rng bng tn l B C =

I.4

3
x 176,4.10 3 132,3 Khz
4

QU TRNH BIN I TN HIU MU

R, G, B

Hnh II.2. Minh hoa qua trnh bien oi


mau.
Hnh I.2. Qu trnh bin i mu

Mt bc nh c chuyn t RGB sang YUV nhm gim dung lng lu tr cng nh


truyn i, trong qu trnh gii m, trc khi hin th nh th n c bin i ngc li
thnh RGB. Cng thc minh ha qu trnh bin i nh sau:
Y k r R (1 k b k r )G k b B
Cb

0.5
(B Y )
1 kb

Cr

0 .5
(R Y )
1 kr

Vi

kb k r k g 1 ,

(1)

kb = 0.114, kr = 0.299, khi th vo cng thc (1) th ta c:

Y 0.299 R 0.587G 0.114 B


0.5
Cb
( B Y ) 0.169 R 0.331G 0.5 B
1 0.114
0.5
Cr
( R Y ) 0.5 R 0.419G 0.081B
1 0.299

Nn ta c ma trn bin i t RGB sang YUV nh sau:

Y 0.29 0.587 0.1 4 R


Cb 0.169 0.3 1 0.5 G

Cr 0.5 0.419 0. 81 B
Thc hin tng t ta suy ra c ma trn bin i t YUV sang RGB nh sau:

R 1 0 1.402 Y
G 1 0.34 0.714 Cb

B 1 1.7 2 0 Cr
I.5

CC TIU CHUN LY MU TN HIU VIDEO S

Kiu ly mu cho nh video cng l mt vn kh quan trng ca k thut nn nh.


Mt s kiu ly mu ph bin minh ha nh hnh I.3 v c c im nh sau:
Tc ly mu 4:1:1 - tn s ly mu tn hiu chi l 13,5MHz, v mi tn
hiu hiu mu l 3,375MHz.
Tc ly mu 4:2:2 - tn s ly mu tn hiu chi l 13,5MHz, v mi tn
hiu hiu mu l 6,75MHz.
Tc ly mu 4:4:4 - c 3 thnh phn c cng phn gii, ngha l tn
s ly mu tn hiu chi l 13,5MHz, v mi tn hiu hiu mu l 13,5MHz.
Tc ly mu 4:2:0 - l kiu ph bin, tn s ly mu tn hiu chi l
13,5MHz, v mi tn hiu hiu mu l 6,75MHz theo c 2 chiu
V d : Mt bc nh c phn gii 720 576 pixels
phn gii ca thnh phn Y l 720 576 pixels c m ha bng t m 8 bits.

Nu s dng kiu ly mu 4:4:4 th phn gii ca thnh phn Cb, Cr l 720


576 mu cng c m ha bng t m 8 bits.

=> Vy tng s bits s dng m ha bc nh l 720 576 8 3 = 9 953 280 bits

Nu s dng kiu ly mu 4:2:0 th phn gii ca thnh phn Cb, Cr l 360


288 mu, cng c m ha bng t m 8 bits.

=> Vy tng s bits s dng l (720 576 8) + (360 288 8) 2 = 4 976 640 bits

Hnh I.3. Cc tiu chun ly mu ph bin


Trong kiu 4:4:4, tng s mu cn thit l 12 mu, do tng s bit l 12 8 = 96
bits, v trung bnh l 96/4 = 24 bits/pixel
Trong kiu 4:2:0, tn hiu c qut xen k, do ch cn thit 6 mu, 4 mu cho
thnh phn Y, 1 mu cho thnh phn Cb, 1 mu cho thnh phn Cr, do tng s bits
cn thit l 6 8 = 48 bits, v trung bnh l 48/4 = 12 bits/pixel.
Ta thy kiu ly mu 4:2:0 gim mt s lng bits so vi 4:4:4, cng chnh l l
do m kiu ly mu ny c s dng ph bin.

I.6

M HNH NN TN HIU VIDEO

Nn thi gian

Nn khng gian
B m ha ENTROPY

Lu tr nh
Hnh I.4. S khi nn tn hiu Video c bn
Cc khi chnh l:
- Khi nn d tha thi gian.

D on chuyn ng
B chuyn ng
- Khi nn d tha theo khng gian.
Bin i DCT, DWT
Lng t ha
Xp xp li trt t v m ha Entropy
I.6.1 NN TN HIU VIDEO
Tn hiu video c di ph nm trong khong 0 -> 6Mhz, do thnh phn tn s cao ch
xut hin cc ng vin ca hnh nh nn nng lng ph rt t tp trung min tn
s cao m ch yu tp trung min tn s thp. iu c ngha l s lng bit
min tn s thp s nhiu hn min tn s cao.
Trong cc h thng nn, t s nn chnh l tham s quan trng nh gi kh nng nn
ca h thng, ta gi n1, n2 l s lng bit ca tn hiu trc v sau khi nn nn ta c
cng thc nh sau:
T s nn s l C

n1
n2

Phn trm nn hay cn gi l d tha d liu tng i.

n
n n
R 1 2 x 100% 1 2 x 100%
n1
n1

Nu n1= n2 th ta c C =1, v R = 0 ngha l khng c s d tha d liu.


Nu n2<<n1 th C , R 1 , ta ni rng c s d tha d liu ln.
V d : n1 = 100Mb/s, n2 = 20Mb/s th C = 5:1, R = 80%. Tc l nh c s d tha
ln, hiu qu nn t 80%.
I.6.2 LNG TIN TRUNG BNH (ENTROPY)
Trc khi nghin cu cc phng php nn, ta cn nh gi lng thng tin ch yu
c cha ng trong hnh nh, t xc nh dung lng ti thiu cn s dng
miu t, truyn ti thng tin v hnh nh.
Thng tin c k hiu l ai v c xc sut p(ai) th lng tin c xc nh theo cng
thc sau:
I (ai ) log 2 [

1
] log 2 p ( ai )
p (ai )

10

Theo cng thc trn ta thy lng tin cha ng trong mt hnh nh s t l nghch vi
kh nng xut hin ca nh , ngha l s kin t xy ra s cha ng nhiu thng tin
hn v bng tng s lng thng tin ca tng phn t nh.
Gi lng tin trung bnh ca hnh nh l H(X) v c tnh bng cng thc sau:
N

H ( X ) p (ai ) * log 2 [
1

N
1
] p (ai ) * log 2 p (ai )
p (ai )
1

Xc sut phn b cng nhiu th lng tin trung bnh entropy cng nh. Entropy t
gi tr cc i i vi phn b u, do nu mt k hiu c xc sut ln s c s
Entropy nh.
V d: Gi s c mt nh en trng vi phn gii lng t 8 bit. K hiu i l mc
xm ca pixel v b k hiu A l tp hp tt c cc mc xm t 0->255, mc xm 0
tng ng vi mu en, mc xm 255 tng ng vi mu trng. Do , Entropy ca
255

nh l H (X ) p (i ) log 2 p (i )
0

Gi s ta c kch thc 4x8 pixels nh sau:


21

21

21

95

169

243

243

243

21

21

21

95

169

243

243

243

21

21

21

95

169

243

243

243

21

21

21

95

169

243

243

243

Ta s xt cc d tha ca cc pixel trong nh, hoc gia cc nh lin tip nh sau.


Gi s cc mc xm ca tn hiu hnh en trng c lp thng k vi nhau, da
vo s liu thng k c th l.
Mc xm

S lng pixel

Xc sut.

21

12

3/8

95

1/8

169

1/8

243

12

3/8

Entropy ca phn nh tnh ny l:


H(x)

3
8

= log 2

3 1
1 1
1 3
3
log 2 log 2 log 2
8 8
8 8
8 8
8

6
3 2
1
log 2 log 2
8
8 8
8

0,75 x 1,58 3 1,815 bits / pixel

11

Tuy nhin, trong thc t cc mc xm ca cc pixel khng c lp thng k vi


nhau, nn ta c th biu din theo tng cp pixel lin tip nh sau:
Gi tr cp mc xm

S lng cp

Xc sut

(21, 21)

1/4

(21, 95)

1/8

(95, 169)

1/8

(169, 243)

1/8

(243, 243)

1/4

(243, 21)

1/8

H(x)

1
4

= log 2

1 1
1 1
1 1
1 1
1 1
1
log 2 log 2 log 2 log 2 log 2
4 8
8 8
8 8
8 4
4 8
8

2
1 4
1
log 2 log 2
4
4 8
8

2.5bits / cap
pixels

Ngoi ra cn c th biu din theo phn chnh lch mc xm ca 2 pixel lin


tip nh sau.
21

74

74

74

21

74

74

74

21

74

74

74

21

74

74

74

Gi tr mc xm

S lng

Xc sut.

21

1/8

16

1/2

74

12

3/8

H(x)

1
8

= log 2

1 1
1 3
3
log 2 log 2
8 2
2 8
8

0,75 x 1,58 3 1,41 bits / pixel

Nh vy, s lng tin trung bnh ti thiu cn thit truyn mt phn t nh s khc
nhau, ngha l d tha trong nh v gia cc bc nh s ph thuc vo cch m ha
Entropy. Do cn phi xem xt k chn ra loi m ha hiu qu nht.

12

CHNG II. CC K THUT NN VIDEO


II.1

PHN LOI CC K THUT NN

Nn video c chia thnh hai h ln: Nn khng tn hao v nn tn hao.


Nn khng tn hao l quy trnh biu din cc k hiu trong dng bit ngun
thnh dng cc t m sao cho nh c khi phc hon ton ging nh gc, cc
thut ton ch ph thuc vo cch thng k ni dung d liu v thng da trn
vic thay th mt nhm cc k t trng lp bi mt nhm cc k t c bit
khc ngn hn m khng quan tm n ngha ca dng bit d liu, nn i
hi phi c thit b lu tr v ng truyn ln hn.
Nn c tn hao, tc l nh c khi phc khng hon ton ging nh gc,
dng nn ny thch hp cho vic lu tr v truyn nh tnh, nh video qua mt
mng c bng thng hn ch. Cc dng nn ny thng c h s nn cao hn
(t 2:1 n 100:1) v gy nn tn hao d liu v s suy gim nh sau khi gii
nn do vic xa v lm trn d liu trong mt khung hay gia cc khung. N
lin quan n vic dng cc php bin i tn hiu t min ny sang min khc.
Trong thc t phng php nn tn hao thng c s dng nhiu hn v cc k
thut nn tn hao thng s dng nh: m ha vi sai, bin i cosin ri rc DCT,
lng t v hng, qut zig-zag, m ha Entropy

II.2

QU TRNH BIN I
Bien
oi
T

Giai
nen

Bien oi
ngc
T-1

Lng t
hoa
Q

Ma
hoa
C

Giai lng
t hoa R

Giai
ma D

Hnh II1. Mo hnh he thong nen


ton hao.

13

Tn hiu ng vo c bin i nhm mc ch biu din mt s liu khc thch hp


nn hn so vi tn hiu ngun. pha gii m tn hiu nn s c bin i ngc
li thu tn hiu gc. Mt s php bin i c p dng ph bin hin nay nh:
II.2.1 IU XUNG M VI SAI DPCM
Cc phng php nn dng DPCM da trn nguyn tc pht hin s ging nhau v
khc nhau gia cc im nh gn nhau loi b cc thng tin d tha. Trong DPCM
ch c phn khc nhau gia mu - mu c truyn i, s khc nhau ny c cng
vo gi tr mu gii m hin hnh pha gii m to ra gi tr mu phc hi.
Hnh II.2. m t s khi ca b m ha v gii m DPCM.
Bo lng
t

Bo tien
oan

V d

Ma hoa
entropy

Hnh II.2. Bo ma hoa va bo


giai ma DPCM
Mu tn hiu vo

115 117 116 117 118 117 115 116

S khc nhau
Dng bit c nn nh sau:

115

-1

-1

-2

-1

-1

-2

II.2.2 M HA BIN I
Nhm bin i cc h s trong min thi gian (video s), khng gian 2D (bc nh
tnh) thnh cc h s trong min tn s. Cc h s ny t tng quan hn c ph nng
lng tp trung hn, thun tin cho vic loi b thng tin d tha.
II.2.2.1 Bin i cosin ri rc DCT
V nh gc c kch thc rt ln cho nn trc khi a vo bin i DCT, nh c
phn chia thnh cc MB biu din cc mc xm ca im nh. Vic phn khi ny s
lm gim c mt phn thi gian tnh ton cc h s chung, mt khc bin i cosin
i vi cc khi nh s lm tng chnh xc khi tnh ton vi du phy tnh, gim
thiu sai s do lm trn sinh ra. Php bin i DCT c bn hot ng da trn c s
ma trn vung ca mu sai s d on, kt qu cho ta mt ma trn Y l nhng h s
DCT c minh ha nh sau:

14

Y = AXAT
Trong A l ma trn h s bin i, cc thnh phn ca A nh sau:

Ci
Ai , j C i cos

( 2 j 1)i
2N

Vi

1
N

Nu i = 0
Nu i > 0

C 2
i N
N 1 N 1

Tng ng vi Yx , y C x C y X i, j Cos
i 0 J 0

( 2 j 1) y
( 2i 1) x
Cos
2N
2N

Php bin i DCT nguyn 4x4 ca chui ng vo X c cho bi cng thc

1
2 cos 0

1
cos 0
2

1
cos 0
2

1
cos 0
2

1
2 cos 8

1 3
cos
2 8

1 5
cos
2 8

1 2
cos
2

1 6
cos
2 8

1 10
cos
2 8

1 7
cos
2 8
1 14
cos
2 8

1 cos 3
2 8

1 9
cos
2 8

1 15
cos
2 8

1 21
cos
2 8

Php bin i ngc DCT cho bi cng thc:


X=ATYA
Tng ng vi:
N 1 N 1

X i , j C x C y Yx , y Cos
x 0 y 0

( 2 j 1) y
( 2i 1) x
Cos
2N
2N

II.2.2.2 Bin i Hadamard


L mt v d tng qut ha ca bin i Fourier ri rc, n thc hin cc php ton
cng v tr trn cc ma trn 2m x 2m trc giao, i xng, tuyn tnhc nh ngha
theo cng thc sau:

15

H n1 H nT

trong Hn l ma trn NxN vi N = 2 m , m thng l cc gi tr 1, 2 ,3

tng ng vi cc khi 2x2, 4x4, v 8x8, H n c to ra t php ton Kronecker nh


sau: Hn = H 1 H 1 ..... H 1 n ln.
V d H2 = H1 H1

Vi H1=

II.3

1 1 1
1 1
2

QU TRNH LNG T

Sau khi thc hin bin i DCT, cc h s s c lng t ho da trn mt bng


lng t Q(u,v) vi 0u, v n-1, n l kch thc khi. Bng ny c nh ngha bi
tng ng dng c th, cc phn t trong bng lng t c gi tr t 1 n 255 c gi
l cc bc nhy cho cc h s DCT. Qu trnh lng t c coi nh l vic chia cc
h s DCT cho bc nhy lng t tng ng, kt qu ny sau s c lm trn
xung s nguyn gn nht. Cc h s nng lng thp ny, tng trng cho cc s
thay i pixel - pixel c nh, c th b xa m khng nh hng n phn gii ca
nh phc hi. Ti b m ho s c mt bng m v bng cc ch s ni b, t c th
nh x cc tn hiu ng vo chn c cc t m tng ng mt cch tt nht cho
tp hp cc h s c to ra. C 2 loi lng t ha ch yu:
II.3.1 LNG T HA V HNG
Lng t tng gi tr mt cch c lp hay ni cch khc l nh x mt mu ca tn
hiu ng vo to thnh mt h s lng t ng ra. y l mt qu trnh tn hao v
khi gii lng t, khng th xc nh chnh xc gi tr gc t s nguyn c lm
trn. Lng t ha thun theo cng thc FQ = round(X/QP)
Lng t ha ngc theo cng thc Y = FQ*QP. Vi QP l bc nhy lng t. V d
qu trnh gii lng t cho mt tn hiu ng vo nh sau:
Y
X

QP = 1

QP = 2

QP = 3

QP = 5

-4

-4

-4

-3

-5

-3

-3

-2

-3

-5

16

-2

-2

-2

-3

-1

-1

II.3.2 LNG T HA VECTOR


L mt qu trnh biu din mt tp vector (mi vector gm nhiu gi tr) bng mt tp
cc s hu hn cc k hiu ng ra, bng m nh x s c cc gi tr xp x vi gi tr
gc. Vector lng t s c lu c b m ha v b gii m, qu trnh nn mt bc
nh s dng lng t vector bao gm cc bc sau.
Phn chia bc nh gc thnh cc phn vng MxN pixel
Chn vector thch ng nht t bng m
Truyn ch s ca vector thch ng n b gii m.
Ti b gii m, nh cu trc li s xp x vi phn vng la chn vector
lng t.
V s khi ca lng t vector nh sau:

Hnh II.3. Qu trnh lng t vector

II.4

QU TRNH M HA

B m ha c chc nng loi b d tha trong cc k t ng ra lng t ha v


nh x cc k t ny thnh cc t m to thnh dng bit ng ra bng cc loi m ha
nh: m ha d on, m ha VLC, m ha s hc nh phn, m ha theo hnh dng

17

II.4.1 M HA DI THAY I
K thut m ha di thay i VLC da trn xc sut cc gi tr bin ging nhau
trong mt nh la chn cc t m m ho. B m ha c di thay i nh x
cc k hiu ng vo thnh mt chui t m c di thay i ng ra nhng cha s
lng bt nguyn. Cc k hiu c xc sut cao s c gn t m c di ngn, cn
cc k hiu c xc sut thp s c gn t m c di ln hn, do n s lm ti
thiu chiu di trung bnh ca t m. Ti pha gii nn c cc ch nh m ging nhau
c dng khi phc li cc gi tr d liu gc. Cc loi m ha VLC c bn nh:
m ha Huffman, m ho RLC, m ha Exp-Golomb
II.4.1.1 M ha Huffman
M ha Huffman l m ha tha mn ti u tnh prefix v phng php m ha
thng da vo m hnh thng k. Da vo d liu gc, ngi ta tnh xc sut xut
hin ca cc k t. Vic tnh ton xc sut c thc hin bng cch duyt tun t tp
gc t u n cui v cc k t no c xc sut cng cao th t m cng ngn nn
gim chiu di trung bnh ca t m mt cch r rt, m ha Huffman thng c
biu din di dng cy m nh sau:
1

1
0

u1

u3

u4

u2

1
0

1
u7

u5

u6

Hnh II.4. Cy m Huffman


Cc bc thc hin m ha Huffman.
Bc 1: Cc ngun tin c lit k trong ct theo th t xc sut xut hin gim dn.
Bc 2: Hai tin cui c xc sut nh nht c hp thnh tin ph mi c xc sut bng
tng xc sut cc tin hp thnh.
Bc 3: Cc tin cn li (N-2) vi tin ph mi c lit k trong ct ph th nht theo
th t xc sut gim dn.
Bc 4: Qu trnh c th tip tc cho n khi hp thnh mt tin ph c xc sut xut
hin bng 1.

18

II.4.1.2 M ho mc dc chiu di RLC


Thng thng d liu hay c s trng lp, chng hn nu mt bc nh c cng mt
mu, chi th nhng vng bn cnh nh cng ging nh vy. Do c th m
ha bng mt t m c bit nhm ch bo s bt u v kt thc ca gi tr lp li,
mi h s khc 0 sau gi tr DC c pht hin s c gn mt t m gm 2 thng
s: s lng bit 0 ng trc v mc ca n sau khi lng t, to ra t m l
mt i (level v run), trong Level biu th gi tr ca bit v Run biu th s ln lp
li ca bit. Khi d liu truyn c s trng lp th truyn t m ny thay cho n. Hnh
II.5. minh ha m ha RLC nh sau :

Hnh II.5. Minh hoa ma hoa


RLC
T d liu u vo, gi tr 028 lp li 5 ln c m ha bng 3 t m d liu u ra.
Gi tr u tin 255 i din cho cch m ha RLC, gi tr th 2 l gi tr c lp li,
gi tr th 3 l s ln lp li, nn thay v truyn t m di, ta ch cn truyn 255 028 3.
II.4.2 M HA S HC
im bt li c bn ca m ha dc chiu di l vic to ra bng tra cha ton b s
lng bit trn mi mu nn khng tht s ti u, v s lng bit ti u nht cho mt k
t ty thuc vo ni dung thng tin, m thng l nhng s rt nh. i vi nhng k
t c xc xut ln hn 0.5 th hiu sut nn khng cao, n ch hiu qu khi m ha
nhng k hiu ny bng mt t m bit n. Cn m ha s hc th da vo xc sut
ca ni dung thng tin nn cn c tn gi l m ha s hc thch nghi theo ni dung,
m ha s hc s dng cc c tnh v khng gian v thi gian c lng khong
xc sut. N bin i lung d liu vo thnh mt phn s n l, v s dng phn s
ti u nht m ha d liu, do hiu qu nn ca n c th t mc ti a m
gim chi ph u t cho lu tr.
Gi s ta c 5 gi tr vector chuyn ng (2, 1, 0, 1, 2) v xc sut ca n nh bng
di y. Mi vector s c gn mt ngng trong khong t 0.0 n 1.0 ty thuc
vo xc sut xut hin ca chng. V d gi tr -2 c xc sut l 0.1 s nm trong

19

khong t 0->0.1 tc l bng 10% ca khong [0 1], tng t gi tr -1 c xc sut l


0.2 s nm trong khong t 0.1->0.3 tc l bng 20% Nh vy vic phn chia vng
ring cho tng gi tr xc sut s thun tin cho vic m ha.
Vector

Xc sut

Lng tin trung bnh = log2(1/P)

-2
-1
0
1
2

0.1
0.2
0.4
0.2
0.1

3.32
2.32
1.32
2.32
3.32

Khong chia nh
0 0.1
0.1 0.3
0.3 0.7
0.7 0.9
0.9 1.0

Cc vector s c chia nh thnh cc khong nh theo xc sut nh sau:

V d qu trnh m ha cho chui vector (0, 1, 0, 2) nh sau:


Qu trnh m ha

Ci phm vi bt u
Tm khong con tng
ng cho k hiu u tin
Ci li khong mi cho
khong con.
Tm khong con tng
ng cho k hiu tip
theo
Ci li khong bt u
mi nm trong khong
trc
Tm khong tp theo
Ci li khong bt u
mi nm trong khong
trc
Tm khong tp theo
Ci li khong bt u
mi nm trong khong
trc

Phm vi
(L H)
0 1.0

K hiu Khong
(L H) chia nh
(0)

0.3 0.7

(-1)

0.1

Ch thch

0.3 0.7

0.3

0.34 = 10%
0.42 = 30%

0.34 0.42
(0)

0.3 0.7

0.364 = 30%
0.396 = 70%

0.3640.396
(2)

0.9-1.0

0.3928 = 90%
0.396 = 100%

0.3928 0.396

Sau mi ln m ha mt k hiu th phm vi Low High cng nh dn nh minh ha


hnh II.6. S lng bit cn thit nn chui d liu c tnh bi cng thc:
log2(1/P0) + log2(1/P1) + log2(1/P0) + log2(1/P2) = 8.28bits
Ton b chui d liu c th c truyn i bi bt k mt gi tr phn s no nm
trong khong 0.3928-0.396, gi s gi tr 0.394 c th c m ha nh l mt phn

20

s c du chm tnh bng t m 9 bit, do chui vector (0, -1, 0, 2) s c nn bng


t m 9bits.

Hnh II.6. Minh ha s sp xp trong khong [0-1] thnh nhng vng nh


hn sau mi k hiu c m ha.
Hiu qu ca m ha Entropy c c nh mong mun hay khng l ty thuc vo
chnh xc trong xc sut ca k hiu.
Qu trnh gii m s hc.
Qu trnh gii m

Phm vi

01
Ci phm vi bt u
Tm khong con tng ng cho k
hiu u tin

Ci li khong mi cho khong con.

K hiu gii m

0.3 0.7

0.34 0.42

-1

0.3640.396

0.3928 0.396

0.3 0.7

Tm khong con tng ng cho k


hiu tip theo
Ci li khong bt u mi nm
0.34 0.42
trong khong trc
Tm khong tp theo
Ci li khong bt u mi nm 0.3640.396
trong khong trc
Tm khong tp theo

II.5

Khong chia nh

TIU CHUN NH GI CHT LNG NH NN

nh gi cht lng video thng qua cc gi tr cung cp bi h thng x l, v vic


suy gim cht lng tn hiu c th nhn thy c ( thng thng chng c so snh
vi tn hiu gc. Qua h thng ta c th thy c nhng thay i v hnh dng, vic

21

nh chun cht lng video l rt quan trng. nh gi cht lng ca bc nh


(hay khung nh video) u ra ca b m ho, ngi ta thng s dng cc tham s
truyn thng sau nh gi:

Sai s bnh phng trung bnh MSE (mean square error) nh ngha cho

cng sai khc gia nh gc v nh d on


Mean Squared Error

: MSE

1
N2

N 1

N 1

(C
i 0

j 0

Ri j ) 2

i j

T s tn hiu trn nhiu nh PSNR (peak to signal to noise ratio).


PSNR 10 log10

(2 b 1) 2
(dB)
MSE

Trong NxN kch thc b chuyn ng


h s Ci, j v Ri, j tng ng vi mu hin ti v vng mu tham kho.
b s lng bit/ mu.
Thng thng, nu PSNR 40dB th h thng mt ngi gn nh
khng phn bit c gia nh gc v nh khi phc, tc l nh nn
c cht lng xut sc.
30 dB PSNR < 33 dB th cht lng nh nn bnh thng, mt ngi
c s phn bit c.
PSNR < 30 dB th cht lng nh nn km.

Sai s tuyt i trung bnh - MAE (Mean Absolute Error)


Mean Absolute Error

: MAE

1
N2

N 1

N 1

i 0

j 0

ij

Ri j

Tng ca cc sai s tuyt i- SAE (Sum of Absolute Errors)


N 1

Sum of Absolute Errors : SAE


i 0

N 1

C
j 0

ij

Ri j

CHNG III. CC CHUN NN THUC H MPEG TRC


MPEG-4
MPEG-4
MPEG-4
v1 H.264/AVC
MPEG-2

H.264
(1998/99)
(H.262)
(2003)
III.1 GII
THIU V LCH S PHT TRIN CA K THUT MPEG
(1994/95)
MPEG-4 v2
(1999/00)
MPEG-1
MPEG-4 v3
(11/1992)
(2001)

1993

1995

1997

1999

2000

2001

2003

2005

22
Hnh III.1. Qu trnh pht trin ca k thut nn MPEG qua cc giai on

Thut ng MPEG vit tt ca cm t Moving Picture Experts Group l 1 nhm chuyn


nghin cu pht trin cc tiu chun v hnh nh s v nn m thanh theo chun
ISO/IEC t nm 1988. Cho n nay nhm lm vic MPEG pht trin v pht hnh
nhiu tiu chun nn cho cc loi ng dng khc nhau, nhng ni bt l cc chun
MPEG-1, MPEG-2, MPEG-4, v H.264/AVC. MPEG ch l mt tn ring, tn chnh
thc ca n l: ISO/IEC JTC1 SC29 WG11.

III.2 CC TIU CHUN NN TRC MPEG-4 H.264/AVC


V thi gian c hn nn trong n tt nghip ny, chng ta lt qua mt s nt ni
bt nht ca 2 chun MPEG-1 v MPEG-2, cn chun nn MPEG-4 part 2 l nn tng
pht trin ca chun nn H.264/AVC nn c rt nhiu im ging nhau s c trnh
by chng sau.
III.2.1 TIU CHUN MPEG-1
Chun MPEG-1 xut hin vo 11/1992 l chun khi u cho vic nn cc nh ng
v y cng l nn tng pht trin cho cc chun nn khc trong h MPEG, n c
mnh danh l chun khi ng thit b s. MPEG-1 nh ngha mt tiu chun
chun m ho video v m thanh lu tr trong CD-ROM, a Winchester vi tc
vo khong 1,5Mbit/s, phn gii hnh nh l 352 x 240 (30 frame/s) hay 352x288
(25 frame/s). Chun MPEG-1 c ng dng trong cc phn mm hun luyn bng
my tnh, cc game hnh ng, video cht lng VHS, Karaoke..
Tn hiu video s MPEG-1 bao gm mt tn hiu chi Y v 2 tn hiu mu Cr, Cb vi
t s ly mu l 2:1. Trc khi m ha cc nh c th c sp xp li theo trt t gii
m mi v b gii m ch c th gii m c nh B sau khi gii m nh P v I. Sau
qu trnh gii m, cc nh c s c sp xp li nh c.
Sau khi chn kiu nh, b m ho s nh gi chuyn ng cho mi khi MB v to ra
mt vector chuyn ng cho mt nh P v 2 vector chuyn ng cho nh B.

23

Ty thuc kiu nh m tn hiu sai s c pht hin bng cch tm ra sai s gia d
on b chuyn ng v d liu hin ti trong mi MB. Tn hiu sai s d on c
chuyn n khi DCT 8x8 v b lng t to h s lng t. Mt b iu khin tc
bit c nhim v iu chnh d liu ng ra thng qua iu chnh bc lng t. Cc
h s ny c qut theo ma trn Zig-Zag v m ho bng m Entropy ri mi a ra
knh truyn.
III.2.1.1 Cc c im ca tiu chun MPEG-1
Cu trc ly mu 4:2:0
Ch c kh nng qut lin tip.
Biu din mu bng t m 8 bits, chnh xc ca qu trnh lng t v bin
i DCT l 9 bits.
S dng phng php DPCM lng t ha cho h s DC. B chuyn ng
cho cc MB 16x16 trong cng mt khung hnh hoc gia cc khung vi nhau.
chnh xc d on chuyn ng l 1 pixel.
Chun MPEG-1 c 4 kiu nh l Intra, Predicted, Bidirectional v nh D
(DC coded picture). N gn ging nh I nhng ch c thnh phn mt chiu
u ra DCT c th hin. N cho php d nhanh nhng cho cht lng nh
thp.
III.2.1.2 Cu trc dng bit ca MPEG-1
Chun MPEG-1 nh ngha mt kiu phn cp cu trc trong d liu Video v y
cng l cu trc d liu chung cho c chun MPEG v sau. Cu trc d liu nh sau:
+ Khi (Block) gm 8x8 pixels tn hiu chi v mu c nh ngha dng cho nn
DCT.
+ T hp khi (Macroblock) gm cc khi Y, Cb v Cr tng ng vi ni dung thng
tin ca mt khi 16x16 pixel ca thnh phn chi hoc khi 8x8 ca 2 thnh phn mu
trong hnh nh gc. Mt MB bao gm 6 khi trong c 4 khi Y, 1 khi Cb v 1 Cr
nh hnh v, cc khi s c nh s th t bt u bng 1.

24

+ Mng (Slice) gm nhiu MB. Kch thc slice ln nht l 1 nh, nh nht l 1 MB
Th t cc MB bn trong slice c xc nh t tri qua phi, trn xung di. Phn
header ca slice cha thng tin v v tr ca mng trong ton b nh v h s ca b
lng t. Slice rt quan trng trong vic nh li, nu dng d liu c cha li, b gii
m c th b qua v tip tc slice k tip. Nhiu slice trn dng d liu cho php che
giu li tt hn v c dng ci thin cht lng hnh nh.
+ nh (Picture): gm nhiu slice cho php b gii m xc nh loi m ha khung.
Thng tin header ch th t truyn khung b gii m sp xp li cc nh ng
th t, ngoi ra thng tin header cn cha cc thng tin v ng b, phn gii,
phm v ca vector chuyn ng
+ Nhm nh (GOP): gm nhiu nh bt u t nh I. Ch bo im bt u cho vic
bin tp v vic tm kim. Phn header cha m iu khin v m thi gian 25 bit cho
thng tin nh thi.Cu trc ca mt GOP c m t bng 2 tham s:
- N: l cc nh trong GOP
- M: l khong cch gia cc nh P-pictures.
V d: Ta c 1 GOP nh sau :
B1 B2 I3 B4 B5 B7 B8 P9 B10 B11 P12.
Tc N = 12 v M = 3.
+ Chui nh (Sequence): bt u l mt Sequence Header, 1 hay nhiu GOP v 1 m
kt thc chui End-of-Sequence. Thng tin header cha kch thc mi chiu ca bc
nh, kch thc im nh, tc bit ca dng video s, tn s nh, b m ti thiu
cn c. Chui nh v thng tin header cn c gi chung l dng c bn ES.

Hnh III.2. Cu trc chui video MPEG


Tiu chun nn MPEG-1 cho php truy cp cc khung hnh ngu nhin video, tm
kim thun nghch trn dnh tn hiu nn bin tp v pht li trn dng tn hiu nn.

25

Cc cng c ca n u c trong cc tiu chun MPEG-2, nn MPEG-2 vn c th gii


m cc dng tn hiu MPEG-1.
III.2.2 TIU CHUN MPEG-2
III.2.2.1 Cc c im ca tiu chun MPEG-2
K thut nn MPEG-2 xut hin vo 1995, nh ngha cho mt tiu chun k thut
truyn hnh s. MPEG-2 c th to hnh nh ln gp 4 ln MPEG-1 vi nt cao
hn v r hn (720 x 480 v 1280 x 720) cho php m ho nhiu mc phn gii
khc nhau p ng cho nhiu ng dng nh ng dng 2-5Mbps trong SDTV v 68Mbps trong DVD, 20Mbps trong HDTV, c bit c ng dng trong truyn hnh s
mt t vi mi thit b khc nhau, s c cc b m ho v gii m khc nhau nhm
gim bng thng ng truyn.
Nhng ci tin ca n nh sau:
Chun nn MPEG-2 c tc bit > 4 Mbit/s.
Cu trc ly mu 4:4:4, 4:2:2, 4:2:0.
Cc gi tr h s DCT c th biu th vi mc chnh xc cao.
Cc ma trn lng t c th thay i theo mc frame, thnh phn mu.

C kh nng qut xen k v lin tc, cho php xp x b chuyn ng, xy


dng c s d bo trn c s mnh.

Kh nng tch li v gim nhy tn hiu nn i vi cc li truyn, nu t s


nn cao b nh hng.
chnh xc mu vo l 10 bit. Dng lng t DPCM chnh xc cho cc h s
DC.
C tnh tng hp v co dn cao theo khng gian, thi gian.
phn gii c lng chuyn ng l pixel, 1 pixel.
MPEG-2 nh ngha cc profile v cc level khc nhau cho ph hp vi nhiu loi ng
dng. C 5 nh ngha profile v 4 level nh sau.
Simple

Main
4:2:0, 352 x 288

SNR
4:2:0, 352 x 288

4Mbps

4Mbps, I, P ,B

4:2:0 720 x 576

4:2:0 720 x 576

4:2:0 720 x 576

4:2:0 720 x 576

15 Mbps, I, P

15 Mbps, I, P, B

15 Mbps, I, P, B

20Mbps, I, P, B

Low
Main

26

Spatially

High

High

4:2:0 1440 x 1152

4:2:0 1440 x 1152,

1440

60 Mbps, I, P, B

60 Mbps, I, P, B

1440 x 1152
80 Mbps, I, P, B
4:2:0, 4:2:2

4:2:0 1192 x 1152

High

4:2:0, 4:2:2

1192 x 1152

80 Mbps, I, P, B

100 Mbps I P, B

III.2.2.2 S khc nhau chnh gia MPEG-1 v MPEG-2


MPEG-1

MPEG-2

Bng thng mc trung bnh (ti a 1.5


Mbits/sec)
1.25 Mbits/sec video 352 x 240 x 30 Hz

Bng thng ln (ti a 40 Mbits/sec)


Kch thc kh rng.
Ln n 5 knh m thanh (nh surround
sound)
C th qut xen k.
C th dng trong truyn hnh phn gii cao
HDTV

2 knh m thanh 250 Kbits/sec


Khng qut xen k.
Thch hp cho lu tr CD.

III.2.3 TIU CHUN MPEG-4


Phin bn u tin ca MPEG-4 xut hin vo 2/1999. Cui 1999 MPEG-4 v2 ra i
v tr thnh tiu chun quc t vo u nm 2000. So vi MPEG-1, MPEG-2 th
MPEG-4 c nhiu ni bt hn nh hiu sut nn cao, vn hnh trn c s ni dung
v r rng c nhiu ng dng hn. MPEG-4 nh ngha mt tiu chun cho cc ng
dng truyn thng a phng tin, cc hnh nh, m thanh v d liu ho v vic ti
hp chng trn thit b thu, hay ni cch khc n l s hi ng gia truyn hnh v
Web. c im chnh ca MPEG-4 l m ha video v audio tc bit rt thp.
Thc t tiu chun ny ti u ba ngng tc bit sau:
Di 64kbps|
T 64 n 384 kbps|
T 384 n 4Mbps|
Hn na mt c im quan trng ca MPEG-4 l cho php khi phc li ti pha thu
nn rt thch hp cho cc ng dng truyn qua mi trng s xy ra li nh moblie,
wirelessChun MPEG-4 l chun quc t u tin nh ngha cc VOP m trong
cc phn ca mt cnh c th c thao tc ring r trong khi nhng phn khc vn
khng i. Nhng profile v level khc nhau trong MPEG-4 cho php s dng tc
bit ln n 38.4Mbps v vic x l cht lng studio ln n 1.2Gbps. MPEG-4 t

27

yu cu ng dng cho cc dch v ni dung video c tnh tng tc v cc dch v


truyn thng video trc tip hay lu tr.
Cc i tng khc nhau trong nh gc c m ha v truyn i mt cch ring bit,
nh ta bit khng c mt phng php m ha no l ti u hon ton. DCT v
php lng t ch ti u vi cc ng dng c bng thng hn ch, cc nh c chi t
thay i, nhng vi nh nhiu chi tit, c kch thc nh th khng ti u. Ly v d
nu mt cnh c cha cc dng text, nu m ha bng MPEG-1, MPEG-2 th s khng
hiu qu v n ch xem nh l chi tit nh thng thng.
Tri li, MPEG-4 cho php gii m lung text kt hp vi video v cc thng tin trong
lung bit c th hin th nhiu dng khc nhau ty thuc vo la chn ca ngi s
dng v d nh ty chn ngn ng... nn mang li hiu sut cao hn.
Tuy nhin MPEG-4 cng c mt s nhc im l b gii m phi c kh nng gii
m ht tt c cc lung bit m n h tr v c kh nng kt hp. Do phn cng b
gii m MPEG-4 phc tp hn MPEG-2 rt nhiu. Cng chnh v vy m cc nh
nghin cu lun n lc tm ti, pht minh nhng cng c m ha ti u hn.
III.2.4 SO SNH C IM NI BT CA CC CHUN NN
Trong tin trnh pht trin ca chun nn MPEG, cc chun nn sau ra i l s k
tha v pht trin ca chun trc, chnh v vy cc chun nn tin tin hn phi c s
phn cp, mm do c th p ng cc ng dng ca chun nn c. Bng sau so
snh s khc bit v s ti u gia cc chun nn thuc h MPEG.
Standard

MPEG-1

MPEG-2

MPEG-4

H.264

MB size

16 x 16

16 x 16

16 x 16

Block size

8x8

8x8

16 x 16, 8 x 8

Transform

DCT

DCT

DCT, DWT

Entropy coding

VLC

VLC

VLC

ME, MC
Pixel accuracy
Reference
frames
Picture type
Transmission
rate

Yes
pixel

Yes
pixel

Yes
pixel

16 x 16
16x16, 16x8, 8x16
8x8,8x4,4x8,4x4
4x4 Int transform
VLC, CAVLC,
CABAC
41 MVs/MB
pixel

1 frame

1 frame

1 frame

5 frame

I, P, B

I, P, B

I, P, B

I, P, B

1.5 Mbps

2-15Mbps

64kbps-2Mbps

64kbps-150Mbps

28
Hnh IV.7. So snh s ti u gia cc chun nn

CHNG IV. CHUN NN MPEG-4 H.264/AVC


IV.1 TNG QUAN V CHUN NN MPEG-4 H.264/AVC
IV.1.1 LCH S PHT TRIN CA MPEG-4 H.264/AVC
T cc b m ho n gin, hot ng tt nhng i khi c mt s hnh nh m n
khng th nn c, iu ny thc y cc nh thit k pht trin cc cng c nn
mi da trn nn ca cc chun trc, trong hiu qu m ha l vn c quan
tm nht, v th MPEG-4 ra i l iu tt yu trong tin trnh pht trin. S pht trin
ca MPEG-4 H.264/AVC tri qua nhiu giai on nh: MPEG-4 part 2 c ISO cng
b vo 1999, n l tiu chun cho nhng ng dng truyn thng a phng tin vi
tc bit thp v cho ng dng truyn hnh qung b trong tng lai. Tuy nhin cht
lng ca n vn cha t c nh mong mun, chnh v vy m ISO/IEC (MPEG)
v ITU cng nhau hp tc v thnh lp nhm Joint Video Team (JVT), nghin
cu pht trin chun m ha tin tin l Advanced Video Coding (AVC). V n 2003
cho ra i chun MPEG-4 part 10, tn theo tiu chun ISO/IEC 14496-10 v H.246
AVC trong ITU hay cn gi l MPEG-4 H.264/AVC, gi tt l H.264/AVC.
Phin bn th 2 c t chc JVT pht trin m rng v ph bin vi tn gi Fidelity
Range Extensions (FRExt) c phn gii video mang tnh trung thc cao c cng
b vo thng 3/2005 vi cc c tnh nh:
Coding Tools

High

High 10

High 4:2:2

High 4:4:4

Main Profile Tools


4:2:0 Chroma Format
8 Bit Sample Bit Depth
8x8 vs. 4x4 Transform Adaptivity
Quantization Scaling Matrices

X
X
X
X
X

X
X
X
X
X

X
X
X
X
X

X
X
X
X
X

29

Separate Cb and Cr QP control


Monochrome video format
9 and 10 Bit Sample Bit Depth
4:2:2 Chroma Format
11 and 12 Bit Sample Bit Depth
4:4:4 Chroma Format
Residual Color Transform
Predictive Lossless Coding

X
X

X
X
X

X
X
X
X

X
X
X
X
X
X
X
X

Bng IV.1. Nhng cng c mi trong H.264/AVC FRExt.


S m rng ny cho php m ho cht lng hnh nh cao hn bng vic tng
chnh xc chiu su bit ly mu v thng tin phn gii mu, bao gm cc cu trc
ly mu nh YUV 4:2:2 v YUV 4:4:4. Ngoi ra cn b xung mt s c tnh nh
chuyn mch thch nghi gia php bin i nguyn 4x4 v 8x8, b m ho theo gic
quan da trn ma trn lng t, k thut m ho tn hao trong khi v k thut lc
tch khi.
IV.1.2 CC PROFLIES V LEVELS TRONG H.264/AVC
to iu kin cho ngi s dng la chn cng c H.264/AVC, cc thit b c
chia thnh cc nhm cng c (profile). Mi profile li c cc mc levels khc nhau th
hin mc phc tp x l tnh ton d liu ca cng c (thng qua vic xc nh
tc bit, con s ti a ca cc i tng trong frame, phc tp ca qu trnh gii
m audio..).
IV.1.2.1 CC PROFILES
H.264/AVC nh ngha 4 profiles nh sau
H.264/AVC Profiles
BASELINE

MAIN

HIGH

EXTENDED
(Streaming)

(Broadcast)

I Slices

I Slices

I Slices

I Slices

P Slices

P Slices

P Slices

P Slices

CAVLC

CAVLC

CAVLC

CAVLC

4x4 Transform

4x4 Transform

4x4 Transform

4x4 Transform

Weighted Prediction

Weighted
Prediction
B Slices

Weighted
Prediction
B Slices

CABAC

CABAC

(Video Conferencing &


Wireless)

B Slices

Quantization
Matrix
8x8 Transform

30

ASO

ASO

FMO

FMO

Redundant Slices

Redundant Slices
Data Partitioning
SP Slices, SI Slices

Bng IV.2. H.264/AVC Profiles


IV.1.2.2 CC LEVELS
Trong H.264/AVC nh ngha 16 level xc nh cc gii hn trn cho kch thc nh,
tc x l, kch thc vng nh m, tc bit video

Level Max
number MB/s

Max video bit


Max
rate (VCL) for Max video bit
frame
Baseline,
rate (VCL) for
size
Extended and High Profile
(MBs)
Main Profiles

Max video bit


Max video
rate (VCL) for
bit rate
High 4:2:2 and
(VCL) for
High 4:4:4
High 10
Predictive
Profile
Profiles

Examples for high


resolution @
frame rate
(max stored frames)
in Level

1485

99

64 kbit/s

80 kbit/s

192 kbit/s

256 kbit/s

128x96@30.9 (8)
176x144@15.0 (4)

1b

1485

99

128 kbit/s

160 kbit/s

384 kbit/s

512 kbit/s

128x96@30.9 (8)
176x144@15.0 (4)

1.1

3000

396

192 kbit/s

240 kbit/s

576 kbit/s

768 kbit/s

176x144@30.3 (9)
320x240@10.0 (3)
352x288@7.5 (2)

1.2

6000

396

384 kbit/s

480 kbit/s

1152 kbit/s

1536 kbit/s

320x240@20.0 (7)
352x288@15.2 (6)

1.3

11880

396

768 kbit/s

960 kbit/s

2304 kbit/s

3072 kbit/s

320x240@36.0 (7)
352x288@30.0 (6)

11880

396

2 Mbit/s

2.5 Mbit/s

6 Mbit/s

8 Mbit/s

320x240@36.0 (7)
352x288@30.0 (6)

2.1

19800

792

4 Mbit/s

5 Mbit/s

12 Mbit/s

16 Mbit/s

352x480@30.0 (7)
352x576@25.0 (6)

16 Mbit/s

352x480@30.7(10)
352x576@25.6 (7)
720x480@15.0 (6)
720x576@12.5 (5)

2.2

20250

1620

4 Mbit/s

5 Mbit/s

12 Mbit/s

1620

10 Mbit/s

12.5 Mbit/s

30 Mbit/s

40 Mbit/s

352x480@61.4 (12)
352x576@51.1 (10)
720x480@30.0 (6)
720x576@25.0 (5)

3.1

108000 3600

14 Mbit/s

17.5 Mbit/s

42 Mbit/s

56 Mbit/s

720x480@80.0 (13)
720x576@66.7 (11)
1280x720@30.0 (5)

3.2

216000 5120

20 Mbit/s

25 Mbit/s

60 Mbit/s

80 Mbit/s

1280x720@60.0 (5)
1280x1024@42.2 (4)

245760 8192

20 Mbit/s

25 Mbit/s

60 Mbit/s

80 Mbit/s

1280x720@68.3 (9)
1920x1088@30.1 (4)
2048x1024@30.0 (4)

4.1

245760 8192

50 Mbit/s

62.5 Mbit/s

150 Mbit/s

200 Mbit/s

40500

31

1280x720@68.3 (9)
1920x1088@30.1 (4)

2048x1024@30.0 (4)
4.2

522240 8704

50 Mbit/s

62.5 Mbit/s

150 Mbit/s

200 Mbit/s

1920x1088@64.0 (4)
2048x1088@60.0 (4)

589824 22080

135 Mbit/s

168.75 Mbit/s

405 Mbit/s

540 Mbit/s

1920x1088@72.3 (13)
2048x1024@72.0 (13)
2048x1088@67.8 (12)
2560x1920@30.7 (5)
3680x1536/26.7 (5)

5.1

983040 36864

240 Mbit/s

300 Mbit/s

720 Mbit/s

960 Mbit/s

1920x1088@120.5 (16)
4096x2048@30.0 (5)
4096x2304@26.7 (5)

H.264/AVC tr thnh mt tiu chun x l tt vi tc bit thp hn so vi cc chun


c m khng qu phc tp trong khi thit k. Mt khc n cng c tnh mm do cho
php hot ng trn nhiu h thng v mng khc nhau m vn c tc bit, phn
gii,...nh nhau. H.264/AVC c ng dng rng ri trong nn nh k thut truyn
hnh s, cc ng dng v ha v Video tng tc 2 chiu nh Games, Video
Conferencing, World Wide Web hoc cc ng dng nhm phn pht d liu Video nh
truyn hnh cp, Internet TVH.264/AVC tr thnh tiu chun cng ngh trong qu
trnh sn xut, phn phi v truy nhp vo h thng Video.
M ho H.264/AVC ngoi vic quan tm n hiu qu m ho ging nh cc tiu
chun m ho trc y, cn b sung thm mt s cng c cho cc chc nng khc
nh: M ho cc i tng c hnh dng bt k, nn hiu qu cc tn hiu video lin
tc v hnh nh trn mt phm vi rng ca t l bit, phn cp v khng gian, thi gian
v cht lng, kh nng truyn dn tt trong mi trng khc nghit.

IV.2 NHNG C TNH NI BT CA CHUN NN H.264/AVC


D on khng gian nh hng trong kiu m ha Intra: h tr ti 17 kiu d
on, lm cho vic d on mu c chnh xc hn, t hiu qu nn cao hn.
B chuyn ng vi kch thc nh c th thay i. Tiu chun ny mang li s
mm do cho s la chn kch thc v hnh dng, kch thc b chuyn ng
nh nht l 4x4. iu ny mang li hiu sut 15% so vi MPEG-2. B
chuyn ng lm gim tnh phc tp ca x l ni suy so vi cc tiu chun
trc .
B chuyn ng vi nhiu hnh tham kho. Do camera thay i gc quay hay
chuyn qua li gia cc cnh, vic on trc cc chuyn ng l rt phc tp

32

ta cn phi c nhiu frame tham kho nng cao hiu sut v cht lng.
H.264/AVC cho php s dng ti a 32 frame tham kho trong khi MPEG-2 ch
s dng 2 frame tham kho mang tnh cht chu k. B chuyn ng vi nhiu
hnh tham kho s l chm qu trnh m ha v gii m nhng s tng cht
lng nh vi cng t s nn.
Tch ring hnh tham kho v hnh hin th: cc tiu chun trc c s ph
thuc gia hnh tham kho v hnh hin th, cn trong H.264/AVC b m ha c
th chn hnh nh tham kho gn nht vi hnh nh c m ha cho mc
ch tham kho d on nn c th hin th vi tnh linh hot cao, do khong
thi gian tr s c loi b.
Gim d tha v khng gian tt hn: s dng php bin i nguyn thay v s
dng php bin i DCT nh MPEG-2, lm gim nh hng do sai s lm trn.
Lng t ha thch nghi: trong qu trnh m ha vi tc bit bin thin, khi s
dng lng t ha thch nghi, mi frame c th c nn vi nhng b lng
t khc nhau ph thuc vo bn cht hnh nh ca chng thng qua vic iu
khin tc bit. V d nhng phn chuyn ng hay nhng phn hnh nh sm
mu kh nhn bit s c x l vi h s lng t ln hn ( nn cao hn,
dung lng nh hn), nhng phn hay c h thng mt ngi ch nhiu
hn s c x l vi h s lng t thp hn ( nn nh hn, dung lng ln
hn). H.264/AVC cho php s dng ti 52 mc lng t trong khi MPEG-2 ch
c 31 mc.
S dng b lc tch khi: Tri ngc vi b tin x l hay b hu x l, b lc
tch khi c p dng trong sut qu trnh m ha trn mi frame n l,
nhng trc n s c s dng tham kho cho nhng frame n sau. Ci
tin mi ny s gip trnh c hin tng kt khi lm nh hng n cht
lng hnh nh, c bit l vi tc bit thp. Nhng tc m ha, gii m s
b gim st.
Kiu d on trng s. H.264/AVC c th h tr qu trnh m dn hay ti dn
khung hnh trong nhng on film c hiu ng m dn (nhng frame n sau
rt ging so vi nhng frame ngay trc n, ch c sc l khc mt cht),.

33

M ha Entropy thch nghi: trong H.264/AVC s dng 2 phng php m ha


phc tp hn l CAVLC v CABAC thay v bin i VCL tnh trong MPEG2, nn hiu qu m ha cng cao hn r rt.
Mt s c tnh lm tng cng kh nng chng sai s v mt d liu nh :
Thng s ci t cu trc: tp hp cc thng s nhm tng cng cho thng tin
u mc ca qu trnh truyn c hiu qu hn. nhng tiu chun trc, nu
mt mt s thng tin quan trng nh thng tin u mc ca chui nh s nh
hng rt ln n qu trnh gii m. Cn trong H.264/AVC th cc thng tin ny
c tch ring to tnh linh hot v chuyn dng hn.
Cu trc c php ca NAL: Mi cu trc c php trong H.264/AVC c t
trong gi d liu vt l gi l NAL.
H tr k thut sp xp th t mm do FMO v sp xp th t slice bt k
ASO
H tr 2 nh chuyn mch ng b SI/SP v k thut phn vng d liu (Data
Partitioning).
Chc nng ca H.264/AVC c th tng hp trong nhng chc nng chnh nh sau:
Hiu sut nn: hiu sut nn l mc tiu chnh trong MPEG-1, MPEG-2. Do
H.264/AVC, vic ci tin hiu sut m ha cc lung d liu s m rng kh
nng ng dng ca n trong thc tin. Tiu chun H.264/AVC tit kim ln n
50% tc bit so vi MPEG-1, MPEG-2, MPEG-4 part 2 khi m ha cng mt
cp .
Kh nng tng tc: cho php ngi s dng c th tng tc trc tip cc ni
dung chng trnh ang xem.
Kiu truy nhp ph bin: tng cng kh nng chng li trong mi trng khc
nghit, cung cp cc cng c cn thit gii quyt vic mt mt gi d liu
trong khi truyn trong mng gi v li bit trong mi trng khng dy.
K t n nay H.264/AVC lin tc c ci tin v s thnh cng ca H.264/AVC
th hin r trong vic gim tc bit cho cc ng dng khc nhau nh sau:
i vi dch v hi thoi hot ng tt tc < 1Mbps vi tr thp.
i vi dch v gii tr hot ng tt tc 1- 8Mbps vi tr trong khong
0.5-2s.

34

Truyn hnh qung b qua cp, v tinh, mt t, DSL


DVD cho truyn hnh phn gii cao.
Truyn hnh theo yu cu qua cc knh khc nhau.
i vi dch v lung d liu hot ng tt tc 50 -1500kbps vi tr
2s.

IV.3 K THUT NN VIDEO H.264/AVC


IV.3.1 GII THCH NGUYN L HOT NG C BN
IV.3.1.1 S m ha
nh
hin ti

Bin i
DCT nguyn

Lng t
v hng

Sp xp
trt t

M ha
Entropy

D on
chuyn ng
nh
trc

B chuyn
ng
Chn kiu d
on Intra

nh cu
trc li

17 kiu d on Intra

D on
Intra

Lc tch
khi

Bin i
ngc

Gii
lng t

Hnh IV.1 S khi m ha H.264/AVC


Mt bc nh ng vo gm c 3 thnh phn mu c bn R, G, B, s c bin i
thnh Y, U, V sau nh s c tch thnh cc khi MB c kch thc l nxn vi
n=2, 4, 8, v 16 ty thuc vo phc tp ca bc nh. Kch thc nh 2x2 s gim
tc ng truyn nhng thi gian m ha s lu hn. nh u tin hoc im truy
nhp ngu nhin th c m ha Intra, cc nh cn li ca dy dng d on b
chuyn ng t cc nh m ha trc m ha Inter. D liu t cc MB cn c
m ha s c a n c b tr v b d on chuyn ng. B d on chuyn
ng s so snh cc MB mi c a vo vi cc MB tham kho c a vo
trc , ri tm ra cc MB trong frame tham kho gn ging nht vi MB cn c
m ha ny. B d on chuyn ng s tnh ton vector chuyn ng, vector ny s
c trng cho s dch chuyn theo c 2 chiu ngang v thng ng ca MB mi cn
c m ha so vi frame tham kho. B d on chuyn ng cng ng thi gi cc

35

MB tham kho ti b tr vi MB mi cn c m ha, to ra cc sai s tin on


c trng cho s sai khc gia MB d on v MB cn m ha. Tn hiu sai khc ny
s c bin i nguyn to ra tp h s bin i sau c a qua b lng t
lm gim s lng bits cn truyn. n y, cc h s lng t c chia lm 2
hng, mt hng sp xp li v a vo m ha Entropy, ti y s bits c trng
cho cc h s tip tc c lm gim i mt cch ng k, hng cn li a qua b
gii lng t v bin i ngc to ra khi sai s. Sau a vo b cng vi tn
hiu d on v c lc tch khi trong vng nhm lm gim hiu ng khi to
thnh nh cu trc li, c lu tr nhm mc ch c lng v d on chuyn
ng. D liu ti u ra b m ha Entropy s kt hp vi vector chuyn ng v cc
thng tin khc nh thng tin v nh I, nh P, v nh B ri truyn ra ngoi knh truyn
di dng dng bit nn ca cc n v NAL, gi ti b gii m. Trong H.264/AVC, c
h tr 5 kiu m ha nh: l nh I, P, B, SP v SI
IV.3.1.2 S gii m
nh
trc

B chuyn
ng
D on
Intra

nh cu
Lc tch
Bin i
Gii
Sp xp
Gii m
gii m Entropy nhn cngc
cc dng bitlng
nn t
mttmt s gii
m
trc liu tin b khi
t NAL, trt
Entropy

Entropy tch thng tin u mc v vector d on chuyn ng a vo b chuyn


Hnh IV.8. S khi gii m H.264/AVC
ng, mt khc cc h s DCT c gii lng t v bin i ngc IDCT bin tn
hiu t min tn s thnh tn hiu min khng gian, cc h s bin i ngc thu
c s cng vi tn hiu d on. Sau mt phn c a qua b lc tch khi
loi b hin tng nhiu trc khi a vo lu tr, phn cn li c s dng cho mc
ch d on.
IV.3.2 KHI NN THI GIAN
truyn mt bc nh ng ln mn hnh, thc cht my pht hnh s truyn mt
chui cc nh tnh c ta chnh lch lin tip vi tc kh cao 30 nh/s i vi h
NTSC v 25 nh/s i vi h PAL. Do cm nhn ca mt ngi v hin tng lu nh

36

trn vng mc nn ta xem nh n ang chuyn ng lin tc trn mn hnh, do mt


frame ti thi im nht nh v cc frame ng trc hay sau c bn l ging
nhau, ch c khc nhau v ta ca phn t chuyn ng, dn n s d tha v mt
thi gian. Nn theo thi gian c ngha l b qua phn thng tin ging nhau gia cc
frame ch m ha phn thng tin sai khc, cc phn t chuyn ng.
IV.3.2.1 D on mt chiu (m ha nh Prediction).
Khi mt i tng chuyn ng chm th khong thay i ta ca 2 frame lin tip
l nh, khng vt ra ngoi vng tm kim v h thng s s dng phng php d
on thun hay cn gi l d on mt chiu to nh P. nh P cha d liu nh,
vect chuyn ng ca nh hin ti v nh trc hoc c hai, nh P c th s dng
cc nh I hoc P ngay st pha trc n b chuyn ng v tin on cc nh tip
theo nn ta c cu trc nh IPPPPIP Mi khi nh trong nh P c th c m theo
kiu tin on hoc m mt cch c lp, do n s dng nn theo khng gian v thi
gian nn hiu qu nn cao hn so vi nh I.
Ngoi cc kiu b chuyn ng trn, MB P c th c m ha trong kiu SKIP. i
vi kiu m ha ny, c tn hiu li d on lng t ha ln vector chuyn ng hoc
tham s u khng c truyn i v kiu m ha ny rt c li trong vic m ha mt
bc nh ln m khng c s thay i chuyn ng, ch tn mt vi bit m ha.
S khi nguyn l nn nh P.

Anh d oan
P

anh gia
chuyen
ong

D oan
chuyen ong

Bo nh
anh

Hnh IV.3. S khi nguyn l nn nh P

37

IV.3.2.2 D on hai chiu( m ha nh Bidiriectional Prediction)


Khi i tng chuyn ng nhanh th khong thay i ta ca 2 frame lin tip l
ln, vt ra ngoi vng tm kim, khng th thc hin d on b chuyn ng t cc
khung hnh trc c, khi im nh biu din i tng chuyn ng s c m
ha dng nh I v s dng k thut b chuyn ng theo 2 hng thi gian cn gi l
ni suy b chuyn ng. Trong k thut b chuyn ng theo 2 hng, nh hin ti s
c d on da trn c s thng tin v hnh nh trc v sau to thnh nh
B, do hiu qu nn s cao nht. Phng php d on 2 chiu ny c u im ni
bt l c th d on ngoi vng tm kim nh cc khung hnh tip theo m phng
php d on mt chiu khng thc hin c, ngoi ra phng php ny cn cho t
s nn cao hn, gim nhiu trong khung hnh hin ti bng mc nhiu trung bnh ca
frame trc v frame sau. Trong chun MPEG-2 nh B khng bao gi c dng
tham kho khi d on nh khc. Khi , m ha c cht lng thp c th dng nhiu
nh B bi cc chi tit mt mt khng nh hng n nh d on k , cn trong
H.264, c th dng nh B lm nh tham kho hoc khng ty thuc vo b m ha

IV.3.2.2.a S nguyn l nn nh B.

Anh d
oan P

anh
gia
chuyen
ong

Anh
trc o

D oan
chuyen
ong

Anh sau
o

Hnh IV.4. S nguyn l nn nh B


IV.3.2.2.b B chuyn ng trong cc slice B

38

Trong Slice B, c 4 dng d on Inter khc nhau c h tr: d on list 0, list 1,


hai hng v d on trc tip.
Mo ta kieu d
oan

Phan vung

Trc tiep, list 0, list 1, 2


hng
List 0, list 1, 2 hng
Trc tiep, list 0, list 1, 2
hng

16 x16
16 x 8 hoac 8 x 16

8x8

on List

0: ch c nh tham kho trc c dng d on, nh hin ti c nh ch s


n, tip theo l nhng bc nh v tr n-1, n-2,, tip theo l bc nh v tr n+1,
n+2,.. v ch mt vector chuyn ng duy nht c truyn i. Trong d on list 0,
tn hiu d on c to ra nh b chuyn ng nh kho u tin lu trong b
nh m, cn nh tham kho th 2 c s dng cho vic xy dng tn hiu d on
nu s dng d on list 1.
+ D on List 1: ch c nh tham kho sau c s dng d on, nh hin ti
c nh ch s n, tip theo l nhng nh v tr n+1, n+2, v tip theo l nhng
nh v tr n -1, n -2,.. v ch mt vector chuyn ng duy nht c truyn i.
V d: B gii m H.264/AVC cha 6 bc nh tham kho vi cc th t 123, 125, 126,
128, 129, 130. Bc nh hin ti l 127, tt c 6 bc nh tham kho c nh du nh
trong list 0 v list 1. Th t ca cc bc nh nh sau:
Ch s

List 0

List 1

0
1
2
3
4
5

126
125
123
128
129
130

128
129
130
126
125
123

+ D on hai hng: c 2 nh tham kho trc v sau u c s dng d on


v 2 vector chuyn ng c truyn i, kt qu d on c ni suy t c 2 gi tr
tham kho bng tr trung bnh trng s ca tn hiu d on b chuyn ng list 0 v
list 1. S lng nh tham kho c s dng ty thuc vo phc tp ca nh hin
ti, qu trnh d on hai hng c minh ha nh sau:
.

39
Hnh IV.5. Cc mu d on trong nh B

D on trc tip: C 2 nh tham kho trc v sau u c s dng d on.


Trong slice B hoc phn vng c m ha ch trc tip th khng cn truyn
vector chuyn ng ca cc nh trc v sau, thay v b gii m phi tnh ton
vector d on list 0 v list1 da vo nhng vector c m ha trc th ch
vic s dng cc vector tin hnh b chuyn ng hai chiu cho cc khi d
liu d tha. Loi MB SKIP trong slice B cng c cu trc li d on trc
tip.
Nguyn l c s ca Mode trc tip

Hnh IV.6. Nguyn l b chuyn ng tc tip. Vector chuyn ng trc


v sau MVf, MVb tch ra t MV trong VOP tham chiu ngc
i tng video hin ti trn hnh IV.6 l loi nh B1. B gii m bit trc v
VOP tham chiu ngc P3 v t chc cc vector chuyn ng ca n trc khi VOP
hin ti c gii m. Trong mode trc tip, nhng hiu bit v cc vector chuyn
ng ny c s dng li cc vector chuyn ng trc v sau cho vic d on
MB hin ti. Hn na, c s dng vector chuyn ng ca MB xp xp th t (MB c
cng ch s chiu dc v chiu ngang nh MB trong hnh v) trong VOP P3 tham
chiu ngc. ly c cc vector chuyn ng ca MB hin ti th vector chuyn
ng phi c phn cp, ty thuc vo thi im ca nh B gia 2 VOP tham chiu.

40

Cc h s phn cp c tnh ton t thi gian khc nhau gia 2 VOP tham chiu v
B-VOP hin ti. Chng c xc nh nh sau:
TRb = thi gian hin th (VOP hin ti) - thi gian hin th (tham chiu trc)
TRd = thi gian hin th (tham chiu ngc) - thi gian hin th (tham chiu
trc)
Cng lc , vector chuyn ng Delta (MVD) c cng thm vo. Tip theo qu
trnh ny, cc vector chuyn ng B-VOP c xc nh nh sau:
MVF = TRb/TRd.MV + MVD
MVB = (TRb TRd).MV + MVD
Vy i vi v d trn th ta c :
MVF = 1/3 MV + MVD
MVB = -2/3MV + MVD.
i vi b chuyn ng trong cc B-VOP ch c th s dng mode 1MV, c ngha l:
ch mt vector chuyn ng duy nht c th c truyn i cho mt MB cho mi mt
hng d on. Nhng trong mode trc tip nu MB tun t trong VOP tham chiu
ngc c m ho vi ch 4MV, vi MB hin ti trong mode trc tip th 4 vector
chuyn ng c s dng cho 4 khi 8x8 tng ng ca MB hin ti trong B-VOP.
Nu MB hin ti c m ho trong ch SKIP th n cng l b chuyn ng s
dng mode trc tip vi vector chuyn ng Delta zero nhng b qua m ho sai s
d on .
IV.3.2.3 D on lin nh (Inter-Frame)
Nn lin nh chnh l vic loi b nhng thng tin ging nhau gia cc nh lin tip,
ch m ha phn thng tin khc nhau gia chng, y cng l ni dung chnh ca khi
nn theo thi gian. Da vo nguyn tc , cc b m ho s qut ln lt tng MB v
pht hin xem c s thay i t frame ny sang frame khc hay khng. Mt khc, cc
b m ho cn tin on s xut hin ca cc MB khi bit v tr v hng chuyn ng
ca n. Do , ch nhng s thay i gia cc khi mi c truyn n pha thu. B
gii m lu tr sn nhng thng tin khng thay i vo b nh m v khi khi
phc li nh gc th ch vic in mt cch u n vo cc v tr cn trng. V d hai
frame lin tip trong chui nh c minh ha nh hnh IV.7. Trong frame 2 c
d on t frame 1, c s ging nhau v nh nn, quyn sch, cy n,... phn sai khc

41

gia 2 bc nh l phn mu xm ni r c minh ha nh hnh IV.8, ch c phn sai


khc ny mi c bin i v truyn i. Tuy nhin nng lng vn cn tp trung
phn sai s d on c th l nhng vng sng ti, nn cn phi b chuyn ng
lm gim bt nng lng ny.

Frame 1

Frame 2

Hnh IV.7. Hai bc nh lin tip trong chui Video

Hnh IV.8. Phn d gia frame 1 v frame 2


S sai khc gia cc bc nh trong chui video thng do s chuyn ng ca VOP,
s khc nhau ny chnh l s khc nhau v qu o v tr ca cc pixel trong nh, vic
d on s to ra mt lung th gic hay ni cch khc s to ra mt mnh hng
chuyn ng ca cc vector c minh ha nh hnh IV.9.

Hnh IV.9. Vector chuyn ng


H.264/AVC cho php d on b chuyn ng vi 5 nh tham kho v ngoi vector
chuyn ng ra cc ch s nh tham kho cng c truyn i nh hnh IV.10 nn vic

Hnh IV.10. Minh ha d on


42 lin khi ca H.264/AVC.
S dng 5 Frame cho b chuyn ng

khi phc li nh tham kho c th thc hin d dng v cht lng nh nn cng
trung thc hn.

C b m ha v b gii m phi lu tr cc nh tham kho c s dng cho d on


Inter trong b nh m a nh. B gii m s sao li b nh m a nh ca b m
ha, theo dng nh m nh tham kho v cc hot ng iu khin qun l b nh
bt k c xc nh trong dng bit. Ngoi tr kch thc b nh m a nh c t
cho mt nh, ch s bn trong b nh m a nh phi c k hiu.
IV.3.2.4 M ha nh SP (switching P) v SI (switching I).
Hai dng nh SI, SP l mt kiu m ha c bit ca H.264/AVC cho php chuyn
mch hiu qu gia cc dng bit c m ha cc tc bit khc nhau. Cc frame
SP c lng t ha trong min bin i v a vo di bin th hn, cho php
m ha tc bit thp. Frame SP lm cho d on b chuyn ng c th khai thc
ti a d tha thi gian trong chui nh tng t nh nh P. Nhng frame SP c u
im hn nh P l n cho php cc frame ng nht c th cu trc li ngay c khi
chng c d on t cc nh tham kho khc nhau. V th frame SP c th s dng
thay th cho cc nh I trong cc ng dng chuyn lung, truy cp ngu nhin, tin, li,
tng cng chng li hay khi phc li. Cc frame SI thng kt ni cng vi frame
SP nn rt c li trong trng hp d on Inter b li truyn dn.
V d: vi cng mt video c m ha nhiu tc bit khc nhau truyn qua
ng Internet, b gii m nhn c lung c tc bit cao c th yu cu chuyn
mch t ng xung tc bit thp hn nu d liu b li. Nh hnh IV.11. b gii m
ang gii m lung A v mun chuyn sang gii m lung B. n gin, gi s mi
frame c m ha tng slice n t mt frame tham kho trc . Sau khi gii m P
slice A0, A1 b gii m mun chuyn sang gii m silce B2, B3 trong lung B. Nu tt
c slice trong lung B c m ha dng P-slice, b gii m s khng th gii m
ng nh tham kho cn thit cu trc li slice B2 (v B2 c d on t B1). Gii
php a ra l, slice B2 s c m ha dng I (v dng I khng cn nh tham kho)

43

do c th thc hin chuyn mch gia 2 lung A v B. Vic chuyn mch cn c


iu tit bng cch chn thm slice m ha dng I theo mt chu k u n to ra
im chuyn mch hiu qu. Tuy nhin, nh I s cha nhiu d liu m ha hn nh P
nn tc bit m ha ca mi im chuyn mch s ln hn.

Hnh IV.11. Chuyen mach luong s


IV.3.3 KHI NN KHNG GIAN dung slice I
Nn theo khng gian hay cn gi l nn to nh Intra, ch s dng thng tin trong bc
nh hin ti m khng c s tham kho nh khc, tc l m ho c lp m khng cn
thng tin ph cho gii m khng cn tham kho cc nh khc, do hiu qu nn ch
ph thuc vo s loi b thng tin d tha v khng gian nn s khng c hiu qu
lm. Nhng nh I cho php ngi xem chuyn i cc knh, cung cp im truy cp
ngu nhin vo dng bit nn v ngn chn sai s truyn. Ngoi ra nh I cn c dng
lin tc to thnh cc im ta cho dng d liu trong qu trnh gii m, cng nh
c s dng lm im chuyn mch trong qu trnh phn cp. nh I ch dng 2 bit/
pixel c m ha.
S khi m ha nh I

Hnh IV.12. S khi m ha nh I


44

IV.3.3.1 Chia nh thnh cc MacroBlock


Mt trong nhng u im ca chun H.264/AVC l n c th phn chia thnh cc kch
thc nh m t chuyn ng. Phn vng ca thnh phn luma c cc kch thc
mu nh 16 x 16, 16 x 8, 8 x 16 v 8 x 8 ph hp cho cc chuyn ng nhng khu
vc ging nhau trong nh. Khi s dng khi 8x8, cn c th phn chia thnh 4 c nh
hn l 8x8, 8x4, 4x8 hoc 4x4 rt thch hp khi x l chuyn ng ti ch c nhiu chi
tit, lm gim hin tng v khi v nng cao cht lng hnh nh.

Hnh IV.13. Phan chia MB Sub MB cho bu


chuyen ong.
Cu trc d on thi gian c m t nh hnh IV.14 sau:

Hnh IV.14. Ch ra th t sap xep


cua cac VOP
Gii thch: nh I khng s dng nh tham kho v c m ha kiu Intra c k
hiu l Ix. Cc nh P v nh B c s dng tham kho, c k hiu l Px. Cc mi tn
miu t hng d on.
Khi s dng nh B lm nh tham kho cho nh I v nh P, th nh B s c hin th
sau vi thi gian hin th ring, cc nh tham kho c truyn i trc cc nh B

45

tng ng. Theo hnh IV.14 th th t truyn l I0 P1 P3 B2 P5 B4 P7 B6. Bi v


khng c thng tin c truyn cho cc nh B2 v P5 nn cc nh B6 v P7 s l nh
tham kho cho VOP P3 m khng nh hng cu trc tham kho.
IV.3.3.2 D on trong nh (Intra-frame)
D on Intra l kiu d on s dng cc MB k bn c m ha trong cng mt
frame tham kho, nhm khai thc s tng quan v khng gian. Kiu d on Intra
th khng c s dng cho d on cc ng bin ca slice gi tnh c lp gia
cc slice. i vi cc chun trc y vic d on s thc hin trong min bin i,
cn H.264/AVC th d on c thc hin trong min khng gian bng vic tham
kho ti cc mu bn cnh ca cc khi c m ha. Trong H.264/AVC h tr cc
kiu d on INTRA 4 x 4, INTRA 8 x 8, INTRA 16 x 16 v kiu d on INTRAPCM.
IV.3.3.2.a INTRA LUMA 4 x 4
Mi MB c chia thnh 16 khi con 4x4, mi khi 4x4 c d on khng gian t
cc khi bn cnh. c th d on gi tr mu ca khi 4x4 luma cn s dng 13
mu k cn bao gm 4 mu ca khi k cn bn tri, 4 mu ca khi k cn bn trn, 4
mu ca khi k cn nh phi, v 1 mu ca khi k cn nh tri. Mi khi 4x4 ca
thnh phn luma c th dng 1 trong 9 kiu d on. Ngoi kiu d on DC, cn h
tr 8 kiu d on nh hng sau:
1. Kiu d on DC
Mu c ni suy t gi tr trung bnh ca cc mu bn cnh
LT | T0 T1 T2 T3
--------------------L0 | a a a a
L1 | a a a a
L2 | a a a a
L3 | a a a a
Trong :
Nu b d on nh trn v pha bn tri tha mn th:
a = (T0 + T1 + T2 + T3 + L0 + L1 + L2 + L3) / 8
Nu ch c b d on nh trn tha mn th:
a = (T0 + T1 + T2 + T3 + 2) / 4
Nu ch c b d on bn tri tha mn th:
a = (L0 + L1 + L2 + L3 + 2) / 4

46

hoc
a = 128
2. Kiu d on dc (Vertical)
Cc mu bn di sao chp li cc mu bn trn theo chiu dc.
LT | T0 T1 T2 T3
--------------------L0 | T0 T1 T2 T3
L1 | T0 T1 T2 T3
L2 | T0 T1 T2 T3
L3 | T0 T1 T2 T3
3. Kiu d on ngang (Horizontal )
Cc mu bn phi sao chp li cc mu bn phi theo chiu ngang.
LT | T0 T1 T2 T3
--------------------L0 | L0 L0 L0 L0
L1 | L1 L1 L1 L1
L2 | L2 L2 L2 L2
L3 | L3 L3 L3 L3
4. Kiu d on cho xung/tri (Diagonal Down/Left )
Cc mu c ni suy theo gc 450 gia gi tr bn tri trn v bn phi di theo
ng cho.
LT | T0 T1 T2 T3 T4 T5 T6 T7
------------------------------------L0 | a b c d
L1 | b c d e
L2 | c d e f
L3 | d e f g
Trong :
a = (T0 + 2*T1 + T2 + 2) / 4
b = (T1 + 2*T2 + T3 + 2) / 4
c = (T2 + 2*T3 + T4 + 2) / 4
d = (T3 + 2*T4 + T5 + 2) / 4
e = (T4 + 2*T5 + T6 + 2) / 4
f = (T5 + 2*T6 + T7 + 2) / 4
g = (T6 + 3*T7
+ 2) / 4
5. Kiu d on cho xung/phi (Diagonal Down/Right)
Cc mu c ngoi suy theo gc 450 t trn xung, t tri qua phi.
LT | T0 T1 T2 T3
--------------------L0 | d e f g
L1 | c d e f

47

L2 | b c d e
L3 | a b c d
Trong :
a = (L3 + 2*L2 + L1 + 2) / 4
b = (L2 + 2*L1 + L0 + 2) / 4
c = (L1 + 2*L0 + LT + 2) / 4
d = (L0 + 2*LT + T0 + 2) / 4
e = (LT + 2*T0 + T1 + 2) / 4
f = (T0 + 2*T1 + T2 + 2) / 4
g = (T1 + 2*T2 + T3 + 2) / 4
6. Kiu d on dc/phi (Vertical/Right)
Cc mu c ngoi suy theo gc xp x 26.60 t phi sang tri theo chiu dc
LT | T0 T1 T2 T3
--------------------L0 | a b c d
L1 | e f g h
L2 | i a b c
L3 | j e f g
Trong :
a = (LT + T0 + 1) / 2
b = (T0 + T1 + 1) / 2
c = (T1 + T2 + 1) / 2
d = (T2 + T3 + 1) / 2
e = (L0 + 2*LT + T0 + 2) / 4
f = (LT + 2*T0 + T1 + 2) / 4
g = (T0 + 2*T1 + T2 + 2) / 4
h = (T1 + 2*T2 + T3 + 2) / 4
i = (LT + 2*L0 + L1 + 2) / 4
j = (L0 + 2*L1 + L2 + 2) / 4
7. Kiu d on dc/ tri (Vertical/Left)
Cc mu c ngoi suy theo gc xp x 26.60 t tri sang phi theo chiu dc
LT | T0 T1 T2 T3 T4 T5 T6 T7
------------------------------------L0 | a b c d
L1 | f g h i
L2 | b c d e
L3 | g h i j
Trong :
a = (T0 + T1 + 1) / 2
b = (T1 + T2 + 1) / 2
c = (T2 + T3 + 1) / 2
d = (T3 + T4 + 1) / 2
e = (T4 + T5 + 1) / 2
f = (T0 + 2*T1 + T2 + 2) / 4

48

g = (T1 + 2*T2 + T3 + 2) / 4
h = (T2 + 2*T3 + T4 + 2) / 4
i = (T3 + 2*T4 + T5 + 2) / 4
j = (T4 + 2*T5 + T6 + 2) / 4
8. Kiu d on ngang/xung (Horizontal/Down)
Cc mu c ngoi suy theo gc xp x 26.60 t trn xung theo chiu ngang
LT | T0 T1 T2 T3
--------------------L0 | a b c d
L1 | e f a b
L2 | g h e f
L3 | i j g h
Trong :
a = (LT + L0 + 1) / 2
b = (L0 + 2*LT + T0 + 2) / 4
c = (LT + 2*T0 + T1 + 2) / 4
d = (T0 + 2*T1 + T2 + 2) / 4
e = (L0 + L1 + 1) / 2
f = (LT + 2*L0 + L1 + 2) / 4
g = (L1 + L2 + 1) / 2
h = (L0 + 2*L1 + L2 + 2) / 4
g = (L2 + L3 + 1) / 2
j = (L1 + 2*L2 + L3 + 2) / 4
9. Kiu d on ngang/ln (Horizontal/Up)
Cc mu c ni suy theo gc xp x 26.60 t di ln theo chiu ngang
LT | T0 T1 T2 T3
--------------------L0 | a b c d
L1 | c d e f
L2 | e f g g
L3 | g g g g
Trong :
a = (L0 + L1 + 1) / 2
b = (L0 + 2*L1 + L2 + 2) / 4
c = (L1 + L2 + 1) / 2
d = (L1 + 2*L2 + L3 + 2) / 4
e = (L2 + L3 + 1) / 2
f = (L2 + 2*L3 + L3 + 2) / 4
g = L3
IV.3.3.2.b INTRA LUMA 16 x 16

49

Ch 1 kiu d on c p dng cho ton b MB thch hp cho nhng min nh trn


tru, phng u. Bn kiu d on c h tr l: chiu ngang, chiu thng ng, d
on DC v d on mt phng. Trong kiu d on mt phng s dng phng trnh
ng cong 3 thng s d on luma, dc theo chiu ngang, chiu thng
ng cho ph hp vi cc im nh bn cnh, v kiu d on ny c hiu qu rt cao
trong vng c thnh phn luma t thay i.
c th d on gi tr mu ca khi luma 16x16 cn s dng 33 mu k cn bao
gm 16 mu ca khi k cn bn tri, 16 mu ca khi k cn bn trn v 1 mu ca
khi k cn nh tri.
1. Kiu d on DC
S dng 16 b d on (T0..T15) v 16 b d on bn tri (L0..L15), ci tt c 256
gi tr v gi tri trung bnh, theo cng thc sau:
Nu b d on bn tri v nh trn tha mn th:
mean = (sum(T0..T15) + sum(L0..L15) + 16) / 32
Nu b d on nh trn tha mn th:
mean = (sum(T0..T15) + 8) / 16
Nu b d on bn tri tha mn th:
mean = (sum(L0..L15) + 8) / 16
Hoc
mean = 128
2. Kiu d on nm dc (Vertical)
Ngoi suy t cc mu bn theo chiu dc
LT | T0 T1 T2 T3 T4 .. T15
----------------------------- .. ----L0 | T0 T1 T2 T3 T4 .. T15
L1 | T0 T1 T2 T3 T4 .. T15
L2 | T0 T1 T2 T3 T4 .. T15
........
L15 | T0 T1 T2 T3 T4 .. T15
3. Kiu d on nm ngang (Horizontal)
Ngoi suy t cc mu tri theo chiu ngang
LT | T0 T1 T2 T3 T4 .. T15
--------------------------- .. ----L0 | L0 L0 L0 L0 L0 .. L0
L1 | L1 L1 L1 L1 L1 .. L1
L2 | L2 L2 L2 L2 L2 .. L2

50

......
L15 | L15 L15 L15 L15 L15 .. L15
4.Kiu d on mt phng Plane
Cho 16 b d on nh trn (T0..T15), 16 b d on bn tri (L0..L15) v 1 b d
on gc nh tri (LT) sp xp nh sau:
LT | T0
T1
T2
..
------------------------------------- ..
L0 | c[ 0, 0] c[ 1, 0] c[ 2, 0] ..
L1 | c[ 0, 1] c[ 1, 1] c[ 2, 1] ..
......
L15 | c[ 0,15] c[ 1,15] c[ 2,15] ..

T15
-------c[15, 0]
c[15, 1]
c[15,15]

IV.3.3.2.c INTRA CHROMA 8x8


D on cho thnh phn chroma c thc hin mt ln cho ton b MB, 64 gi tr
mu chroma s dng cc kiu d on ging nh d on Intra 16x16 cho thnh phn
Luna: D on theo chiu ngang, d on theo chiu ng, d on DC, d on mt
phng.
IV.3.3.2.d INTRA-PCM
L mt MB 16x16, cha mt mt phng cc thnh phn luma v chroma cha nn.
Lm cho b m ha x l n gin hn bng cch x l m ha v bin i thay v
phi gi trc tip mu cc gi tr m ha. V kiu d on I-PCM cn c mt s li
ch sau:
Cho php m ha chnh xc k t i din ca gi tr mu.
Cung cp gi tr ng cho nhng bc nh c ni dung bt thng m khng cn
m rng d liu quan trng.
Cho php t gii hn s lng bit iu khin MB m khng nh hng n
hiu sut nn.
IV.3.3.3 D on trng s:
L mt phng php iu chnh mu cho b chuyn ng d liu trong MB P hoc
MB B rt thch hp cho m ha mt ngi hoc m ha chuyn ng. C 3 loi d
on trng s nh sau:
1. P slice macroblock, d on trng s hin th (explicit)
2. B slice macroblock, d on trng s hin th (explicit).

51

3. B slice macroblock, d on trng s n (implicit).


Mi mu d on pred0(i, j) hoc pred1(i, j) c co dn bi trng s thng k W0
hoc W1 trong d on b chuyn ng trc . loi hin th trng s thng k
c xc nh bi b m ha v truyn i Slice header. Nu s dng loi n th
trng s thng k W0, W1 c tnh ton da vo mi quan h v tr thi gian ca list
0 v list1 trong nh tham kho. Gi tr trng s thng k ln nu nh tham kho gn
ging vi nh hin ti v gi tr trng s thng k nh nu nh tham kho khc vi nh
hin ti.
Mt s ng dng cho php c 2 hm n v hin iu khin s lin quan ca nh tham
kho i vi qu trnh b chuyn ng, d on trng s c hiu qu c bit trong m
ha cc hiu ng m dn nh minh ha hnh IV.15.

Hnh IV.15. Hiu ng m dn


IV.3.3.4 K thut tin on b chuyn ng v c lng chuyn ng
K thut tin on b chuyn ng l k thut phn on theo hng chuyn ng ca
cc bc nh, nhm thay th gn ng cc nh thnh phn trong dy video. Ngoi ra b
chuyn ng cn lm gim s d tha v mt khng gian gia cc bc nh, hn ch
cc thng s chuyn ng bi vic dng vector chuyn ng m t s dch chuyn.
Nhng vector chuyn ng cc khi k cn s cung cp mt gi tr pixel c lng

52

khc nhau v c tnh ton trong mi khi ca MB. Gi tr d on l gi tr trung


bnh ca cc c lng ny. D on chuyn ng ca MPEG-2 c nhc im l nh
tham kho thch ng nht vi MB hin ti phi kch thc 16x16 v vng thch ng
phi nm ngay trong nh tham kho dn n hiu qu nn cha cao. Nguyn tc b
chuyn ng trong H.264/AVC cng ging nh cc chun trc l tm kim trong nh
tham kho khi thch hp nht sao cho nng lng ca phn sai s d on l nh
nht, tuy nhin u im ca chun H.264/AVC c th b chuyn ng vi kch thc
nh 8x8, 4x4 hoc b chuyn ng trn c s cc im nh con, c im ny
mang li 12% hiu qu nn so vi cc chun c.
IV.3.3.4.a B chuyn ng thch nghi khi
B chuyn ng vi kch thc khi thay i s dn n vic phc tp trong tnh ton,
v thao tc tm kim s nhiu hn v s bit cn thit cho vic m ha cng s nhiu
hn, do H.264/AVC b sung phng php b chuyn ng thch nghi khi, ngha l
nu nng lng sai s d on qu ln th s b chuyn ng vi kch thc nh v
ngc li. Hnh IV.16. minh ha s khc nhau gia sai s c b chuyn ng v khng
b chuyn ng ca khi 16x16.

Frame 1

Frame 2

C b chuyn ng
Khng b chuyn
ng
Hnh IV.16. S khc nhau gia sai s c b chuyn ng v
khng b chuyn
53 ng cho khi 16x16

IV.3.3.4.b B chuyn ng mt phn t


Trong cc thut ton b chuyn ng trc th s dng loi 1 pixel nn cc thnh phn
ca vector chuyn ng b gii hn bi mt con s nguyn, m chuyn ng thc gia
2 hnh nh lin tip thng khng bng s nguyn bc ca pixel dn n s hn ch
v phn gii, sai s trong d on b chuyn ng v lm tng sai s d on.
MPEG-1, MPEG-2 v H.263 s dng b chuyn ng vi phn gii pixel, do
cc thnh phn ca cc vector chuyn ng c th ly gi tr hoc c mt pixel.
Thnh phn chnh ca b chuyn ng pixel l b lc ni suy. Qu trnh ni suy l
mt th tc chuyn ha nhng mu ti v tr phn s bng cch s dng mu ti v tr
nguyn v c minh ha nh hnh IV.17:

Hnh IV.17. Mu ni suy cho cc MV pixel


Theo hnh IV.17. ti v tr a, c 2 thnh phn vector chuyn ng u l mt pixel, do
khng cn cc mu ni suy, ti v tr b v c, mt trong cc thnh phn ca vector
chuyn ng bng pixel, do mu ni suy c gi tr bng ghp ni suy 2 chiu tc
l:
b = (A + B)/2
c = (A + C)/2 (tt c gi tr ny l gi tr chroma v luma).
Ti v tr d, c 2 u l pixel nn gi tr mu c tnh ton ni suy 2 chiu t tt c
bn mu lin k: d = (A+ B + C +D)/ 4.
Chun H.264/AVC s dng thut ton b chuyn ng vi phn gii pixel thay v
hoc 1 pixel nh cc chun trc y nhm tng kh nng d on, gim thiu sai

54

s d on mt cch ng k v tc bit cng c tng ln. Kiu ni suy cho cc


thnh phn mu nh sau:
IV.3.3.4.b.1 Mu ni suy thnh phn luma.
Qu trnh b chuyn ng c chia thnh 2 bc sau:
Bc th nht, pixel c tnh ton bng cch ghp ni suy ci tin. y khng
ch 2 hoc 4 mu lin k c s dng cho ni suy m cn c th l 8 mu theo 2
chiu ngang v thng ng. Cu trc ni suy pixel theo hng nm ngang nh sau:

Hnh IV.18. Minh hoa phep pixel theo hng nm ngang cho thanh
phan
Cc
mu luma.
v tr pixel nm cnh 2 mu nguyn c ni suy t nhng mu nguyn
bng cch s dng b lc FIR 8-nhnh (Finite Impulse Response) vi cc trng s
(8/256, -40/256, 40/256, 40/256, -40/256, 8/256) tng ng vi (1/32,-5/32, 5/8,
5/8,-5/32, 1/32). V d, v tr mu pixel b c tnh ton t 6 mu nguyn nm
ngang E, F, G, H, I v J nh sau:
b round (

E - 5F 20G 20H - 5I J
)
32

Qu trnh ni suy h theo hng thng ng cng c thc hin tng t t cc


mu A, C, G, M, R v T. Trong trng hp c 2 thnh phn vector chuyn ng u l
pixel th vic lc c thc hin theo hng nm ngang trc ri mi n hng
thng ng.
Bc th 2, cc gi tr mu c tnh ton bi php ni suy tuyn tnh, s dng cc
gi tr mu pixel t bc th nht nh hnh sau:

55
Hnh IV.19. Ni suy mu cho thnh phn luma ti v tr .

Cc mu v tr c tn l a, c, d, n, f, i, k, v q c suy ra bng cch ly tr trung


bnh 2 mu v tr nguyn v v tr pixel gn nht, v d nh:
b round (

Gb
)
2

Cc mu v tr c tn l e, g, p v r c suy ra bng cch ly tr trung bnh 2 mu


v tr mu theo ng cho gn nht, v d nh:
e round (b h) / 2

i vi mode d on pixel, bnh thng th mt khi (8 +1) x (8 + 1) = 81 pixel


c c t VOP tham kho, v khi tham kho bao gi cng nhiu hn khi 8x8 mt
hng v mt ct c d on cho php ni suy mu hai chiu pixel con ti bin
ca khi. i vi mode d on pixel phi dng thm 3 pixel ngoi khi tham kho
cho vic ni suy (v s dng b lc FIR 8 nhnh) nn khi tham kho l phn m rng
i xng ti bin ca khi v thng c gi l gng ng bin khi minh ha
nh hnh IV.20:

Hnh IV.20. Gng ng bin khi.


Theo lp lun trn th 3 gi tr cng thm vo ngoi khi tham kho s c tng cng
(8+6+1) x (8+6+1) = 225 mu bt buc phi c t b nh cu trc VOP, cn nu s
dng gng th s mu s l (8+1) x (8+1) = 81, vy gng ng bin khi s lm
gim 64% rng bng tn yu cu trong qu trnh d on b chuyn ng.
IV.3.3.4.b.2 Mu ni suy thnh phn chroma.

56

Nhng im nh chroma c gi tr pixel c ni suy bng cch ly trng s trung


bnh ca khong cch t im nh mi ti bn ng vin ca im nh gc nh hnh
v IV.21.

Hnh IV.21. Minh hoa phep noi suy mau cho


thanh phan chroma.

a round

[(8 - dx ).(8 - dy)A dx.(8 - dy)B (8 - dx ). dyC dx . dyD]


64

Vi dx l 2 v dy l 3, nn

a round

(30A 10B 18C 6D)


64

IV.3.3.4.c B chuyn ng cho cc VOP hnh ch nht v bt k


i tng chuyn ng trong mt bc nh thng t tp trung ng bin khi, nn
thng c hnh dng bt k nh minh ha hnh IV.22. Trong hnh oval l i
tng chuyn ng, v hnh ch nht l i tng ng yn. Qu trnh b chuyn
ng cho cc VOP c hnh dng bt k s lm tng hiu qu hin th ca bc nh.
Nhng vic tm c khi thch ng nht trong nh tham kho cho cc khi va cha
nh ng v nh tnh cng khng n gin, hn na gp kh khn trong vic nhn
nh chnh xc ng bin khi, s phn on, tn hiu bo hiu ng bin khi cho
b gii m v m ha phn sai s sau khi b chuyn ng.

57
Hnh IV.22. B chuyn ng cho mt VOP c hnh dng bt k

IV.3.3.4.d B chuyn ng ton phn GMC


Tp hp cc thng s m ha cho mt VOP hon chnh biu din bng mt chuyn
ng ton phn VOP v c th c s dng lun phin cho cc vector chuyn ng
ca MB b chuyn ng nhm trnh gy sai st v cc thng s chuyn ng ton
phn khng phi u cng nh nhau. N kh quan trng trong cc chui chuyn
ng ton phn nh nh chp t Camera hay chuyn ng khng tnh tin nh Zoom
hay quay Camera. Cc thng s chuyn ng ton phn c truyn i trong phn
header ca VOP, vi mi MB b m ha quyt nh s dng cc thng s GMC hay
cc vector chuyn ng c lng ca MB.
Cc thng s chuyn ng ton phn l tp hp ca 4 vector chuyn ng cho mt
VOP, vi 1vector chuyn ng tng ng xc nh mt v tr tham kho ca VOP hin
ti. V d nh hnh IV.23. cc vector chuyn ng GMC c t ti 4 gc ca VOP.

Hnh IV.23. B chuyn ng ton phn


IV.3.3.4.e B chuyn ng cho cc MB ng bin
Trong trng hp cc VO c hnh dng bt k, VOP tham kho dng cho d on b
chuyn ng cng s c hnh dng bt k, dn n trng hp d on khng hiu qu
cc pixel trong sut. ngn nga tnh trng ny, cc pixel trong sut VOP tham
kho c x l m t VOP c gii m trc . Tc l, ton b cc pixel trong

58

sut ca VOP tham kho c quy v gi tr kt cu ly t cc pixel khng trong sut


trong cng VOP. Cn i vi cc MB ng bin, MB trong sut th s dng thut
ton khc.
Trc tin cc pixel trong sut k hiu bi ch x, s c lp y bi cc gi tr ng
bin sao chp li theo chiu ngang v thng ng nh hnh v. Cc VOP ng bin
c k hiu bi A v B, cn cc pixel ngoi VOP l trong sut nn khng c nh
du.

Hnh IV.24. Qu trnh m cho cc Macroblock ng bin


Qu trnh m c thc hin nh sau: Cc pixel trong sut c lp y bi gi tr
ng bin tng ng bn tri hoc bn phi. Nu c mt gi tr ng bin VOP ti
2 bn pixel th ly gi tr trung bnh, sau thc hin tng t cho chiu ng. Cc
pixel c lp y th theo hng nm ngang n c coi nh l c sn ti VOP,
ngha l s c sao lu mt cch tng ng nu nm ti bin ca VOP. Tuy nhin,
trong khi thc hin bc ny, cc pixel ti nh hay y th kt qu s ly gi tr
trung bnh. Cui cng th ton b cc pixel trong khi ng bin c m v s
khng cn cc pixel trong sut pha bn tri na.
Cc MB nm bn ngoi VOP c m nh sau: cc MB trong sut ny s c lm
y bi cc mu sao chp li ti ng bin ca cc MB lin k. Nu ch c mt MB
ng bin lin k c la chn m theo nguyn l u tin nh hnh sau:

Hnh IV.25. Nguyn l m u tin cho


59 cc Macroblock trong sut c nhiu MB
ng bin. Cc MB ng bin c m trc MB trong sut

Nu c nhiu hn mt MB ng bin lin k th MB trong sut c m bng cch


sao li cc mu trn, di, tri hay phi t ng bin ngang hay thng ng ca MB
ng bin bi con s u tin ln nht. Cc MB trong sut khng c MB lin k c
lp y bi gi tr 2bits/ pixel. i vi tn hiu luma v chroma 8 bit, c lp y bi
gi tr 27 = 128.
IV.3.3.5 Php bin i nguyn ICT (Integer Discrete Cosin Transform)
Php bin i nguyn c thc hin trn cc khi 4x4 sau khi c d on b
chuyn ng hoc d on Intra. V c bn th cng ging bin i DCT, ch b sung
mt s c im sau:
y l mt php bin i nguyn xp x vi php bin i DCT, tt c cc bc
c thc hin vi s nguyn, qu trnh gii m s khng mt d liu.
Cc bc tnh ton c tch hp trong b lng t ha nhm lm gim s
lng bc tnh ton.
Tt c cc bin i v lng t ch dng cc thut ton cng hoc thut ton
dch bit trn cc gi tr nguyn 16 bit v ch thc hin nhn trn tng h s ch
khng cn thc hin php chia nn m bo khng mt i chnh xc.

60

DCT

1 1 1 1
1.3 0.54 0.54 1.3

1 1 1 1
2 1 1 2

Gia tr
thc

ICT

Gia tr
nguyen

1 1 1 1 1 1 1 1

0.54 1.3 1.3 0.54 1 2 2 1

H.264/AVC cung cp 3 kiu bin i ty thuc vo loi sai s d on, mt l bin i


Hadamard cho mng 4x4 h s DC luma trong kiu d on Intra 16x16, 2 l bin i
Hadamard mng 2x2 h s DC chroma v tt c cc block 4x4 trong d liu d tha
c bin i ICT.
Php bin i ICT cho cc khi 4x4 theo cng thc sau:

61

a a a b a c
b c b X a c ba
T
Y AX
a a a c a b

c b c ab ca
Thc hin co dn ma trn Y vi ma trn E nh sau:

62

a
b
a
b
1 1 1 1 d
2 2
T 1 d 1 X 1 d 1 ab ab
Y XC )( EC 2 2
1 1 1 d 1 a b a b

d 1 d 1 1 d 2 2
ab ab
22

Trong

CXCT l php bin i 2 chiu


E l ma trn tha s t l co dn
X l ma trn 4x4 ca tn hiu video, hnh nh ng vo.
Php ton c ngha l mi thnh phn ca ma trn CXC T s nhn vi
h s t l cng v tr trong ma trn E (nhn v hng).
d=

b
0.414
c

n gin, chun H.264/AVC thc hin xp x a = 0.5, b =

63

2
5

, d = 0.5

Hng th 2 v th 4 ca ma trn C, ct th 2 v th 4 ca ma trn C T c co dn bi


h s 2. Ma trn tng ng s c kt qu l:

1 1 1 2 1 a b/2 aa ab/2
2 2
T 2 1 2 X 1 1 2 b/2 ba /4 b/2ba /4
YC ff )( EX f 2 2
1 1 1 1 2 a b/2 aa ab/2

1 2 1 1 2 1 2 2
b/2 ba /4 b/2ba /4
22

Php bin i ny xp x vi DCT 4x4, v s thay i ca phn

t b v d, lm cho ng ra ca php bin i mi khng ng nht vi DCT 4x4.


V d bin i ICT cho mt tn hiu ng vo 4x4:
Ta c X l ma trn ng vo:
j=0 j=1 j=2 j=3
i=0 5
11
8
10
i=1 9
8
4
12
i=2 1
10
11
4
i=3 19
6
15
7

64

Kt qu bin i ICT cho tn hiu trn c m phng bng on m trong Matlab


nh sau:
A = [ 0.5 0.5 0.5 0.5;0.653 0.271 0.271 -0.653;0.5 -0.5 -0.5 0.5;0.271
-0.653 -0.653 0.271]

% A LA MA TRAN HE SO CO DAN

X = [ 5 11 8 10;9 8 4 12;1 10 11 4;19 6 15 7]; % X LA MA TRAN NGO VAO


Y1 = A*X*A'

% GIA TRI PHEP BIEN DOI DCT

B = [ 1 1 1 1; 2 1 -1 -2; 1 -1 -1 1; 1 -2 2 -1];%B LA MA TRAN HE SO


a = 1/2;b= sqrt(2/5);d = 1/2;
E = [a^2 a*b/2 a^2 a*b/2; a*b/2 b^2/4 a*b/2 b^2/4; a^2 a*b/2 a^2 a*b/2;
a*b/2 b^2/4 a*b/2 b^2/4];
Y2= B*X*B'.*E

% MA TRAN BIEN DOI XAP XI (BIEN DOI NGUYEN)

CHENHLECH = Y2-Y1

35.0 10.218 1.5 14.756


3.75 6.2411 3.887 5.0241

Y1 AXAT
5.5 5.193. 2.0 0.253

8.288 0.8951 2.4210 5.4030

35.0 0.1581 1.5 1.1068


3.004 3.900 1.1068 9.200

Y 2 (CXCT ) E f
5.5 2.6879 2.0 4.9015

4.2691 3.200 9.3287 2.100


Phn chnh lch gia 2 php bin i l :

0
6.7542
Y1 Y 2
0

4.0189

10.376 0 15.8628
2.3411 4.9938 4.1759
2.5051 0 5.1545

4.0951 11.7497 7.5030

Thc hin bin i tng t ta c cng thc bin i nguc nh sau:

65

1 1 /2 a b a b1 111

1 /2 1 Y ab 2 ab 2 1 /2 1/2 1
T
Y Ci Y Ei)(' C 2 2
1 /2 1 a b a b1 1 11

2 2
1 1 /2 ab ab 1/21 1/2

22

IV.3.3.5.a Bin i Hadamard cho cc h s DC luma ca khi 4x4


Nu MB c m ha trong ch Intra 16x16, u tin cc khi d 4x4 s c bin
T
i nguyn ICT WD (C f XC f ) E f . Sau mi h s ca khi 4x4 s c bin

i Hadamard mt ln na theo cng thc:

66

1 11 1 11

1 1 WD 1 11
Y /2
1 1 1 11

1 1 1 11

Cc h s DC c lng t theo cng thc sau:

Z D ( i , j ) ( YD ( i , j ) MF( 0 , 0 ) 2 f ) ( qbits 1)

Vi

2qbits / 3 Intra

2qbits / 6 Inter

Trong : YD(i, j) l kt qu ca php bin i Hadamard. Trc khi lng t, Y D(i, j) s


chia cho 2 v lm trn.
>> l php dch phi bit nh phn
Ti b gii m, php bin i Hadamard ngc c thc hin nh phpgii lng t.

67

1 11 1 1

1 1 ZD 1 11
WQD
1 1 1 1

1 1 1 11

Qu trnh co dn ti b gii m nh sau:
W'

W'

[W

D(i, j)
D (i , j )

D (i , j )

V( 0, 0 ) 2 floor ( QP / 6 ) 2

D (i , j )

(QP 12)

V( 0, 0 ) 21 floor ( QP / 6 ) ] ( 2 floor (QP / 6)

(QP 12)

IV.3.3.5.b Bin i Hadamard cho h s DC chroma ca khi 2x2.


H s DC ca mi khi 4x4 ca thnh phn chroma c nhm thnh khi 2x2 v
c bin i v lng t ha:

68

1 WD1
WQD
1 1
Ng ra ca lng t ha khi 2x2 c thc hin nh sau:
Z D ( i , j ) ( YD ( i , j ) .MF( 0 , 0 ) 2 f ) ( qbits 1)

Trong qu trnh gii m, php bin i ngc c thc hin trc khi co dn.

1 ZD1
WQD
1 1
69

Nu QP>6 qu trnh co dn li c thc hin nh sau:


W ' D ( i , j ) W QD ( i , j ) V
. ( 0 , 0 ) .2 floor (QP / 6 ) 1

Nu QP<6 qu trnh co dn li c thc hin nh sau:


W ' D ( i , j ) [W QD ( i , j ) V
. ( 0, 0 ) ] 1

H s DC co dn li W'D c thay th vo cc khi 4x4 ca h s chroma tng ng.


Cng ging h s DC luma, php bin i m rng s l gii tng quan cho h s DC
chroma 2x2 v ci thin hiu qu nn.
IV.3.3.6 Qu trnh lng t
H.264/AVC s dng b lng t v hng nn s khng xut hin vng cht im
zero nh trong b lng t vector. Trc tin, sau khi X bin i nguyn d liu ng
vo to thnh cc h s DCT, cc h s DCT W i, j s c lng t ha v co dn theo
cng thc sau:
Z ij round (

Trong

Yij
Qstep

tng ng vi

Z ij round (Wij .

PF
)
Qstep

+ Yij l h s bin i ICT.


+ Qstep =2((QP-4)/ 6) l cp lng t ha
+ Zij l h s lng t ha

Vi gi tr ca PF nh sau:

a 2 0.25 (i, j ) (0, 0), (0, 2), (2, 0), (2, 2)

PFij b 2 / 4 0.1 (i, j ) (1,1), (1, 3), (3,1), (3, 3)


ab / 2 0.1518 vi tr khc

Mi MB chn mt trong s 52 bc lng t Qstep nh bng bi tham s lng t


QP, nu kch thc bc ln, phm vi gi tr lng t s nh do hiu qu nn s
cao, nhng b li gi tr gii lng t s xp x th vi gi tr tn hiu gc. Nu kch
thc bc nh, gi tr gii lng t s thch ng vi gi tr tn hiu gc cht ch hn,
nhng phm vi gi tr lng t s ln do gim hiu qu nn. Theo kt qu nghin
cu thc nghim gi tr Qstep c sp xp sao cho khi tng QP ln mt n v th
tng khong 11%->12% kch thc bc lng t, tc l gi tr Qstep s tng gp i

70

nu tng QP ln 6 n v, nhm m ha chnh xc v iu khin s cn bng gia tc


truyn bit v cht lng, iu c ngha l lm gim i 12% tc bit.
Bng 52 gi tr Qstep c quy nh trong tiu chun.
QP
Qstep
QP
Qstep

0
1
2
0.625 0.6875 0.8125

18

3
4
0.875 1
24

10

5
6
1.125 1.25
30

20

7
1.375
36
40

8
1.625

9
1.75
42
80

10 11 12
2 2.25 2.5

48 51
160
224

n gin ha php tnh trong phn mm tham kho b sung h s nhn MF v php
dch phi s nh phn, nhm trnh thc hin php tnh chia nn cng thc tng ng
s l Z ij round (Wij .

MF
)
2 qbits

Vi qbits = 15+floor(QP/6). (Gi tr nguyn c gi tr t -215 cho n 215 -1). Vi floor


l hm lm trn v gi tr nh hn.
MF l h s nhn, ty thuc vo gi tr QP v h s v tr (i, j) nh sau.

a 2 * 2 qbits / Qstep

(i, j ) (0, 0), (0, 2), (2, 0), (2, 2)

MFij b 2 / 4 * 2 qbits / Qstep (i, j ) (1,1), (1, 3), (3,1), (3, 3)


ab / 2 * 2 qbits / Qstep vi tr khc

Theo cng thc trn ta c bng tm tt 6 gi tr u tin ca MF nh sau,


QP

Qstep

0
1
2
3
4
5

0.625
0.6875
0.8125
0.875
1
1.125

V tr
(0,0),(2,0),(2,2),
(0,2)
13107
11916
10082
9362
8192
7282

V tr
(1,1),(1,3),(3,1),
(3,3)
5243
4660
4194
3647
3355
2893

V tr khc
8066
7490
6554
5825
5243
4559

i vi QP>5, th h s MF s lp li, nhng gi tr b chia 2qbits s tng, v d qbits


= 16 khi 6 QP 11, qbits = 17 khi 12 QP 17
IV.3.3.7 Qu trnh gii lng t:
Tha s co dn trc trong b gii lng t ( t ma trn E i cha cc gi tr a2, ab v b2
ty thuc vo h s v tr) c tch hp trong php tnh ny, cng vi hng s co dn
l 64 nhm trnh sai s lm trn.

71

W 'ij Z ij .Qstep .PF .64

Gi tr ng ra b bin i ngc c chia cho 64 loi b tha s co dn hoc trong


cch b sung th dng php dch bit nh phn. Trong chun H.264/AVC th khng ghi
r trc tip gi tr Qstep v PF m nh ngha gi tr V= (Qstep.PF.64/2 floor (QP/ 6)) v 0
QP 5 nn

floor(QP/6)
cng thc tng ng s l W ' ij Z ij .Vij .2

V d :
QP= 3, nn Qstep = 0.875
(i,j) = (1, 2) nn PF = ab = 0.3162 v 2floor (QP/ 6) = 1
V= (Qstep.PF.64) = 0.875 x 0.3162 x 64 = 18.
Wi'

= Zi j x 18 x1.

Bng gi tr tha s co dn V nh sau :


V tr (0,0),(2,0),(2,2),
(0,2)
10
11
13
14
16
18

QP
0
1
2
3
4
5

V tr (1,1),(1,3),(3,1),
(3,3)
16
18
20
23
25
29

V tr khc.
13
14
16
18
20
23

V d : mu nh 4x4 c m ha kiu Inter. QP=10


Bin i Y=CXCT

Ng vo X :
i=0
i=1
i=2
i=3

j=0
5
9
1
19

j=1
11
8
10
6

j=2
8
4
11
15

j=3
10
12
4
7

i=0
i=1
i=2
i=3

j=0
140
-19
22
-27

j=1
-1
-39
17
-32

j=2
-6
7
8
-59

j=3
7
-92
31
-21

MF = 8192, 3355 hoc 5243 ty thuc vo v tr h s v qbits = 16 v f =


Lng t

Z ij round (Yij * PF / Qstep ) :

2 qbits
3

Gii lng t W' = Z.Qstep.PF.64 l :


i=0
i=1
i=2
i=3

j=0
544
-40
96
-80

j=1
0
-100
40
-50

V= 16, 25 hay 20 ty thuc vo v tr v 2floor (QP/ 6)= 21 = 2.


Ng ra b bin i ngc chnh X'' = round (C iT W ' C i / 64)

72

j=2
-32
0
32
-200

j=3
0
-250
80
-50

j=0 j=1 j=2 j=3


i=0 4
13
8
10
i=1 8
8
4
12
i=2 1
10
10
3
i=3 18
5
14
7
Qu trnh thc hin v d trn c m phng trong Matlab nh sau:
function dq(b)
A = [ 0.5 0.5 0.5 0.5;0.653 0.271 0.271 -0.653;0.5 -0.5 -0.5 0.5;0.271
-0.653 -0.653 0.271];% A LA MA TRAN HE SO CO DAN
a = 0.5;b= sqrt(2/5);
PF = [a^2 a*b/2 a^2 a*b/2; a*b/2 b^2/4 a*b/2 b^2/4; a^2 a*b/2 a^2 a*b/2;
a*b/2 b^2/4 a*b/2 b^2/4]
X = [5 11 8 10;9 8 4 12;1 10 11 4; 19 6 15 7]; % X LA MA TRAN NGO VAO
B = [ 1 1 1 1; 2 1 -1 -2; 1 -1 -1 1; 1 -2 2 -1];%B LA MA TRAN HE SO
Y1 = B*X*B'
% GIA TRI PHEP BIEN DOI DCT
Z =round((Y1.*PF)/2)
c = [1 1 1 1; 1 1/2 -1/2 -1; 1 -1 -1 1; 1/2 -1 1 -1/2];% A LA MA TRAN HE SO
CO DAN
W = Z.*2.*PF*64
O = round ((B'*W*B)/64)

IV.3.3.8 Qut Zig-Zag


Qut Zig-Zag nhm chuyn ma trn h s DCT 2 chiu sau khi lng t thnh mt
dng lin tip (mng mt chiu) cc h s tn s khng gian tng dn theo mt th t
nht nh hay ni cch khc n nhm nhng s khc 0 v s 0 thnh mt mng tuyn
tnh. Gi tr lng t s c sp xp to ra mng tuyn tnh bng cch t gi tr
theo th t (0,0), (0,1), (1,0), (2,0), (1,1), (1,2), (0,3) Hu ht nhng gi tr tn s
cao s c xp x thnh 0 to hiu sut nn cao hn.
Cc MB c m ha trong ch 16x16, th h s DC (nh tri) ca khi luma 4x4
c qut trc, sau ti 15 h s AC. Tng t, mi h s DC 2x2 ca thnh phn
mu c qut trc sau ti 15 h s AC trong mi khi. Qu trnh qut ny s sp
xp nhng h s c s khc nhau nhiu nht v tr u tin, ri ti h s c nhiu s
0 lin tip.
Nu MB c nn s dng kiu bin i 4x4 trong ch frame, th cc h s lng
t c sp xp nh sau:

Hnh IV.26. Qut Zig-Zag cho kiu m ha frame


73

Nu MB c nn s dng kiu bin i 4x4 trong ch mnh, th cc h s lng


t ha c sp xp nh sau:

Hnh IV.27. Qut Zig-Zag cho kiu m ha field


Kiu qut ny hiu qu hn, phn nh qu trnh lm gim tng quan d liu gc
theo chiu thng ng
IV.3.3.9 M ha xen k.
loi tr hin tng chp sng H.264/AVC h tr m ha v gii m cho kiu qut
lin tc hoc qut xen k c cch ly v mt thi gian bi mt chu k slice (mt na
chu k frame), nh dng ly mu mc nh l kiu qut 4:2:0 lin tc. Hai phng
php ging nhau ch dng in t cng qut t trn xung di, t tri sang phi,
cc dng qut ngc cng c xo. im khc c bn l y ngi ta chia 1 nh
thnh 2 mnh v thc hin qut theo nguyn l nh sau: Mi nh c truyn lm 2
lt, lt u truyn tt c nhng dng l gi l mnh l; lt 2 truyn tt c nhng
dng chn gi l mnh chn; hoc ngc li nu mi nh c Z dng th mi mnh c
Z/2 dng. Mi mnh l 1 na nh mang 1 na lng tin tc ca nh. B m ha cho
php chn ch qut khung hoc mnh. Vic chn kiu qut field s tit kim c
b nh hoc gim thi gian truyn t b m ha cho n b gii m, minh ha nh
sau:

M ha frame : 2 slice (field) ca mt frame c m ha cng nhau

M ha slice : 2 slice (field) ca mt frame c m ha ring bit

74
Hnh IV.28. Minh ha qu trnh m ha xen k

IV.3.3.10 Sp xp th t Slice.
K thut nn H.264/AVC cho php b m ha c th chn tn s v v tr ca nh I,
iu ny rt c ch cho nhng ng dng yu cu im truy cp ngu nhin, nh I
c s dng vi chu k 2 ln/giy. B m ha cng cho php chn s lng nh B
gia 2 cp nh tham kho bt k (I hoc P) da vo dung lng b nh trong b m
ha v c tnh ca nh c m ha. V d nh, mt bc nh ln c 2 nh B chia
thnh 2 nh tham kho lin tip, kiu sp xp ca nh I, nh P v nh B theo trt t
nh sau:

Hnh IV.29. Trt t hin th ca cc bc nh.


Trt t ca cc bc nh m ha v gii m c s khc nhau do d on b chuyn
ng 2 chiu ca nh B. B m ha MPEG sp xp li trt t nh trong lung video
nh sau:

Hnh IV.30. Th t lung Video khc vi trt t hin th.


Th t ngun thng tin v th t ng vo b m ha nh sau
I(1) B(2) B(3) P(4) B(5) B(6) P(7) B(8) B(9) P(10) B(11) B(12) I(13)
Th t m ha v th t trong dng bit nn nh sau
I(1) P(4) B(2) B(3) P(7) B(5) B(6) P(10) B(8) B(9) I(13) B(11) B(12)
Th t ng ra b gii m (hin th ging nh tn hiu ng vo m ha) nh sau
I(1) B(2) B(3) P(4) B(5) B(6) P(7) B(8) B(9) P(10) B(11) B(12) I(13)

75

IV.3.4 M HA ENTROPY
M ha Entropy l mt k thut m ha khng tn hao c cc k hiu ng vo l
nhng h s lng t, vector chuyn ng, thng tin headerN gm nhiu loi m
ha nh m ha d on, m ha Huffman, m ha c chiu di bin i VLC v m
ha s hc nh phn BAC. Trong H.264/AVC s dng kiu m ha thch nghi theo ni
dung CA nh CAVLC v CABAC ngha l ch c mt nh x cho mt bng t m n
c thc hin theo thng k d liu, cn cc tiu chun trc th s dng mt bng
VCL cho mi phn t khc nhau. Cc thnh phn c php lp bn trn s c m
ha VLC hoc FLC, cn thnh phn c php lp bn di s c m ha VLC
hoc CABAC ty thuc vo kiu m ha Entropy. Khi c ch ch m ha Entropy
c ci v 0 th cc khi d liu d tha s c m ha CAVLC hoc m ha
VLC no nh m ha Ex-Golomb. Cc thng s cn m ha nh bng sau:
Thng s

M t

Thnh phn c php ca


Sequence, picture v slice-layer

Thng tin mo u v cc thng s

Macroblock type mb_type

Phng php d on cho mi MB m ha

Coded block pattern


Quantiser parameter
Reference frame index
Motion vector
Residual data

Ch nh mu khi trong MB c m ha
Truyn gi tr sai khc v QP ca nh trc
Ch s nh tham kho cho d on Inter
Truyn phn sai khc t vector chuyn ng d on
H s d liu d tha t cc khi 4x4, 2x2

IV.3.4.1 M ha Entropy Exp-Golomb.


M Exp-Golomb (Exponential Golomb codes) l m c chiu di thay i c vi
cu trc u n v d nh sau.
Dng chui bit

Phm vi gi tr codeNum

01x0

1-2

001x1x0

3-6

0001x2x1x0

7-14

00001x3x2x1x0

15-30

000001x4x3x2x1x0

31-62

...

...

Cu trc bng m Exp-Golomb [M zeros][1][INFO]

76

Trong INFO l trng M-bit mang thng tin. T m u tin khng c s 0 bt u


v trng INFO kt thc. T m th 1 v 2 c trng INFO n bit, t m th 3-6 c
trng INFO 2 bit, v c tip tc nh vy. Chiu di ca mt t m l (2M+1) bits v
mi t m c b m ha cu trc li da vo ch code_num:
M = floor(log2[code_num+1])
INFO = code_num + 1 - 2M
Mt t m c gii m theo th t nh sau:
c trong M s 0 bt u, tip theo l s 1.
c trng M-bit INFO.
Code_num = 2M+ INFO - 1
i vi t m s 0, th INFO v M u l 0.
Thng s k s c m ha v c nh x vo Code_num theo mt trong cc cch
sau:
Loi nh x
ue
te
se

me

M t
nh x trc tip khng du, code_num = k.
L phin bn ca bng m Exp-Golomb, trong t m ngn b ct b.
nh x c du, s dng vector chuyn ng sai khc, delta QP v
nhng vector khc, gi tr k s c nh x vo gi tr code_num nh
bng IV. Vi cc gi tr code_num nh sau.
Code_num = 2 | k |
(k 0)
Code_num = 2 | k |1
(k> 0)
K t nh x, thng s K s c nh x vo code_num. Bng IV lit
k mt phn cc mu khi cho d on Inter, ch ra nhng khi 8x8
trong MB cha cc h s khc 0

Code_num

0
1
-1
2
-2
3

0
1
2
3
4
5

Bng loi nh x c du.


Mu khi m ha (Inter prediction)

Code_num

0 (no nonzero blocks)


16 (chroma DC block nonzero)
1 (top-left 8 8 luma block nonzero)
2 (top-right 8 8 luma block nonzero)
4 (lower-left 8 8 luma block nonzero)
8 (lower-right 8 8 luma block nonzero)

0
1
2
3
4
5

77

32 (chroma DC and AC blocks nonzero)


3 (top-left and top-right 8 8 luma blocks nonzero)

6
7

Bng mu khi c m ha.


Mi loi nh x (ue, te, se v me) s to ra mt t m ngn cho gi tr xy ra nhiu, v
t m di cho gi tr xy ra t. V d trong MB Inter loi P_L0_16x16 (c ngha l d
on khi luma 16x16 t bc nh trc) s c nh du Code_num = 0 v n xy ra
thng xuyn, MB loi P_8x8 (d on khi luma 8x8 t bc nh trc) c nh
code_num = 3 v n t xy ra.
IV.3.4.2 M ha di bin i thch nghi ni dung CAVLC
B m ha CAVLC s dng nhiu bng tra VLC cho cc thnh phn cu trc, s thch
nghi ca n th hin ch: n la chn mt bng tra cho thnh phn c php hin ti
da vo bng tra c truyn i, do hiu qu m ha Entropy s tng ln.
Sau khi d on, bin i v lng t, c trng ca khi hu ht u l s 0, nn
CAVLC s dng m ha Run-Level m ha chui zeros. Nhng h s khc 0 tn s
cao, sau khi qut Zig-Zag thng kt thc bng nhiu s 1 th CAVLC s bo hiu s
lng chui s kt thc l 1(Trailing Ones). Trong chui sp xp li bin ca h
s khc 0 c khuynh hng ln dn v tr u tin (gn h s DC) v nh dn v pha
tn s cao. Nm bt im ny, b m ha CAVLC s dng vic chn bng d tm VLC
thch nghi cho thng s mc ty thuc vo mc bin m ha gn nht.
Qu trnh m ha mt ma trn cc h s bin i c thc hin qua 5 bc sau:
1) M ha s lng h s khc 0 (TotalCoeffs) v h s kt thc bng 1
(coeff_token)
2) M ha k hiu cho tng TrailingOne
3) M ha cc cp ca cc h s khc 0 cn li.
4) M ha tng s gi tr 0 trc h s cui cng.
5) M ha dc chiu di chui s 0.
Qu trnh thc hin nh sau:
M ha s lng h s khc 0 (TotalCoeffs) v h s kt thc bng 1 (coeff_token)
Gi tr ca TotalCoeffs {0, 1, 2, 3, ...16} v TrailingOnes {0, 1, 2, 3} . S c 4 bng
d tm cho cc h s coeff_token bao gm 3 bng VLC v 1 bng m c chiu di c
nh FLC. Vic chn bng d tm ty thuc vo s lng h s khc 0 bn tay tri v
bn trn ca bng m trc tng ng vi nA v nB.

78

V d: nu c 2 khi nA, nB u nm bn tay tri pha trn th


nC = round((nA + nB)/2).
Nu ch nm bn trn th nC = nB hoc ch nm bn tri nC = nA, cn khng tha mn
th nC = 0.
Trong thng s nC s la chon bng d tm nh sau, v vy vic chn bng m
VLC s ph thuc vo gi tr ca cc khi bn cnh (th hin s thch nghi theo ni
dung CA).
N
1
2, 3

Bng cho coeff_token


Bng 1: s lng h s nh, tc l nu TotalCoeffs c gi tr nh s c m ha
bng t m ngn v ngc li
Bng 2 s lng h s trung bnh, tc l nu gi tr ca TotalCoeffs trong khong

4, 5, 6, 7

2-4 s c m ha bng t m ngn v ngc li


Bng 3 s lng h s cao

Bng 4: m ha t m c nh 6bits cho cp gi tr TotalCoeff v TrailingOnes

M ha k hiu cho tng TrailingOne


Mi mt TrailingOne c m ha bng t bits n, nu l 0 th m ha thnh +
nu l 1 th m ha thnh - theo trt t ngc li, bt u vi h s TrailingOne c
tn s cao nht
M ha cc cp ca cc h s khc 0 cn li.
Cp bao gm k hiu v gi tr bin ca cc h s khc 0 c m ha theo trt
t ngc li, bt u t h s c tn s cao nht sau gi tr h s DC. Vic m ha
level c to ra t mt tin t level v mt hu t level. Tin t level c th c 0->6
bits ty thuc vo bin m ha lin tc theo bng sau:
Chiu di tin t hin ti

Mc ngng tng chiu di tin t

12

24

48

N/A (chiu di cao nht)

M ha dc chiu di chui Zero

79

S lng h s 0 trc (run_before) c m ha theo th t ngc li. Nu


khng cn s 0 no na th gi tr run_before = total_zeros, khng cn m ha gi tr
run_before.
Nu cn li 2 s 0 cha m ha, th gi tr run_before s nhn cc gi tr {0, 1, 2} v
v th m VLC khng cn s dng t m ln hn 2bits
V d cho mt khi 4x4 nh sau:
0
3
-1
0
0
-1
1
0
1
0
0
0
0
0
0
0
Qu trnh qut Zig-zag s sp xp theo trt t mi.
0, 3, 0, 1, 1, 1, 0, 1, 0. . .
S lng h s khc 0 : TotalCoeffs = 5
S lng h s bng 0 : Total zeros = 3
S lng h s kt thc bng 1 : TrailingOnes = 3 (thc t c 4 gi tr trailingones
nhng ch c 3 gi tr c m ha nh trng hp c bit).
Qu trnh m ha.
Thnh phn

Gi tr

coeff token
TrailingOne sign
(4)
TrailingOne sign
(3)
TrailingOne sign
(2)
Level (1)
Level (0)
Total zeros

TotalCoeffs = 5,
TrailingOnes= 3 (use
Table 1)

0000100

run before(4)
run before(3)
run before(2)
run before(1)
run before(0)

1 (prefix)
+1 (use suffixLength = 0)
001 (prefix) 0 (suffix)
+3 (use suffixLength = 1)
111
ZerosLeft = 3; run before
10
=1
ZerosLeft = 2; run before
1
=0
ZerosLeft = 2; run before
1
=0
ZerosLeft = 2; run before
01
=1
ZerosLeft = 1; run before H s cui cng, khng cn m
=1
ha.

Chui bit pht l 000010001110010111101101.


Qu trnh gii m
1

Thnh phn

Gi tr

80

Mng ng ra

0000100
0
1
1

coeff token
TrailingOne sign
TrailingOne sign
TrailingOne sign

Level

0010
111
10
1
1
01

Level
total zeros
run before
run before
run before
run before

TotalCoeffs = 5, TrailingOnes = 3
+
+1 (suffixLength = 0; tng chiu
di tin t sau khi gii m
+3 (suffixLength = 1)
3
1
0
0
1

Empty
1
-1, 1
-1, -1, 1
1, 1,1, 1
3, 1, 1,1, 0, 1
3, 1, 1,1, 1
3, 1, 1,1, 0, 1
3, 1, 1,1, 0, 1
3, 1, 1,1, 0, 1
3, 0, 1, 1,1, 0, 1

B gii m chn thm 2 s 0, Totalzeros =3, v v th 1 s 0 c chn vo trc h


s thp nht, mng ng ra nh sau:
0, 3, 0, 1, 1,1, 0, 1
IV.3.4.3 M ha s hc nh phn thch nghi ni dung CABAC
Nguyn tc ca m ha s hc l mt d liu c m ha bng mt t n, n nm
trong phm v [0 1] thay v phi thit k mt bng m, m ha s hc nh phn thch
nghi CABAC cho php n nh s bit khng nguyn/symbol, thch nghi cc thng k
symbol ng trong phm vi [0 1] ny. Xc sut cho mi thnh phn c d on theo
ni dung iu khin b m ha s hc. So snh vi CAVLC, th CABAC thng
cho gim tc bit khong 10-15% khi m ha cng mt tn hiu truyn hnh.
B m ha CABAC gm c 3 bc chnh: kiu ni dung, nh phn ha v m ha s
nh phn c minh ha nh hnh v :

Hnh IV.31. Minh hoa qua trnh ma hoa CABAC

Bin i nh phn: CABAC s dng kiu m ha s hc nh phn c ngha l


ch c s nh phn mi c m ha, nhng k hiu khng phi l k hiu nh

81

phn s c nh phn ha hoc chuyn i thnh m nh phn trc khi m


ha s hc.
La chn kiu ni dung: kiu ni dung l kiu xc sut cho nhiu k t nh
phn c chn ph hp vi tnh thng k ca cc k hiu d liu c m
ha, tc l n s lu xc sut ca tng k hiu 0 & 1.
M ha s hc: b m ha s hc s m ha tng k hiu nh phn theo xc sut
chn.
Cp nht xc sut: kiu ni dung c chn s c cp nht da vo gi tr m
ha hin ti, c ngha l nu gi tr nh phn l 1 th tn s m ca 1 s tng ln
1 n v
Qu trnh m ha:
Gi s ta c mt khi c m ha ch Inter v c vector chuyn ng Mvd ca
mt hng bt k no . u tin, s tin hnh nh phn ha gi tr Mvd, Mvd s
c nh x vo bng m nh sau:
|Mvdx|

Nh phn

0
1

0
10s

110s

1110s

11110s

111110s

6
7
8

1111110s
11111110s
111111110s

Bit u tin ca bng t m nh phn gi l bin 1, bit th 2 gi l bin 2Chn kiu ni


dung cho tng bin. i vi bin 1 s c 3 kiu ni dung nh bng, da vo gi tr Mvd
ca 2 khi m ha trc l gi tr ek.
ek

Kiu ni dung
Kiu 0
Kiu 1
Kiu 2

0 ek 3
3 ek 3 3
33 ek

ek = |mvdxA| + |mvdxB| trong A v B l 2 khi nm bn trn v bn tri ca khi hin


ti. Cc h s bin cn li s chn mt trong 4 kiu ni dung sau:
Bin
Kiu ni dung
2
Kiu 3
3
Kiu 4
4

82

Kiu 5
Kiu 6

IV.3.5 B LC TCH KHI TRONG VNG


M ha da trn c s bin i DCT cho khi 4x4 c th nhn thy cu trc khi
nhng mt c trng c bn ca m ha da trn cc khi l s to ra mt cu trc
ngu nhin, sai s trong m ha d on gy nn cc h s lng t th. Ngoi ra, qu
trnh d on b chuyn ng cng gy nn nhiu khi c minh ha nh hnh IV.32.
Ta thy rng, cc cnh khi cu trc li th c chnh xc km hn cc im nh bn
trong v khng phi tt c cc pixel tham kho no cng hon ho, c th n cng cha
mt s im nh khng lin tip.
Trong tiu chun H.264/AVC, s dng b lc tch khi trong vng, ngha l c trong
qu trnh m ha v gii m, nh cu trc li s c lc tch khi trc khi lu tr
cho b chuyn ng tip theo, cng lc c iu khin bi gi tr ca nhiu phn
t cu trc. B lc c s dng cho d on b chuyn ng ca nh lin tip, s lm
gim nh sai s sau khi d on. B lc tch khi c s dng thch nghi nhiu mc
:

mc Slice: cng b lc ton phn c th iu chnh theo c im ca

chui nh.
mc mp khi: cng lc ty thuc vo kiu d on Intra hay Inter, sai
s chuyn ng.
mc mu. Phn quyt nh l s khc nhau gia mu gc v mu c lng
t ha t cc h s bin i.

Hnh IV.30. Hin tng nhiu khi, s gin


an gia hai khi.
83

IV.3.5.1 Nguyn tc ca lc tch khi


Nguyn tc c bn l nu o c s sai khc gia cc mu gn nhau mp khi nh
minh ha hnh IV.33, th cn phi hn ch sai khc ny trnh hin tng kt khi
m bng ca ni dung vn khng thay i.
q1 q 0 (QP)

p1 p0 (QP)

bS! 0
p 0 q 0 (QP)

Hnh IV.33. Nguyn l lc tch khi


Trong :
Gi tr offset ca v c trng cho cng lc, gi tr m cho cng
yu v gi tr dng cho cng mnh, v gi tr ca v nh sau:
f (QP _ offset )

f (QP _ offset )

_ offset [ 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6]

_ offset [6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6]

Gi tr ca v ph thuc vo tham s lng t QP trung bnh ca 2 khi


bn cnh.
IV.3.5.2 Qu trnh lc khi
Mi MB v mi thnh phn s c tch ring lc, cc mp theo chiu thng ng
s c lc trc, bt u ti mp nm bn tay tri ca MB cho n cc mp cui cng
nm bn tay phi ca MB, sau lc theo chiu ngang, bt u vi mp nm pha trn
MB cho ti mp nm pha di cng ca MB. Trnh t cc bc lc c minh ha
nh hnh sau.
Bc 1 : Chia bc nh thnh cc MB v tm khi b nhiu

Khi cn c lc
84
Bc nh c chia thnh cc MB

Bc 2 : Lc cnh thnh phn Luma theo chiu dc

Bc 3 :Lc cnh thnh phn Luma theo chiu ngang.

Bc 4 : Lc cnh thnh phn Chroma

Lc theo chiu dc
ngang
cho cc cnh ngang

Lc theo chiu
cho cc cnh dc

cho cc cnh ngang


85

bS l cng ng bin quyt nh kiu m ha cng nh tham s lng t ca cc


khi k bn, vic chn tham s bS phi tun theo quy nh sau:

Nu c p v q u m ha Intra v c ng bin khi gia chng

bS = 4 (Lc

Nu c p v q u m ha Intra v khng c ng bin khi gia chng


Hoc p hay q m ha Intra, p v q cha h s m ha.
Hoc p hay q m ha Intra, hoc p hay q cha h s m ha, p v q s dng

mnh nht)
bS = 3
bS = 2
bS = 0 (khng

nh tham kho khc nhau hoc khc nhau v s lng nh tham kho.

lc)

Qu trnh lc P0 v Q0 xy ra khi tha mn cc iu kin sau:


1.

P0 Q 0 (QP )

2.

P1 P1 (QP )

3.

Q 1 Q 0 (QP )

Trong < . N s tng cng vi gi tr bc lng t trung bnh QP ca 2 khi P


v Q. Qu trnh lc P1 v Q1 xy ra khi tha mn cc iu kin sau:
P2 P0 (QP )

hay

Q2 Q0 (QP )

Trng hp bS {1, 2, 3}
Mt b lc p ng xung hu hn FIR-4 tap c dng lc cc gi tr p1, p0, q1, q0
to thnh cc gi tr p0 v q0. Nu l thnh phn luma v c |p2-p0|< th s s
dng mt FIR-4 tap khc lc cc gi tr p2, p1, p0 v q0 to ra p1. Cn nu |q2q0| < th s s dng mt FIR-4 tap khc lc cc gi tr q2, q1, q0 v p0 to ra
q1.
Trng hp bS = 4
Nu l thnh phn luma v c |p2 - p0| < , |p0 - q0| < round( / 4 ) th
S dng mt FIR-5 tap khc lc cc gi tr p2, p1, p0, q0 v q1 to ra p0
S dng mt FIR-4 tap khc lc cc gi tr p2, p1, p0 v q0 to ra p1
S dng mt FIR-5 tap khc lc cc gi tr p3, p2, p1, p0, v q0 to ra p2
S dng mt FIR-3 tap khc lc cc gi tr p1, p0, v q1 to ra p0
Nu l thnh phn luma v c |q2 - q0| < , |p0 - q0| < round( / 4 ) th
S dng mt FIR-5 tap khc lc cc gi tr q2, q1, q0, p0 v p1 to ra q0
S dng mt FIR-4 tap khc lc cc gi tr q2, q1, q0 v p0 to ra q1

86

S dng mt FIR-5 tap khc lc cc gi tr q3, q2, q1, q0, v p0 to ra q2


S dng mt FIR-3 tap khc lc cc gi tr q1, q0, v p1 to ra q0

Hnh IV.34. Tc dng ca b lc tch khi i vi nh c nn nhu.


Tri : Khng c b lc tch khi.
Phi : C b lc tch khi
IV.3.6 CU TRC V C PHP CHUN H.264/AVC.
c th truyn trong cc mi trng khc nhau c hiu qu, s tch hp cc giao
thc v cu trc mng l rt quan trng. H.264/AVC c s phn bit gia c tnh m
ha v truyn ti ca 2 lp VCL v NAL nh hnh IV.35. mang li hiu qu cao trong
mi trng mng khc nghit.
Video Coding Layer
Control
Data

Data Partitioning

Network Abstraction Layer


(H.320, MP4FF,H.323/IP,MPEG2)
Hnh IV.35. Cu trc dng bit H.264
Ngoi ra trong H.264/AVC cn h tr nh IDR, nh ny c to ra t nh I hoc nh
SP nhm xa ni dung vng nh m nh tham kho hay ni cch khc l lm ti b
nh. Khi nhn c nh IDR th b gii m s nh du tt c cc bc nh trong b
m l khng s dng cho tham kho. Tt c cc chui con c cc slice c truyn
i c th gii m m khng cn bt k mt nh tham kho no trc nh IDR. Cu trc
ca mt dng bit H.264/AVC minh ha nh hnh sau

87

.NAL
header

NAL
NAL
RBSP
header
header
Hnh IV.36. Cu trc dng bit.

RBSP

RBSP

IV.3.6.1 Lp tru tng mng NAL


Tt c d liu c cha trong cc khi NAL, mi khi cha mt s nguyn byte xc
nh nh dng chung cho c h thng nh hng gi (packet - oriented) v h thng
nh hng dng bit (bitstream), ngoi tr mi khi NAL trong lp truyn ti nh
hng dng bit c th c mt tin t m ha trc, v c th l mt trong 2 nh
dng sau: nh dng theo tng n v NAL hoc theo tng byte.
nh dng theo tng n v NAL l mt kiu nh dng c bn, bao gm cc
chui cu trc c php NAL c sp xp gii m.

nh dng theo tng byte c th c xy dng li t cu trc ca NAL bng


cch xp xp cc n v NAL trong qu trnh gii m v thm vo mt tin t
m bt u cho mi NAL.

Mt chui video H.264 bao gm mt chui cc n v NAL, mi n v NAL s cha


cc thnh phn RBSP nh bng 1, RBSP l mt tp hp d liu tng ng vi d liu
video c m ha hay thng tin u mc, v d mt chui cc n v RBSP nh hnh
IV.37, trong cc n v c truyn i di dng cc n v NAL ring bit. Byte
u tin ca NAL hay cn gi l header c chiu di 1byte ch ra loi RBSP c s
dng, cn nhng byte cn li th cha d liu cho vic truyn ti hoc lu tr.
Sequence
parameter set

SEI

Picture
parameter set

I slice

Picture
delimiter

P slice

P slice

Hnh IV.37. Minh ha mt chui thnh phn RBSP.


Bng cc thnh phn RBSP c miu t nh sau:
Loi RBSP
Thng s ci t
Thng tin m rng
B phn on nh
Slice m ha
Phn vng d liu A, B, C
Kt thc chui
Kt thc lung d liu
D liu lp y

M t
Thng s v kch thc, nh dng video, v tr nh x
MB, s lng nh tham kho, thng s lng t
Mng bo tin. Yu t ny khng cn thit cho vic gii
m ng th t chui video
ng bin gia cc nh, nu khng c th b gii m s
da vo s th t frame trong mi tin t slice phn
on
Cha tin t v d liu m ha
Ba dng phn vng nhm tng cng kh nng chng
li.
Ch nh bc nh k tip trong th t gii m l nh
IDR. (Khng cn thit)
Khng cn nh tip theo no c.
Cha d liu gi nhm tng s lng byte trong chui.
(Khng cn thit)

88

Bng 1: Cc thnh phn RBSP


IV.3.6.2 Lp m ha video VCL (Video Coding Layer)
Ng ra ca qu trnh m ha l cc d liu VCL bao gm mt chui cc bits c trng
cho d liu video m ha c nh x vo NAL truyn i hoc lu tr. N l s kt
hp d on theo thi gian v khng gian v vi m chuyn v. Thut ton m ha
ngun c bn vn da trn k thut nn lin nh khai thc, thng k s ph thuc
d tha v thi gian v d on m ha bin i khai thc s d tha v mt khng
gian nhm mc ch cui cng l nng cao hiu sut nn. Hn na, lp VCL bao gm
nhiu c tnh nh 17 kiu d on Intra, thut ton bin i, lc tch khi, m ha
Entropy hay m ha thch nghi khung v mnhcung cp mt mi trng mng thn
thin v tng cng kh nng chng li ph hp cho cc dch v thi gian thc nh
truyn lung, qung b v ng dng hi ngh
IV.3.6.3 K thut FMO v Data Partitioned Slices
K thut FMO m t cch phn chia bc nh thnh cc slice v MB bng cch s dng
khi nim nhm slice. Nhm che giu cc knh c khuynh hng b li vi cc ng
dng c tr thp. D liu m ha t cc Slice c chi thnh 3 loi phn vng nh
A, B, C cha tp hp con ca slice c m ha. Phn vng A cha slice header v d
liu header cho mi MB. Phn vng B cha phn d liu sai khc c m ha cho
slice Intra v SI v phn vng C cha phn d liu sai khc c m ha cho MB m
ha Inter. Mi phn vng c th c t ring bit v truyn tch bit trong tng
NAL. Nu d liu phn vng A b mt, th rt kh khn cho vic cu trc li Slice, v
th phn vng A s nh hng su sc n sai s truyn. Phn vng B v C c chn
la thng s m ha k cng, c th gii m c lp, do c th ch m ha A v C
hoc ch A v B.
IV.3.6.4 K thut Arbitrary Slice Ordering
K thut sp xp trt th t slice bt k ASO cho php b gii m c th x l slice
theo th t bt k m n nhn c. Do b gii m khng cn phi ch i slice
ng theo th t c th bt u x l chng. iu ny lm gim tr x l b
gii m, kt qu l tr tim n trong cc ng dng truyn video thi gian thc s
nh i.

89

IV.3.6.5 Cu trc dng bit H.264/AVC


Cu trc dng bit H.264/AVC c minh ha nh hnh IV.38.
Trong :
Seq : thng tin v chui nh (Squence)
- Video Params : thng s chiu cao, rng, t l khun hnh cc phn t nh.
- Bistream Params : tc bit v cc thng s khc.
- QTs : c 2 loi QTs
Nn trong nh
Nn lin nh
GOP : thng tin v nhm nh
- Time code : SMPTE time code : Gi, pht, giy, nh.
- GOP Params: Miu t cu trc v cc thng s ca GOP.
PICT : thng tin v nh (Picture information.)
- Type :nh loi I, P hay B.
Buffer Params : thng tin v b m.
Encode Params : thng tin v vector chuyn ng.
nh.
Slice Seq
: thngSeq
tin v Slice
Seq

- Vert Pos : Slice bt u t dng no.


- Qscale : thng tin v bng lng t.
Seq QC

Video

MB : thng tin v
MB.
Params

Bitstream
Params

QTs
Misc

GOP

GOP

- Addr Incr : S lng MB c b qua.


- Type : loi vector chuyn ng dng cho MB.
GOP SC

Time

GOP

Pict

Pict

Code (CBP)
Params
- Code Block Pattern
: ch r loi khi c m ho.

PSC

Type

Buffer
Params

SSC

Vert
Pos

Qscale

Addr
Iner

Type

Motion
vector

Encode
Params

Slice

MB

MB

Qscale

CBP

b0

Slice

b5

90
Hnh IV.38. Cu trc dng bit MPEG-4 H.264/AVC

CHNG V.

MT S NG DNG CHUN H.264/AVC

.264/AVC nh du mt bc ngot trong lnh vc nn video, nh p dng cc


k thut tin tin nhm mc ch s dng bng thng hiu qu hn v em li

cht lng nh cao hn v tr thp. Vi cc k thut ny, H.264/AVC c th gim


tc bit xung hn 50% so vi chun MPEG-2. Tuy nhin, H.264/AVC i hi mt
cp phc tp cao hn trong c qu trnh m ha ln gii m. Mc d vy, th thch
ny hon ton c th chinh phc c nh c nhng tin b mi lin tip trong kh
nng x l phn mm cng nh phn cng. iu ny c ngha l H.264/AVC l mt
ng c vin tim nng c kh nng thay th MPEG-2 trong nhng nm sp ti cc
lnh vc nh truyn lung Internet tc bit thp ti cc ng dng qung b HDTV v
Cinema s, truyn thng video qua mng Internet, truyn hnh di ng theo chun
DVB-H, truyn hnh s mt t, truyn hnh theo yu cu, tin nhn a phng tin
MMS qua cc mng ISDN, DSL, Wireless, LAN v v tinh

91

Cng ngh truyn hnh s ta khc phc c nhiu khuyt im ca truyn hnh
tng t nhng hn c l m ra cho ta mt tim nng pht trin v cng rng ln. C
th thy s h tr mang tnh bn cht cho cc hot ng tng tc l s khc nhau ch
yu, th hin tnh nng u vit ca cng ngh H.264/AVC so vi MPEG-2, l chun
hin ang c p dng rng ri trong cc h thng truyn hnh. Trn thc t cc hng
cung cp dch v truyn thng theo dng a phng tin u h tr chun
H.264/AVC trong cu trc h tng v sn phm ang trin khai ca mnh, nhm khc
phc nhc im ca cc m hnh truyn dn pht sng pht thanh v truyn hnh
ang s dng hin nay. Cc ng dng ca H.264 thc t ang trin khai nh:

V.1

TRUYN HNH INTERNET IPTV

IPTV l mng truyn hnh kt hp cht ch vi mng vin thng. Ni rng hn IPTV
l dch v gi tr gia tng s dng mng bng rng IP phc v cho nhiu ngi dng.
Cc user c th thng qua my vi tnh PC hoc my thu hnh ph thng cng vi STB
s dng dch v IPTV. c im ni bt ca IPTV l da trn nn cng ngh IP v
c kh nng tng tc. IPTV s dng chun nn H.264/AVC lm gim i mt na
bng thng cn thit phn phi video s cht lng DVB y mn hnh n khch
hng, v gim yu cu bng thng truyn dn truyn hnh s cht lng chun SDTV
xung 700 kb/s - c hai nm trong gii hn ca vng DSL 1.5 Mb/s. H.264 m ra cc
c hi mi v cng gim gi thnh p dng v gi thnh iu hnh khi so snh vi
MPEG-2. H.264 nn video hiu qu hn, gim gi thnh truyn dn qua cc kt ni v
tinh v mt t.
nc ta mt s Website cng cung cp th nghim cc chung trnh truyn hnh
trc tuyn nh VietNamNet, Cng ty VTC, i truyn hnh HTV ghi nhn s lng
truy cp rt ln, cho thy sc hp dn ca dch v ny i vi cng chng. Vi mng
bng hp truyn thng, ch mt s dch v n gin ca IPTV l c th thc hin c.
Cn c th trin khai thnh cng dch v IPTV th mng bng rng ng vai tr tin
quyt, bi v ch vi mng bng rng mi c th bo m cung cp y bng thng
theo yu cu cho cc dch v IPTV (nh truyn hnh, Video, Games, v.v...).

V.2

TRUYN HNH V TINH DVB-S2

DVB-S2 chn H.264/AVC cho m ho ngun audio v video tc 8Mb/s rt


ph hp vi mt DVD thng thng.Vi hiu sut s dng bng thng tng t 30%
n 131%, s chng trnh m H.264/AVC mang li c th tng gp ba so vi vic

92

dng MPEG-2, v d nh c th pht 21-26 chng trnh SDTV hoc 5-6 chng trnh
HDTV trn mt transponder 36Mhz. Cng ngh ny thc s l b cng c hu hiu
cho cc dch v tng tc qua v tinh. Truyn hnh tng tc l mt phng thc
qung co truyn hnh mi kt hp im mnh gia tip th trc tip v truyn hnh,
qua ngi xem c th chn mua, xem thng tin chi tit... ch n gin qua mt thao
tc click, hoc trong khi xem chng trnh truyn hnh, ngi xem c th tham gia vao
cc tr chi qua cc hnh thc gi tin nhn SMS Truyn hnh HDTV tr thnh
mt mt sn phm thit yu trong cc gia nh. C khong hn 10 triu h gia nh
trn ton cu hin s dng HDTV, con s ny d kin s tng ln 52 triu vo nm
2009. y thc s l mt tin ch hp dn vi khn gi truyn hnh. S nh hng tch
cc n th trng phim nh, cng nh cc dch v qung b v gi c thp

V.3

TRUYN HNH DI DNG

Truyn hnh s ti cc thit b di ng vi mn hnh nh c mt s tng t nht nh


vi truyn hnh c nh. cc knh truyn hnh c th hin th r nt vi cht lng
cao trn cc thit b xem truyn hnh di ng v i km vi n l cc tin ch tng tc
c th, cc lung tn hiu cha ni dung phi c ng gi, truyn ti v gii m
trong mt quy trnh khp kn, ng b... u tin, ni dung phi c to ra ph hp
vi thit b di ng c mn hnh nh, v iu ny yu cu phi c k thut thu hnh
tinh t nu mun hnh nh c th hin tt trn mn hnh ny (v d c th dng 2
camera ly cng mt cnh, mt cho mn hnh TV ln, mt cho mn hnh di ng
nh vi cc thng s k thut khc nhau). Th hai, c cu phn phi ni dung cng c
th khc lin quan ti vn s dng ph tn s. Th ba, c nhiu giao thc phn phi
ni dung. V cui cng, kh nng phn phi knh tng tc cng phong ph hn. Vi
tc bit thp ca H.264/AVC cho php ti ni dung a phng tin trn cc dng c
nh in thoi, PDA, laptop,.. qua cc cng ngh Wireless, DAB, CDMA2000, UMTS
v DBV-T. M hiu sut nn tng gp i so vi cc chun trc.
Hin nay truyn hnh di ng tr nn ph bin nc ta vi hai cng ngh 3G
-CDMA 2000 1x EV-DO ca S-Fone v cng ngh DVB-H - Nokia v VTC. Vit Nam
l nc u tin ti chu v l nc th 2 trn th gii (sau Phn Lan) c Nokia
trin khai dch v truyn hnh di ng. C th hiu nm na l THD hin c 2 chiu
hng, mt l xem truyn hnh nh bn vn xem trn tivi nh (cng ngh DVB-H v
DMB) v vo mng Internet xem tivi trn my tnh (Media- Flo v 3G). DVB-H cng

93

s dng cc b m ha m thanh hnh nh tin tin nh H.264, cho php n 50 knh


truyn hnh hoc d liu c th c truyn qua DVB-H multiplex. Theo Nokia, u
im ca thit b ny l tit kim pin v c tnh nng mnh ngay c trong mi trng
tip nhn kh khn; gip tit kim chi ph mt cch hiu qu trn cc mng truyn
hnh; c dung lng bng tn rng cho ni dung hnh nh, m thanh phong ph; s
dng di tn UHF, c ton cu s dng cho truyn hnh. 3G vic truyn d liu
ph thuc vo tc ng truyn ca mng di ng, chnh v vy 2G hay 2,5G
khng mnh p ng i hi ng truyn ca dch v ny, do tn hiu video
yu cu bng thng knh truyn tng i ln (khong vi trm kbps). Vi k thut
ny, mi thu bao c cp mt knh trao i thng tin trong ti nguyn ca mng
in thoi trao i thng tin truyn hnh. Cht lng hnh nh khng ph thuc vo
c ly pht sng ca knh truyn hnh hay cc vt che chn (nh truyn hnh thng
thng). Truyn hnh theo cch ny cng khng cn phi c tn s ring. Knh thng
tin trn cng ngh truyn hnh 3G c tnh cht 2 chiu (tng t nh 1 knh m
thoi), nhng l knh truyn d liu c trm thu pht gc (BTS) cp cho thu bao.
Nh vy, mi thu bao s chim mt phn ti nguyn thng tin ca trm BTS khi h
s dng dch v, v vy s hn ch s ngi dng cng lc. Khi lng ngi dng ln,
c th phc v tt cho ngi s dng dch v, bt buc nh khai thc mng phi
nng cp h thng dn n chi ph u t s tng, cng ng ngha vi ph dch v cao.

94

CHNG VI. M PHNG QU TRNH NN-GII NN CA


H.264/AVC BNG MATLAB
VI.1 LU GII THUT
Sau y l qu trnh m ha v gii m mt frame bng cc k thut ca H.246:
Np file
YUV

Chuyn file YUV


sang Matlab movie

Phn chia thnh cc


frame

D on chuyn
ng

END

Tm vector chuyn ng
trong filelastmov

Phn chia thnh cc


macroblock

Cu trc li cc block
4x4 tham kho

Phn chia thnh cc


block 4x4

Bin i ICT cc
block 4x4 d tha
M filelastmov
Lng t cc h s
DCT
Lu li thnh file
lastmov

M ha Entropy

Bin i frame t
YUV sang RGB

Lu thnh file
lastmov

Ti to li MB t
cc block 4x4

Gii lng t

95

Gii m filelastmov

VI.2 CHNG TRNH M PHNG:


So vi MPEG-2 th H.264/AVC c rt nhiu u im ni bt nhng v cn nhiu hn
ch, nn em ch c th m phng mt phn cch m ha tin tin ca H.264/AVC nh
s dng 52 bc lng t, s dng bin i ICT cho khi 4x4... c th hon thnh
c chng trnh m phng ny, ngoi s c gng ca bn thn, s nh hng ng
n ca TS. Trn Dng Trnh, em cn tham kho mt s module Matlab c sn trn
Web, mt s hm h tr t Matlab...v c bit c s gip ca cc anh ch trong
cng ty Sfone gip em hon thnh tt n ny. Tuy nhin, v vic m ha mt
bc nh c qu nhiu cng on phc tp, v vic m ha cng tn kh nhiu thi
gian, yu cu b x l tc cao nn khng th tch ring tng qu trnh m
phng.
Lng t cc h Cc
s module m phng nh sau:
DCT

Hm main

: chng trnh chnh, s gi cc hm con m ha, gii m...

Hm playmov

: hm play file movie c nn.

Hm plotvector : hm v vector chuyn ng trong nh P v nh B


Hm progressbar : hm h tr t Matlab, dng minh ha tin trnh x l ca
Matlab, hm c tham kho t trang web mathexchange.com.
Hm yuv2mov : hm h tr t Matlab, dng chuyn file YUV sang file movie
trong Matlab, hm c tham kho t trang web mathexchange.com.
Hm sec2timestr : hm h tr t Matlab, dng chuyn mt chui s sang dng
thi gian thc, hm c tham kho t trang web mathexchange.com.

VI.3 KT QU M PHNG
Vi cng gi tr QP = 31, Frame th 1 ca bc nh foreman.yuv c nn bng k
thut H.264/AVC c dung lng v t s PSNR = dB nh sau

96

Cn nn bng k thut MPEG-2 c dung lng v t s PSNR = dB nh sau

PH LC
function main()
clear all;
clc;

97

fprintf('\nLUAN VAN TOT NGHIEP\n')


fprintf('\nTONG QUAN VE CHUAN NEN MPEG-4 H.264/AVC VA KHA NANG UNG DUNG
TRONG THUC TIEN\n')
fprintf('\nGVHD : TS. TRAN DUNG TRINH\n')
fprintf('\nSVTH : NGUYEN QUANG HOANG SON\n')
fprintf('\nMSSV : 103 101 088\n')
chonf = input('\nNHAP SO LUONG FRAMES SE MA HOA = ');
chonq = input('\nNHAP GIA TRI BUOC LUONG TU TRONG KHOANG 0<=QP<52, QP= ');
nq = chonq;
nf = chonf;
if (nq < 0 | nq > 51 | nf > 300)
error('NHAP SAI GIA TRI LUONG TU HOAC SO FRAMES!!!!')
end
save nq;
fprintf('\nSE MA HOA %d FRAMES VOI BUOC LUONG TU QP=%d\n',nf,nq);
mov = napmov(nf);
tic;
avc = mahoa(mov);
fprintf('THOI GIAN MA HOA : %s\n',sec2timestr(toc));
tic;
mov2 = giaima(avc);
fprintf('THOI GIAN GIAI MA : %s\n',sec2timestr(toc));
save lastmov mov2 avc mov;
%%%% HAM MO FILE YUV ROI LUU THANH MATLAB MOVIE %%%%
function movdata = napmov(nf)
mov = yuv2mov('carphone.yuv',176,144,'420');
%mov = yuv2mov('foreman.yuv',352,288,'420');
save mov;
load mov;
if nf == 0
nf = length(mov);
end
% MOV(1) : MA TRAN CHOI, MOV (2), MOV(3) MA TRAN MAU
movdata = repmat(uint8(0),size(mov(1).cdata), nf);%tai tao lai MANG MOV RONG
for i = 1:nf
% MA HOA TU FRAME 1 DEN FRAME THU nf
movdata(:,:,:,i) = mov(i).cdata;% LUU DU LIEU CUA CAC FRAME
end
%%%%%% HAM MA HOA FILE MATLAB MOVIE %%%%%%%
function avc = mahoa(mov)
fpat = 'IBBPBBPBBPBBPBBI';
% LOAI MAU FRAME (CHO TOAN BO MOVIE)
k = 0;
% FRAME DAU TIEN
pf = [];
% MA TRAN MAU FRAME LA RONG
progressbar
for i = 1:size(mov,4)
% VONG LAP FRAME, TRA VE GIA TRI COT
% THU 4 TRONG MOV
f = double(mov(:,:,:,i));
% BIEN DOI FRAME SANG GIA TRI DOUBLE
f = rgb2yuv(f);
k = k + 1;
if k > length(fpat)
k = 1;
end
ftype = fpat(k);
% DAT TEN LOAI FRAME THU k
[avc{i},pf] = mhframe(f,ftype,pf);% GOI HAM MA HOA CHO FRAME THU i
progressbar(i/(size(mov,4))) % HIEN THI % QUA TRINH MA HOA,
end

98

%%%%%
HAM MA HOA TUNG FRAME ANH
%%%%%%
function [avc,df] = mhframe(f,ftype,pf)
[M,N,i] = size(f);
% M = 176, N= 144,i = 3 TRONG f
mbsize = [M, N] / 16;
% PHAN CHIA THANH CAC MACROBLOCK
avc = struct('type',[],'mvx',[],'mvy',[],'scale',[],'coef',[]);
avc(mbsize(1),mbsize(2)).type = [];
pfy = pf(:,:,1);
df = zeros(size(f));
for m = 1:mbsize(1)
% VONG LAP THEO CHIEU CAO
for n = 1:mbsize(2)
% VONG LAP THEO CHIEU RONG
x = 16*(m-1)+1 : 16*(m-1)+16;% LAP TU 1-CAO
y = 16*(n-1)+1 : 16*(n-1)+16;% LAP TU 1-RONG
[avc(m,n),df(x,y,:)] = mhmblock(f(x,y,:),ftype,pf,pfy,x,y);
end
end
%%%%%%%%%%
HAM MA HOA MAROBLOCK %%%%%%%%
function [avc,dmb] = mhmblock(mb,ftype,pf,pfy,x,y)
persistent q1 q2;
if isempty(q1)
%Neu mang q1 la rong.
q1 = qintra;
q2 = qinter;
end
load nq;
%THONG SO BUOC LUONG TU
scale = nq;
avc.type = 'I';
% CAU TRUC AVC
avc.mvx = 0;
avc.mvy = 0;
% TIM VECTOR CHUYEN DONG CHO ANH P
if ftype == 'P'
avc.type = 'P';
[avc,emb] = getmotionvec(avc,mb,pf,pfy,x,y);
mb = emb;
% LAY PHAN SAI SO GIUA CAC FRAME P DE MA HOA
q = q2;
% NEU LA ANH P THI DU DOAN INTER
else
q = q1;
% NEU LA ANH I
end
% TIM VECTOR CHUYEN DONG CHO ANH B
if ftype == 'B'
avc.type = 'B';
[avc,emb] = getmotionvec(avc,mb,pf,pfy,x,y);
mb = emb;
% LAY PHAN SAI SO GIUA CAC FRAME B DE MHOA
q = q2;
else
q = q1;
end
% CHON KHOI VA TIEN HANH BIEN DOI DCT VA LUONG TU
b = getblocks(mb);
for i = 18:-1:1
avc.scale(i) = scale;
% DAT VECTOR LUONG TU CHO KHOI i
coef = dct2(b(:,:,i));
% BIEN DOI DCT HAI CHIEU CHO KHOI THU i
avc.coef(:,:,i) = round( 8 * coef ./ (scale * q));
end
% CAU TRUC LAI KHOI DE THAM KHAO

99

dmb = gmmblock(avc,pf,x,y);
%%%%%
PHAN CHIA MACROBLOCK THANH 18 KHOI 4x4 %%%%%
function b = getblocks(mb)
b = zeros([4, 4, 18]);
% TAO 18 MA TRAN 4x4 ZEROS
b(:,:,1) = mb( 1:4, 1:4, 1);
b(:,:,2) = mb( 1:4, 5:8, 1);
b(:,:,3) = mb( 1:4, 9:12, 1);
b(:,:,4) = mb( 1:4, 13:16, 1);
b(:,:,5) = mb( 5:8, 1:4, 1);
b(:,:,6) = mb( 5:8, 5:8, 1);
b(:,:,7) = mb( 5:8, 9:12, 1);
b(:,:,8) = mb( 5:8, 13:16, 1);
b(:,:,9) = mb( 9:12, 1:4, 1);
b(:,:,10) = mb( 9:12, 5:8, 1);
b(:,:,11) = mb( 9:12, 9:12, 1);
b(:,:,12) = mb( 9:12, 13:16, 1);
b(:,:,13) = mb( 13:16, 1:4, 1);
b(:,:,14) = mb( 13:16, 5:8, 1);
b(:,:,15) = mb( 13:16, 9:12, 1);
b(:,:,16) = mb( 13:16, 13:16, 1);
% HAI KHOI CHROM (GIA TRI TRUNG BINH CUA 4 KHOI BEN CANH)
b(:,:,17) = 0.25 * ( mb(1:4:15,1:4:15, 2) + mb(1:4:15,2:4:16, 2) ...
+ mb(2:4:16,1:4:15, 2) + mb(2:4:16,2:4:16, 2));
b(:,:,18) = 0.25 * ( mb(1:4:15,1:4:15, 3) + mb(1:4:15,2:4:16, 3) ...
+ mb(2:4:16,1:4:15, 3) + mb(2:4:16,2:4:16, 3) );
%%%% HAM TINH TOAN VECTOR CHUYEN DONG
%%%%%%%
function [avc,emb] = getmotionvec(avc,mb,pf,pfy,x,y)
mby = mb(:,:,1); % CHI TIM TRONG THANH PHAN Y
[M,N] = size(pfy);
% TIM KIEU MOI KHIA CANH
% maxstep = 10; % Largest allowable motion vector in x and y
% mvxv = -maxstep:maxstep;
% mvyv = -maxstep:maxstep;
% minsad = inf;
% for i = 1:length(mvxv)
% tx = x + mvxv(i);
% if (tx(1) < 1) | (M < tx(end))
%
continue
% end
% for j = 1:length(mvyv)
%
ty = y + mvyv(j);
%
if (ty(1) < 1) | (N < ty(end))
%
continue
%
end
%
sad = sum(sum(abs(mby-pfy(tx,ty))));
%
if sad < minsad
%
minsad = sad;
%
mvx = mvxv(i);
%
mvy = mvyv(j);
%
end
% end
% end
% TIM KIEU Logarithmic

100

step = 8;
% KICH THUOC BUOC TIM KIEM Initial step size for logarithmic search
dx = [0 1 1 0 -1 -1 -1 0 1]; % VECTOR CHI HUONG TIM KIEM
dy = [0 0 1 1 1 0 -1 -1 -1]; % [origin, right, right-up, up, left-up,
% left, left-down, down, right-down]
mvx = 0;
mvy = 0;
while step >= 1
minsad = inf;
for i = 1:length(dx)
tx = x + mvx + dx(i)*step;
if (tx(1) < 1) | (M < tx(end)) % NEU GIA TRI tx(1) <1 HOAC
continue
% M < GIA TRI tx CUOI CUNG
end
ty = y + mvy + dy(i)*step;
if (ty(1) < 1) | (N < ty(end))
continue
end
sad = sum(sum(abs(mby-pfy(tx,ty))));
if sad < minsad
ii = i
minsad = sad;
end
end
mvx = mvx + dx(ii)*step;
mvy = mvy + dy(ii)*step;
step = step / 2;
end
avc.mvx = mvx; % LUU VECTOR CHUYEN DONG
avc.mvy = mvy;
emb = mb - pf(x+mvx,y+mvy,:); % MACROBLOCK SAI SO
%%%%%%%%%%%%%%%%%%
HAM GIAI MA
%%%%%%%%%%%%%%%%%%
%%
function mov = giaima(avc)
movsize = size(avc{1});
mov = repmat(uint8(0),[16*movsize(1:2), 3, length(avc)]);
pf = [];
for i = 1:length(avc)
% GIAI MA TOAN BO KHOI TRONG AVC
f = gmframe(avc{i},pf); % GIAI MA FRAME
pf = f;
% LUU FRAME TRUOC DO
f = yuv2rgb(f);
% BIEN DOI FRAME SANG RGB
f = min( max(f,0), 255); % GIOI HAN MOVIE TRONG KHOANG 8 BITS
mov(:,:,:,i) = uint8(f); % LUU FRAME
progressbar(i/(length(avc)));
end
%%%%%%%%%%% HAM GIAI MA FRAME
%%%%%%%%%%%%%
function fr = gmframe(avc,pf)
mbsize = size(avc);
% KICH THUOC MB CHINH LA KICH THUOC FILE
M = 16 * mbsize(1);
N = 16 * mbsize(2);
fr = zeros(M,N,3);
for m = 1:mbsize(1)
% LAP TOAN BO MB
for n = 1:mbsize(2)
x = 16*(m-1)+1 : 16*(m-1)+16;% TAO LAI FRAME
y = 16*(n-1)+1 : 16*(n-1)+16;
fr(x,y,:) = gmmblock(avc(m,n),pf,x,y);% GOI HAM GIAI MA MB CHO KHOI

101

end % macroblock loop


end
%mse = floor((mov(i).cdata)-(avc(i).cdata));
%psnr = 10*log10(255^2/mse);
%save psnr;
%%%%%%%%%%%%
HAM DAT KHOI
%%%%%%%%%%%%%%%
function mb = putblocks(b)
mb = zeros([16, 16, 3]);
mb( 1:4, 1:4, 1) = b(:,:,1);
mb( 1:4, 5:8, 1) = b(:,:,2);
mb( 1:4, 9:12, 1) = b(:,:,3);
mb( 1:4, 13:16,1) = b(:,:,4);
mb( 5:8, 1:4, 1) = b(:,:,5);
mb( 5:8, 5:8, 1) = b(:,:,6);
mb( 5:8, 9:12, 1) = b(:,:,7);
mb( 5:8, 13:16, 1) = b(:,:,8);
mb( 9:12, 1:4, 1) = b(:,:,9);
mb( 9:12, 5:8, 1) = b(:,:,10);
mb( 9:12, 9:12, 1) = b(:,:,11);
mb( 9:12, 13:16, 1) = b(:,:,12);
mb( 13:16, 1:4, 1) = b(:,:,13);
mb( 13:16, 5:8, 1) = b(:,:,14);
mb( 13:16, 9:12, 1) = b(:,:,15);
mb( 13:16, 13:16, 1) = b(:,:,16);
z = [1 1 1 1; 1 1 1 1; 1 1 1 1; 1 1 1 1 ]; % HAI KHOI MAU CHROMA
mb(:,:,2) = kron(b(:,:,17),z);
mb(:,:,3) = kron(b(:,:,18),z);
%%%%%%%%%%%%%%%%%%%%%
HAM GIAI MA MB
%%%%%%%%%%%%%
%%%
function mb = gmmblock(avc,pf,x,y)
persistent q1 q2
if isempty(q1)
% MA TRAN HE SO LUONG TU
q1 = qintra;
q2 = qinter;
end
mb = zeros(16,16,3);
% DU DOAN VOI VECTOR CHUYEN DONG CUA ANH P
if avc.type == 'P'
mb = pf(x+avc.mvx,y+avc.mvy,:);
q = q2;
else
q = q1;
end
% DU DOAN VOI VECTOR CHUYEN DONG CUA ANH B
if avc.type == 'B'
mb = pf(x+avc.mvx,y+avc.mvy,:);
q = q2;
else
q = q1;
end
% GIAI MA KHOI
for i = 18:-1:1
coef = avc.coef(:,:,i) .* (avc.scale(i) * q) / 8; % GIAI LUONG TU
b(:,:,i) = idct2(coef); % BIEN DOI DCT NGUOC CHO HE SO MA HOA
end

102

% CAU TRUC B
mb = mb + putblocks(b);
%%%%%%%%% HAM BIEN DOI TU RGB SANG YUV
%%%%%%%%%%%
function yuv = rgb2yuv(rgb)
% BIEN DOI TRUOC KHI MA HOA
m = [ 0.299 0.587 0.144; %Y = 0.299R + 0.587R + 0.144B
-0.168736 -0.331264 0.5;
% MA TRAN BIEN DOI
0.5 -0.418688 -0.081312];
% LAY DU LIEU MOVIE
[nr,nc,c] = size(rgb);
rgb = reshape(rgb,nr*nc,3);
% TAI TAO CHO MA TRAN NHAN
% MA HOA MAU BIEN DOI
yuv = m * rgb';
yuv = yuv + repmat([0; 0.5; 0.5],1,nr*nc);
yuv = reshape(yuv',nr,nc,3);
% TAI TAO LAI ANH GOC
%%%%%%%%%%%%%%% HAM BIEN DOI TU YUV SANG RGB %%%%%%%%%%
function rgb = yuv2rgb(yuv)
% BIEN DOI SAU KHI GIAI MA
m = [ 0.299 0.587 0.144;
-0.168736 -0.331264 0.5;
0.5 -0.418688 -0.081312];
m = m^-1;
% LAY NGHICH DAO MA TRAN m
[nr,nc,c] = size(yuv);
% LAY DU LIEU MOVIE
yuv = reshape(yuv,nr*nc,3);
% TAI TAO LAI CHO MA TRAN YUV
rgb = yuv - repmat([0, 0.5, 0.5],nr*nc,1);% MA HOA BIEN DOI MAU
rgb = m * rgb';
% rgb' hoan vi cua rgb
rgb = reshape(rgb',nr,nc,3);
% TAI TAO LAI ANH GOC
%%%%%%%%%%%% BANG LUONG TU CHO ANH INTER 4x4 P VA B %%%%%
function q = qinter
q = [17,17,16,16;
17,16,15,15;
16,15,15,15;
16,15,15,15];
%%%%%%%%%%% BANG LUONG TU CHO ANH INTRA 4x4 %%%%%%%
function q = qintra
q = [ 9,13,18,21;
13,18,21,24;
18,21,24,27;
21,24,27,30];
Hm plotvector.m
function plotvector
load lastmov;
[M,N] = size(avc{1});
for f = 1:length(avc)
if avc{f}(1,1).type == 'I'% neu la anh I thi bo qua
continue
end
for i = 1:M
for j = 1:N
mvx(i,j) = avc{f}(i,j).mvy;
mvy(i,j) = avc{f}(i,j).mvx;
end
end

103

figure
quiver(flipud(mvx),flipud(mvy))
set(gca,'XLim',[-1, N+2],'YLim',[-1, M+2])% CAI DAT TOA DO CUA HINH
title(sprintf('Vector chuyen dong cho anh thu %i',f))
end
Hm playmov.m
function playmov(n)
load lastmov
for i = 1:size(mov,4)
m(i).cdata = uint8([mov(:,:,:,i) mov2(:,:,:,i)]);% mov anh goc, mov2 anh giai nen
m(i).colormap = [];
end
figure('Position',[30,100,750,400,]);
axs=axes('Position',[0.05 0.15 0.8 0.55]);
xlabel( 'Anh GOC ------------------------------------------------------>>>>>> Anh NEN');
movie(m,n,5); % Play mang m n lan, nhung lan sau play voi toc do 5fps

TI LIU THAM KHO


[1] TS. Nguyn Thanh Bnh, Ths. V Nguyn Quc Bo, X l m thanh, hnh nh,
Hc vin cng ngh Bu chnh vin thng, H Ni.
[2] KS. Trng Th Thy, Tiu chun m ha tin tin H.264-MPEG-4 AVC, Tp
ch khoa hc k thut truyn hnh 1/2004.
[3]

KS. Cao Vn Lit, B chuyn ng trong k thut m ha ni dung ngun video

t nhin s dng tiu chun nn MPEG-4, Tp ch khoa hc k thut truyn hnh


1/2005.
[4]Th.S. Nguyn Minh Hng, Chun nn H.264/AVC v kh nng ng dng trong
truyn hnh, Tp ch khoa hc k thut truyn hnh 2/2005.
[5] Gs.TS. Nguyn Kim Sch, Truyn hnh s c nn v Multimedia, Nh xut bn
khoa hc k thut, H Ni
[6] TS. Trn Dng Trnh, Truyn hnh trn Internet IPTV, Tp ch khoa hc k thut
truyn hnh 3/2005

104

[7] Iain E. G. Richardson, H.264 And MPEG-4 Video Compression, The Robert
Gordon University, Aberdeen, UK
[8] John Arnold, Michael Frater, Mark Pickering, Digital Television Technology and
Standards, The University of New South Wales, ADFA Canberra, ACT, Australia
[9] JVT Draft ITU-T recommendation and final draft international standard of joint
video specification (ITU-T rec. H.264 ISO/IEC 14496-10 AVC),
[10] THOMAS SIKORA, MPEG-1 and MPEG-2 Digital Video Coding Standards,
McGraw Hill Publishing Company.
[11] T. Wiegand, G.J. Sullivan, G. Bjontegaard, A. Luthra, Overview of the
H.264/AVC Video Coding Standard,
[12] Siwei Ma, Xiaopeng Fan, Wen Gao, Low Complexity Integer Transform and
High Definition Coding
[13]

Cc

trang

web

http://google.com,

http://mathexchange.com

http://forum.doom9.org, University of Illinois at Chicago (UIC), http://www.uic.edu/


http://www.chiariglione.org/mpeg/,

http://en.wikipedia.org

http://www.mathworks.com/,

http://media.xiph.org/video/derf/

http://www.stanford.edu/class/ee398b/samples.html

105

You might also like