Chính vì thế, việc tìm hiểu các kỹ thuật nhằm làm giảm dữ liệu video truyền tải và lưu trữ, tăng hiệu suất mã hóa với dữ liệu ảnh lớn và độ phân giải cao trong video đa hướng nhìn và tru
Trang 1Đại Học Quốc Gia Tp Hồ Chí Minh
Trang 2TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHQG - TPHCM
Cán bộ hướng dẫn khoa học : TS LÊ THÀNH SÁCH
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 1 :
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 2 :
(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp HCM, ngày tháng năm
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ) 1
2
3
4
5
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)
Trang 3ĐẠI HỌC QUỐC GIA TP HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Tp HCM, ngày 30 tháng 11 năm 2012
NHIỆM VỤ LUẬN VĂN THẠC SĨ
Họ tên học viên: ĐẶNG THỊ THANH TƯƠI……… MSHV: 10070506 Ngày, tháng, năm sinh: 28/01/1984 ….Nơi sinh: TP HCM Chuyên ngành: Khoa học máy tính … Mã số: 604801
I TÊN ĐỀ TÀI:
HIỆN THỰC CÁC KỸ THUẬT MÃ HÓA TRONG ỨNG DỤNG
ĐA HƯỚNG NHÌN
II NHIỆM VỤ VÀ NỘI DUNG:
Luận văn khảo sát và đánh giá các giải thuật mã hóa video đa hướng nhìn view Video Coding) Từ kết quả đó, đề tài đề xuất và hiện thực giải thuật cải tiến nhằm giảm thời gian mã hóa (encoding time) nhưng vẫn đảm bảo chất lượng và độ nén cho video
(Multi-III NGÀY GIAO NHIỆM VỤ 06/02/2012
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 30/11/2012
Trang 4LỜI CÁM ƠN
Đầu tiên, tôi xin gửi lời cảm ơn chân thành đến TS Lê Thành Sách đã định hướng, truyền đạt kinh nghiệm cũng như tận tình hướng dẫn, hỗ trợ tôi trong suốt quá trình nghiên cứu để hoàn thành luận văn tốt nghiệp
Bên cạnh đó, tôi cũng xin cảm ơn gia đình, bạn bè và các bạn đồng nghiệp đã động viên, giúp đỡ và tạo mọi điều kiện tốt nhất để tôi có thể theo đuổi việc học tập
và nghiên cứu
Thành phố Hồ Chí Minh, tháng 11 năm 2012
Trang 5Trang ii
TÓM TẮT
Các ứng dụng video 3D như truyền hình 3D (3DTV) và video đa hướng nhìn ngày càng phát triển mạnh trong ngành công nghiện điện tử Vấn đề đặt ra là dữ liệu cần xử lý tăng lên đáng kể so với video đơn hướng nhìn do số lượng góc nhìn tăng
Dữ liệu lớn đồng nghĩa với thời gian xử lý lớn, thời gian là yếu tố quan trọng trong ứng dụng thời gian thực Do đó, luận văn sẽ trình bày kết quả khảo sát, đánh giá các nghiên cứu tối ưu hiệu suất mã hóa về mặt thời gian nhưng vẫn đảm bảo chất lượng ảnh và tỉ lệ nén Dựa vào các kết quả đó, đề tài đề xuất thuật toán nhằm giảm thời gian mã hóa Đồng thời, đề tài kết hợp thuật toán đề xuất với thuật toán đã khảo sát nhằm làm tối ưu hơn nữa thời gian mã hóa Cuối cùng, hoàn chỉnh mô hình đánh giá cải tiến hiệu suất mã hóa theo ba tiêu chí: thời gian mã hóa, tỉ lệ nén và chất lượng ảnh
Trang 6ABSTRACT
The application of 3D video such as 3D television (3DTV) and multi-view video is expanded and grow up rapidly in electronic industrial The problem here is the processing data increases so much compared with video single view because the number of view increases Huge processing data is corresponding to huge processing time, time is one of important factor in real-time application Therefore, this thesis will describe the result of investigation and evaluation of the related work focus on optimizing encoding time but still keep or reduce in appropriate ratio compression ratio and output image quality Based on that result of investigation, thesis proposed algorithm to reduce encoding time Beside that, the thesis combines available algorithm and proposed algorithm to reduce encoding time more Finally, thesis completed the evaluation scheme for encoding efficiency optimization in 3 creteria: encoding time, compression ratio, output image quality
Trang 7Trang iv
LỜI CAM ĐOAN
Tôi cam đoan rằng, ngoài những tài liệu tham khảo và các tài liệu khác đã chú thích đính kèm thì toàn bộ nội dung và các công việc khác của luận văn là do chính tôi thực hiện và chưa từng có phần nội dung nào của luận văn này được nộp để lấy một bằng cấp ở trường này hoặc ở trường khác
Thành phố Hồ Chí Minh, tháng 11 năm 2012
Đặng Thị Thanh Tươi
Trang 8MỤC LỤC
LỜI CÁM ƠN i
TÓM TẮT ii
ABSTRACT iii
LỜI CAM ĐOAN iv
MỤC LỤC v
DANH MỤC CÁC TỪ VIẾT TẮT vii
DANH MỤC BẢNG BIỂU viii
DANH MỤC HÌNH ẢNH ix
CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI 11
1.1 Hình thành vấn đề 11
1.2 Phạm vi nghiên cứu 13
1.2.1 Mục tiêu của đề tài 13
1.2.2 Các bước thực hiện 14
1.3 Tóm lược những kết quả đạt được 14
1.4 Bố cục luận văn 15
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 16
2.1 Mô hình hệ thống video đơn hướng nhìn 16
2.2 Mô hình hệ thống video đa hướng nhìn 20
2.3 Chuẩn H.264/MPEG-4 AVC 23
2.3.1 Định dạng dữ liệu đầu vào, đầu ra 23
2.3.2 Cấu trúc một ảnh 24
2.3.3 Cấu trúc H.264 stream 25
2.3.4 Sơ đồ khối quá trình mã hóa 25
2.4 Chuẩn mở rộng H.264/MPEG-4 AVC cho video đa hướng nhìn (MVC) 31
2.5 Phương pháp đánh giá kết quả 31
CHƯƠNG 3 CÁC KẾT QUẢ NGHIÊN CỨU LIÊN QUAN 34
3.1 Cấu trúc dự đoán (Prediction Structure) 34
Trang 9Trang vi
3.2 Kiểu macroblock (Macroblock mode) 35
3.3 Tổng kết các nghiên cứu liên quan 40
CHƯƠNG 4 ĐỀ XUẤT VÀ HIỆN THỰC CHƯƠNG TRÌNH 41
4.1 Cấu trúc chương trình mã hóa 41
4.2 Đề xuất của luận văn 45
4.3 Sơ đồ khối chức năng của thuật toán tham khảo và thuật toán đề xuất 48
4.3.1 Chương trình FastInter 48
4.3.2 Chương trình Proposed_SR 51
4.3.3 Chương trình Proposed_Merge 52
4.4 Tập tin cấu hình 52
CHƯƠNG 5 KẾT QUẢ VÀ ĐÁNH GIÁ 58
5.1 Tập dữ liệu kiểm tra chương trình 58
5.2 Cấu hình hệ thống kiểm thử 58
5.3 Kết quả thực thi chương trình 59
5.4 Đánh giá kết quả thu được 68
CHƯƠNG 6 KẾT LUẬN VÀ KIẾN NGHỊ 70
TÀI LIỆU THAM KHẢO v
LÝ LỊCH TRÍCH NGANG vii
Trang 10DANH MỤC CÁC TỪ VIẾT TẮT
3DTV - Three Dimensions Television: truyền hình kĩ thuật số ba chiều
3DV - Three Dimensions Video : video ba chiều
FTV - Free Viewpoint Television: truyền hình đa góc nhìn
H.264/AVC - H.264 Advance Video Coding: định dạng mã hóa video tiên tiến H264 JMVC – Joint Multiview Video Coding : bộ chương trình mã hóa/giả mã tham khảo MERL - Mitsubishi Electric Research Laboratories : phòng thí nghiệm nghiên cứu
điện tử Mitsubishi
MPEG - Moving Picture Experts Group : hội chuyên gia về phim và ảnh thế giới NAL - Network Abstraction Layer : lớp trừu tượng mạng
PSNR - Peak Signal to Noise Ratio: tỉ số tín hiệu cực đại trên nhiễu
VLC – Variable Length Code: mã chiều dài thay đổi
Trang 11Trang viii
DANH MỤC BẢNG BIỂU
Bảng 2-1 Cách tính khối tham khảo P 28
Bảng 4-1 So sánh kết quả thử nghiệm chọn ngưỡng 47
Bảng 5-1 Tập dữ liệu kiểm tra chương trình 58
Bảng 5-2 Tham số cấu hình cơ bản cho chương trình 59
Bảng 5-3 Kết quả tổng hợp của từng tập dữ liệu 60
Bảng 5-4 Bảng so sánh kết quả các thuật toán với JMVC 8.5 62
Bảng 5-5 Bảng kết quả chi tiết của thuật toán FastInter cho từng tập dữ liệu 63
Bảng 5-6 Bảng kết quả chi tiết của thuật toán Proposed_SR cho từng tập dữ liệu 64
Bảng 5-7 Bảng kết quả chi tiết của thuật toán Proposed_Merge cho từng tập dữ liệu 65
Trang 12DANH MỤC HÌNH ẢNH
Hình 1-1 Một hệ thống 3DTV 12
Hình 2-1 Sơ đồ khối của một video encoder 17
Hình 2-2 Ảnh dư thừa của 2 ảnh kề nhau 18
Hình 2-3 Biến đổi DCT của khối 4x4 19
Hình 2-4 Simulcast cho mã hóa video đa hướng nhìn 21
Hình 2-5 Kết hợp dự đoán thời gian/inter-view cho video đa hướng nhìn 22
Hình 2-6 Sơ đồ khối của video encoder đa hướng nhìn 23
Hình 2-7 Sự phân chia slice trong ảnh 24
Hình 2-8 Các kiểu phân hoạch macroblock và macroblock phụ 24
Hình 2-9 Sơ đồ khối bộ mã hóa video của H.264 26
Hình 2-10 Cấu trúc dự đoán 27
Hình 2-11 Gán nhãn cho khối dự đoán và các mẫu lân cận 28
Hình 2-12 Dự đoán intra cho khối 16x16 29
Hình 3-1 Cấu trúc dự đoán phân cấp ảnh B 34
Hình 3-2 Dự đoán inter-frame/inter-view dùng cấu trúc ảnh B phân cấp 35
Hình 3-3 Thuật toán chọn mode nhanh được đề xuất 37
Hình 3-4 Đề xuất giảm số mode Inter cần kiểm tra cho view phụ 38
Hình 3-5 Chọn mode nhanh với ngưỡng linh động 39
Hình 4-1 Cấu trúc hệ thống mã hóa video đa hướng nhìn 41
Hình 4-2 Sơ đồ khối tổng quát chương trình mã hóa video 42
Hình 4-3 Sơ đồ khối mã hóa ở lớp macroblock – hàm encodeSlice() 43
Hình 4-4 Sơ đồ khối motion estimation Inter mode (InterNxN) 44
Hình 4-5 Vùng tìm kiếm trong ảnh tham khảo 45
Hình 4-6 Sơ đồ hoạt động chọn MB mode trong FastInter 50
Hình 4-7 Sơ đồ khối motion estimation Inter mode (InterNxN) cải tiến 52
Hình 5-1 So sánh thời gian mã hóa giữa các thuật toán 61
Hình 5-2 So sánh bitrate giữa các thuật toán 61
Trang 13Trang x
Hình 5-3 So sánh PSNR giữa các thuật toán 62Hình 5-4 Kết quả định tính Ballroom view 1 frame 2 67Hình 5-5 Kết quả định tính Exit view 1 frame 2 67
Trang 14Cùng với những bước tiến đột phá trong công nghệ chế tạo máy quay (camera) và các thiết bị hiển thị, bên cạnh video đơn hướng nhìn, nhu cầu sử dụng video 3D hay video đa hướng nhìn xuất hiện và tăng lên đáng kể trong những năm gần đây Ảnh hoặc video 3D cho phép người xem cảm nhận được độ sâu của khung cảnh bằng cách hiển thị ảnh trái và ảnh phải theo cách mà những ảnh này được nhìn thấy riêng rẽ từ mắt trái và mắt phải Hệ thống 3D là một nhánh của các hệ thống đa hướng nhìn hoặc video góc nhìn tự do Với video đơn hướng nhìn hoặc stereoscopic video, người xem chỉ nhìn thấy khung cảnh từ một hướng nhất định của máy quay nhưng với video góc nhìn tự do người xem có thể
Trang 15Chương 1 TỔNG QUAN VỀ ĐỀ TÀI
Trang 12
thay đổi, lựa chọn góc nhìn của một cảnh quay Điều này có thể làm được bằng cách dùng nhiều máy quay quay một cảnh video từ nhiều góc nhìn khác nhau Có khá nhiều ứng dụng thú vị bao gồm giải trí cho tới giáo dục, … Ví dụ, ta có thể hiển thị và phân tích các hành động trong thể thao, các bộ môn nghệ thuật như khiêu vũ, … Hay một ứng dụng video góc nhìn tự do khác là hội thảo từ xa (immersive teleconference) Những người tham dự hội thảo ở các vị trí địa lý khác nhau có thể nhìn thấy nhau trong thế giới ảo theo dạng 3 chiều hay góc nhìn tự do Ứng dụng này tạo nên kênh giao tiếp tự nhiên hơn cho các hội thảo, cuộc họp từ xa [1]
Hình 1-1 [2] giới thiệu một hệ thống 3DTV Mỗi cảnh được quay từ nhiều góc khác nhau tạo nên một chuỗi ảnh (view) video tại mỗi thời điểm Các ảnh này đi qua hệ thống
mã hóa video đa hướng nhìn (multi-view video encoder) Sau đó, dữ liệu đã được mã hóa truyền qua các kênh và giải mã bằng bộ giải mã đa hướng nhìn (multi-view video decoder) Người dùng cuối có thể tùy chọn nhiều loại hiển thị khác nhau: 2D SDTV/HDTV, stereo TV, hay 3DTV hỗ trợ đa hướng nhìn
Hình 1-1 Một hệ thống 3DTV
Trang 16Tương tự như video đơn hướng nhìn, vấn đề với video đa hướng nhìn là dữ liệu hình ảnh quá lớn do số lượng camera hay số lượng góc nhìn tăng lên Chính vì thế, việc tìm hiểu các kỹ thuật nhằm làm giảm dữ liệu video truyền tải và lưu trữ, tăng hiệu suất mã hóa với dữ liệu ảnh lớn và độ phân giải cao trong video đa hướng nhìn và truyền hình 3D (3DTV) ngày càng nhận được nhiều sự quan tâm trong cộng đồng nghiên cứu cũng như công nghiệp Như đã biết, các hệ thống đa phương tiện thời gian thực thì đòi hỏi đáp ứng lượng dữ liệu với tốc độ nhất định Quá trình mã hóa và giải mã chính nó cũng cần tài nguyên để tính toán Ví dụ với một ứng dụng thời gian thực yêu cầu băng thông thấp, sẽ trở nên vô nghĩa nếu hệ thống mã hóa video cần chi phí tính toán quá lớn, mất rất nhiều thời gian để xử lý Vì vậy, kỹ thuật mã hóa video đa hướng nhìn (multi-view video coding
- MVC) hiệu quả về tỉ lệ nén và tốc độ xử lý mà không hi sinh chất lượng hiển thị là một yêu cầu cấp thiết Đó là lí do đề tài nghiên cứu: ― Hiện thực các kỹ thuật mã hóa trong ứng dụng đa hướng nhìn‖ được đề xuất
1.2 Phạm vi nghiên cứu
1.2.1 Mục tiêu của đề tài
Đề tài có hai mục tiêu chính Thứ nhất là khảo sát và đánh giá các kỹ thuật mã hóa video bao gồm video đơn hướng nhìn, video đa hướng nhìn và tổng kết các kết quả nghiên cứu nhằm nâng cao hiệu suất mã hóa trong video đa hướng nhìn, tập trung vào các cải tiến dựa trên video đa hướng nhìn đã được chuẩn hóa bởi MPEG/VCEG [3] Chuẩn H.264/MPEG-4 AVC của MPEG/VCEG đã bổ sung một phần mở rộng cho video đa hướng nhìn những năm gần đây
Mục tiêu thứ hai là xây dựng chương trình hiện thực và đánh giá một số kỹ thuật mã hóa đã nghiên cứu Hiện nay đã có sẵn phần mềm tham khảo JMVC [4] cho video đa hướng nhìn Hầu hết các nghiên cứu đều tiến hành thử nghiệm trên phần mềm này Cho nên chương trình của đề tài cũng được xây dựng trên phần mềm tham khảo JMVC, phiên bản 8.5 Ngoài ra, đề tài đề xuất phương pháp tăng hiệu suất mã hóa dựa trên cở lý thuyết
và các nghiên cứu liên quan tìm hiểu được
Trang 17Chương 1 TỔNG QUAN VỀ ĐỀ TÀI
Trang 14
1.2.2 Các bước thực hiện
Quá trình thực hiện đề tài bao gồm các bước chính sau:
Tìm hiểu cơ sở lý thuyết liên quan bao gồm kỹ thuật mã hóa video đơn và đa hướng nhìn, chuẩn H.264
Khảo sát và đánh giá các kết quả nghiên cứu liên quan đến tối ưu hiệu suất mã hóa trong video đa hướng nhìn
Tìm hiểu phần mềm tham khảo JMVC phiên bản 8.5, cách hiện thực quá trình mã hóa của phần mềm cho H.264 MVC Sau đó hiện thực thêm các giải thuật để giảm thời gian mã hóa
Đánh giá kết quả đạt được trên các tập dữ liệu ảnh video đầu vào khác nhau
Cuối cùng là đưa ra bộ dữ liệu ảnh và phương pháp đánh giá định lượng thời gian mã hóa, bitrate và chất lượng ảnh để đánh giá toàn bộ kết quả chương trình tổng hợp ảnh Mô hình đánh giá này có thể được kế thừa để bổ sung các phương pháp cải tiến cho ứng dụng tổng hợp ảnh khác về sau
Trang 181.4 Bố cục luận văn
Luận văn được tổ chức theo cấu trúc sau đây:
Chương 1 giới thiệu tổng quan về đề tài bao gồm hoàn cảnh ra đời của đề tài, mục
tiêu của đề tài và phương pháp nghiên cứu
Chương 2 trình bày một số kiến thức nền tảng bao gồm kiến thức tổng quát về mã
hóa, các bước và các kỹ thuật quan trọng trong mã hóa video Sau đó, giới thiệu chuẩn H.264 và phần mở rộng cho video đa hướng nhìn trong H.264
Chương 3 bàn về các nghiên cứu liên quan Các công trình nghiên cứu được chọn giới
thiệu liên quan đến nhiệm vụ chính của đề tài là hiện thực các kỹ thuật mã hóa nhằm làm tăng hiệu suất mã hóa video đa hướng nhìn
Chương 4 trình bày chi tiết hiện thực cho chương trình cho một số mô hình tối ưu đã
nghiên cứu và đề xuất
Chương 5 đưa ra các kết quả đạt được, tiến hành đánh giá và so sánh kết quả
Chương 6 tổng kết và trình bày một số kết luận sau khi thực hiện đề tài nghiên cứu
Cuối cùng là phần liệt kê các tài liệu tham khảo trong quá trình nghiên cứu và hiện thực đề tài luận văn
Trang 19CHƯƠNG 2
CƠ SỞ LÝ THUYẾT
Phần này sẽ trình bày một số kiến thức nền tảng bao gồm mô hình hệ thống mã hóa video đơn hướng nhìn và video đa hướng nhìn, tổng quan về chuẩn H.264/MPEG-4 AVC (sau đây gọi là H.264) và phần mở rộng cho mã hóa video đa hướng nhìn Phần cơ sở lý thuyết về chuẩn H.264 dựa vào tài liệu của tổ chức ITU-T, xuất bản 6/2011[5] Trong phần này, cũng bàn về mô hình đánh giá kết quả nghiên cứu theo 3 tiêu chí: chất lượng ảnh tái tạo, tỉ lệ nén và thời gian mã hóa
2.1 Mô hình hệ thống video đơn hướng nhìn
Mã hóa video (video coding) là hệ thống có 2 phần bù trừ nhau là: bộ mã hóa (encoder) và bộ giải mã (decoder) Dữ liệu video thô (chưa mã hóa) qua bộ mã hóa thu được chuỗi bit nhỏ hơn, gọi là bitstream Bitstream qua bộ giải mã để tái tạo (reconstruct)
dữ liệu video trước khi hiển thị cho người dùng cuối
Dữ liệu sau mã hóa thu được thông qua việc loại bỏ phần dư thừa (redundancy) – những phần không thực sự cần thiết cho việc tái tạo dữ liệu xấp xỉ dữ liệu ban đầu Hầu hết các phương pháp mã hóa video khai thác dữ liệu dư thừa miền thời gian (temporal) và không gian (spatial) để đạt hiệu quả mã hóa Về miền thời gian, các ảnh (frame) được thu
ở thời điểm gần nhau sẽ có sự tương quan cao Có nghĩa là, trong một chuỗi ảnh liên tục, lượng thông tin chứa trong mỗi ảnh sẽ thay đổi rất ít từ ảnh này sang ảnh khác Về miền không gian, các điểm ảnh gần nhau cũng có sự tương quan cao
Hình 2-1 giới thiệu sơ đồ khối tổng quan của một bộ mã hóa video bao gồm 3 khối chức năng chính: mô hình thời gian, mô hình không gian và mã hóa entropy (entropy encoder) [6]
Trang 20Mô hình thời gian
Mô hình không gian
Mã hóa Entropy Buffer lưu trữ
Hình 2-1 Sơ đồ khối của một video encoder
(1) Mô hình thời gian
Dữ liệu đầu vào của mô hình thời gian là dữ liệu video thô Mô hình thời gian giảm dữ liệu dư thừa theo thời gian dựa vào sự tương tự giữa các ảnh lân cận thông qua phương pháp dự đoán cho ảnh hiện tại Dữ liệu đầu ra của mô hình này là ảnh dư thừa được tạo ra bằng cách trừ ảnh dự đoán với ảnh hiện tại và một tập tham số mô hình, thường là tập các vector chuyển động (motion vector) mô tả chuyển động giữa hai hay nhiều ảnh Hình 2-2
là ví dụ về ảnh dư thừa của 2 ảnh kề nhau
Một số khái niệm trong mô hình thời gian:
Ảnh tham khảo (Reference frame): Quá trình mã hóa sẽ tìm kiếm phần ảnh tương đồng với ảnh hiện tại trên ảnh tham khảo và dựa vào đó để giảm dữ liệu cho ảnh hiện tại
Ước lượng chuyển động (Motion estimation): Dữ liệu dư thừa tạo ra do sự chuyển động giữa 2 ảnh lân cận Dự đoán được tiến hành bằng cách tìm phần bù nhỏ nhất cho chuyển động trên 2 ảnh Phương pháp phổ biến là chia ảnh thành các khối (block) hình chữ nhật A và tìm khối gần giống nhất B (matching block) cho mỗi khối của ảnh hiện tại trên ảnh tham khảo Quá trình tìm kiếm này gọi là ước lượng chuyển động
Bù chuyển động (Motion compensation): là quá trình trừ khối B, khối giống khối
A , cho khối A trên ảnh hiện tại tạo ảnh dư thừa
Vector chuyển động (Motion vector): vector biểu diễn vị trí tương đối của A và B
Trang 21Chương 2 CƠ SỞ LÝ THUYẾT
Trang 18
Hình 2-2 Ảnh dư thừa của 2 ảnh kề nhau
Phần xử lý quan trọng trong mô hình thời gian là ―dự đoán‖ (prediction) Dự đoán được thực hiện thông qua hai bước ―ước lượng chuyển động‖ và tính toán ―phần bù chuyển động‖ Dự đoán khai thác sự giống nhau giữa các ảnh theo miền thời gian (mã hóa
có phần bù chuyển động) gọi là dự đoán inter mode Khi có sự khác nhau quá lớn giữa
ảnh hiện tại và ảnh tham khảo, sẽ hiệu quả hơn nếu mã hóa không có phần bù chuyển động Trong trường hợp đó, dự đoán chỉ được thực hiện trên các khối đã được mã hóa
trước đó của ảnh hiện tại Dự đoán này gọi là intra mode
Ảnh tham khảo có thể là ảnh trước ảnh hoặc sau hoặc là sự kết hợp giữa ảnh trước và sau ảnh hiện tại (theo thứ tự hiển thị) Trong trường hợp ảnh tham khảo là ảnh sau ảnh hiện tại, ảnh tham khảo sẽ được mã hóa trước và khi giải mã sẽ được sắp xếp thứ tự lại trước khi hiển thị
(2) Mô hình không gian
Dữ liệu đầu vào của mô hình không gian là ảnh dư thừa Mô hình này sử dụng sự tương tự giữa các mẫu (sample) lân cận trong ảnh dư thừa để giảm dữ liệu dư thừa trong miền không gian Nhiệm vụ chính của mô hình này là phân giải sự tương quan của ảnh dư thừa, sau đó chuyển sang dạng có thể mã hóa một cách hiệu quả bằng entropy coder Dữ liệu đầu ra của mô hình không gian là tập các hệ số biến đổi đã được lượng tử hóa
Mô hình không gian có thể chia thành hai quá trình chính: ―biến đổi‖ (Transformation)
và ―lượng tử hóa‖ (Quantization)
Trang 22Biến đổi (Transformation): Là quá trình biến đổi nhằm giảm sự tương quan về mặt
thống kê của dữ liệu đầu vào và thu gọn dữ liệu biến đổi (hầu hết phần quan trọng của dữ liệu sau biến đổi sẽ tập trung ở một số ít giá trị) Dữ liệu đầu vào là dữ liệu ảnh dư thừa Hai biến đổi phổ biến của transformation là biến đổi Karhunen-Loève (KLT), là một phép phân giải tối ưu, và biến đổi cosin rời rạc (DCT), có hiệu quả gần bằng KLT Ví dụ về biến đổi DCT cho khối kích thước 4x4 như hình Hình 2-3 Sau biến đổi DCT, phần lớn năng lượng tập trung ở góc trên bên trái
Hình 2-3 Biến đổi DCT của khối 4x4
Lượng tử hóa (Quantization): Là quá trình ánh xạ dữ liệu đầu vào từ khoảng giá trị
X sang khoảng giá trị Y nhỏ hơn Do đó, dữ liệu đã được lượng tử dùng ít bit để biểu diễn hơn là dữ liệu ban đầu Lượng tử hóa được thực hiện trên dữ liệu đầu ra của quá trình
―transformation‖ Sau đây là ví dụ của công thức lượng tử hóa đơn giản:
( ) (2-1) (2-2) Trong đó, QP là bước lượng tử
(3) Mã hóa entropy
Tham số của mô hình thời gian và mô hình không gian tiếp tục được mã hóa bằng mã entropy Khối mã hóa entropy loại bỏ dư thừa dữ liệu theo thống kê và tạo ra một bitstream có thể lưu trữ hoặc truyền đi (transmit)
Trang 23Chương 2 CƠ SỞ LÝ THUYẾT
Trang 20
Loại mã hóa entropy phổ biến là variable-length code (VLC) VLC tạo bảng mã cấu trúc cây, dùng những chuỗi nhị phân ngắn để biểu diễn những giá trị thường xuất hiện và dùng những chuỗi nhị phân dài hơn để biểu diễn các giá trị ít xuất hiện Phương pháp nổi tiếng nhất cho loại mã hóa entropy VLC là mã Huffman
Bộ giải mã video sẽ tái tạo một ảnh video từ bitstream đã được nén Đây là quá trình ngược lại với quá trình mã hóa
2.2 Mô hình hệ thống video đa hướng nhìn
Như đã biết, video đa hướng nhìn bao gồm nhiều chuỗi video được thu từ nhiều camera cùng lúc ở các vị trí khác nhau Mỗi chuỗi ảnh là một view
Để hiện thực mã hóa đa hướng nhìn, giải pháp đầu tiên là mã hóa độc lập từng view, gọi là mã hóa simulcast như trong Hình 2-4 [7] Mỗi view được mã hóa độc lập, khai thác
dự đoán mô hình thời gian và không gian trong mã hóa video đơn hướng nhìn Ưu điểm của mã hóa simulcast có thể dùng các công cụ mã hóa chuẩn của video đơn hướng nhìn Tuy nhiên, dữ liệu video đa hướng nhìn chứa một lượng lớn sự phụ thuộc thống kê giữa các view vì các máy quay quay cùng một cảnh từ các hướng nhìn khác nhau Ảnh trên một view có thể dự đoán từ ảnh lân cận trong cùng view hoặc từ một view lân cận, tương ứng với việc sử dụng dự đoán phần bù chuyển động hoặc dự đoán phần bù chênh
lệch (disparity) Dự đoán dựa trên phần bù chênh lệch giữa các view gọi là dự đoán
inter-view Kết hợp dự đoán theo thời gian và inter-view là kỹ thuật chính trong video đa hướng
nhìn
Hình 2-5 [7] là ví dụ mô hình kết hợp dự đoán theo thời gian và inter-view Ảnh ở view S1 có thể tham khảo ảnh ở view S0 trong quá trình ước lượng chuyển động Có thể thấy với mô hình kết hợp này, mối liên hệ giữa ảnh của các view trở nên phức tạp hơn rất nhiều Ảnh B3(S1/T1) không chỉ tham khảo P0(S1/T0) và B2(S1/T2) mà còn tham khảo B3(S0/T1) trong quá trình dự đoán Trong một số mô hình khác, B3(S1/T1) còn tham
Trang 24khảo cả B3(S2/T1) để đạt hiệu quả mã hóa cao Mặc dù mô hình đạt tỉ lệ nén cao nhƣng cũng làm chậm quá trình mã hóa do tốn nhiều tài nguyên xử lý
Hình 2-4 Simulcast cho mã hóa video đa hướng nhìn
Trang 25Chương 2 CƠ SỞ LÝ THUYẾT
Trang 22
Hình 2-5 Kết hợp dự đoán thời gian/inter-view cho video đa hướng nhìn
Dự đoán view về cơ bản cũng tương tự như dự đoán inter mode Dự đoán view khai thác sự tương tự giữa 2 view lân cận Nếu như dự đoán inter mode có khái niệm vector chuyển động thì dự đoán inter-view có vector chênh lệch (disparity vector) Vector chênh lệch là vector xác định vị trí tương đối của 2 điểm/khối ảnh tương đồng nhau trên 2 view khác nhau cho cùng một cảnh Ngoài ra, các khái niệm ước lượng chênh lệch (disparity estimation), bù chênh lệch (disparity compensation) cũng tương tự như ước lượng chuyển động, bù chuyển động trong mô hình thời gian đã giới thiệu ở trên
inter-Hình 2-6 mô tả các khối cơ bản của qui trình mã hóa video đa hướng nhìn Điểm khác với mã hóa video 2 chiều là khối dự đoán inter-view Dữ liệu đầu vào của mô hình inter-view là dữ liệu video thô Mô hình inter-view giảm dữ liệu dư thừa dựa vào sự tương tự giữa các view lân cận bằng cách xây dựng sự tiên đoán cho ảnh hiện tại Dữ liệu đầu ra của mô hình này là ảnh dư thừa (tạo ra bằng cách trừ ảnh dự đoán với ảnh hiện tại) và một tập tham số mô hình, thường là tập các vector chênh lệch
Trang 26Mô hình thời gian
Mô hình inter-view
Mô hình không gian
Mã hóa Entropy
Buffer lưu trữ ảnh tái tạo
Hình 2-6 Sơ đồ khối của video encoder đa hướng nhìn
Lược đồ dự đoán bù chênh lệch giả định chuyển động của đối tượng qua các view là
mô hình chuyển động tịnh tiến Tuy nhiên, nếu sự khác biệt giữa hai view quá lớn (có thể
là khoảng cách các camera lớn), giả định không phải lúc nào cũng đúng Trong trường hợp này, tương quan giữa hai ảnh liên tiếp theo thời gian có thể cao hơn tương qua giữa hai view lân cận Vì thế nên so sánh và xác định khối gần giống nhất trên cả lân cận theo thời gian và lân cận theo view
2.3 Chuẩn H.264/MPEG-4 AVC
2.3.1 Định dạng dữ liệu đầu vào, đầu ra
Dữ liệu đầu vào và đầu ra của bộ mã hóa và giải mã H.264 có một số dạng khác nhau như là YUV, RGB, … nhưng trong các phần giải thích sau của luận văn, các biến hay các thuật ngữ liên quan đến các mảng dữ liệu đầu vào và đầu ra được gọi là luma (hoặc Y) và chroma, hai mảng chroma lần lượt là Cb và Cr, bất chấp cách biểu diễn màu thực sự Luma (Y) là thành phần qui định độ sáng của ảnh Chroma (CbCr hoặc UV) là thành phần qui định màu sắc của ảnh
Trang 27Chương 2 CƠ SỞ LÝ THUYẾT
Trang 24
2.3.2 Cấu trúc một ảnh
Một ảnh có thể chia thành một hoặc nhiều slice Một slice là một chuỗi các macroblock (MB) hoặc một cặp MB Mỗi MB tương ứng với mộ vùng ảnh kích thước 16x16 pixel Hình 2-7 là ví dụ một ảnh video được chia thành 3 slice
Hình 2-7 Sự phân chia slice trong ảnh
Một MB được phân hoạch thành các khối nhỏ hơn Một MB có 4 kiểu phân hoạch như Hình 2-8 Khi MB được chia thành 4 khối có kích thước 8x8 thì mỗi khối 8x8 được gọi là một MB phụ Một MB phụ cũng có 4 kiểu phân hoạch tương tự một MB, minh họa trong Hình 2-8
8
8 8
8
8 16
8 8
8
8
8 4
4
4 4
4
4 8
Hình 2-8 Các kiểu phân hoạch macroblock và macroblock phụ
Trang 282.3.3 Cấu trúc H.264 stream
Một H.264 stream được tổ chức thành nhiều đơn vị gọi là NAL (Network Abstraction Layer) Byte đầu tiên của NAL sẽ cho biết loại dữ liệu chứa trong NAL Phần dữ liệu còn lại gọi là payload Có nhiều loại NAL trong H.264 stream và có thể phân thành 2 nhóm :
VCL (video coding layer) : chứa dữ liệu video mã hóa của ảnh hoặc một phần ảnh
VCL NAL có loại là slice
Non-VCL (non-video coding layer) : chứa các dữ liệu, thông tin bổ trợ liên quan Chuỗi video (coded video sequence) là tập một dãy NAL liên tiếp Nó bao gồm các non-VCL - dùng để giải mã dữ liệu video và các VCL NAL (NAL loại slice) – đại diện cho ảnh video hoặc một phần ảnh video mã hóa Một chuỗi video biểu diễn một phần bitstream được giải mã độc lập của bitstream, nghĩa là tất cả các ảnh video trong chuỗi được giải mã mà không cần tham khảo tới các ảnh trước đó Bắt đầu của một chuỗi video
là ảnh IDR (instantaneous decoding refresh)
NAL loại slice đại diện cho một phần hoặc toàn bộ ảnh video mã hóa Slice bao gồm một số MB mã hóa và số lượng MB chứa trong mỗi slice không nhất thiết phải giống nhau Lớp MB chứa các loại thông tin mô tả cách mã hóa một MB và các thông tin dự đoán như là vector chuyển động hoặc là thông tin intra mode và dữ liệu dư thừa
2.3.4 Sơ đồ khối quá trình mã hóa
Hình 2-9 [8] mô tả chi tiết sơ đồ khối mã hóa của H.264
Trang 29Chương 2 CƠ SỞ LÝ THUYẾT
Trang 26
Hình 2-9 Sơ đồ khối bộ mã hóa video của H.264
Mô hình thời gian gồm các khối: Intra-frame Estimation, Intra-frame Prediction, Motion compensation, Motion Estimation Mô hình không gian gồm các khối: Transform/Scal./Quant, Coder Control, Scaling and Inv Transform Mã hóa Entropy gồm khối: Entropy Coding Về cơ bản các khối chức năng này hoạt động như trong mô hình
mã hóa/giải mã đã giới thiệu ở trên
Bộ giải mã H.264 có thêm một khối xử lý ―Deblocking Filter‖ Khối này làm cho ảnh sau khi giải mã được mượt mà do mã hóa dạng khối nên ảnh đầu ra xuất các cạnh giữa các khối
H.264 hỗ trợ ba loại mã hóa ảnh (và slice) cơ bản là I, P, B Các loại slice này xác định kiểu mã hóa cho các MB chứa trong slice
I slice : chỉ chứa I macroblock, dùng intra mode cho mã hóa
Trang 30 P slice : chứa I và P macroblock, hỗ trợ cả mã hóa intra mode và dự đoán inter mode P slice chỉ tham khảo tới các ảnh trước nó cho dự đoán
B slice : chứa I và B macroblock, hỗ trợ cả mã hóa intra mode và dự đoán inter mode B slice có thể tham khảo tới ảnh trước và sau nó cho dự đoán
Hình 2-10 Cấu trúc dự đoán
Một ví dụ cho cấu trúc dự đoán như trong Hình 2-10 Ảnh I không tham khảo ảnh khác trong mã hóa Ảnh P tham khảo ảnh trước nó Ảnh B tham khảo ảnh trước và sau nó Mũi tên chỉ hướng tham khảo (A -> B : nghĩa là A cần tham khảo B trong mã hóa)
Dưới đây trình bày chi tiết hơn về 2 loại dự đoán được thực hiện trên MB: intra mode
và inter mode
(1) Dự đoán Intra (Intra prediction)
Nếu một block hoặc MB được mã hóa theo kiểu Intra thì khối tham khảo của nó là khối được tính từ các khối đã được mã hóa và tái tạo trước đó trên cùng ảnh đang được
mã hóa Khối hiện tại sẽ trừ khối tham khảo P, tạo ra phần dữ liệu dư thừa và dữ liệu này
sẽ qua quá trình transformation, entropy
Dự đoán intra cho thành phần luma của MB được thực hiện trên các khối có kích thước 16x16, 8x8 và 4x4 Dự đoán intra cho thành phần chroma được thực hiện trên toàn
bộ MB, không chia thành các vùng nhỏ hơn như luma
Có 9 kiểu dự đoán cho luma với kích thước 4x4, 8x8 và có 4 kiểu dự đoán cho luma kích thước 16x16 Và có 4 kiểu dự đoán cho thành phần chroma Cách xác định khối
Trang 31Chương 2 CƠ SỞ LÝ THUYẾT
Trang 28
tham khảo cho từng kiểu dự đoán sẽ được trình bày chi tiết sau đây Ngoài ra, dự đoán Intra còn có một kiểu mã hóa đặc biệt là I_PCM Kiểu I_PCM cho phép mã hóa trực tiếp giá trị pixel mà không thông qua dự đoán hay biến đổi gì
Bộ mã hóa sẽ chọn kiểu dự đoán tạo ra dữ liệu dư thừa tối thiểu, nghĩa là chọn khối tham khảo gần giống với khối hiện tại nhất
(a) Dự đoán cho luma kích thước 4x4
Có 9 kiểu dự đoán cho khối kích thước 4x4 được đánh số từ 0 đến 8 Khối tham khảo
P gồm các mẫu từ a đến p Các mẫu A đến M được mã hóa và tái tạo trước đó
Hình 2-11 Gán nhãn cho khối dự đoán và các mẫu lân cận
Cách tính khối tham khảo P được trình bày tổng quan trong Bảng 2-1 [6] Cách tính chi tiết có thể tham khảo trong chuẩn H.264 [5]
(b) Dự đoán cho luma kích thước 8x8
Các kiểu dự đoán tương tự như luma kích thước 4x4
Bảng 2-1 Cách tính khối tham khảo P
Kiểu dự
đoán
Intra4x4
dọc
1 Ngang (Horizontal) Các mẫu I, J, K, L được ngoại suy theo chiều
Trang 32(a) Dự đoán cho luma kích thước 16x16
Có 4 kiểu dự đoán cho khối kích thước được đánh số từ 0 đến 3 Cách tính khối dự đoán P được minh họa trong Hình 2-12
Hình 2-12 Dự đoán intra cho khối 16x16
Trang 33Chương 2 CƠ SỞ LÝ THUYẾT
Trang 30
(b) Dự đoán cho chroma
Dự đoán cho chroma có 4 kiểu dự đoán như dự đoán cho luma kích thước 16x16
(2) Dự đoán Inter (Inter prediction)
Khác với dự đoán intra, dự đoán inter là quá trình dự đoán MB hoặc khối hiện tại trên ảnh đã được mã hóa trước đó Dự đoán inter cho P và B macroblock được thực hiện các khối có kích thước từ 16x16 đến 4x4 như các cách phân hoạch MB trong 2.3.2
Ảnh tham khảo có thể là ảnh trước hoặc là ảnh sau ảnh hiện tại theo thứ tứ hiển thị Các ảnh tham khảo dùng cho dự đoán một MB được chia thành hai danh sách:
Danh sách 0 (list0): bao gồm các ảnh trước ảnh hiện tại theo thứ tự hiển thị
Danh sách 1 (list1): bao gồm các ảnh sau ảnh hiện tại theo thứ tự hiển thị
P macroblock tham khảo tới các ảnh trong list0 trong quá trình dự đoán Mỗi khối với các kích thước nhỏ hơn 16x16 trong P macroblock có thể tham khảo tới các ảnh khác nhau trong list0 B macroblock tham khảo tới các ảnh trong list0 và list1 trong quá trình
dự đoán Mỗi khối với các kích thước nhỏ hơn 16x16 trong B macroblock có thể tham khảo tới các ảnh khác nhau trong list0 và list1 Có 3 cách thức tham khảo cho B macroblock:
Dự đoán list0: chỉ tham khảo tới các ảnh trong list0
Dự đoán list1: chỉ tham khảo tới các ảnh trong list1
Dự đoán đôi (bi-prediction): ảnh tham khảo là tổng có hệ số của ảnh trong list0 và list1
Ngoài ra, có 2 kiểu dự đoán đặc biệt là ―direct mode‖ trong B macroblock và ―skip mode‖ trong P và B macroblock Trong trường hợp này, không cần lưu vector chuyển động và dữ liệu dư thừa cho macroblock hiện tại trong bitstream Chúng được suy ra từ các khối ảnh lân cân được mã hóa trước đó
Để tăng độ chính xác cho quá trình ước lượng chuyển động, ảnh tham khảo có thể là ảnh ảo nội suy từ ảnh gốc H.264 cho phép độ chính xác đến ¼ pixel Các pixel phụ được
Trang 34nội suy từ các pixel lân cận Việc cho phép tìm kiếm trên ảnh nội suy làm tăng độ chính xác nhưng đồng thời cũng làm tăng độ phức tạp cho quá trình ước lượng chuyển động vì
độ phân giải của ảnh tham khảo tăng lên
2.4 Chuẩn mở rộng H.264/MPEG-4 AVC cho video đa hướng nhìn (MVC)
Chuẩn H.264 có phần mở rộng dành cho video đa hướng nhìn (MVC) Điểm khác biệt quan trọng nhất giữa video đa hướng nhìn và video đơn hướng nhìn trong H.264 là hỗ trợ
dự đoán inter-view trong phần mở rộng này Trong MVC, hai danh sách ảnh tham khảo list0 và list1 không chỉ chứa các ảnh trước và sau ảnh hiện tại mà còn chứa các ảnh từ các view lân cận đã được mã hóa MVC khai thác dữ liệu dư thừa giữa các ảnh liên view để đạt hiệu quả nén tốt khi số lượng dữ liệu tăng lên Tuy nhiên, MVC không cho phép ảnh ở thời điểm t0 của một view tham khảo đến ảnh ở view khác ở thời điểm t1 mà t0 khác t1 Điều này có liên quan đến việc cân bằng giữa độ phức tạp của dự đoán inter-view và lợi ích về hiệu quả nén khi chọn ảnh tham khảo từ các view lân cận Mặc dù có thêm ảnh tham khảo từ view lân cận nhưng cách thức mã hóa từ lớp macroblock trở xuống giống nhau giữa MVC và H.264 đơn hướng nhìn
MVC được thiết kế tương thích với H.264 view đơn MVC bitstream bao gồm một bitstream cơ sở tương ứng với view 0 Bitstream cơ sở được tạo và giải mã một cách độc lập với các view còn lại sử dụng kỹ thuật mã hóa trong H.264 view đơn
2.5 Phương pháp đánh giá kết quả
Để đánh giá hiệu suất của bộ mã hóa, đề tài dựa vào 3 tiêu chí: chất lượng ảnh tái tạo,
tỉ lệ nén và thời gian mã hóa
(1) Chất lượng ảnh tái tạo
Có hai phương pháp đánh giá: định tính và định lượng
Về định tính, chất lượng ảnh được đánh giá bằng mắt nhìn, cảm nhận của người xem Cách phổ biến nhất là tham khảo ý kiến của nhiều người (survey) về chất lượng ảnh tái
Trang 35Chương 2 CƠ SỞ LÝ THUYẾT
Giá trị PSNR thông thường trong nén video nằm trong khoảng 30 đến 50dB, giá trị càng cao càng tốt
(2) Tỉ lệ nén
Tỉ lệ nén được đánh giá thông chỉ số bitrate tính theo công thức (2-5):
Bitrate = 0.008*WrittenBytes/NoOfFrames*FrameRate (đơn vị kbit/s) (2-5) Trong đó,
WrittenBytes: Số byte của bitstream sau mã hóa
Trang 36 NoOfFrames: Số ảnh đƣợc mã hóa
FrameRate: Frame rate của video đầu vào
Bitrate càng thấp càng thể hiện độ nén cao
(3) Thời gian mã hóa
Thời gian mã hóa đƣợc tính là thời gian trung bình để mã hóa một ảnh
Processing_Time = SumEncTime / NoOfFrames (2-6) Trong đó,
Processing_Time: Thời gian trung bình mã hóa một ảnh
SumEncTime: Tổng thời gian mã hóa video đầu vào
NoOfFrames: Số ảnh đƣợc mã hóa
Thời gian mã hóa ngắn thể hiện bộ mã hóa có hiệu suất tốt
Trang 37CHƯƠNG 3 CÁC KẾT QUẢ NGHIÊN CỨU LIÊN QUAN
Phần này sẽ tổng hợp và đánh giá về các nghiên cứu liên quan
3.1 Cấu trúc dự đoán (Prediction Structure)
Cấu trúc dự đoán đóng một vai trò quan trọng cho hiệu quả nén trong mã hóa video Cấu trúc dự đoán phổ biến là ―IBBP…‖ Trong khi nghiên cứu các kĩ thuật cho mã hóa scalable video, cấu trúc dự đoán gọi là ―ảnh B phân cấp‖ (hierarchical B picture) cho thấy đạt hiệu quả nén tốt hơn so với cấu trúc dự đoán cổ điển ―IBBP …‖ Cấu trúc này đã trở thành công cụ thiết yếu trong mã hóa video đa hướng nhìn
thứ tự hiển thị
Hình 3-1 Cấu trúc dự đoán phân cấp ảnh B
Cấu trúc dự đoán phân cấp điển hình có 4 tầng như Hình 3-1 Ảnh đầu tiên của chuỗi ảnh là ảnh chính - ảnh IDR (I0), mã hóa theo kiểu intra Ảnh chính (I0,P0) là ảnh mà tất cả các ảnh đã mã hóa trước nó thì có thứ tự hiển thị trước nó Ảnh chính và tất cả các ảnh giữa 2 ảnh chính tạo nên một nhóm ảnh gọi là GOP Ảnh chính có thể mã hóa theo kiểu intra hoặc inter (tham khảo ảnh chính trước đó) Các ảnh còn lại (gọi là ảnh phụ) trong GOP được dự đoán theo từng cấp như minh họa trong hình Cấp 1: mũi tên màu đen, cấp 2: mũi tên màu xanh dương, cấp 3: mũi tên màu đỏ, cấp 4: mũi tên màu xanh lá
Trang 38Ưu điểm của cấu trúc phân cấp được kết hợp với dự đoán inter-view ở các phân cấp thời gian khác nhau Một nghiên cứu cho thấy áp dụng dự đoán inter-view ở cấp ảnh chính tăng trung bình 1.4dB PSNR, ở cấp ảnh phụ tăng trung bình 1.6 dB PSNR so với
mã hóa simulcast [9]
Một ví dụ áp dụng cấu trúc ảnh B phân cấp trong mô hình dự đoán theo thời gian và inter-view được minh họa ở Hình 3-2 [7] Mũi tên từ ảnh N đến ảnh M nghĩa là M tham khảo N Ảnh chính I0/P0 sử dụng dự đoán intra hoặc inter: I0 được mã hóa không tham khảo ảnh khác, ảnh P0 được mã hóa chỉ tham khảo đến ảnh chính I0/P0 cùng thời điểm (T0/T8) Ảnh phụ B3 được mã hóa tham khảo đến ảnh lân cận theo thời gian (P0/ B2) và lân cận theo view (B3 ở view khác)
Hình 3-2 Dự đoán inter-frame/inter-view dùng cấu trúc ảnh B phân cấp
3.2 Kiểu macroblock (Macroblock mode)
Một trong những vấn đề khó khăn khi hiện thực mã hóa video đa hướng nhìn là độ phức tạp trong tính toán do khối lượng lớn thông tin chứa trong chuỗi video nhiều view Các chuẩn hiện nay thực hiện mã hóa dạng khối (block-based) Có 9 kiểu (mode) trong dự