MPEG4 AVC (Part 10)/ H264

Một phần của tài liệu Truyền hình số có độ phân giải cao HDTV và khả năng ứng dụng tại việt nam (Trang 47 - 122)

2.4.4.1. Gii thiu

Sự gia tăng của các loại dịch vụ và số lượng TV độ phân giải cao đã thúc đẩy nhu cầu có một công cụ nén hiệu quả hơn.

Vào năm 2001, VCEG và MPEG cộng tác với nhau thành nhóm JVT (Join

Video Team) để phát triển một chuẩn mã hoá video mới. Kết quả ra đời chuẩn nén ITU-T H.264/AVC, tương đương với tiêu chuẩn MPEG 4 Part 10/AVC về mã hoá video tiên tiến (Advance Video Coding), được cả ITU và ISO phát hành năm 2003.

Nhằm không ngừng nâng cao hiệu quả mã hoá, rất nhiều kỹ thuật được áp dụng vào trong MPEG 4/AVC nhằm khai thác tối đa sự tương quan giữa các khung hình video và xử lý linh hoạt các tham số theo nội dung của cảnh video cần nén. MPEG 4/AVC cũng đã áp dụng rất nhiều công cụđã được giới thiệu trong MPEG 4 Visual.

Trong các phần sau đây, ta sẽ gọi chuẩn này dưới tên MPEG 4/H.264.

2.4.4.2. Phm vi ng dng và các đim tiêu biu ca MPEG 4/H.264

Chuẩn này được thiết kế cho các giải pháp kỹ thuật của các lĩnh vực ứng dụng sau đây:

• Quảng bá trên các kênh vệ tinh, cáp, sóng mặt đất, DSL (Digital Subscriber Line)…

• Lưu trữ nối tiếp hoặc tương tác trên các thiết bị quang và từ, trên DVD… • Các dịch vụ hội nghị trên ISDL, Ethernet, LAN, DSL, không dây và mạng di động…

• Các dịch vụđã phương tiện hoặc video theo yêu cầu trên ISDL, cáp,

DSL, LAN, mạng không dây…

• Các dịch vụ nhắn tin đa phương tiện (Multimedia Messaging Service- MMS) trên ISDL, DSL, Ethernet, LAN, mạng di động và mạng không dây.

Hơn nữa, các dịch vụ mới cũng có thể được thực hiện trên các mạng hiện tại hoặc tương lai. Điều này dẫn đến yêu cầu về việc làm thế nào để quản lý sựđa dạng trong ứng dụng và khai thác mạng.

Để thực hiện việc này, MPEG 4/H.264 đưa ra lớp mã hoá video (Video Coding Layer-VCL), được thiết kế để trình diễn hiệu quả các nội dung video, và

đưa ra lớp mạng trừu tượng (Network Abstraction Layer-NAL) để định dạng sự

trình diễn video của lớp VCL và cung cấp các thông tin mào đầu (Header) theo cách thích hợp cho việc truyền dữ liệu tại lớp truyền tải hoặc cho việc lưu trữ dữ liệu.

Tương quan với các giải pháp mã hoá trước đây, ví dụ như MPEG 2, một số điểm tiêu biểu của MPEG 4/H.264 cho phép tăng hiệu quả nén, bao gồm cả khả

năng dựđoán giá trị nội dung ảnh được trình bầy sau đây:

1. Kích thước Block bù chuyển động nhỏ hơn: Chuẩn này cho phép lựa chọn kích thước block bù chuyển động và hình dạng một cách mềm dẻo hơn tất cả

các chuẩn trước đó, với kích thước block bù chuyển động tối thiểu đạt tới 4x4. 2. Bù chuyển động chính xác đến ¼ mẫu: các chuẩn trước cho phép độ

chính xác bù chuyển động đến tối đa là ½ mẫu. Chuẩn mới cho phép điều này đạt

đến mức ¼ mẫu, như có thế thấy ở MPEG 4 Visual. Tuy nhiên độ phức tạp trong xử

lý việc này đã giảm đi với MPEG 4/H.264.

3. Vector chuyển động tại đường bao ảnh: trong khi vector chuyển động tại MPEG 2 cần phải chỉ đúng vào vùng ảnh đã được giải mã trước đó thì MPEG 4/H.264 cho phép chỉ tới đường bao của ảnh.

4. Bù chuyển động đa ảnh: các ảnh P trong MPEG 2 chỉ sử dụng một ảnh I hoặc P trước đó để dựđoán ảnh tiếp theo. Với MPEG 4/H.264, dựđoán bù chuyển

động từ nhiều ảnh trước đó được lưu trong bộ nhớ. Tương tự như vậy với ảnh B. 5. Tách riêng thứ tự mã hoá khỏi thứ tự trình diễn: trong MPEG 2, có một sự phụ thuộc chặt chẽ giữa thứ tự mã hoá và thứ tự trình diễn. MPEG 4/H.264 cho phép bộ mã hoá có thể lựa chọn thứ tự mã hoá hoàn toàn độc lập với thứ tự

trình diễn, miễn là dung lượng bộ nhớ của bộ giải mã đủ lớn. Điều này sẽ giảm

6. Tách riêng các giải pháp trình diễn ảnh khỏi khả năng làm ảnh chuẩn: trong các chuẩn trước, các ảnh B là các ảnh được mã hoá từ việc dựđoán hai chiều các ảnh khác, không thể được sử dụng như một ảnh chuẩn để dựđoán các ảnh khác trong chuỗi video. Chuẩn mới loại trừ việc này, do đó làm tăng tính mềm dẻo cho việc dựđoán chuyển động.

7. Dự đoán có trọng số: bước đột phá mới trong MPEG 4/H.264 là cho phép tín hiệu dự đoán bù chuyển động được kết hợp với một giá trị trọng số được mô tả bởi bộ mã hoá. Chếđộ dựđoán này là hỗ trợ cần thiết khi nén các cảnh có sự

mờđi (khi 1 cảnh được mờđi vào cảnh khác), nhờ vậy mà tăng được hiệu quả nén. 8. Suy đoán chuyển động trực tiếp: với các chuẩn trước, một khu vực bị

bỏ qua sẽ không chuyển động trong nội dung cảnh. Điều này sẽ có ảnh hưởng không tốt khi mã hoá video có chứa chuyển động toàn thể. Thay vì suy luận vùng bị

bỏ qua, MPEG 4/H.264 đưa ra giải pháp suy đoán chuyển động mới, gọi là bù chuyển động trực tiếp (Direct).

9. Switching slices (còn được gọi là SP và SI): là chức năng cho phép bộ

mã hoá có thể chỉ thị cho bộ giải mã xâm nhập vào dòng bít để chuyển tốc độ bit hay có thể giải mã được ảnh tại đúng vị trí xâm nhập đó mà không cần sử dụng các

ảnh khác.

10. Ảnh dự phòng (Redundant Picture): MPEG 4/H.264 có khả năng cho phép bộ mã hoá gửi đi hình ảnh dự phòng của vùng ảnh được truyền, nhằm khôi phục lại vùng ảnh bị mất ở trên đường truyền.

Nhằm cải tiến các giải pháp dựđoán, một số phần khác của chuẩn cũng được nâng cao để tăng hiệu quả nén:

11. Biến đổi với kích thước block nhỏ: tất cả các chuẩn trước đều sử dụng kích thước block biến đổi là 8x8, trong khi MPEG 4/H.264 dựa trên kích thước 4x4. Do có kích thước block nhỏ hơn nên sẽ độ sai khác giữa ảnh thật và ảnh dự đoán giảm đi, nhờ vậy tăng hiệu quả nén.

12. Thực hiện các biến đổi với kích thước block phân cấp: cho phép kích thước block có thể tăng lên trong một số trường hợp.

13. Phép biến đổi ngược chính xác: trong các chuẩn mã hoá video trước

đây, các phép biến đổi được sử dụng cho trình diễn video thường có ngưỡng chấp nhận lỗi cho phía thu, do không thể đạt được phép biến đổi ngược lý tưởng trên lý thuyết. Vì thế, mỗi bộ giải mã sẽ có tín hiệu video khác một chút so với bộ mã hoá,

điều này làm ảnh hưởng đến chất lượng video. MPEG 4/H.264 là tiêu chuẩn đầu tiên đạt được sự chính xác về chất lượng của tín hiệu video giải mã từ tất cả các bộ

giải mã.

14. Mã hoá entropy số học: một phép mã hoá entropy tiên tiến được áp dụng trong MPEG 4/H.264 là mã hoá số học nhị phân theo nội dung CABAC (Context Adaptive Binary Arithmetic Coding). Phương pháp mã hoá này dựa trên khả năng chon lựa các chếđộ cho mỗi cú pháp dựa vào nội dung.

15. Mã hoá entropy theo nội dung: phương pháp mã hoá entropy thứ hai

được áp dụng trong MPEG 4/H.264 là mã hoá độ dài thay đổi theo nội dung (CAVLC-Context Adaptive Variable Length Coding). Phương pháp này được thiết kếđể mã hoá độ dư thừa các hệ số chuyển đổi của các khối 4x4 và 2x2.

Một số cải tiến nhằm nâng cao việc truyền dữ liệu trên các mạng cũng được thêm vào MPEG 4/H.264

16. Cấu trúc bộ thông số: được thiết kếđể truyền các bit có tính chìa khoá trong dòng dữ liệu như thông tin header, một cách độc lập và mềm dẻo hơn, nhằm

đảm bảo có thể khôi phục chính xác dữ liệu tại đầu thu.

17. Cấu trúc cú pháp đơn vị NAL: mỗi cấu trúc cú pháp trong MPEG 4/H.264 được đặt trong một gói dữ liệu logic, được gọi là đơn vị NAL. Điều này cho phép sự tuỳ biến lớn hơn trong các giải pháp truyền nội dung video.

18. Kích thước Slice mềm dẻo: khắc phục nhược điểm trong MPEG 2, khi có nhiều header trong slice làm giảm hiệu quả mã hoá.

19. Thứ tự macroblock mềm dẻo (FMO) và thứ tự macroblock tuỳ ý (AMO): là kỹ thuật cho phép khôi phục lại thứ tự trình diễn của các MB khi không

2.4.4.3. VCL (Video Coding Layer)

Trong các chuẩn mã hóa video trước của ITU-T và ISO/IEC, VCL dựa trên

đơn vị mã hoá là các block, tại đó các ảnh được mã hoá sẽđược thể hiện dưới dạng các macroblock. Thuật toán mã hoá là sự kết hợp của nén liên ảnh để loại trừ dư

thừa thời gian và phép biến đổi DCT để loại trừ dư thừa không gian.

Với VCL của MPEG 4/H.264, không có cải tiến nào mang tính đột phá, nhưng có một sốđiểm bổ sung nhỏđược kết hợp lại để nâng hiệu quả nén.

a. Ảnh, khung và mành

Một chuỗi video được mã hoá trong MPEG 4/H.264 bao gồm chuỗi các ảnh

được mã hoá. Một bức ảnh được mã hoá có thể trình diễn dưới một trong hai dạng là khung hình hoặc mành đơn. Một khung hình quét liên tục bao gồm hai mành quét xen kẽ. Mã hoá tại VCL không dựa trên thời gian mà dựa trên cơ sở về hình học.

b. Chia ảnh vào các Macroblock

Một bức ảnh có thể được chia vào các MB có kích thước cố định là một khu vực gồm 16x16 mẫu chói và 8x8 mẫu mầu. MPEG 4/H.264 cũng định nghĩa các MB như các chuẩn trước đây.

c. Slice và nhóm Slice

Một slice là một chuỗi các MB được xử lý theo thứ tự quét. Trong mỗi slice có chứa các thông tin cần thiết để giải mã ra vùng ảnh chứa trong slice đó.

Nếu có sử dụng kỹ thuật FMO, việc chia nội dung ảnh vào các MB và các slice sẽ mềm dẻo hơn với cơ sở nhóm slice. Nhóm slice là một tập hợp các MB

được xác định từ bản đồ xắp xếp MB vào nhóm slice . Bản đồ này cũng chứa con số

Hình 2.11: Phân chia Slice và nhóm slice

Tuỳ theo việc có sử dụng kỹ thuật FMO hay không, mỗi slice có thểđược mã hoá với kỹ thuật khác nhau sau đây:

I slice: là slice mà tất cả các MB của nó đều được mã hoá theo phương pháp dựđoán trong ảnh.

P slice: một số MB trong slice được mã hoá theo phương pháp dự đoán liên ảnh.

B slice: một số MB được mã hoá từ các MB khác theo 2 chiều Một số kỹ thuật mới được thêm vào như sau:

SP, SI slice: là kỹ thuật cho phép đầu thu có thể truy cập ngẫu nhiên vào dòng bit để thay đổi tốc độ, khôi phục lỗi hay các mục đích khác.

d. Chu trình mã hoá và giải mã MB

Tất cả các mẫu mầu và chói của các MB được dự đoán không gian và thời gian. Kết quả dự đoán sẽ được mã hoá biến đổi. Để thực hiện mã hoá biến đổi, các tín hiệu dự đoán được chia thành các block 4x4. Sau đó được biến đổi bằng phép biến đổi cái nguyên. Kết quảđược lượng tử hoá và mã hoá entropy.

Hình 2.12: Sơđồ mã hoá MacroBlock

e. Dựđoán trong ảnh

Có 2 kích thước để dựđoán là 4x4 và 16x16. Chế độ dựđoán với kích thước 4x4 phù hợp với các phần ảnh có độ chi tiết cao còn chế độ dựđoán với kích thước 16x16 phù hợp với các phần ảnh mịn.

MPEG 4/H.264 còn có thêm chế độ mã hoá trong ảnh I_PCM, chế độ này không thực hiện mã hoá theo các giá trị đã được biến đổi. I_PCM cho phép truyền trực tiếp các giá trịđược mã hoá.

Chếđộ mã hoá cho phép đạt được các mục đích sau:

• Cho phép bộ mã hoá có thể biểu thị một cách chính xác giá trị của các mẫu. • Đưa ra phương thức để biểu thị một cách chính xác nội dung bất thường của ảnh mà không làm tăng đáng kể dữ liệu.

• Nó cho phép giới hạn tuyệt đối số lượng bit trong MB mà không làm

ảnh hưởng đến chất lượng hình ảnh.

Các chuẩn mã hoá trước đây đều thực hiện trên một miền đã biến đổi, còn MPEG 4/H.264 với chếđộ mã hoá I_PCM vẫn thực hiện hoàn toàn trên miền không gian.

f.Dựđoán liên khung

MPEG 4/H.264 hỗ trợ nhiều kích thước dự đoán nhỏ hơn, từ 16x16 đến 4x4. Mỗi MB có thể chia thành 4 phân đoạn 8x8, mỗi phân đoạn 8x8 lại có thể chia thành bốn phân đoạn 4x4. Mỗi phân đoạn đều yêu cầu phải có vector chuyển động riêng.

Như vậy 1 MB có thể có tối đa là 16 vector chuyển động.

Hình 2.13: Kích thước dựđoán MB

Việc bù chuyển động để khôi phục lại ảnh yêu cầu cả phía phát và phía thu phải lưu trữ các ảnh chuẩn để dựđoán.

Hình 2.14: Dựđoán bù chuyển động

Khi giải mã bù chuyển động, đầu thu sẽđọc các thông sốảnh tham chiếu trong bộ nhớđệm. Trên cơ sởđó sẽ khôi phục lại ảnh gốc

Ảnh P cũng có thểđược mã hoá theo chế độ P_skip. Với chếđộ mã hoá này, không phải bảng các giá trị lượng tử sai số, hay vector bù chuyển động, hay các thông số trình diễn được truyền đi, mà tín hiệu khôi phục ảnh tại đầu thu chính là tín hiệu dựđoán chuyển động của microblock P_16x16 lưu tại vị trí đầu tiên của chuỗi trong bộ nhớđêm của đầu thu.

Chế độ P_skip phù hợp với các trường hợp có một vùng ảnh rộng không có thay đổi.

Dựđoán khung ảnh B sử dụng hai danh sách: - Danh sách 0 chứa các ảnh gần nhất trước đó - Danh sách 1 chứa các ảnh gần nhất sau đó

Dựđoán khung ảnh B có thể theo một trong bốn phương thức: dựđoán từ các ảnh trong danh sách 0, từ các ảnh trong danh sách 1, dựđoán hai chiều và dựđoán trực tiếp.

Với chế độ dựđoán hai chiều, tín hiệu dựđoán được tạo nên từ giá trị trung bình của các tín hiệu bù chuyển động theo danh sách 0 và danh sách 1, có bổ sung trọng số.

Chếđộ dựđoán trực tiếp, ảnh được suy ra từ các cú pháp dựđoán ảnh truyền trước đó, có thể là theo danh sách 0 hoặc 1 hoặc theo chếđộ 2 chiều.

Các slice B cũng sử dụng phân chia MB như slice P. Dựđoán liên khung với

ảnh B cũng có chếđộ B_skip tương tự như với ảnh P.

g.Biến đổi Cosin

MPEG 4/H.264 cũng sử dụng biến đổi cosin để loại trừ các dư thừa trong

ảnh. Tuy nhiên khác với MPEG 2, phép biến đổi DCT được thực hiện với các block 4x4. Thay vì sử dụng DCT cho khối 4x4, một phép biến đổi thứ nguyên với các đặc tính tương tự như phép DCT cho block 4x4 được sử dụng.

Việc sử dụng DCT với block có kích thước nhỏ sẽđem lại một số lợi ích sau: - Giảm tương quan về không gian trong khối

- Giảm nhiễu đường biên của phần ảnh mà block đó mang thông tin. - Giảm sự phức tạp trong tính toán và sai lệch giữ mã hoá và giải mã.

h. Mã hoá Entropy.

MPEG 4/H.264 sử dụng 2 loại mã hoá có cấu trúc phức tạp hơn nhưng hiệu quả hơn là:

- Mã hoá độ dài thay đổi theo nội dung (Context Adaptive Variable

Length Coding – CAVLC)

- Mã hoá nhị phân tương thích nội dung (Context Adaptive Binary

2.5.Nén HDTV

Về bản chất HDTV không khác biệt so với SDTV cả về mặt tương tự và số

hoá. Vấn đề duy nhất gặp phải khi triển khai HDTV chính là độ rộng băng thông yêu cầu đểđảm bảo chất lượng. Ngoài một số hệ HDTV tương tự của Nhật và châu Âu, chỉ có số hoá mới có thể phát triển được HDTV.

MPEG 2 đã có lịch sử phát triển hơn 10 năm, song bây giờ sẽ là thời điểm của MPEG 4/H.264 với hiệu quả nén vượt trội.

Một phần của tài liệu Truyền hình số có độ phân giải cao HDTV và khả năng ứng dụng tại việt nam (Trang 47 - 122)

Tải bản đầy đủ (PDF)

(122 trang)