Đặt vấn đề Ngày nay, công nghệ mã hóa video đã và đang được sử dụng rất phổ biến, từ các ứng dụng truyền thống như truyền hình quảng bá, truyền hình hội nghị đến các ứng dụng mới xuất hiện như mạng cảm biến (sensor), mạng giám sát từ xa. Trong đó, các ứng dụng mới như mô hình mạng video giám sát giao thông, camera an ninh lắp đặt trong các nhà hàng, bệnh viện… Những hệ thống này có đòi hỏi hoàn toàn khác so với hệ thống truyền hình quảng bá là yêu cầu phần phát đơn giản, gọn nhẹ, rẻ tiền trong khi phần phức tạp có thể chuyển về bộ xử lý trung tâm ở phía thu, nơi sẽ được đầu tư thiết bị tập trung và hiện đại hơn. Do đó các chuẩn mã hóa video truyền thống sẽ không còn phù hợp nữa. Yêu cầu đặt ra là phát triển mô hình mã hóa thế nào để đơn giản phần mã hóa mà vẫn không làm tổn thất đáng kể về hiệu suất nén so với các mô hình truyền thống.
Trong nỗ lực đưa ra câu trả lời cho nhu cầu mã hóa video đáp ứng nhu cầu thực tiễn này này, một mô hình mã hóa video mới được nghiên cứu, đã và đang được phát triền hiện nay đó là mô hình mã hóa video phân tán DVC (Distributed Video Coding).2 Tổng quan về mã hóa video dự đoán HEVC Video là một chuỗi các bức ảnh liên tiếp cùng mô tả một nội dung và chứa đựng một thông tin, câu chuyện xuyên suốt nào đó. Do vậy, giữa các bức ảnh liên tiếp trong video luôn tồn tại các mối tương quan lớn như được mô tả ở hình 1. 1: Minh họa sự sai khác giữa 2 khung liên tiếp trong dãy video Nhìn vào 2 khung hình trên (trong chuỗi khung liên tiếp của video), ta có thể thấy sự khác biệt căn bản nẳm ở vị trí ô tô, do chuyển động, nên: Khi mã hóa hiệu 2 khung hình (theo pixel tương ứng) thì chỉ cần dùng một lượng bít ít hơn so với việc mã hóa toàn bộ thông tin trong ảnh thực tế. Nếu có cách dự đoán khung 2 từ khung 1 để có sự sai khác giữa khung 2 và khung dự đoán thì mã hóa còn có thể tốn ít bít mã hơn.
Điều này là khả thi nếu có kỹ thuật dự đoán tốt. Tuy nhiên giá phải trả cho dự đoán tốt, như sẽ nói ở mục sau chính là sự gia tăng độ phức tạp tính toán tại phía mã hóa. Lịch sử phát triển các chuẩn nén: ITU-T H. 2: Lịch sử phát triển các chuẩn nén 13 1.1 Kiến trúc tổng quát của bộ mã hóa HEVC Các thành phần chính: - Cấu trúc đơn vị mã hóa: Một trong những đặc trưng khác biệt nhất của chuẩn H.265/HEVC so với các chuẩn trước đó như H.264/AVC hoặc MPEG-4/Video chính là chác cấu trúc lại các đơn vị mã hóa.264/AVC, đơn vị mã hóa cơ bản là các khối lớn (Macroblock) với kích cỡ tối đa là 16×16.
Trong khi đó, chuẩn H.265/HEVC chia các khối mã hóa theo cấu trúc cây (coding tree block) với kích cỡ đa dạng hơn từ 4×4 tới 64×64. Cấu trúc này đảm bảo hiệu quả nén tốt hơn so với chuẩn H.264/AVC khi các video với kích cỡ lớn như HD, 2K hay 4K được sử dụng. Điều khiển mã hóa Mã hóa tứ phân với Khối mã hóa CB Phần dư với khối biến đổi TB Mã hóa Biến đổi, chia tỷ lệ và lượng Entropy tử hóa CABAC 010110. Bộ giải mã Chia tỷ lệ và biến đổi ngược Chia thành các khối cây mã hóa CTB Dự đoán trong ảnh Lọc in-loop Tín hiệu Tín hiệu video đầu vào Dự đoán liên ảnh video đầu ra Các khối dự đoán Ước lượng chuyển động Bộ đệm hình ảnh đã mã hóa Hình 1.
3: Sơ đồ khối bộ mã hóa HEVC [12] - Cấu trúc đơn vị dự đoán và đơn vị biến đổi: Mỗi đơn vị khối mô tả ở phía trên được phân chia thành hai cấu trúc tương ứng với hai thành phần chính của chuẩn mã hóa H.265/HEVC; đó là cấu trúc đơn vị dự đoán và cấu trúc đơn vị biến đổi. Trong khi đó, đơn vị biến đổi cô sin rời rạc có kích cỡ đa dạng hơn bao gồm 4×4, 8×8, 16×16, 32×32. - Phương pháp dự đoán chuyển động nối vùng (merge mode): Đây là một phương pháp dự đoán mới xuất hiện trong chuẩn H. Phương pháp này kế thừa có hiệu quả phương pháp dự đoán bỏ qua và dự đoán trực tiếp trong chuẩn H.264/AVC mô tả ở trên.
Trong đó có 2 sự khác biệt chính là việc gửi thông tin về véc tơ chuyển động được lựa chọn và thông tin về khung tham khảo được sử dụng - Dự đoán ảnh trong khung: H.265/HEVC hỗ trợ tới 35 mode dự đoán (so với 9 mode trong H. Ngoài ra, khối dự đoán trong khung có thể được tạo ra với hai loại khối, N×N và 2N×2N. - Dự đoán ảnh liên khung: Dự đoán ảnh liên khung trong chuẩn H.265/HEVC cũng cho phép hỗ trợ dự đoán véc tơ chuyển động với độ chính xác lên tới ¼ điểm ảnh (sub-pel). Các giá trị tại vị trí sub-pel được nội suy dựa trên hai bô lọc với 7 hoặc 8 tham số cấu hình.
Các khối hình sử dụng trong dự đoán ảnh liên khung cũng đa dạng, có thể đối xứng hoặc không đối xứng, ví dụ: 2N×2N, 2N×N, N×2N, N×N, 2N×nD, nL×2N. - Bù chuyển động: Cụ thể, ảnh được chia thành các CTU, mỗi CTU bao gồm các CTB chói và các CTB màu. Một CTB có kích thước là LxL ( L= 16, 32, hoặc 64), trong đó các kích thước lớn hơn cho phép nén tốt hơn. HEVC hỗ trợ việc phân chia các CTB thành các khối nhỏ hơn sử dụng cấu trúc cây và tín hiệu hóa cây tứ phân.
- Mã hóa Entropy: Khác với H.265/HEVC chỉ cho phép người dùng sử dụng mã CABAC; mục đích là tăng tối đa hiệu quả nén chuẩn H. - Bộ lọc giảm nhiễu khối: Một chút thay đổi, nâng cấp được đề xuất để giảm nhiễu khối trong chuẩn H. - Bộ lọc giảm nhiễu vòng: Đây là thành phần mới trong chuẩn H.265/HEVC so với các chuẩn trước kia như H.264/AVC, MPEG 2,4,… Mục đích chính là giảm nhiễu vòng xuất hiện trong mộ số khung hình xuất hiện do việc loại bỏ thành phân tần số cao ở khối lượng tử tuyến tính. 15 - Cú pháp mức-cao của HEVC chứa nhiều yếu tố thừa hưởng từ NAL của H.
NAL cung cấp khả năng ánh xạ dữ liệu lớp mã hóa video (VCL) mà nó thể hiện nội dung của các ảnh lên các lớp vận chuyển khác nhau, bao gồm các hệ thống RTP / IP, ISO MP4, và H.0 / MPEG-2, và cung cấp một khuôn khổ cho khả năng phục hồi mất mát dữ liệu. Đối với các khái niệm chung của thiết kế NAL như các đơn vị NAL, các bộ tham số, các đơn vị truy cập, định dạng dòng byte, và việc định dạng đóng gói.[10] Các đơn vị NAL được phân loại thành các đơn vị VCL NAL và không- VCL NAL tương ứng với việc chúng có chứa ảnh được mã hóa hoặc dữ liệu có liên quan. Trong chuẩn HEVC, một số loại đơn vị VLC NAL xác định các loại ảnh cho mục đích khởi tạo bộ giải mã và truy cập ngẫu nhiên.1 liệt kê các loại đơn vị NAL và ý nghĩa liên quan và các lớp kiểu trong chuẩn HEVC. 1: Phân loại, ý nghĩa và các lớp kiểu đơn vị NAL Kiểu Ý nghĩa Lớp 0, 1 Phân đoạn mảng của ảnh kế tiếp thông VCL thường 2, 3 Phân đoạn mảng của ảnh TSA VCL 4, 5 Phân đoạn mảng của ảnh STSA VCL 6, 7 Phân đoạn mảng của ảnh RADL VCL 8, 9 Phân đoạn mảng của ảnh RASL VCL 10-15 Dữ trữ cho tương lai VCL 16-18 Phân đoạn mảng của ảnh BLA VCL 19, 20 Phân đoạn mảng của ảnh IDR VCL 21 Phân đoạn mảng của ảnh CRA VCL 22-31 Dữ trữ cho tương lai VCL 32 Bộ tham số video (VPS) non-VCL 33 Bộ tham số trình tự (SPS) non-VCL 34 Bộ tham số ảnh (PPS) non-VCL 35 Dấu phân cách đơn vị truy cập non-VCL 36 Cuối của trình tự non-VCL 37 Cuối của dòng bit non-VCL 38 Dữ liệu đệm non-VCL 16 39, 40 SEI messages non-VCL 41-47 Dữ trự cho tương lai non-VCL 48-63 Không xác định (có thể sử dụng hệ thống) non-VCL 1.2 Các kỹ thuật mã hóa video HEVC 1.1 Biểu diễn lấy mẫu ảnh Để biểu diễn các tín hiệu video màu , HEVC sử dụng một không gian 3 màu cơ bản YCbCr với lấy mẫu 4: 2: 0.
Các ảnh video lấy mẫu tăng lên với kích thước ảnh hình chữ nhật WxH, trong đó W là chiều rộng và H là chiều cao của ảnh theo quan điểm lấy mẫu chói, còn với lấy mẫu màu 4: 2: 0 sẽ là W/2xH /2.2 Phân chia hình ảnh thành đơn vị cây mã hóa Một ảnh được phân chia thành các đơn vị mã hóa cây (CTU), mỗi CTU chứa các khối cây mã hóa (CTB) chói và CTB màu. Một CTB chói lấy mẫu LxL cho các thành phần chói và lấy mẫu L /2 x L/2 cho mỗi một trong hai thành phần màu. L=16, 32, hoặc 64 được xác định bởi một yếu tố cú pháp mã hóa được quy định trong SPS.3 Phân chia CTB thành CB Các khối CTB chói và màu có thể được sử dụng trực tiếp như các khối mã hóa (CB) hoặc có thể phân chia tiếp thành nhiều CB. Việc phân chia được thực hiện bằng cách sử dụng cấu trúc cây.
Việc phân chia cấu trúc cây trong HEVC thường được áp dụng đồng thời cho cả khối chói và màu, mặc dù các ngoại lệ áp dụng khi tiến tới kích thước tối thiểu nhất định. CTU chứa cú pháp cây tứ phân cho phép chia các CB đến một kích thước phù hợp dựa trên các đặc điểm tín hiệu của vùng mà nó được bao phủ bởi các CTB. Quá trình chia tách cây tứ phân có thể được lặp đến khi một CB chói đạt đến một kích thước tối thiểu cho phép. Kích thước này được chọn bởi bộ mã hóa sử dụng cú pháp trong SPS và luôn là 8x8 hoặc lớn hơn.
17 Khi chế độ dự đoán được báo hiệu là trong ảnh, kích thước PB là kích thước khối tại nơi dự đoán trong ảnh được tạo sẵn có cùng kích thước với CB cho tất cả các kích thước khối ngoại trừ kích thước CB nhỏ nhất. Đối với các trường hợp sau đó, một cờ xuất hiện cho biết CB được chia thành bốn phần PB mà mỗi phần đều có dự đoán trong ảnh riêng. Lý do của việc cho phép chia tách này là tạo khả năng lựa chọn dự đoán trong ảnh cho các khối nhỏ 4x 4. Khi dự đoán trong ảnh thành phần chói hoạt động với các khối 4x4, dự đoán trong ảnh thành phần màu cũng sử dụng các khối 4x4 (4 khối thành phần chói 4x 4).