THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Ph
ng pháp mã hóa video theo đ i t
ng ng d ng trong các h th ng
thông tin video nén
Ch
OBO
OK S
.CO
M
M CL C
ng 1 : T ng quan v mã hóa video
1.1. M c đích nghiên c u video nén theo h
ng đ i t
ng
1.2. T ng quan v các chu n nén
1.3. K thu t mã hóa video nén theo h
Ch
ng đ i t
ng MPEG-4 và u đi m
ng 2: Cơng ngh mã hóa video trong MPEG-4
2.1. Mã hố hình d ng ngồi (Shape Coder)
2.1.1. Bi n đ i Cosin r i r c ( DCT)
2.1.2. L
ng t hố
2.1.3. Mã hóa
2.2. D đốn và t ng h p đ ng
cl
2.2.1.
ng chuy n đ ng
2.2.2. K thu t đ m
2.2.3. K thu t chuy n đ ng c b n
2.2.3.1. K thu t thay đ i t ng kh i thích ng v i c u trúc đa c nh c a VOP
2.2.3.2.
cl
ng chuy n đ ng c a đi m nh
2.2.3.3. Ch đ INTRA / INTER
2.2.3.4. Tìm ki m n a đi m nh
2.2.3.5. D đoán MV
2.2.3.6. Ch đ vector chuy n đ ng không gi i h n
KIL
2.2.3.7. Ch đ nâng cao ch t l
2.3. Mã hóa c u trúc
2.4. Gi i mã MPEG-4 VOP
2.5. Mã hóa theo l p video
2.6. ánh giá hi u qu
2.7.
Ch
i u khi n t c đ
ng 3:
ng d ng
ng d đoán
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
3.1. IP TV
3.2. Video u c u
3.3. Mobile TV
K t lu n
KIL
OBO
OKS
.CO
M
3.4. Truy n hình h i ngh
Danh m c tài li u tham kh o
Danh m c ch vi t t t
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
L i nói đ u
V i s phát tri n c a công ngh thông tin, và cùng v i đó là s phát tri n
ng
ng ti n , đòi h i con
KIL
OBO
OKS
.CO
M
ngày càng m nh m c a các ng d ng truy n thơng đa ph
i khơng ng ng tìm tịi sáng t o đ đáp ng k p v i xu th phát tri n y. Nh
vào s phát tri n c a các ng d ng truy n thông đa ph
ng ti n mà chúng ta có
th đ a âm thanh, hình nh, hay các đo n video đi xa m t cách nhanh chóng và
thu n ti n. Song v i vi c truy n t i m t đo n video có dung l
ng l n đi xa g p
khá nhi u khó kh n b i kh n ng có h n c a kênh d n.Vì v y các nhà s n xu t
đã áp d ng m t s k thu t nén đ giúp t i u hóa các đo n video trên, làm gi m
dung l
ng ph i truy n đi mà ch t l
g c. M t trong các k thu t nén đ
ng hình nh t
ng đ
ng v i hình nh
c s d ng r ng rãi đó là k thu t nén chuy n
đ ng mà tiêu bi u là chu n nén MPEG. Qua quá trình nghiên c u các chuyên
gia đã cho ra đ i chu n nén MPEG-4 v i nhi u tính n ng u vi t và nó đã nhanh
chóng đ
c ng d ng r ng rãi trong h th ng thông tin video nén. MPEG-4 s
d ng m t ph
ng pháp mã hóa video theo t ng đ i t
b c m t đo n video, vì v y dung l
l
ng video đ
ng thay vì mã hóa tồn
c gi m đi đáng k mà ch t
ng l i khơng có nhi u thay đ i .
Vì v y chúng tơi đã ch n đ tài nghiên c u “Ph
video theo đ i t
ng pháp mã hóa
ng ng d ng trong các h th ng thơng tin video nén” đ đi
sâu tìm hi u k thu t mã hóa trong chu n nén MPEG-4 này.
tài nghiên c u đ
c chia làm 3 ph n
Ch
ng 1: t ng quan v video
Ch
ng 2: cơng ngh mã hóa video trong MPEG-4
Ch
ng 3: các ng d ng
Chúng tôi xin g i l i c m n t i th y giáo đã h
ng d n và giúp đ
chúng tôi th c hi n đ tài này. Và chúng tôi c ng xin g i l i c m n t i th y cô
giáo trong b môn K Thu t Thông Tin và các b n cùng l p đã giúp đ chúng
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
tơi trong vi c tìm ki m thông tin, tài li u và các giáo trình tham kh o trong su t
quá trình th c hi n đ tài này.
Chúng tôi r t mong nh n đ
c ý ki n đóng góp c a th y cơ giáo và các
Ch
c hồn thi n h n
KIL
OBO
OKS
.CO
M
b n sinh viên đ cho đ tài nghiên c u đ
ng 1 : T ng quan v mã hóa video
1.1 M c đích nghiên c u video nén theo h
ng đ i t
ng
T i sao chúng ta c n ph i nén video ?
xem đ
c 1 đo n video có ch t l
là 1 đi u r t quan tr ng và c n thi t.
ng khơng q l n
ó chính là lí do c n ph i s d ng 1 công
c nén video nh m gi m t i đa dung l
đáp ng đ
ng cao mà dung l
ng c a đo n video mà ch t l
ng v n
c yêu c u.
Nhu c u truy n phát các d ch v Multimedia m i trên h t ng k thu t m ng
Internet đã làm n y sinh các u c u ch c n ng khơng có trong các chu n
MPEG-1, MPEG-2,H.26X và các chu n nén video tr
chu n MPEG-4 (10/1998) và H264 đã t o ra m t ph
c đó. S xu t hi n c a
ng th c thi t l p và t
tác m i v i truy n thơng nghe nhìn trên m ng internet, t o ra m t ph
ng
ng th c
s n xu t, cung c p và ng d ng m i các n i dung video trên c s n i dung và
h
ng đ i t
ng (content/object-based).
truy n thơng đa ph
tr
ây chính là m t cơng ngh trình di n
ng ti n ph c h p, có kh n ng truy n thông trong các môi
ng b ng thông r t khác nhau nh k t h p t t 3 mơi tr
đ ho t
ng: Truy n hình s ,
ng tác và World Wide Web
1.2 T ng quan v các chu n nén
Hi p h i vi n thông qu c t (ITU) và t ch c tiêu chu n qu c t / U ban k
thu t đi n t qu c t (ISO/IEC) là hai t ch c phát tri n các tiêu chu n mã hoá
Video. Theo ITU-T, các tiêu chu n mã hoá Video đ
c coi là các khuy n ngh
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
g i t t là chu n H.26x (H.261, H.262, H.263 và H.264). V i tiêu chu n
ISO/IEC, chúng đ
c g i là MPEG-x (nh MPEG-1, MPEG-2 và MPEG-4).
MPEG hay g n h n là MPG có xu t x t Moving Picture Experts Group
KIL
OBO
OKS
.CO
M
(Nhóm các chuyên gia đi n nh). T ch c ra đ i h i n m 1988 này chuy n phát
tri n các tiêu chu n v cái v nén phim s (digital video) và âm thanh s (digital
audio). Nó ho t đ ng d
i s “đ đ u” c a T ch c Qu c t v Tiêu chu n hóa
(ISO). Mpeg-4 là chu n cho các ng d ng MultiMedia. Mpeg-4 tr thành m t
tiêu chu n cho nén nh k thu t truy n hình s , các ng d ng v đ ho và
Video t
ng tác haichi u(Games,Videoconferencing) và các
Multimedia t
ng d ng
ng tác hai chi u (World Wide Web ho c các ng d ng nh m
phân phát d li u Video nh truy n hình cáp, Internet Video...). Mpeg-4 đã tr
thành m t tiêu chu n cơng ngh trong q trình s n xu t, phân ph i và truy c p
vào các h th ng Video. Nó đã góp ph n gi i quy t v n đ v dung l
các thi t b l u tr , gi i quy t v n đ v b ng thông c a đ
ng cho
ng truy n tín hi u
Video ho c k t h p c hai v n đ trên.
V i MPEG-4, các đ i t
ng khác nhau trong m t khung hình có th đ
c
mơ t , mã hố và truy n đi m t cách riêng bi t đ n b gi i mã trong các dòng c
b n ES (Elementary Stream) khác nhau. C ng nh xác đ nh, tách và x lý riêng
các đ i t
con ng
ng (nh nh c n n, âm thanh xa g n, đ v t, đ i t
i hay đ ng v t, n n khung hình …), nên ng
riêng t ng đ i t
ng nh video nh
i s d ng có th lo i b
ng kh i khn hình. S t h p l i thành khung hình ch đ
th c hi n sau khi gi i mã các đ i t
ng này.
H.264 ( MPEG-4 AVC hay MPEG-4 part 10), hi n đang là ph
ti n nh t trong l nh v c nén video. H.264 cho ch t l
có cùng dung l
c
ng th c tiên
ng hình nh t t nh t khi
ng so v i các chu n nén khác. H.264 c ng đ
c ng d ng nh
thu t nén chính trong video đ phân gi i cao (HD)
M c tiêu chính c a chu n nén H.264 đang phát tri n nh m cung c p Video
có ch t l
ng t t h n nhi u so v i nh ng chu n nén Video tr
có th đ t đ
c đây.
c nh s k th a các l i đi m c a các chu n nén Video tr
i u này
c đây.
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Khơng ch th , chu n nén H.264 còn k th a ph n l n l i đi m c a các tiêu
chu n tr
c đó là H.263 và MPEG-4.
Trong đ tài này chúng tôi xin phép đ
ng đ i t
ng MPEG-4 mà hi n nay đang đu c s d ng r t nhi u
KIL
OBO
OKS
.CO
M
nén theo h
c trình bày k thu t mã hóa video
nh 1 cơng c mã hóa v i nhi u tính n ng u vi t.
1.3 K thu t mã hóa video nén theo h
đi m c a nó.
MPEG-4 đ
ng đ i t
ng MPEG-4 và u
c coi là m t cu c cách m ng m i trong media s . Nó là chu n
multimedia tồn c u th h k ti p. Nó đ
c thi t k đ truy n t i video v i ch t
l
ng DVD (MPEG-2) qua m ng. MPEG-4 có kh n ng nén cao và t i u hóa
đ
c dung l
l
ng video ch p nh n đ
ng b ng thông c ng nh dung l
MPEG-4 có ph
chu n khác tr
ng file l u tr mà l i đ a ra ch t
c.
ng th c mã hóa và nén video hồn tồn t i u h n các
c nó đó là vi c chia nh m i l p video thành các đ i t
bi t,Thay vì th c hi n truy n t i t t c các l p video nh
4 ch truy n đi s thay đ i trong m i đ i t
ng đã đ
ng riêng
MPEG-2 thì MPEG-
c tách ra.MPEG-4 ra đ i
v i khá nhi u tính n ng u vi t:
1.3.1 Tính m m d o và có kh n ng nâng c p.
Các nhà thi t k b mã hoá MPEG ph i đ i m t v i r t nhi u v n đ , nh ng
v n đ quan tr ng nh t là làm sao thi t k đ
có kh n ng nâng c p đ
c trong t
c m t thu t toán nén m m d o và
ng lai. H th
ng mong mu n có đ
c các
b mã hố MPEG thích h p cho nhi u ng d ng, t TV màn nh r ng, ch t
l
ng cao t i các h th ng nh , tín hi u video đen tr ng cho các h th ng
camera an ninh. Hi n nhiên là m t h th ng nén thi t k dành cho các phim màn
nh r ng ph i có ph n c ng m nh, b nh l n h n là m t h th ng đ
c thi t k
cho h th ng camera dành cho m c đích an ninh.Các nhà thi t k gi i quy t v n
đ này b ng cách đ nh ngh a "Level" và "Profile" cho h th ng. Các "Level" xác
đ nh gi i h n n ng l c x lý c a ph n c ng và b nh c n thi t đ mã hố tín
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
hi u. Các "Profile" xác đ nh đ ph c t p c a quá trình mã hố và gi i mã.
i
v i MPEG-4 thì có 19 profile (nh ng đ i v i H.264 ch có 3 profile).
V kh n ng nâng c p c a b mã hoá MPEG, h thi t k theo hai b
c th nh t là thay cho xác đ nh ch tiêu c a b mã hoá và gi i mã, h xác
KIL
OBO
OKS
.CO
M
B
c.
đ nh lo i tín hi u n m gi a hai thi t b này. B
c th hai là th c hi n các c i
ti n trong b mã hoá và gi i mã m i sao cho nó t
ng thích v i các chu n c
(backward compatible).Chu n MPEG có các qui t c và giao th c cho tín hi u
truy n gi a b mã hoá và gi i mã. Các quy t c này, th c ch t gi ng nh là m t
lo i ngôn ng dành riêng cho b mã hoá và gi i mã. Các b mã hố t
ph i có kh n ng “nói” đ
kh n ng hi u đ
c ngôn ng này. Các b gi i mã t
ng thích
ng thích ph i có
c tồn b các "t v ng" mà b mã hoá đã phát ra trong m t
ng c nh nh t đ nh.MPEG-4 th c hi n đi u này b ng cách t o ra m t b các
công c dùng đ nén tín hi u trong các tr
ng h p khác nhau. M t trong các
công c này, chuy n đ i cosine r i r c (DCT - discrete cosine transform), có
nhi m v chuy n đ i m t kh i 8x8 pixel thành m t t p các h s
1.3.2 MPEG-4 đem l i công c nén m i.
Ta hãy xem xét các c ng c nén m i mà chu n MPEG-4 mang t i l nh v c
nén nh. Hình 1 so sánh các cơng c c a chu n MPEG-2 và MPEG-4.
Hình 1.1: cơng c nén m i c a MPEG-4 so v i MPEG-2.
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Chu n MPEG-4 đi xa h n, theo hình 2, nó có th d đốn h s c a toàn b
các kh i trên m t hàng hay h s c a các kh i
c t bên trái t m t kh i đ u
KIL
OBO
OKS
.CO
M
tiên.
Hình 1.2: MPEG4 có th d đốn các tham s trên 1 hàng, hay các thông s c a c t bên trái
t m t kh i đ u tiên.
Vi c d đoán các h s c a hàng hay c a c t d a trên n i dung c a hình nh.
Ví d , m t nh ch a m t v t th theo chi u đ ng nh cái c c ch ng h n. Khi đó
quét nh này theo chi u ngang s t o ra s thay đ i l n trong các h s sau DCT
khi g p hình nh cái c c này. Trái l i, khi quét theo chi u đ ng thì các kh i n m
trong m t c t có các h s DCT g n gi ng nhau, t đó có th nén v i t l nén
cao h n.
MPEG-4 m r ng cách d đoán vector chuy n đ ng. MPEG-4 có th d
đốn vector cho m t macroblock t các macroblock
trên hay
bên trái, và nó
ch g i đi s sai khác so v i các vector c mà thơi. Do đó gi m đi d li u c n
thi t dùng đ mã hoá m t vector, cho phép có th dùng m t vector cho m i kh i
DCT. Vi c d đoán chuy n đ ng s t t h n v i 4 vector, gi m nh l i khi d
đoán.
Ch t l
ng hình nh có th đ
c c i thi n đáng k b ng cách dùng t l nén
d li u l n h n mà không c n thay đ i đ phân gi i. Mpeg không ph i là m t
công c nén đ n l mà u đi m c a nén Mpeg chính là
ch nó có m t t p h p
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
các cơng c mã hố chu n, chúng có th đ
c k t h p v i nhau m t cách linh
đ ng đ ph c v cho m t lo t các ng d ng khác nhau, kh n ng truy n d n t t
trong môi tr
ng truy n d n kh c nhi t.
KIL
OBO
OKS
.CO
M
1.3.3 Ti m n ng c a chu n MPEG-4.
Trong khi các chu n MPEG-1 và MPEG-2 thao tác v i m t nh tồn v n, thì
chu n MPEG-4 có th làm vi c đ
c v i các hình nh đ
c t o ra, hay đã đ
c
máy tính x lý và đó là m t th m nh c a chu n MPEG-4.So v i chu n MPEG2 thì MPEG-4 có nh ng u th h n v x lý đ h a tr c ti p.
Hình 1.3.a :
u vào c a b mã hóa MPEG-2 là m t nh hoàn ch nh đ
l p l i theo t n s nh (frame rate)
c
Hình 1.3.b : B mã hóa MPEG-4 có th x lý các l nh đ h a m t
cách tr c ti p , do đó cơng c bi u di n hình nh th c s n m trong b
gi imã MPEG-4
Hình 1.3 : so sánh gi a chu n MPEG-2 và MPEG-4 v x lý đ h a
Chu n MPEG-4 có th làm vi c đ
c v i 4 lo i đ i t
4 cho th y chu n MPEG-4 đã chu n hoá ph
chi u nh các đ i t
ng l
ng, nh trên hình 4.Hình
ng pháp truy n các đ i t
i (mesh object), cùng v i các ph
ng 3
ng ti n ánh x b
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
m t v t th lên các đ i t
ng này, chu n này có th x lý các đ i t
ng có hình
KIL
OBO
OKS
.CO
M
d ng b t k
Hình 1.4: MPEG4 đã chu n hóa ph ng pháp truy n các đ i t
chi u nh các đ i t ng l i.
1.3.4 Audio, video và t t c các đ i t
ng 3
ng khác có th đ
ch t ch v i đ chính xác cao và có kh n ng t
c đ ng b
ng tác.
Truy n thơng multimedia theo dịng (Multimedia stream), trong đó dịng
audio và video s đ
c bi n đ i thích nghi v i yêu c u b ng thông và ch t l
hình nh lo i b nh ng đ i t
ng
ng (hình nh, âm thanh) khơng c n thi t kh i
dòng d li u và đ ng b các thơng tin đ
vào đó, MPEG-4 s cho phép ng
c nhúng trong dịng d li u đó. Thêm
i s d ng kh n ng t
ng tác tr c ti p v i
dòng d li u (d ng ti n hay lùi nhanh, kích chu t đ kích ho t các tu ch n
video và audio…)
L u gi và ph c h i d li u audio và video: do MPEG-4 phân chia các
khung hình thành các đ i t
(đ i t
ng) mong mu n s đ
ng, vi c trình duy t Browser trên c s n i dung
c th c hi n m t cách d dàng và nh v y, các
ng d ng l u gi hay ph c h i thông tin trên c s n i dung MPEG-4 s đ
thu n l i h n.
c
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Truy n thơng báo đa ph
ng ti n: các thông báo d
i d ng text, audio và
c truy n đi v i yêu c u b ng thơng ít h n, và có kh n ng
t đi u ch nh ch t l
ng cho phù h p v i kh n ng b ng thông c a thi t b gi i
mã.
KIL
OBO
OKS
.CO
M
video MPEG-4 s đ
Thông tin gi i trí: nh ng s trình di n nghe nhìn t
ch i t
ng tác …) có th đ
ng tác (th gi i o, trò
c tri n khai trên c s chu n MPEG-4 s làm gi m
yêu c u v b ng thông và làm cho th gi i o tr nên sinh đ ng và gi ng nh
th c t trên các trang web
Ch
ng 2 : Công ngh mã hóa video trong MPEG-4
MPEG-4 là s n ph m c a nhóm MPEG (Moving Picture Expert Group)
đ
c thành l p tháng 1/1988 v i nhi m v phát tri n các chu n x lý, mã hoá và
hi n th các nh đ ng, audio và các t h p c a chúng.
S n ph m đ u tiên c a nhóm này là MPEG-1 đ
c s d ng cho vi c mã hoá
các d li u nghe nhìn v i t c đ 1,5 Mbps. S n ph m th hai c a nhóm là chu n
MPEG-2 n i ti ng hi n nay, mang tính t ng quát h n và đang đ
m t lo t các
ng d ng nghe nhìn trong ph m vi t c đ
Không gi ng các chu n MPEG tr
n i dung đ
đ
c áp d ng cho
t
3-40 Mbps.
c đó, ví d nh trong MPEG-2, n i mà
c t o ra t nhi u ngu n nh video nh đ ng, đ h a, v n b n… và
c t h p thành chu i các khung hình ph ng, m i khung hình (bao g m các
đ it
ph n t
ng nh ng
i, đ v t, âm thanh, n n khung hình…) đ
c chia thành các
nh pixels và x lý đ ng th i, gi ng nh c m nh n c a con ng
qua các giác quan trong th c t . Các pixels này đ
chúng đ u là các ph n t
c mã hoá nh th t t c
nh video nh đ ng. T i phía thu c a ng
quá trình gi i mã di n ra ng
i thơng
i s d ng,
c v i q trình mã hố khơng khó kh n. Vì v y có
th coi MPEG-2 là m t công c hi n th t nh, và n u m t nhà truy n thông
truy n phát l i ch
ng trình c a m t nhà truy n thơng khác v m t s ki n, thì
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
logo c a nhà s n xu t ch
ng trình này khơng th lo i b đ
c. V i MPEG-2,
b n có th b xung thêm các ph n t đ ho và v n b n vào ch
th cu i cùng (theo ph
v n
ng th c ch ng l p), nh ng không th xố b t các đ
b n
có
trong
ch
ng
KIL
OBO
OKS
.CO
M
và
ho
Chu n MPEG-4 kh c ph c đ
V i MPEG-4, các đ i t
ng trình hi n
trình
g c.
c h n ch này và là m t chu n đ ng d thay đ i.
ng khác nhau trong m t khung hình có th đ
c mơ t ,
mã hoá và truy n đi m t cách riêng bi t đ n b gi i mã trong các dòng c b n
ES (Elementary Stream) khác nhau. C ng nh xác đ nh, tách và x lý riêng các
đ it
ng
ng (nh nh c n n, âm thanh xa g n, đ v t, đ i t
i hay đ ng v t, n n khung hình …), nên ng
t ng đ i t
ng nh video nh con
i s d ng có th lo i b riêng
ng kh i khn hình. S t h p l i thành khung hình ch đ
hi n sau khi gi i mã các đ i t
c th c
ng này.
Hình 2.1. C u trúc c a b mã hoá và gi i mã video MPEG-4
Các b ph n ch c n ng chính trong các thi t b MPEG-4 bao g m:
- B mã hoá hình d ng ngồi Shape Coder dùng đ nén đo n thông tin, giúp
xác đ nh khu v c và đ
ng vi n bao quanh đ i t
ng trong khung hình scene.
- B d đốn và t ng h p đ ng đ gi m thông tin d th a theo th i gian.
- B mã k t c u m t ngoài Texture coder dùng đ x lý d li u bên trong và
các d li u còn l i sau khi đã bù chuy n đ ng.
KIL
OBO
OKS
.CO
M
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Hình 2.2. S đ c u trúc gi i mã video MPEG-4
Hình 2 là m t ví d v t ng h p khung hình video s d ng trong MPEG-4.
Nhi u đ i t
đ
ng đ
c tách ra kh i video đ u vào. M i đ i t
c mã hóa b i b mã hố đ i t
ng video sau đó
ng video VO (Video Object) và sau đó đ
truy n đi trên m ng. T i v trí thu, nh ng đ i t
ng này đ
nh b gi i mã riêng VO và g i t i b compositor. Ng
c gi i mã riêng r
i s d ng có th t
tác v i thi t b đ c u trúc l i khung hình g c, hay đ x lý các đ i t
m t khung hình khác. Ngồi ra, ng
c
ng
ng t o ra
i s d ng có th download các đ i t
ng
khác t các th vi n c s d li u (có s n trên thi t b hay t xa thông qua m ng
LAN, WAN hay Internet) đ chèn thêm vào hay thay th các đ i t
khn
ng có trong
g c.
hình
có th th c hi n vi c t h p khung hình, MPEG-4 s d ng m t ngơn ng
mơ t khung hình riêng, đ
c g i là đ nh d ng nh phân cho khung hình BiFS
(Binary Format for Scenes). BiFS không ch mô t
đâu và khi nào các đ i
t
ng xu t hi n trong khung hình, nó c ng mơ t cách th c ho t đ ng c a đ i
t
ng (làm cho m t đ i t
ng xoay tròn hay ch ng m hai đ i t
ng lên nhau)
và c đi u ki n ho t đ ng đ i t
ng và t o cho MPEG-4 có kh n ng t
Trong MPEG-4 t t c các đ i t
ng có th đ
c a nó - video đ
các đ ho đ
ng tác.
c mã hoá v i s đ mã hoá riêng
c mã hoá theo ki u video, text đ
c mã hoá theo ki u text,
c mã hố theo ki u đ ho - thay vì vi c x lý t t c các ph n t
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
nh pixels nh là mã hố video nh đ ng. Do các q trình mã hoá đã đ
ct i
u hoá cho t ng lo i d li u thích h p, nên chu n MPEG-4 s cho phép mã hoá
v i hi u qu cao tín hi u nh video, audio và c các n i dung t ng h p nh các
KIL
OBO
OKS
.CO
M
b m t và c th ho t hình.
2.1 Mã hố hình d ng ngồi (Shape Coder )
-Khung hình : là thành ph n mã hố chính. Th
ng th
ng chúng ta có th
phân bi t s thay đ i v đ sáng c a nh t t h n so v i s thay đ i v màu. Do
đó tr
c h t các s đ nén Mpeg s ti n hành chia khung hình thành các thành
ph n đ sáng Y và thành ph n đ màu Cb, Cr (m t thành ph n v đ sáng và hai
thành ph n v đ màu). M t khung hình s g m có 3 ma tr n ng v i các thành
ph n v đ sáng (Y) và hai thành ph n v đ màu Cb và Cr.
Ma tr n Y có s hàng và c t b ng nhau (ma tr n vuông). Ma tr n Cb và Cr
có s hàng và c t b ng n a ma tr n Y. Hình 3 cho th y quan h và v trí c a Y
và các thành ph n Cb và Cr. L u ý r ng c 4 giá tr Y l i có 2 giá tr k t h p
m t c a Cb và m t c a Cr (V trí c a giá tr Cb và Cr là t
ng đ
ng).
Các b l c ti n x lý s l c ra nh ng thông tin không c n thi t t tín hi u Video
và nh ng thơng tin khó mã hố nh ng khơng quan tr ng cho s c m th c a m t
ng
i. K thu t đoán chuy n đ ng d a trên nguyên t c là các khung hình trong
m t c nh Video d
ng nh có liên quan m t thi t v i nhau theo th i gian: M i
khung hình t i m t th i đi m nh t đ nh s có nhi u kh n ng gi ng v i các
khung hình đ ng ngay phía tr
c và ngay phía sau nó. Do v y
phía b mã hố,
ch c n g i nh ng khung hình có thay đ i so v i nh ng khung hình tr
đó dùng ph
c, sau
ng pháp nén v khơng gian đ lo i b s d th a v không gian
trong chính khung hình sai khác này. Trong MPEG-4 là y u t ít có s thay đ i
nh t, các b
c mã hóa khung hình c ng t
mã hố bi n đ i g m các b
c:
+Bi n đ i Cosine r i r c (DCT).
+L
ng t hố.
+Mã hóa
2.1.1 Bi n đ i Cosin r i r c ( DCT )
ng t nh mã hóa nh. Thu t tốn
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
c mơ t d
i đây:
KIL
OBO
OKS
.CO
M
S đ thu t tốn nén và gi i nén đ
Hình 2.3 s đ thu t tốn nén nh (a)
Q trình gi i nén s đ
nén t
ng ngv i ph
c làm ng
c l i, ng
i ta gi i mã t ng ph n nh
ng pháp nén đã s d ng trong ph n nén nh các thông
tin liên quan ghi trong ph n header c a file nén. K t qu thu đ
l
ng t . Các h s này đ
b t
c khơi ph c v giá tr tr
ng t hóa. Ti p đó đem bi n đ i Cosin ng
c khi l
c ta đ
c là h s đã
ng t hóa b ng
c nh ban đ u v i đ
trung th c nh t đ nh.
B ng mã và b ng l
ng t trong s đ gi i nén đ
c d ng lên nh nh ng
thông tin ghi trong ph n c u trúc đ u t p ( Header) c a t p nh nén. Quá trình
nén ch u trách nhi m t o ra và ghi l i nh ng thơng tin này. Ph n ti p theo s
phân tích tác d ng c a t ng kh i trong s đ 2.3
+ Ph n kh i
Vì nh g c có kích th
nh đ
c r t l n cho nên tr
c khi đ a vào bi n đ i DCT,
c phân chia thành các kh i vuông, m i kh i này th
ng có kích th
c8
x 8 pixel và bi u di n các m c xám c a 64 đi m nh, các m c xám này là các s
nguyên d
ng có giá tr t 0 đ n 255. Vi c phân kh i này s làm gi m đ
cm t
ph n th i gian tính tốn các h s chung, m t khác bi n đ i cosin đ i v i các
kh i nh s làm t ng đ chính xác khi tính tốn v i d u ph y t nh, gi m thi u sai
s do làm tròn sinh ra.
KIL
OBO
OKS
.CO
M
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Hình 2.4 s đ thu t toán nén nh (b)
Bi n đ i DCT là m t cơng đo n chính trong các ph
bi n đ i. 2 công th c
ng pháp nén s d ng
đây minh ho cho 2 phép bi n đ i DCT thu n ngh ch đ i
v i m i kh i nh có kích th
c 8 x 8. Giá tr x(n1, n2) bi u di n các m c xám
c a nh trong mi n không gian, X(k1, k2) là các h s sau bi n đ i DCT trong
mi n t n s .
+ Bi n đ i
Bi n đ i là m t trong nh ng công đo n l n trong các ph
ng pháp nén s
d ng phép bi n đ i. Nhi m v c a công đo n bi n đ i là t p trung n ng l
ng
vào m t s ít các h s bi n đ i. Công th c bi n đ i cho m i kh i là:
và
Thu t toán bi n đ i DCT cho m i kh i trong tr
phép bi n đ i DCT.
u tiên, ng
dãy đi m nh trên m i hàng. L n l
ng h p này s bao g m 16
i ta bi n đ i nhanh Cosin m t chi u cho các
t th c hi n cho 8 hàng. Sau đó đem bi n
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
đ i nhanh Cosin m t chi u theo t ng c t c a ma tr n v a thu đ
c sau 8 phép
bi n đ i trên. C ng l n l
t th c hi n cho 8 c t. Ma tr n cu i cùng s là ma tr n
h s bi n đ i c a kh i t
ng ng.Trong s đ gi i nén ta ph i dùng phép bi n
c. Công th c bi n đ i ng
ccho kh i 8x8:
KIL
OBO
OKS
.CO
M
đ i Cosin ng
và
2.1.2 L
ng t hoá
Kh i l
ng t hóa trong s đ nén đóng vai trị quan trong và quy t đ nh t
l nén c achu n nén.
u vào c a kh i l
ng t hóa là các ma tr n h s bi n
đ i Cosin c a các kh i đi m nh.Sau khi th c hi n bi n đ i DCT, 64 h s s
đ
cl
ng t hoá d a trên m t b ng l
v≤7. B ng này đ
b ng l
nh y l
c đ nh ngh a b i t ng ng d ng c th . Các ph n t trong
ng t có giá tr t 1 đ n 255 đ
DCT. Quá trình l
ng t t
ng t đ
c g i là các b
ng ng, k t qu này sau đó s đ
FQ(u,v) là các h s sau l
c nh y cho các h s
c coi nh là vi c chia các h s DCT cho b
g n nh t. Công th c (3) th hi n vi c l
Entropy.
ng t g m 64 ph n t Q(u,v) v i 0≤u,
c
c làm tròn xu ng s nguyên
ng t v i F(u,v) là các h s DCT,
ng t , các h s này s đ
c đ a vào b mã hoá
(3)
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
M c đích c a vi c l
ng t hoá là gi m s l
ng bit c n đ l u tr các h s
bi n đ i b ng vi c gi m đ chính xác c a các h s này cho nên l
ng t là q
trình x lý có m t thơng tin.
ng t
phía b gi i mã đ
s sau b gi i mã entropy s nhân v i các b
l
ng t đ
c nh y trong b ng l
c l i. Các h
ng t (b ng
c đ t trong ph n header c a nh JPEG). K t qu này sau đó s đ
đ a vào bi n đ i DCT ng
m t kh i, ng
c th c hiên ng
KIL
OBO
OKS
.CO
M
Quá trình gi i l
c.
c
nâng cao hi u qu nén cho m i b h s trong
i ta x p chúng l i theo th t ZigZag. Tác d ng c a s p x p l i
theo th t ZigZag là t o ra nhi u lo i h s gi ng nhau. Chúng ta bi t r ng
n ng l
ng c a kh i h s gi m d n t góc trên bên trái xu ng góc d
i bên
ph i nên vi c s p x p l i các h s theo th t ZigZag s t o đi u ki n cho các
h s x p x nhau (cùng m c l
ng t ) n m trên m t dịng
Hình 2.5 : Q trình gi i l
M i kh i ZigZag này đ
ng t và th t s p x p zigzag
c mã hóa theo ph
ng pháp RLE. Cu i m i kh i
đ u ra c a RLE, ta đ t d u k t thúc kh i EOB (End Of Block). Sau đó, các kh i
đ
c d n l i và mã hóa m t l n b ng ph
thúc kh i nên có th phân bi t đ
ng pháp mã Huffman. Nh có d u k t
c hai kh i c nh nhau khi gi i mã Huffman.
Hai b ng mã Huffman cho hai thành ph n h s t t nhiên s khác nhau.
có
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
th gi i nén đ
th
c, chúng ta ph i ghi l i thông tin nh : kích th
c kh i, ma tr n Y, đ
Huffman, kích th
c nh, kích
l ch tiêu chu n, các m c t o l i, hai b ng mã
c kh i nén m t chi u, kích th
c kh i nén xoay chi u… và
KIL
OBO
OKS
.CO
M
ghi n i ti p vào hai file nén c a thành ph n h s .
Cài đ t gi i thu t cho nén th c s ph c t p. Chúng ta ph i n m đ
c các
ki n th c v nén
RLE, Huffman, bi n
đ i Cosin, xây d ng b
l
ng t
hóa Lloyd-
Max…Nén và gi i nén h i ch m nh ng bù l i, th i gian truy n trên m ng
nhanh h n do kích th
c t p nén nh . V i nh ng u đi m c a mình đ
ch p nh n là chu n nh qu c t và đ
c bi t đ n d
c ISO
i mã s ISO 10918-1.
2.1.3 Mã hóa
Mã hố là b
c cu i cùng trong h th ng nén nh d a trên bi n đ i DCT.
Chu n nén nh JPEG hi n nay dùng ph
mã hố khơng làm m t thông tin. Ph
D a vào d li u g c, ng
su t đ
ng pháp này d a trên mơ hình th ng kê.
i ta tính t n su t xu t hi n các h s . Vi c tính t n
c th c hi n b ng cách duy t tu n t t đ u kh i đ n cu i kh i, sau đó,
nh ng h s có t n su t cao đ
th p đ
ng pháp mã hoá Huffman, đây là phép
c g n cho m t t mã ng n, các h s có t n su t
c gán m t t mã dài. V i cách th c này chi u dài trung bình c a t mã
đã gi m xu ng.
ng ZicZig
Các h s thu đ
c sau khi l
ng t hoá s đ
các ký hi u theo ki u “zig-zag” (theo đ
c s p x p thành m t chu i
ng zig-zag) đ đ t các h s có t n s
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
th p lên tr
c các h s t n s cao. Các h s này s đ
c mã hoá d a trên b ng
mã Huffman sao cho chi u dài trung bình c a t mã là nh nh t. B ng mã này
c ng s đ
c đ t trong ph n mào đ u c a nh đ th c hi n gi i nén nh
KIL
OBO
OKS
.CO
M
2.2 D đoán và t ng h p đ ng
M i l p video bao g m các đ i t
g i là VOP. Khi 1 VOP đ
đ
ng riêng r . M i đ i t
c tách ra,VOP đó s đ
ng riêng r
y
c đ a vào b mã hóa và
c th c hi n mã hóa nh sau :
Hình 2.6 C u trúc mã hóa m t VOP
2.2.1
cl
ng chuy n đ ng
Nén Mpeg là s
k t h p hài hoà c a b n k thu t c b n: Ti n x
(Preprocessing), đoán tr
c s chuy n đ ng c a các khung hình (Picture)
mã hố (Temporal Prediction), bù chuy n đ ng
Compensation) và mã l
b
lý
b
gi i mã (Motion
ng t hoá (Quatization Coding).Các b l c ti n x lý
s l c ra nh ng thông tin không c n thi t t tín hi u Video và nh ng thơng tin
khó mã hố nh ng khơng quan tr ng cho s c m nh n c a m t ng
i. K thu t
đoán chuy n đ ng d a trên nguyên t c là các khung hình trong m t c nh Video
(Video Sequence) d
ng nh có liên quan m t thi t v i nhau theo th i gian:
M i khung hình t i m t th i đi m nh t đ nh s có nhi u kh n ng gi ng v i các
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
khung hình đ ng ngay phía tr
hành quét l n l
c và ngay phía sau nó. Các b mã hố s ti n
t t ng ph n nh trong m i khung hình g i là MB, sau đó nó s
phát hi n MB nào khơng thay đ i t khung hình này t i khung hình khác. B mã
c s xu t hi n c a các MB khi bi t v trí và h
KIL
OBO
OKS
.CO
M
hoá s d đoán tr
ng chuy n
đ ng c a nó. Do đó ch nh ng s thay đ i gi a các MB trong khung hình hi n
t i và các MB đ
c d đoán m i đ
c truy n t i bên phía thu.
Phía bên thu t c b gi i mã đã l u tr s n nh ng thông tin mà không thay
đ i t khung hình này t i khung hình khác trong b nh đ m c a nó và chúng
đ
c dùng đ đi n thêm m t cách đ u đ n vào các v trí tr ng trong nh đ
khơi ph c.
Nén tín hi u Video đ
c
c th c hi n nh vi c lo i b c s d th a v không
gian (Spatial Coding) và th i gian (Temporal Coding). Trong Mpeg, vi c lo i b
d th a v th i gian (nén liên khung hình) đ
c th c hi n tr
c h t nh s d ng
các tính ch t gi ng nhau gi a các khung hình liên ti p (Inter-Picture). Chúng ta
có th s d ng tính ch t này đ t o ra các khung hình m i nh vào nh ng thơng
tin t nh ng khung hình đã g i tr
c nó. Do v y
phía b mã hố, ch c n g i
nh ng khung hình có thay đ i so v i nh ng khung hình tr
ph
c, sau đó dùng
ng pháp nén v không gian (Spatial Coding) đ lo i b s d th a v khơng
gian trong chính khung hình sai khác này. Nén v không gian d a trên nguyên
t c là phát hi n s gi ng nhau c a các đi m nh (pixel) lân c n nhau (IntraPicture).
2.2.2 K thu t đ m
K thu t đ m m t hình nh s đ
c th c hi n l p đi l p l i trên VOP đ th c
hi n vi c d đoán chuy n đ ng và bù chuy n đ ng.
M c đích c a k thu t này là đ đi u ch nh t c đ c a lu ng video mã hóa
hay đi u ch nh t c đ nén video.
2.2.3 K thu t chuy n đ ng c b n
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
MPEG-4 s d ng m t s k thu t t
ng t nh ITU-T.263 đ mã hóa d
li u chuy n đ ng. Các khái ni m v k thu t chuy n đ ng c b n s đ
các m c d
bày
i đây:
kh i thích ng v i c u trúc đa c nh c a
KIL
OBO
OKS
.CO
M
2.2.3.1 K thu t thay đ i t ng
VOP
c trình
Các hình ch nh t có ch a các VOP đ
cùng theo b i s c a kích th
c m r ng v bên ph i và phía d
c MB. Kích c c a hình ch nh t cho đ chói
VOP là b i s c a 16x16, và kích th
c cho màu là b i s c a 8x8. Các giá tr
alpha c a các đi m nh m r ng (ví d nh bên ngồi ranh gi i c a VOP) đ
thi t l p là r ng. Các MB đ
i
c
c hình thành b i các phân vùng m r ng ranh gi i
c a kh i hình ch nh t 16 x 16. Trong quá trình d đoán chuy n đ ng, giá tr
SAD (t ng s khác nhau tuy t đ i c a các đi m nh) đ
c s d ng nh 1 công
c đ tìm ra đ sai l ch .Vi c xây d ng l i các anpha Plane c a VOP có s d ng
c các đi m nh c a các MB mà chúng n m ngoài VOP.Giá tr . SAD ch đ
tính cho các đi m nh có giá tr khác 0 . Công th c này đ
MB thu c đ
ng biên c a VOP. K thu t này đ
c
c áp d ng c v i các
c áp d ng nh trong hình 2.7
Hình 2.7 : K thu t thay đ i t ng kh i thích ng v i c u trúc đa c nh c a VOP
2.2.3.2
cl
ng chuy n đ ng c a đi m nh
Vi c tìm ki m s thay đ i v thành ph n đ sáng ( theo ph
ng Y ) đ
c
th c hi n hi u qu khi ta tìm ki m trên 1 s nguyên đi m nh.Vi c so sánh đ
c
di n ra gi a MB hi n t i v i MB đã b thay th tr
c
c đó.Vi c tìm ki m đ
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
th c hi n trong m t c a s có đ r ng lên t i ± 31,5 pixel theo c ph
ng th ng đ ng quanh v trí MB ban đ u.
KIL
OBO
OKS
.CO
M
và ph
ng ngang
Hình 2.8 : c a s m r ng cho vi c tìm ki m s thay đ i theo ph
T đó ta tính đ
Trong đó
ng Y
c SAD nh sau:
SADN(x,y) là giá tr SAD c a MB t i t a đ (x , y)
Original: là giá tr đi m nh ij hi n t i
Previous: là giá tr đi m nh ij tr
c đó đã b thay th
!(Alphaoriginal=0) : là m t h s khác 0
Trong mi n không gian m r ng tìm ki m,nh ng n i mà (x,y) lên t i lên ±
31,5 pixel v i N =16 ho c 8 . đ
u tiên cho vector r ng khi khơng có s khác
bi t thì véc t r ng SAD (0, 0) đ
c s d ng theo công th c
v i NB là s ch s c a MB bên trong các VOP. C p k t qu (x,y) th p nh t
trong SAD16 đ
c ch n nh 16x16 đi m nh nguyên c a MV , V0. Trong ch
đ nâng cao ch t l
ng d đoán chuy n đ ng . 4 MVs 8x8 đ i di n cho m i
16x16 MB. Các SAD 8x8 cho MB s đ
c tính nh sau :
KIL
OBO
OKS
.CO
M
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
V i 0 < k < 4 là s kh i 8 x 8 c a m i MB n m bên trong các VOP
2.2.3.3 ch đ INTRA / INTER
Khi d đoán chuy n đ ng c a các đi m nh đ
c hoàn thành . nh ng ng
i
làm nhi m v mã hóa s quy t đ nh s s d ng ch đ INTRA ho c ch đ
INTER .
Ta có:
N u A< (SADinter – 2NB) thì s s d ng ch đ INTRA
N u ch đ INTRA đ
c ch n , thì tìm ki m chuy n đ ng s đ
c th c hi n
v i m t n a đi m nh xung quanh v trí V0.
2.2.3.4 Tìm ki m n a đi m nh
Tìm ki m n a đi m nh đ
c th c hi n b ng cách d ng l i các VOP cho
16x16 vectors ho c 8x8 vectors. Vi c tìm ki m đ
c th c hi n các ph n c a MB
trong ph m vi ±1 pixel xung quanh các ma tr n có s đi m là V0, V1, V2, V3,
V4. giá tr c a n a pixel tìm đ
trong hình sau :
c b ng cách s d ng phép n i suy đ
c di n t
KIL
OBO
OKS
.CO
M
THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Hình 2.9 : Tìm ki m giá tr n a đi m nh b ng phép n i suy
K t qu tìm ki m vector t n a đi m nh bao g m các thành ph n theo chi u
ngang và chi u d c ( MVx,MVy) , c 2 thành ph n ngang và d c đ u đ
c đo
trong đ n v n a pixel.
2.2.3.5 D đoán MV
Khi ch đ INTER đ
ngang và d c c a MV s đ
c ch n , các MVs s đ
c mã hóa khác nhau b ng cách s d ng m t không
gian lân c n c a 3 MV d đoán đ
cđ c .
T i biên c a các VOP hi n t i s đ
c áp d ng m t s quy t c sau :
1- n u MB c a m t và ch m t b d báo đ
đ
c đ t là 0
cđ t
2- n u MBs c a hai và ch hai b d báo đ
chúng s đ
bên ngoài VOP, thì s
cđ t
bên ngồi VOP thì
c đ t t i b d báo th 3
3- n u MBs c a c 3 b d báo đ
đ t là 0
c truy n , các thành ph n
cđ t
bên ngồi VOP thì chúng s đ
c
2.2.3.6 Ch đ vector chuy n đ ng không gi i h n
Ch đ vector chuy n đ ng không gi i h n cho phép các MVs đ t
ngoài VOP đ nâng cao ch t l
bên
ng d đoán chuy n đ ng. trong k thu t này