Tải bản đầy đủ (.docx) (43 trang)

Kỹ thuật “scalable video coding” trong nén video và ứng dụng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.07 MB, 43 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
-----o0o-----

BÀI TẬP LỚN
XỬ LÝ DỮ LIỆU ĐA PHƯƠNG TIỆN
Đề tài 14: Kỹ thuật “Scalable Video Coding” trong nén video
và ứng dụng
Giáo viên hướng dẫn:

PGS.TS. Nguyễn Thị Hoàng Lan

Sinh viên thực hiện:

Nguyễn Văn Đông
Đỗ Tuấn Anh
Hoàng Long An
Lớp: KTMT & TT 1 - K55

Hà Nội – 05/2015

20101384
20104836
20102595


Mục lục


I.


Phân công công việc

Đỗ Tuấn Anh:


Nêu lên nhu cầu cần thiết sử dụng kỹ thuật Scalable Video
Coding.



Tìm hiểu chung về kỹ thuật Scalable Video Coding.

Hoàng Long An:


Tìm hiểu sơ đồ nén áp dụng kỹ thuật Scalable Video Coding
trong chuẩn MPEG-2 và MPEG-4.

Nguyễn Văn Đông:


Giải thích tác dụng “Scalable Video Coding” trong nén video
tiên tiến.



Thử nghiệm ứng dụng “Scalable Video Coding”.


II.


CƠ SỞ VỀ NÉN DỮ LIỆU VIDEO
1. SỰ CẦN THIẾT CỦA NÉN DỮ LIỆU

Một chuỗi video số thường chứa một lượng lớn dữ liệu, do đó sẽ gặp rất nhiều khó
khăn trong việc lưu trữ và truyền đi trong một băng thông kênh truyền hạn chế. Với sự
phát triển của khoa học kỹ thuật, ngày nay đã sản xuất được bộ cảm biến màu có độ phân
giải lên đến 16 triệu pixel tương đương với một bức ảnh có độ phân giải 4096x4096
pixels, nhưng thực tế các chuẩn video hiện tại chỉ dừng lại ở 1920x1080 pixel, do đó cần
phải nén tín hiệu.
Quá trình nén ảnh thực hiện được là do thông tin trong bức ảnh có tổ chức, có trật tự,
vì vậy nếu xem xét kỹ tính trật tự, cấu trúc ảnh sẽ phát hiện và loại bỏ được các lượng
thông tin dư thừa, chỉ giữa lại các thông tin quan trọng nhằm giảm số lượng bit khi lưu trữ
cũng như khi truyền mà vẫn đảm bảo tính thẩm mỹ của bức ảnh. Tại đầu thu, bộ giải mã
sẽ tổ chức, sắp xếp lại được bức ảnh xấp xỉ gần chính xác so với ảnh gốc nhưng vẫn đảm
bảo thông tin cần thiết. Tín hiệu video thường chứa đựng một lượng lớn các thông tin dư
thừa, chúng thường được chia thành 5 loại như sau:
 Có sự dư thừa thông tin về không gian: sự tương tự giữa các điểm ảnh lân cận
trong phạm vi một bức ảnh hay một khung video, còn gọi là thừa tĩnh bên trong
từng frame.
 Có sự dư thừa thông tin về thời gian: sự tương tự giữa các điểm ảnh của các khung
video trong chuỗi ảnh video, còn gọi là thừa động giữa các frame
 Có sự dư thừa thông tin về phổ: sự tương tự giữa các mẫu của các dữ liệu thu được
từ các bộ cảm biến trong camera, máy quay…
 Có sự dư thừa tâm thị giác: do các hạn chế của hệ thần kinh thị giác mắt người
không thể cảm nhận được những tần số quá cao
Ưu điểm của việc nén tín hiệu:
 Tiết kiệm băng thông kênh truyền ( trong thời gian thực hoặc nhanh hơn).
 Kéo dài thời giản sử dụng của thiết bị lưu trữ, giảm chi phí đầu tư cho thiết bị lưu
trữ.

Có nhiều phương pháp nén tín hiệu, phương pháp nén bằng cách số hóa tín hiệu vẫn tỏ
ra hữu hiệu trong mọi thời đại, một mặt nó có thể làm giảm lượng thông tin không quan
trọng một cách đáng kể, mặt khác nó còn giúp cho tín hiệu được bảo mật hơn.


2. QUÁ TRÌNH BIẾN ĐỔI DỮ LIỆU MÀU
Hiện nay các cảm biến hỉnh ảnh màu gốc thường được lưu giữ với không gian màu
RGB, tuy nhiên các tiêu chuẩn truyền hình màu lại sử dụng YUV mà không sử dụng RGB
vì vậy cần một công thức biến đổi từ không gian màu RGB sang YUV.

R, G, B

Hình 1.1. Quá trình biến đổi màu
Một bức ảnh được chuyển từ RGB sang YUV nhằm giảm dung lượng lưu trữ cũng
như truyền đi, trong quá trình giải mã, trước khi hiển thị ảnh thì nó được biến đổi ngược
lại thành RGB. Quá trình biến đổi giữa hai hệ màu được tổ chức quốc tế ITU_T quy
chuẩn theo công thức sau:
Y  k R  (1  k  k )G  k B
r

0.5

C 
Y)

b

(B 

r


b

b

1k

Y)

r

1
k
b

0.5

C 

(R 

r


(1) [1]
Với k  k
k

b


  1 , k = 0.114, k = 0.299, khi thế vào công thức (1) thì ta được:
r

b

r

g

Y  0.299R  0.587G  0.114B
C
(B  Y )  0.169R  0.331G  0.5B
10.5

b
0.114
0.5 (R  Y )  0.5R  0.419G  0.081B
Cr
1

0.299

Nên ta có0.29
ma trận biến
RGB sang
0.587đổi từ0.114
R YUV như sau:
Y
 



9

Cb
0.169
Cr


  

0.331


0.419
0.5

 

0.5

0.081

G
 
 B




Thực hiện tương tự ta suy ra được ma trận biến đổi từ YUV sang RGB như sau:



R
1
  

0

1.402
Y
  
G
 
1


 0.714
  0.344


Cb

3. CÁC TIÊU CHUẨN LẤY MẪU DỮ LIỆU VIDEO
SỐ
Kiểu lấy mẫu cho ảnh video cũng là một vấn đề khá quan
trọng của kỹ thuật nén ảnh. Một số kiểu lấy mẫu phổ biến minh
họa như hình 1.2 và có đặc điểm như sau:
 Tốc độ lấy mẫu 4:1:1 -

tức là tương ứng với sáu


thành phần chói Y có hai thành phần màu Cb và hai
thành phần màu Cr
 Tốc độ lấy mẫu 4:2:2 - tức là tương ứng với bốn
thành phần chói Y có hai thành phần màu Cb và hai
thành phần màu Cr
 Tốc độ lấy mẫu 4:4:4 - cả 3 thành phần có cùng độ
phân giải, với mỗi bốn thành phần chói Y có tương
ứng bốn thành phần màu Cb và bốn thành phần màu
Cr
 Tốc độ lấy mẫu 4:2:0 - là kiểu phổ biến, tương ứng
với mỗi bốn thành phần chói Y thì có một thành phần
màu Cb và một thành phần màu Cr
Ví dụ : Một bức ảnh có độ phân giải 720 × 576 pixels
Độ phân giải của thành phần Y là 720 × 576 pixels được mã
hóa bằng từ mã 8 bits.
 Nếu sử dụng kiểu lấy mẫu 4:4:4 thì độ phân giải của thành
phần Cb, Cr là 720 × 576 mẫu cũng được mã hóa bằng từ mã 8
bits.
=> Vậy tổng số bits sử dụng để mã hóa bức ảnh là 720 × 576 × 8 ×
3 = 9 953 280 bits
 Nếu sử dụng kiểu lấy mẫu 4:2:0 thì độ phân giải của thành
phần Cb, Cr là 360 × 288 mẫu, cũng được mã hóa bằng từ mã


8 bits.
=> Vậy tổng
số bits sử
dụng là (720
× 576 × 8) +

(360 × 288 ×
8) × 2 = 4
976 640 bits


Hình 1.2. Các tiêu chuẩn lấy mẫu phổ biến [1]
Trong kiểu 4:4:4, tổng số mẫu cần thiết là 12 mẫu, do đó tổng số bit là 12 × 8 = 96
bits, và trung bình là 96/4 = 24 bits/pixel
Trong kiểu 4:2:0, tín hiệu được quét xen kẽ, do đó chỉ cần thiết 6 mẫu, 4 mẫu cho thành
phần Y, 1 mẫu cho thành phần Cb, 1 mẫu cho thành phần Cr, do đó tổng số bits cần thiết
là 6 × 8 = 48 bits, và trung bình là 48/4 = 12 bits/pixel.
Ta thấy kiểu lấy mẫu 4:2:0 giảm một ½ số lượng bits so với 4:4:4, đó cũng chính là lý do
mà kiểu lấy mẫu này được sử dụng phổ biến.


4. CÁC KHÁI NIỆM CƠ BẢN TRONG CÁC CHUẨN NÉN VIDEO
Các tiêu chuẩn nén dữ liệu Video định nghĩa kiểu phân cấp cấu trúc trong dữ liệu
như sau:
Video Sequence (Chuỗi ảnh): bắt đầu với một Sequence Header, bao gồm một hoặc một
nhóm khung hình và kết thúc với mã End-of-sequence. Một chuỗi các khung hình liên tục
về mặt thời gian được gọi là cảnh (Scene).


Hình 1.3 Chuỗi Video
GOP (Group of picture): một dãy liên tiếp các ảnh (picture) trong cảnh.
Frame/ Picture (khung hình): Dãy video được chia thành các ảnh là các frame để lấy
mẫu.
Macroblock và phân vùng Macroblock:
Ảnh được chia thành số nguyên các Macroblock (MB), tương ứng với mỗi MB là
các ma trận 16x16 mẫu thành phần sáng và 8x8 mẫu các thành phần mầu. Các MB được

đánh số và quét theo thứ tự nhất định trong khung. Ngoài ra, mỗi một MB sẽ được chia
thành nhiều phân vùng nhỏ hơn được gọi là subblock và block. Hình 1.4 cho thấy các
kích cỡ phần vùng của Macroblock.

Hình 1.4 Macroblock và phân vùng Macroblock [5]
Trong quá trình mã hóa, các MB được đính kèm thêm các thành phần thông tin như
mb_type, mb_pred,.... để mô tả cách thức mã hóa dữ liệu bên trong MB. Dựa trên những
thông tin này bộ giải mã có thể tổng hợp lại được MB ban đầu.
Slice: Slice là một dãy các MB được quét theo một thứ tự nhất định. Mỗi slice chứa một
số nguyên các MB. Trong một ảnh có thể được chia thành một hoặc nhiều slice: I, P, B,
SP và SI. Ý nghĩa của các slice sẽ được đề cập tới trong phần sau.



III.

MÃ HÓA VIDEO MỞ RỘNG ĐƯỢC

Hình 3.1 Mã hóa Video mở rộng [1]
Mã hóa video mở rộng cho phép bộ giải mã có thể lựa chọn một phần luồng bit
mã hóa. Luồng bit mã hóa được sắp xếp trong một số lớp, bao gồm lớp cơ sở (base layer)
và một hoặc nhiều lớp nâng cao (enhancement layer) như trong hình 3.1. Trong hình 3.1
bộ giải mã A chỉ nhận từ lớp cơ sở và có thể giải mã một phiên bản chất lượng cơ sở của
chuỗi video, trong khi bộ giải mã B nhận thông tin tất cả các lớp và tạo ra chuỗi video với
phiên bản chất lượng cao. Bộ giải mã A là ví dụ cho các ứng dụng có bộ giải mã đơn giản
chỉ có khả năng giải mã lớp cơ sở, tốc độ bit thấp có thể được tách ra và truyền qua phân
vùng mạng có dung lượng thấp.

1. MÃ HÓA VIDEO MỞ RỘNG ĐƯỢC TRONG CÁC CHUẨN NÉN
TRƯỚC

ĐÂY
SVC đã được một nghiên cứu hoạt động trong vòng ít nhất 20 năm trở lại đây.
Trong các tiêu chuẩn nén quốc tế H.262 MPEG-2, H.263 và MPEG-4 đã bao gồm một số
công cụ mà có thể hỗ trợ tính mở rộng được.
H262 hỗ trợ nhiều profile khác nhau như trong hình 3.1

Bảng 3.1 Các profile trong Mpeg2 [6]
Trên hình 3.1 ta thấy các profile có khả năng về chất lượng và không gian trong


Mpeg2 như SNR scalable profile, Spatial Scalable profile, High profile, 4:2:2 profile,
Multi-view profile


a) Profile mở rộng chất lượng SNR

Hình 3.2 Bộ mã hóa và giải mã video H262 mở rộng chất lượng
Trong bộ mã hóa này, các lớp mở rộng được tạo ra từ việc thêm 1 bước lượng tử
hóa nữa. Bộ mã hóa lượng tử hóa hệ số DCT với độ chính xác nào đó sau đó được mã hóa
và truyền đi với dòng bit lớp dưới. Tại lớp nâng cao lỗi lượng tử hóa gặp phải ở lần lượng
tử hóa đầu tiên tự nó sẽ lại lượng tử hóa, được mã hóa và được truyền đi ở lớp nâng cao.


Tại bộ giải mã các hệ số tại lớp cơ sở được đưa vào lớp nâng cao theo hệ số lượng tử hóa
nghịch đảo. Sau đó được giải mã giống như trường hợp hợp non-scalable. Các profile
SNR được khuyến cáo dùng cho vô tuyến mặt đất.
b) Mở rộng về không gian: H262, MPEG-2 Video and MPEG-4 Visual cũng hỗ trợ
mã hóa mở rộng không gian với độ phân giải tùy ý, tuy nhiên có hạn chế là độ phân giải
về chiều dọc hoặc chiều ngang bị giảm xuống từ lớp này sang lớp tiếp theo.
Mở rộng không gian tại các lớp nâng cao mã hóa ảnh ở những độ phân giải khác nhau

Hình 3.2 là ví dụ về bộ mã hóa và giải mã sử dụng mở rộng không gian.


Hình 3.3 Bộ mã hóa video mở rộng không gian
Việc mở rộng không gian được thực hiện bằng việc sử dụng những ảnh được giải
mã từ tầng dưới như là dự đoán ở tầng cao hơn. Nếu tầng cao hơn đang xử lý ảnh ở độ
phân giải lớn hơn thì ảnh được giải mã từ tầng thấp hơn phải được chuyển thành độ phân
giải lớn hơn. Trong bộ giải mã trên hình 3.3 hai vòng lặp mã hóa hoạt động với những độ
phân giải khác nhau để tạo ra những lớp cơ sở và lớp nâng cao. Bộ mã hóa lớp cơ sở tạo
ra 1 dòng bit có thể được giải mã giống như trường hợp non-scalable. Bộ mã hóa lớp nâng
cao được cung cấp những ảnh đã được giải mã từ tầng cơ cở, như là sự dự đoán cho các
tầng trên. Sự dự đoán này bổ sung thêm vào sự dự đoán bù chuyển động từ các tầng trên.
Chức năng đánh giá W lựa chọn trong các dự đoán từ tầng trên và tầng dưới.
Mở rộng không gian được khuyến nghị như là 1 cách để phát những dịch vụ TV
có độ phân giải cao cùng với 1 profile chính tương thích với những dịch vụ chuẩn. Profile
cao hỗ trợ thêm cho việc mã hóa tín hiệu video 4:2:2 và bao gồm những công cụ đánh
đánh giá của SNR và profile không gian.


c)
Dự đoán liên lớp: Mục đích khi thiết kế công cụ dự đoán liên lớp để việc sử dụng
thông tin tại các lớp thấp hơn giảm độ méo tín hiệu tại lớp nâng cao. Trong H.262,
MPEG-2, H.263, và MPEG-4 visual phương pháp dự đoán liên lớp sử dụng các mẫu tái
dựng từ tín hiệu tại lớp thấp hơn. Tín hiệu dự đoán được định dạng từ việc dự đoán bù
chuyển động trong lớp nâng cao hoặc từ quá trình tăng mẫu các tín hiệu tái dựng từ lớp
thấp hơn hoặc lấy trung bình các tín hiệu tăng mẫu với tín hiệu dự đoán thời gian.
Tuy nhiên, các profile của những chuẩn này hiếm khi được sử dụng. Mà nguyên
nhân là do đặc điểm của hệ thống truyền tải video truyền thống cũng như thực tế là các
tính khả mở về không gian và chất lượng đến cùng với một thiệt hại đáng kể về hiệu suất
mã hóa cũng như một sự gia tăng lớn trong bộ giải mã phức tạp so với profile tương ứng

trong chế độ nonscalable. Đồng thời cần lưu ý rằng một hoặc nhiều các lớp đơn
(nonscalable) luôn được truyền bằng phương pháp simulcast, về nguyên tắc phương pháp
này cung cấp các chức năng tương tự như một dòng bit có thể (scalable).
Với nhu cầu ngày càng tăng về mã hóa cùng nội dung ban đầu tại các băng thông
và độ phân giải khác nhau dẫn tới sự phát triển phần của H.264, được chuẩn hóa như
H264/SVC. SVC hỗ trợ mã hóa video hiệu quả theo một cách là nhiều dạng của tín hiệu
video có thể được giải mã ở một dải tốc độ bit, hoặc những độ phân giải khác nhau. Bằng
việc mã hóa đồng thời nhiều bản, nó có thể phát chúng theo một cách hiệu quả hơn so với
việc tuần tự mã hóa và truyền đi các bản riêng rẽ.
So sánh khả năng mở rộng của H.264/SVC với những chuẩn nén video trước đó
H.264/AVC mở rộng cho SVC cung cấp các công cụ khác nhau để giảm suy hao trong
quá trình mã hóa. Sự khác biệt quan trọng ở đây là:
Khả năng sử dụng cấu trúc dự đoán phân cấp để cung cấp sự mở rộng về thời gian
bằng nhiều lớp để cải thiện hiệu quả mã hóa và tăng chất lượng của mã hóa mở rộng
không gian.
Đây là phương pháp mới cho dự đoán liên lớp của chuyển động và thông tin dư
thừa. Điều này tăng hiệu quả của mã hóa mở rộng không gian và chất lượng.
Khái niệm các “key picture” cho hiệu quả kiểm soát sự sai lệch của mã hóa mở
rộng về chất lượng gói cơ sở cùng với cấu trúc dự đoán phân cấp.
Vòng lặp giải mã bù chuyển động đơn của bộ giải mã mở rộng chất lượng và
không gian đã cung cấp một bộ giải mã phức tạp gần với mã hóa đơn.
Hỗ trợ một quá trình giải mã có thể thay đổi, cho phép thay đổi độ suy hao và tính
phức tạp của dòng bit mở rộng chất lượng thu được sang dòng bit phù hợp với các profile
H.264/AVC không mở rộng.


2. MÃ HÓA VIDEO MỞ RỘNG ĐƯỢC
2.1 CÁC ĐẶC ĐIỂM CỦA CHUẨN NÉN VIDEO H.264
H.264/AVC là chuẩn nén ảnh kỹ thuật truyền hình số cho các vùng ứng dụng về đồ
họa và video tương tác 2 chiều (game, truyền hình hội nghị…), góp phần giải quyết vấn

đề dung lượng cho các thiết bị lưu trữ, giải quyết vấn đề băng thông đường truyền tín hiệu
video, hoặc kết hợp cả 2 vấn đề trên [5]. Có thể khẳng định tiêu chuẩn H.264/AVC hiện là
phương thức tiên tiến nhất trong lĩnh vực nén video. H.264/AVC cho chất lượng hình ảnh
tốt nhất khi có cùng dung lượng so với các chuẩn nén khác. H.264/AVC đang được ứng
dụng như giải 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/AVC đ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 đây. Điều này có thể đạt
được nhờ sự kế thừa phần lớn các lợi điểm của các chuẩn nén video trước đó là H.263 và
MPEG-2, trong đó bao gồm 4 đặc điểm chính như sau:
- Thực hiện mã hóa các tín hiệu video bằng cách xây dựng các khung ảnh dự đoán
gần giống với ảnh gốc và mã hóa dữ liệu sai khác giữa 2 khung ảnh này. Dữ liệu
sai khác sau khi được mã hóa sẽ được lưu trữ hoặc truyền tải qua mạng
- Phân chia hình ảnh thành các khối gọi là block (bao gồm nhiều điểm ảnh), do vậy
quá trình xử lý từng ảnh có thể được tiếp cận với mức block.
- Khai thác triệt để sự dư thừa về mặt không gian tồn tại giữa các block khác nhau
trong khung ảnh thông qua dự đoán về không gian
- Khai thác triệt để sự dư thừa về mặt thời gian tồn tại giữa các khung ảnh liên tiếp,
nhờ đó chỉ cần mã hóa những chi tiết thay đổi giữa các ảnh liên tiếp nhau. Việc
này được thực hiện thông qua dự đoán liên ảnh và bù chuyển động
- Khai thác tất cả sự dư thừa về không gian còn lại trong ảnh bằng việc tiếp tục mã
hóa các block dư thừa. Giai đoạn này được thực hiện thông qua quá trình biến đổi
lượng tử và mã hóa entropy.
Các profile và level trong H.264/AVC
Mỗi profile định rõ các công cụ mã hóa, các đặc tính và các giới hạn mà bộ giải mã
có thể thực thi. Trong phiên bản thứ nhất (năm 2003) cung cấp 3 Profile: Baseline Profile,
Main Profile, Extend Profile [5].
Baseline Profile: hỗ trợ mã hóa Inter coding và Intra coding (sử dụng I và P slice).
Mã hóa entropy được sử dụng là CAVLC. Hỗ trợ thứ tự Macroblock linh hoạt (FMO) và
thứ tự các slice tùy ý (ASO).
Main Profile: hỗ trợ dự đoán trọng số, sử dụng I, P và B slice. Một slice I chỉ chứa

các MB loại I, slice P chỉ có thể chứa các MB loại I và loại P, và một slice B có thể chứa
MB loại B và loại I. Các MB loại I là các MB sử dụng dự đoán nội ảnh cho việc giải mã


các mẫu trong slice hiện tại. MB loại P là các MB sử dụng dự đoán liên ảnh cho việc giải
mã các mẫu từ ảnh tham khảo. MB loai B sử dụng để dự đoán liên ảnh cho việc giải mã
các mẫu từ một hoặc nhiều ảnh tham khảo. Các slice SI và SP hỗ trợ chuyển đổi giữa các
dòng mã. Mã hóa Entropy được sử dụng là mã hóa số học dựa trên ngữ cảnh (CABAC).
Main profile không hỗ trợ ASO.
Extended Profile: bao gồm các đặc tính của Base line Profile, hỗ trợ chuyển đổi
hiệu quả giữa các dòng bit (sử dụng SI và SP slice), hỗ trợ ngăn chặn lỗi. Không hỗ trợ B
slice và không sử dụng mã Entropy CABAC.
Ngoài ba profile trong phiên bản thứ nhất, chuẩn H.264/AVC còn cung cấp các
profile khác như high profile (H1) hỗ trợ 8 bit với mẫu 4:2:0, high 10 profile (H2) hỗ trợ
10 bit với mẫu 4:2:0, high 4:2:2 profile (H3): hỗ trợ 10 bit với mẫu 4:2:2, high 4:4:4
predictive profile (H4): hỗ trợ 12 bit với mẫu 4:4:4. Chi tiết các profile được trình bày
trong bảng 3.2
Coding Tool

B

E

M

I & P slices
B slices
SI & SP slices
Multiple Rerence Frames
In-Loop Deblocking Filter

CAVLC Entropy Coding
CABAC Entropy Coding
Flexible Macroblock Ordering (FMO)
Arbitary Slice Ordering (ASO)
NRedundant Slice (RS)
Data Partitioning
Interlaced Coding
4:2:0 Chroma Format
Monochrome Video Format (4:0:0)
4:2:2 Chrome Format
4:4:4 Chrome Format
8 bit Sample Depth
9 & 10 bit Sample Depth
11 & 12 bit Sample Depth
8x8 & 4x4 Transform Adaptivity
Quantization Scaling Matrices
Separate Cb & Cr QP Control
Residual Color Transform
Predictive Lossless Coding

Y
N
N
Y
Y
Y
N
Y
Y
Y

N
N
Y
N
N
N
Y
N
N
N
N
N
N
N

Y
Y
Y
Y
Y
Y
N
Y
Y
Y
Y
Y
Y
N
N

N
Y
N
N
N
N
N
N
N

Y
Y
N
Y
Y
Y
Y
N
N
N
N
Y
Y
N
N
N
Y
N
N
N

N
N
N
N

H1
Y
Y
N
Y
Y
Y
Y
N
N
N
N
Y
Y
Y
N
N
Y
N
N
Y
Y
Y
N
N


High Profile
H2
H3
Y
Y
Y
Y
N
N
Y
Y
Y
Y
Y
Y
Y
Y
N
N
N
N
N
N
N
N
Y
Y
Y
Y

Y
Y
N
Y
N
N
Y
Y
Y
Y
N
N
Y
Y
Y
Y
Y
Y
N
N
N
N

Bảng 3.2 Các profile trong chuẩn nén video H.264/AVC [8]

H4
Y
Y
N
Y

Y
Y
Y
N
N
N
N
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y



Bảng 3.3 Các level trong chuẩn H.264/AVC [8]
Level quy định giới hạn thực thi của bộ mã hóa – giải mã (CODEC) chủ yếu các
thông số liên quan đến dòng bit, ví dụ: tốc độ xử lý, kích cỡ ảnh, yêu cầu bộ nhớ, tốc độ
dòng bit được mã hóa. Các Level xác định trong chuẩn H.264/AVC được trình bày trong
Bảng 3.3
2.2 MÃ HÓA VIDEO MỞ RỘNG ĐƯỢC TRONG H.264
Một thách thức cho các ứng dụng nén video hiện nay là truyền phát nhiều dạng của

một chuỗi video qua các điểm khai thác khác nhau, ví dụ khác nhau về tốc độ khung, độ
phân giải không gian khác nhau, chất lượng khác nhau…Điều này có thể thực hiện nhờ sử
dụng mã hóa video thông thường như H.264/AVC để mã hóa độc lập các luồng. Đây là
kiểu truyền dẫn simulcast. Theo một kịch bản đặc trưng, như hình 3.4


Hình 3.4 Truyền nhiều luồng theo cơ chế simulcast
Một nguồn video đơn được yêu cầu truyền qua các bộ mã hóa hay các client, và
chúng có các khả năng khác nhau. Trong ví dụ này, clip video ban đầu được mã hóa ba
lần để tạo ra ba luồng AVC độc lập, mỗi một luồng được truyền dẫn và giải mã độc lập.
Vấn đề với kịch bản truyền dẫn simulcast là ba luồng bít chứa đựng sự dư thừa ý nghĩa
khi cùng một chuỗi video được mã hóa trong mỗi luồng bit với độ phân giải và chất luợng
khác nhau. Theo lý thuyết, một băng thông truyền dẫn nhỏ hơn có thể tận dụng bằng việc
khai thác những dư thừa giữa ba luồng.
Mã hóa video mở rộng cố gắng truyền nhiều dạng mã hóa của một chuỗi sử dụng
một tốc độ bit tổng thấp hơn so với kịch bản truyền simulcast ở trên. Nó làm điều này
bằng việc khai thác sự dư thừa giữa các dạng mã hóa khác nhau, tức là sự tương quan
giữa các dạng khác nhau của cùng một chuỗi được mã hóa tại các điểm khai thác khác
nhau.

Ba chuỗi giống nhau được truyền sử dụng SVC được mô tả trong hình 3.5

Hình 3.5 Truyền nhiều luồng mở rộng
Một bộ mã hóa đơn SVC tạo ra ba luồng bit được mã hóa, được mô tả như các lớp.
Lớp thấp nhất hay lớp cơ sở là lớp 0 trong hình vẽ là một luồng có thể được giải mã bằng
một bộ giải mã đơn tầng tiêu chuẩn, ví dụ một bộ giải mã H.264 để tạo ra một chuỗi video
tại các điểm khai thác có chất lượng và độ phân giải thấp nhất. Một hoặc nhiều hơn lớp


cải tiến, như lớp 1 và 2 trong ví dụ, được mã hóa như luồng bit SVC. Để giải mã một

chuỗi tại điểm có độ phân giải và chất lượng cao hơn, một bộ giải mã SVC giải mã lớp cơ
sở và một hoặc nhiều lớp cải tiến. Trong ví dụ, giải mã lớp 0 sử dụng bộ giải mã AVC
tiêu chuẩn tạo ra đầu ra có chất lượng thấp nhất. Giải mã lớp 0 và 1 sử dụng bộ giải mã
SVC tạo ra đầu ra chất lượng cao hơn; giải mã lớp 0, 1 và 2 sử dụng một bộ giải mã SVC
cho ra chất lượng đầu ra cao nhất. Quá trình mã hóa SVC khai thác độ dư thừa giữa các
chuỗi được mã hóa tại những độ phân giải hoặc chất lượng khác nhau, bằng việc dự đoán
các lớp cải tiến liên tiếp từ lớp cơ sở và các lớp cải tiến bên dưới. Theo cách này, nó có
thể đạt được kết quả hiển thị giống với hệ thống simulcast với chi phí băng thông giảm.
Tư tưởng chung của một luồng bit được mã hóa mở rộng là các phần của luồng có thể loại
bỏ theo cách này luồng con thu được hình thành luồng bit hợp lệ khác cho một vài bộ giải
mã đích. Xem xét hình 3.5, luồng bit mở rộng gồm các luồng lớp 0, lớp 1 và lớp 2 được
mã hóa. Giải mã tất cả 3 luồng tạo ra đầu ra chất lượng cao; bỏ lớp 2 và giải mã lớp 0 và
1 tạo ra đầu ra chất lượng trung bình; còn nếu chỉ mã hóa lớp cơ sở thì cho ra chất lượng
thấp.
SVC như là sự kết hợp giữa phụ lục G gần đây của chuẩn H.264/AVC và các khả
năng của chuẩn ban đầu [5]. SVC hỗ trợ 3 kiểu mở rộng chủ yếu.
1. Mở rộng thời gian: Lớp cơ sở được mã hóa ở độ phân giải tạm thời thấp, tốc độ
khung thấp. Việc thêm các lớp cải tiến tăng tốc độ khung của chuỗi được mã hóa.
2. Mở rộng không gian: Lớp cơ sở được mã hóa tại một độ phân giải không gian, việc
thêm các lớp cải tiến sẽ tăng độ phân giải không gian của chuỗi được giải mã.
3. Mở rộng chất lượng: Lớp cơ sở dược mã hóa tại một chất lượng thấp, sử dụng một
QP cao. Thêm vào các lớp cải tiến sẽ tăng chất lượng của chuỗi được giải mã bằng
việc sử dụng QP thấp hơn.


Hình 3.6 Các kiểu mã hóa mở rộng trong SVC [5]
Ví dụ 1: mở rộng chất lượng:
Lớp cơ sở được mã hóa tại tốc độ bit 200kbps, độ phân giải 352x288 các mẫu độ
sáng luma trên mỗi khung, và truyền ở tốc độ 30 khung /s. Lớp cải tiến 1 được mã hóa ở
tốc độ bit 520kbps, sử dụng mã hóa mở rộng chất lượng, tức là tốc độ khung và độ phân

giải ở mức như nhau. Một chuỗi chất lượng thấp thu được bằng cách gửi lớp cơ sở qua
một kênh 200kbps và giải mã nó. Chuỗi chất lượng cao thu được bằng việc gửi cả lớp cơ
sở và lớp cải tiến qua kênh 720kbps. Xem bảng 3.4

Bảng 3.4 Ví dụ mở rộng chất lượng
Ví dụ 2: Mở rộng không gian và thời gian:
Lớp cơ sở 0 được mã hóa ở tốc độ 400kbps với độ phân giải không gian 320x240
các mẫu luma và tại 15fps. Lớp nâng cao 1 được mã hóa tại tốc độ 800kbps, độ phân giải
không gian 640x480 mẫu và tại 30fps. Trong ví dụ này, mở rộng không gian và thời gian
được sử dụng đồng thời. Việc giải mã lớp 0 chỉ đưa ra độ phân giải thấp, chuỗi tốc độ
khung thấp, giải mã lớp 0 và lớp 1 (tốc độ tổng 1200kbps) đưa ra độ phân giải cao hơn,
chuỗi đầu ra có tốc độ khung cao hơn, xem bảng 3.5.


×