Phương pháp tạo thông tin phụ trợ cho mã hóa video phân tán
Tóm tắt: Trong những năm gần đây, mã hóa video
phân tán (Distributed Video Coding - DVC) là một
giải pháp đầy hứa hẹn cho các ứng dụng mới như hệ
thống giám sát video, hệ thống cảm biến không dây
bởi những ứng dụng này không nhận được nhiều
sự hỗ trợ từ các chuẩn mã hóa video truyền thống
như H.264/AVC hay H.265/HEVC. Vì lý do đó,
DVC đã nhận được rất nhiều sự quan tâm của các
nhà nghiên cứu. Một trong những vấn đề cần quan
tâm trong DVC là tạo ra các thông tin phụ trợ (Side
Information - SI) như thế nào để vừa giảm độ phức
tạp giải mã đồng thời cải thiện hiệu năng nén cũng
như nâng cao chất lượng hình ảnh cuối cùng. SI có
chất lượng càng tốt thì hiệu năng hệ thống càng cao.
Trong bài báo này, tác giả đề xuất một thuật toán
mới để tìm các SI dựa trên ý tưởng thay đổi kích
thước các khối cần mã hóa phụ thuộc vào mức nhiễu
tương quan của mỗi khung hình Wyner-Ziv (WZ)
với các khung hình chính trước đó. Kết quả cho thấy
thuật toán này có thể cung cấp một giải pháp mới
cho kết quả PSNR cao hơn với tổng số bit mã hóa
nhỏ hơn so với phương pháp trước đây.
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Trang 7
Tóm tắt nội dung tài liệu: Phương pháp tạo thông tin phụ trợ cho mã hóa video phân tán
i tới nghĩa là giải mã thành công. Các bit này được đưa đến khối tái tạo và xử lý sau. Cuối cùng được đưa tới khối giải lượng tử và biến đổi DCT ngược để có chuỗi video được giải mã. III. THUẬT TOÁN TẠO THÔNG TIN PHỤ TRỢ SỬ DỤNG KÍCH THƯỚC KHỐI THAY ĐỔI Như đã đề cập ở trước, cách tiếp cận của DVC tập trung vào giảm độ phức tạp tính toán tại bộ mã hóa, đây chính là phần phức tạp nhất trong các kiến trúc mã hóa video dự đoán. Thêm vào đó, phương pháp trong [11] sử dụng ước lượng tương quan của các khối đầu vào kích thước 4 × 4 cho tất cả các khung hình trong chuỗi video. Để giảm thời gian mã hóa hơn nữa, bài báo này sẽ đề xuất phương pháp sử dụng kích thước khối đầu vào thích ứng để tăng cường hiệu năng của hệ thống DVC. Sơ đồ khối bộ mã hóa được trình bày trong Hình 4. DCT Bộ lượng tử hóa Mã hóa syndrome Tính CRC Bộ mã hóa H.264/AVC Dữ liệu video đầu vào Luồng bit mã hóa Lựa chọn kích thước khối Khung hình Intra Khung hình WZ Hình 4. Sơ đồ khối bộ mã hóa DVC thích ứng PHƯƠNG PHÁP TẠO THÔNG TIN PHỤ TRỢ CHO MÃ HÓA VIDEO PHÂN TÁN Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG14 Số 2 (CS.01) 2016 Phân loại khung hình: Trước hết, chuỗi video được chia thành hai loại là khung hình WZ và khung hình I (intra coding). Các khung hình lẻ được mã hóa truyền thống theo chuẩn H.264 ở chế độ I và các khung hình chẵn được mã hóa theo phương pháp WZ. Lựa chọn kích thước khối dựa trên ước lượng tương quan của các khung hình đầu vào: Trong [1], mỗi khối đầu vào kích thước 4 × 4, bộ mã hóa ước lượng mức độ tương quan với thông tin phụ trợ để cho phép giải mã đúng. Ở phía bộ giải mã, các dự đoán thông tin phụ trợ được tạo ra bằng cách tìm kiếm chuyển động của khối hiện thời kích thước 4 x 4 trong một cửa sổ tìm kiếm kích thươc 16 x 16 trong khung hình trước đó. Trong tình huống khi tương quan giữa khung hình WZ và khung hình chính trước đó là cao, điều đó có nghĩa là khung hình WZ khá giống với khung hình chính. Vì vậy có thể giảm thời gian mã hóa bằng cách sử dụng kích thước khối lớn hơn. Trong thuật toán đề xuất, kích thước của các khối đầu vào được ấn định cho mỗi khung hình WZ tùy thuộc vào trung bình của các sai khác tuyệt đối (Mean of Absolutely Difference- MAD) giữa khung hình WZ và khung hình I trước đó. Công thức được mô tả trong biểu thức (4). 4x4 khi MAD > N 8x8 khi MAD N S = ≤ (4) trong đó: S là kích thước khối; N là giá trị ngưỡng. Nếu MAD > N, chúng ta coi rằng tương quan thấp và vì vậy để có thể khôi phục lại chính xác khung hình WZ tại bộ giải mã, ta sẽ sử dụng kích thước khối 4 × 4. Nếu MAD ≤ N, điều đó có nghĩa là tương quan cao và vì vậy sử dụng kích thước khối 8 × 8. Trong phương pháp này, ngưỡng được tính là trung bình của MAD của các khung hình trước đó. Biến đổi: Sau khi lựa chọn kích thước khối của mỗi khung hình WZ, khung hình đó được chia thành các khối kích thước 4 × 4 hoặc 8 × 8 tùy thuộc vào kết quả của bước trước và áp dụng biến đổi DCT vào mỗi khối. Biến đổi DCT được sử dụng để khai thác dư thừa không gian trong các khối ảnh. Lượng tử hóa: Một bộ lượng tử hóa vô hướng được áp dụng vào các hệ số DCT thu được từ bước trước để tăng hiệu suất nén tương ứng. Tạo syndrome: Với một khối các hệ số DCT lượng tử hóa, ta tính trung bình cường độ sáng của khối hiện thời và biến đổi nó thành 8 bit nhị phân mà ta gọi là x i,j ở đó (i, j) là tọa độ của tâm khối hiện thời. Để đơn giản và giảm thời gian tính toán, x i,j được chia thành hai phần gọi là các bit trọng số lớn nhất (Most Significant Bits - MSB) và các bit trọng số nhỏ nhất (Least Significant Bits - LSB). Các bit MSB này được suy ra từ bộ giải mã vì nó được coi là có độ tương quan rất cao với các bit MSB của thông tin phụ trợ. Vì vậy các bit này không cần phải mã hóa và truyền đi từ bộ mã hóa. Đây là điều quan trọng có đóng góp lớn vào tỷ lệ nén. Số lượng các bit MSB càng lớn, tỷ lệ nén càng cao. Ngược lại, các bit LSB được coi là có tương quan thấp với các bit LSB của dự đoán khối tại bộ giải mã nên khó để dự đoán tốt tại bộ giải mã. Vì vậy, các bit này sẽ được áp dụng phương pháp mã hóa Coset. Giải mã syndrome Kiểm tra CRC Ước lượng, tái tạo và xử lý sau Tìm kiếm chuyển động YES NO Dự đoán ứng viên Luồng bit giải mã Bộ giải mã H.264/AVC Luồng bit giải mã Luồng bit mã hóa Khung hình WZ Khung hình Intra Hình 5. Sơ đồ khối bộ giải mã DVC thích ứng Mã dư thừa cyclic: Module mã dư thừa cyclic (Cyclic Redundancy Code - CRC) có mục đích tạo ra một chữ ký nhị phân để kiểm tra khối được giải mã, từ đó lựa chọn được ứng viên thông tin phụ trợ tốt. Tại bộ giải mã có thể có nhiều ứng viên thông tin phụ trợ và với mục đích xác định được khối giải mã đúng, ta sử dụng tổng kiểm tra CRC được gửi tới bộ giải mã. Bởi vì tất cả các ứng viên thông tin phụ trợ đều có mức tương quan nào đó với khối được mã hóa nên các ứng viên đã giải mã được coi là các phiên bản lỗi của khối đó. Do đó, CRC là cách để tìm ra ứng viên thông tin phụ trợ nào đã được giải mã không có lỗi để tạo ra kết quả giải mã thành công. Hiện nay có nhiều mã CRC với chiều dài và khả năng phát hiện sai khác nhau. Trong bài báo này sử dụng một mã CRC 16 bit (CRC-16) để phát hiện giải mã thành công trong hệ thống. Đa thức sinh cho mã CRC-16 được biểu diễn trong biểu thức (5): 16 12 5 1x x x+ + + (5) Nguyễn Thị Hương Thảo, Vũ Hữu Tiến, Vũ Văn San Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 2 (CS.01) 2016 15 Về phía giải mã, sơ đồ khối bộ giải mã được mô tả trong Hình 5 và được mô tả chi tiết dưới đây. Tìm kiếm chuyển động: Module tìm kiếm chuyển động có mục tiêu cung cấp một phiên bản bù chuyển động của khối hiện thời cho bộ giải mã syndrome. Trong thực tế, module này phải tạo ra các ứng viên thông tin phụ trợ và kết hợp với syndrome nhận được để dẫn đến giải mã khối thành công. Bộ giải mã tìm kiếm thông tin phụ trợ trong một cửa sổ 16 × 16 quanh khối hiện thời và gửi thông tin phụ trợ này tới bộ giải mã syndrome. Bộ giải mã syndrome: Module này có trách nhiệm lựa chọn các từ mã lượng tử hóa từ các coset trong khi thực hiện khai thác thông tin phụ trợ được gửi tới từ module tìm kiếm chuyển động ở trên. Dựa trên chỉ số Coset, bộ giải mã syndrome tìm trong Coset từ mã nào gần với thông tin phụ trợ nhất. Khối được giải mã này được gửi tới module tính toán CRC để kiểm tra tiếp. Tính CRC: Vì với mỗi dự đoán ứng viên, chúng ta sẽ giải mã ra một chuỗi từ mã từ tập các từ mã được gán nhãn bởi syndrome, cần phải thực hiện tính CRC để rút ra từ mã mà bộ mã hóa đã dự định gửi. Với mỗi dự đoán ứng cử viên, nếu CRC tính được giống với giá trị CRC đã gửi đến thì giải mã được coi là thành công. Nếu không thì tiếp tục lấy dự đoán ứng viên khác từ module tìm kiếm chuyển động và toàn bộ quá trình kiểm tra được lặp lại. Tái tạo: Module này có mục đích lấy được giá trị DCT tương ứng với mỗi hệ số lượng tử hóa, vì vậy tái tạo lại nguồn bằng một phiên bản xấp xỉ của khối các hệ số DCT đã mã hóa. Biến đổi ngược: Khi tất cả các hệ số đã được giải lượng tử, thực hiện quét zig-zag đã được thực hiện tại bộ mã hóa sẽ được làm ngược lại để lấy được khối hai chiều các hệ số được tái tạo. Các hệ số biến đổi sau đó được biến đổi ngược để thu được các pixel ban đầu. IV. KẾT QUẢ VÀ THẢO LUẬN Trong mô phỏng này, hiệu năng của phương pháp kích thước khối thay đổi đề xuất (Adaptive Block Size - ABS) được so với phương pháp sử dụng kích thước khối cố định trong [11]. Các chuỗi video định dạng QCIF được sử dụng trong mô phỏng là các chuỗi Akiyo, Container, Foreman và Carphone. Mỗi chuỗi được thử nghiệm với 100 khung hình. Bảng I mô tả PSNR trung bình và tổng số bit để mã hóa các chuỗi video. Các kết quả mô phỏng cho thấy PSNR trung bình của phương pháp đề xuất cao hơn PSNR của phương pháp sử dụng kích thước khối 8 × 8 và PSNR của phương pháp sử dụng kích thước khối 4 × 4 trong một số trường hợp với chuyển động ít như các chuỗi video Akiyo và Container. Lý do là vì phương pháp 8 × 8 có 64 chỉ số coset. Vì vậy, tại bộ giải mã, giải mã thành công thấp hơn phương pháp thích ứng và phương pháp 4 × 4. Bảng I. PSNR (dB) trung bình của các chuỗi video thử nghiệm Kích thước khối Akiyo Container Carphone Foreman 4 x 4 38,86 40,94 36,14 37,55 8 x 8 38,75 40,81 36,01 37,31 ABS 38,92 40,96 36,20 37,41 Bảng II. Số lượng bit trung bình trong một khung hình Kích thước khối Akiyo Container Carphone Foreman 4 x 4 101376 101376 101376 101376 8 x 8 82368 82368 82368 82368 ABS 93012 91112 95343 94131 Trong bảng II, tổng số bit trung bình của phương pháp đề xuất luôn nhỏ hơn phương pháp 4 × 4 và cao hơn phương pháp 8 x 8. Trong phương pháp 4 × 4, số các khối luôn là lớn nhất và không thay đổi cho các chuỗi video bởi vì số các khối là không đổi trong mỗi khung hình. Vì vậy, số lượng các bit LSB được sử dụng để mã hóa các khối trong phương pháp này là cao nhất. Trong phương pháp 8 × 8, số lượng các khối là thấp nhất và vì vậy số lượng các bit mã hóa là thấp nhất. Bằng cách sử dụng kích thước khối thích ứng trong phương pháp đề xuất, mặc dù số lượng các bit mã hóa không phải thấp nhất nhưng PSNR của phương pháp này là cao hơn so với các phương pháp khác. PHƯƠNG PHÁP TẠO THÔNG TIN PHỤ TRỢ CHO MÃ HÓA VIDEO PHÂN TÁN Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG16 Số 2 (CS.01) 2016 (a) Original frame (b) 8x8 (PSNR = 38.86 dB) (c) 8x8 (PSNR = 38.76 dB) (d) ABS (PSNR = 38.91 dB) Hình 6. PSNR của khung hình thứ 30 trong chuỗi video Akiyo Hình 6 mô tả PSNR của khung hình thứ 30 trong chuỗi video Akiyo. Các kết quả cho thấy cách tiếp cận dựa trên kích thước khối thích ứng của phương pháp đề xuất đạt được giá trị PSNR cao hơn trong khi tổng thời gian mã hóa thì thấp hơn phương pháp sử dụng kích thước khối 4 x 4. V. KẾT LUẬN Trong kiến trúc DVC, việc tạo thông tin phụ trợ là một trong các bước quan trọng để cải thiện hiệu năng của hệ thống. Để có thông tin phụ trợ chính xác giúp giải mã thành công, việc lựa chọn kích thước khối tại bộ mã hóa là quan trọng vì bước này xác định số lượng các chỉ số coset trong mã hóa syndrome. Do các bit LSB của mỗi pixel được giải mã từ các chỉ số coset tại bộ giải mã nên nếu số lượng các chỉ số coset càng cao thì khả năng sai lỗi trong giải mã syndrome càng cao và ngược lại. Trong phương pháp đề xuất, kích thước khối được điều chỉnh theo giá trị MAD của các khung hình trong các chuỗi video. Kích thước khối thay đổi tại bộ mã hóa giúp điều chỉnh số lượng các chỉ số coset và vì vậy giảm sai lỗi trong giải mã syndrome tại bộ giải mã. Phương pháp đề xuất cho thấy tính hiệu quả dựa trên kết quả PSNR và tổng số bit cần mã hóa khi sử dụng kích thước khối thích ứng so với phương pháp sử dụng kích thước khối cố định. TÀI LIỆU THAM KHẢO [1] A. Aaron, R. Zhang, and B. Girod, Wyner- Ziv coding of motion video, 36th Asilomar Conference on Signals, Systems and Computers, 2002. [2] J. Ascenso, C. Brites, and F. Pereira, Improving frame interpolation with spatial motion smoothing for pixel domain distributed video coding, 5th EURASIP Conference on Speech and Image Processing, Multimedia Communications and Services, 2005. [3] L. Natrio, C. Brites, J. Ascenso, and F. Pereira, Side information extrapolation for low- delay pixel-domain distributed video coding, International Workshop on Very Low Bitrate Video, 2005. [4] A. Aaron and B. Girod, , Wyner-Ziv video coding with low-encoder complexity, Picture Coding Symposium, 2004. [5] D. Slepian and J. Wolf, Noiseless Coding of Correlated Information Sources, IEEE Transactions on Information Theory, vol. 19, no. 4, pp.471-480, July 1973. [6] A. Wyner and J. Ziv, The Rate-Distortion Function for Source Coding with Side Information at the Decoder, IEEE Transactions on Information Theory, vol. 22, no. 1, pp.1-10, January 1976. [7] R. Puri and K. Ramchandran, PRISM: A new robust video coding architecture based on distributed compression principles, 40th Allerton Conf. Communication, Control and Computing,, Allerton, IL, USA, 2002. [8] A. Aaron, R. Thang, and B. Girod (2002) “Wyner-Ziv Coding of Motion Video”, in Proc. Asilomar Conference on Signals and Systems, Pacific Grove, CA, USA, November 2002. [9] B. Girod, A. Aaron, S. Rane and D. Rebollo- Monedero (2005) “Distributed Video Coding”, Proceedings of the IEEE, vol. 93, no. 1, pp. 71- 83, January 2005 [10] X. Artigas, J. Ascenso, M. Dalai, S. Klomp, D. Kubasov, M. Ouaret (2007) “The Discover Codec: Architecture, Techniques and Evaluation”, in Proc. of Picture Coding Nguyễn Thị Hương Thảo, Vũ Hữu Tiến, Vũ Văn San Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 2 (CS.01) 2016 17 Symposium (PCS), Lisboa, Portugal, November 2007. [11] S. Milani and G, Calvagno, A Distributed Video Coder Based on the H.264/AVC Standard, 15th European Signal Processing Conference, Poznan, pp.673-677, Poland, 2007. A NEW METHOD IN GENERATING SIDE INFORMATION FOR DISTRIBUTED VIDEO CODING Abstract: Distributed video coding is the promising solution for emerging applications such as wireless video surveillance, wireless video sensor networks that have not been supported by traditional video coding standards. Success of distributed video coding is based on exploiting the source statistics at the decoder with availability of some side information. The better the quality of side information, the higher the performance of the distributed video coding system. In this paper, a novel side information creation method is proposed by using different block sizes based on the residual information at the encoder. The proposed solution is compared with the previous PRISM solution and simulated results show that the proposed solution robustly improves the coding performance in some cases of test sequences. Keyword: DVC, Wyner-Ziv Coding Nguyễn Thị Hương Thảo, nhận bằng tốt nghiệp đại học và Thạc sỹ Học viện Công nghệ Bưu chính Viễn thông vào các năm 2003 và 2010. Hiện giảng dạy và làm nghiên cứu sinh tại Khoa Kỹ thuật Điện tử 1 - Học viện Công nghệ Bưu chính Viễn thông. Lĩnh vực nghiên cứu: xử lý tín hiệu video, xử lý ảnh, lý thuyết thông tin. Vũ Hữu Tiến, tốt nghiệp kỹ sư và Thạc sỹ tại Đại học Bách khoa vào các năm 2002 và 2004. Nhận học vị Tiến sỹ năm 2011 tại Đại học Chulalongkorn, Thái Lan. Hiện công tác tại Khoa Đa phương tiện, Học viện Công nghệ Bưu chính Viễn thông. Lĩnh vực nghiên cứu: xử lý tín hiệu video, xử lý ảnh, đồ họa máy tính. Vũ Văn San, nhận học vị Tiến sỹ năm 2000 tại Viện Điện tử Viễn thông, Hàn Quốc. Hiện công tác tại Học viện Công nghệ Bưu chính Viễn thông. Lĩnh vực nghiên cứu: truyền dẫn và xử lý tín hiệu số.
File đính kèm:
- phuong_phap_tao_thong_tin_phu_tro_cho_ma_hoa_video_phan_tan.pdf