Xây dựng thuật toán ẩn lỗi hiệu quả nhằm nâng cao chất lượng truyền video trên kênh truyền vô tuyến

  • Số trang: 43 |
  • Loại file: PDF |
  • Lượt xem: 17 |
  • Lượt tải: 0
nhattuvisu

Đã đăng 26946 tài liệu

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ LÊ VĂN HUYÊN XÂY DựNG THUậT TOÁN ẩN LỗI HIệU QUả NHằM NÂNG CAO CHấT LƯợNG TRUYềN VIDEO TRÊN KÊNH TRUYềN VÔ TUYếN LUẬN VĂN THẠC SĨ Hà Nội – 2011 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ LÊ VĂN HUYÊN XÂY DựNG THUậT TOÁN ẩN LỗI HIệU QUả NHằM NÂNG CAO CHấT LƯợNG TRUYềN VIDEO TRÊN KÊNH TRUYềN VÔ TUYếN Ngành: Công nghệ Điện tử - Viễn thông Chuyên ngành: Kỹ thuật Điện tử Mã số: 60 52 70 LUẬN VĂN THẠC SĨ HƯỚNG DẪN KHOA HỌC: TS. ĐINH TRIỀU DƯƠNG Hà Nội – 2011 MỤC LỤC Bảng từ khoá ............................................................................................. 5 Danh sách các hình vẽ ............................................................................... 6 Danh sách bảng – biểu .............................................................................. 7 I. Đặt vấn đề ......................................................................................... 8 II. Giới thiệu về H.264 ........................................................................... 9 1. Tổng quan về nén video .................................................................. 9 2. Đặc điểm và ứng dụng của H.264................................................. 10 3. Lớp trừu tượng mạng – NAL ........................................................ 13 4. Lớp mã hoá video – VCL ............................................................. 14 a. Hình, Khung, và Miền ................................................................ 15 b. Phân loại khung........................................................................... 16 c. Định dạng YCbCr ....................................................................... 17 d. Macro-block ................................................................................ 18 e. Mảnh và nhóm mảnh .................................................................. 18 III. Các thuật toán ẩn lỗi ....................................................................... 21 1. Ẩn lỗi ở mức MB .......................................................................... 23 a. Thuật toán ẩn lỗi ở mức MB trên miền không gian ................... 23 b. Thuật toán ẩn lỗi ở mức MB trên miền thời gian ....................... 24 2. Thuật toán ẩn lỗi ở mức khung ..................................................... 24 a. Thuận toán ẩn lỗi Frame Copy ................................................... 25 b. Thuật toán Motion Vector Copy ................................................. 25 3. Đề xuất thuật toán sửa lỗi mất toàn khung ................................... 25 a. Phương pháp véc-tơ trung vị có định hướng .............................. 26 b. Xử lý các MB tĩnh....................................................................... 28 IV. Kết quả thực hiện – đánh giá .......................................................... 30 1. So sánh kết quả giữa các thuật toán .............................................. 30 2. So sánh kết quả giữa các mẫu video ............................................. 33 Trang 3 3. Thuật toán đề xuất......................................................................... 34 V. Kết luận ........................................................................................... 35 VI. Phụ lục............................................................................................. 36 VII. Tài liệu tham khảo........................................................................... 43 Trang 4 Bảng từ khoá Tiếng Anh Tiếng Việt Bit-rate Tốc độ bit Blocking artefact Hiện tượng/hiệu ứng (viền) khối giả De-blocking filter Lọc làm mịn/lọc loại bỏ viền khối Error-propagation (Hiệu ứng) lỗi lan truyền Field Miền Frame Khung Macro-block Khối Motion compensation Bù chuyển động Motion-vector Véc-tơ chuyển động Picture Hình Ringing artefact Hiện tượng/hiệu ứng vòng giả Slice Mảnh Sub-block Khối nhỏ Video streaming Truyền tải video Trang 5 Danh sách các hình vẽ Hình 1 - Quá trình mã hoá và giải mã video H.264 .................................. 11 Hình 2 - Phân lớp H.264 ........................................................................... 12 Hình 3 - Sơ đồ khối mã hoá 1 Macro-Block trong H.264 ........................ 15 Hình 4 - Progressive - interlaced frame .................................................... 15 Hình 5 - Phân loại khung: I, P, B .............................................................. 16 Hình 6 - Hiệu ứng lan truyền lỗi ............................................................... 17 Hình 7 - YUV 4:4:4 và 4:2:2 .................................................................... 18 Hình 8 - YUV 4:2:0................................................................................... 18 Hình 9 - Mảnh (slice) khi không sử dụng FMO ....................................... 19 Hình 10 - Chia MB vào các nhóm mảnh (slice group) ............................. 19 Hình 11 - Ẩn lỗi trên miền không gian WABP cho MB 16x16 ............... 24 Hình 12 - Phương pháp Frame Copy ........................................................ 25 Hình 13 - Lỗi trong MVC khi có các khối không chuyển động ............... 26 Hình 14 - Vị trí các khối lân cận ............................................................... 27 Hình 15 - Lọc lấy các véc-tơ cùng hướng................................................. 28 Hình 16 - Bổ sung 4 khối lân cận.............................................................. 28 Hình 17 - So sánh kết quả các thuật toán với mẫu Stefan ........................ 32 Hình 18 - So sánh kết quả giữa các mẫu video ......................................... 33 Trang 6 Danh sách bảng – biểu Bảng 1 - Kích thước trung bình của khung P trong một số mẫu video CIF ..... 22 Bảng 2 - Kích thước trung bình của khung P trong một số mẫu video QCIF .. 22 Bảng 3 - So sánh kết quả các thuật toán với mẫu Stefan .................................. 30 Bảng 4 - So sánh kết quả giữa các mẫu video................................................... 33 Trang 7 I. Đặt vấn đề Hiện nay việc truyền cũng như lưu trữ video số đang rất phổ biến, có thể kể đến các ứng dụng như phát quảng bá (bao gồm cả broadcast và multicast) trong truyền hình số, trao đổi video thời gian thực trong các ứng dụng gọi điện thấy hình, cao cấp hơn là các ứng hội nghị truyền hình; lưu trữ phim trên đĩa quang, trên ổ cứng,… Trong quá trình lưu trữ, và đặc biệt là trong khi trao đổi gói tin trên mạng, việc video bị lỗi là không thể tránh khỏi. Đối mặt với vấn đề này, một mặt người ta vẫn sử dụng các biện pháp cổ điển với lưu trữ/truyền dẫn dữ liệu số như sao lưu dự phòng, nâng cao chất lượng truyền dẫn,… đồng thời, người ta còn xây dựng các phương pháp ẩn lỗi video. Các phương pháp này không thực hiện khôi phục lại dữ liệu ban đầu, mà hướng tới việc làm thế nào để người xem, qua cảm nhận thị giác của mình, ít thấy được những ảnh hưởng của lỗi. Để tiết kiệm chi phí truyền dẫn, chi phí lưu trữ, hình ảnh sau khi được quay từ máy quay sẽ được xử lý để giảm dung lượng. Việc này đồng nghĩa với mỗi đơn vị dữ liệu sẽ mang nhiều thông tin hơn, và việc sửa lỗi/ẩn lỗi càng trở lên quan trọng. Trong truyền dẫn video ngày nay, đảm bảo tính thời gian thực có thể coi là yêu cầu quan trọng nhất. Khi gặp phải lỗi, phương pháp cổ điển là truyền lại gói tin lỗi/mất sẽ rất dễ gây ảnh hưởng tới chỉ số chất lượng này, nên sẽ kém hiệu quả hơn việc cứ tiếp tục truyền các gói tin tiếp theo song song với thực hiện ẩn lỗi khi phát lại video ở phía thu. Đề tài này sẽ thực hiện nghiên cứu về chuẩn nén dữ liệu phổ biến/tiên tiến nhất hiện nay là chuẩn H.264, cùng với một số thuật toán cơ bản trong việc ẩn lỗi video, nhằm mục tiêu đưa ra một số đề xuất cải tiến nâng cao hiệu quả ẩn lỗi. Trang 8 II. Giới thiệu về H.264 H.264, hay AVC, hay MPEG-4 part 10, là chuẩn mã hoá video tiên tiến nhất hiện nay. Tiêu chuẩn H264 phiên bản đầu tiên được đưa ra năm 2003 hướng tới khả năng mã hoá chuỗi video với tốc độ bit chỉ bằng một nửa so với MPEG-2, nhưng vẫn có chất lượng tương đương. H264 cũng mang đến những cải thiện đáng kể về hiệu quả mã hoá, khả năng phòng/sửa lỗi, và độ thân thiện với môi trường truyền bằng việc sử dụng những phương thức dự đoán hiệu quả hơn cho các khung I, P, và B. 1. Tổng quan về nén video Video sơ khai là một chuỗi các hình ảnh liên tiếp. Ở công nghệ phim nhựa, để lưu lại một đoạn phim, người ta lưu liên tiếp các ảnh với tốc độ 24 ảnh/s. Khi xem lại phim, chuỗi ảnh này sẽ được chiếu tuần tự lên màn ảnh với tốc độ giống như khi quay. Chuyển sang thời đại kỹ thuật số, ảnh được phân ra thành các điểm ảnh, với thông tin về màu sắc, độ sáng được số hoá, và được lưu lại thành file định dạng RAW, BMP,… Các phương pháp mã hoá thông tin khác nhau đã được sử dụng nhằm mục đích giảm bớt số lượng bit (nén) cần thiết để lưu ảnh, dựa trên đặc tính dư thừa thông tin do cách biểu diễn, và dư thừa thông tin do bản chất hình ảnh: ảnh là tập các mảng có màu sắc/độ sáng tương tự nhau (hay còn được gọi là dư thừa thông tin theo không gian). Với video số, bên cạnh 2 dạng dư thừa thông tin trên còn có dư thừa thông tin theo thời gian: các ảnh (khung – frame) liên tiếp nhau thường tương tự nhau, ảnh sau mang lượng thông tin rất ít so với ảnh trước. Người ta đã tận dụng cả 3 dạng dư thừa thông tin này để thực hiện nén video, với tỉ lệ nén lên tới hàng trăm lần, trong khi chất lượng hình ảnh vẫn được đảm bảo sắc nét, trung thực. Trong công nghệ video, khái niệm mã hoá (encoding) thường được sử dụng nhiều, và mang nghĩa tương đương với nén (compress). Mã hoá để nén, hay nén bằng cách mã hoá. Nén dựa trên dư thừa thông tin theo không gian và theo thời gian thường dựa trên các thuật toán nén có tổn hao thông tin (lossly compression). Để thấy Trang 9 được hiệu quả của việc nén video, có thể lấy ví dụ về những bộ phim HD Blueray. Một phiên bản của phim 2012 trên mạng, với định dạng FullHD (1920x800) với độ dài 158 phút, tốc độ 24fps, có dung lượng phần video 13GiB (~14 * 109 byte). Nếu cũng video này, đem lưu trữ ở dạng tập các ảnh liên tiếp, sử dụng 24 bit màu sẽ cần có dung lượng: 1920 * 800 * 3 * 24 * 158 * 60 = 1,48 * 1012 byte. Từ đó, có thể thấy lỷ số nén video đạt được tới hơn 100 lần. 2. Đặc điểm và ứng dụng của H.264 Hiện nay trên thế giới có nhiều chuẩn nén hình ảnh ra đời theo thời gian, như H.261, MPEG-1 part 2, H.262, H.263, MPEG-4 part 2,... Các chuẩn nén hình ảnh càng về sau càng có nhiều cải tiến về công nghệ nén. Tức là lượng dữ liệu hay nói cách khác kích thước của tập tin video sau khi nén được giảm nhiều hơn so với các chuẩn nén trước, nhưng vẫn giữ được chất lượng tương đương hoặc tốt hơn. Đồng nghĩa với điều đó là các thuật toán và phương thức xử lý ngày càng phức tạp hơn. Ra đời tháng 05/2003 dưới sự hợp tác của 2 nhóm ITU-T VCEG (Video Coding Experts Group – nhóm chuyên gia mã hoá video) và ISO/IEC MPEG, H.264 thường được đánh giá chuẩn mã hoá thông tin tốt nhất tại thời điểm hiện tại. Chuẩn H264 thực tế không quy định cách thực hiện việc mã hoá, mà chỉ quy định định dạng hình ảnh sau mã hoá và các bước thực hiện giải mã. Việc mã hoá thế nào được để mở cho các nhà sản xuất thiết bị/phần mềm mã hoá. Ưu điểm có thể thấy được ngay của việc có khả năng nén tốt hơn này là tiết kiệm chi phí: giảm được lưu lượng đường truyền trong quá trình trao đổi video, và giảm được chi phí lưu trữ video. Trang 10 Hình 1 - Quá trình mã hoá và giải mã video H.264 H.264 được thiết kế để sử dụng cho nhiều mục đích khác nhau, có thể kể ra như [4]:  Phát video quảng bá qua cáp đồng trục, DSL, vệ tinh, sóng mặt đất,…  Lưu trữ trên ổ cứng, đĩa quang,…  Hội nghị truyền hình qua mạng ISDN, LAN, DSL, mạng di động,…  Truyền hình theo yêu cầu Video-on-demand,…  … Danh sách các dịch vụ không bị giới hạn, và luôn có khả năng xuất hiện thêm các dịch vụ mới. Vấn đề này đã được đặc biệt quan tâm khi thiết kế H.264. H.264 được xây dựng thành 2 lớp (Hình 2): lớp mã hoá video (Video Coding Layer – VCL) và lớp trừu tượng mạng (Network Abstraction Layer – NAL). VCL là phần lõi, thực hiện mã hoá nội dung video theo cách hiệu quả nhất có thể, trong khi NAL làm nhiệm vụ đưa dữ liệu sau mã hoá vào đúng định dạng để truyền trên mạng hoặc để lưu trữ. Trang 11 Hình 2 - Phân lớp H.264 Khi so sánh với các chuẩn mã hoá video trước, ví dụ MPEG-2, H.264 có một số đặc điểm mới, hoặc cải tiến như sau:  Bù chuyển động với nhiều kích thước block khác nhau. Block nhỏ nhất có kích thước 4x4 điểm ảnh giúp cho hình ảnh ít bị dạng khối hơn.  Ước lượng chuyển động tới mức ¼ pixel. Điều này giúp cho việc ước lượng được chính xác hơn, hình ảnh tạo ra mịn hơn. Các chuẩn trước đó thường chỉ thực hiện tới mức ½ pixel.  Sử dụng nhiều khung tham chiếu: trong các chuẩn trước đó, thông thường chỉ sử dụng một khung hình tham chiếu (là khung liền trước khung hiện tại), cá biệt có trường hợp sử dụng 2 khung – một khung trước và một khung sau. Trong H264, có thể sử dụng tới 5 khung tham chiếu. Việc này giúp cho mức độ chính xác của việc dự đoán véc-tơ chuyển động được nâng lên rõ rệt. Và tất nhiên, điều này giúp cho kết quả của việc giải mã sát hơn với nguồn hình ảnh trước khi mã hoá.  Khung B có thể được sử dụng làm khung tham chiếu. Điều này cho phép việc mã hoá được thực hiện linh hoạt hơn, hiệu quả hơn.  Thực hiện lọc làm mịn trong mỗi chu trình xử lý (in-loop de-blocking filter) giúp loại bỏ các đường viền khối giả phát sinh do bước biến đổi và lượng tử  Thực hiện biến đổi với khối kích thước nhỏ: trong tất cả chuẩn mã hoá phổ biến trước H.264, việc biến đổi được thực hiện với các khối có kích thước 8x8. Trong khi đó H.264 sử dụng chủ yếu khối 4x4. Việc này cho Trang 12 phép bộ mã hoá hoạt động chi tiết hơn, giảm thiểu hiện tượng vòng giả (“ringing artifact”).  Sử dụng hai phương pháp mã hoá entropy: mã hoá số học nhị phân tương thích ngữ cảnh (Context-adaptive binary arithmetic coding – CABAC) và mã hoá có độ dài từ thay đổi tương thích ngữ cảnh (Context-adaptive variable-length coding – CAVLC)  Biến đổi cosin rời rạc (DCT) được thay bằng biến đổi số nguyên  Sử dụng các bộ tham số (Parameter sets) để đảm bảo đồng bộ các luật mã hoá, và cũng để phân loại dữ liệu, tránh mất những dữ liệu quan trọng.  Sắp xếp macro-block linh hoạt: thực hiện phân mảnh mỗi khung hình ra thành nhiều nhóm slices khác nhau. Khi giải mã, các nhóm slice sẽ được giải mã độc lập. Điều này đặc biệt có ích trong trường hợp thực hiện ẩn lỗi mức macro-block.  Cho phép thay đổi linh hoạt kích thước slice.  Dự phòng dữ liệu: để tăng độ an toàn, H.264 cho phép phía mã hoá bổ sung dữ liệu dự phòng cho một vùng của khung hình.  Phân loại dữ liệu: dữ liệu của mỗi slice được phân ra thành 3 gói (A, B, C) dựa theo mức độ quan trọng, và sẽ có mức độ ưu tiên khác nhau khi truyền tin, và thậm chí là khi lưu trữ. 3. Lớp trừu tượng mạng – NAL Mục tiêu của lớp trừu tượng mạng là mang lại tính “phù hợp với môi trường”. Với NAL, dữ liệu sau khi đã mã hoá bởi lớp VCL có thể được sử dụng trên các môi trường khác nhau:  RTP/IP, H.32X, MPEG-2 cho việc trao đổi/quảng bá thông tin thời gian thực trên mạng vô tuyến/hữu tuyến.  Các định dạng file khác nhau để lưu trữ, hay để gửi trên mạng như một bản tin MMS. Trong NAL sử dụng một số khái niệm như: đơn vị NAL (NAL units), luồng byte (byte stream), gói Trang 13  Đơn vị NAL: dữ liệu video sau mã hoá được phân thành những đơn vị NAL, là một nhóm các byte. Byte đầu tiên của mỗi đơn vị NAL là byte tiêu đề, mang thông tin về loại dữ liệu được chứa trong các byte còn lại của đơn vị NAL tương ứng. Đơn vị NAL có thể được sử dụng trong cả hai phương pháp truyền tải: theo luồng (bitstream-oriented) và theo gói (package-oriented).  Đơn vị NAL khi sử dụng theo luồng: Một số hệ thống như H.320, H.222.0 yêu cầu việc trao đổi các đơn vị NAL dưới dạng một luồng bit, và cần có phương pháp để phân tách các đơn vị NAL trong luồng. Khi đó, mỗi đơn vị NAL được xác định bởi một nhóm 3 byte được gọi là tiền tố khởi đầu (start code prefix).  Đơn vị NAL khi sử dụng theo gói: Trong các hệ thống như RTP/IP, dữ liệu sau mã hoá được chuyển tại dưới dạng các gói của lớp truyền tải. Khi đó, mỗi đơn vị NAL có thể được đặt trong 1 gói riêng, nên không còn cần phải có tiền tố khởi đầu như trường hợp trên.  Phân loại đơn vị NAL: có 2 loại đơn vị NAL: 1 loại chứa thông tin từ lớp VCL – là thông tin của bản thân video đã được mã hoá, và một loại dữ liệu chứa các thông tin khác, ví dụ như bộ tham số mã hoã, hay các thông tin phụ trợ khác.  Bộ tham số mã hoá: mỗi bộ là một tập các tham số phục vụ việc giải mã như định dạng video (PAL, NTSC,…), phương pháp mã hoá entropy (CABAC/CAVLC),… 4. Lớp mã hoá video – VCL Giống như các chuẩn video khác kể từ H.261, lớp mã hoá video của H.264 tuân theo cấu trúc như chỉ ra trong Hình 3 [6]. Theo đó, H.264 không bổ sung thêm một khối nào để thực hiện tăng hiệu quả nén so với các chuẩn trước mà chỉ thực hiện cải tiến đối với từng khối, từ đó tăng được hiệu quả chung. Trang 14 Hình 3 - Sơ đồ khối mã hoá 1 Macro-Block trong H.264 a. Hình, Khung, và Miền Một đoạn video H.264 là một chuỗi các các hình (Picture). Mỗi hình có thể là toàn bộ một khung (Frame) hay chỉ là một miền (field) của khung. Tuy nhiên, khái niệm hình và khung nhiều khi được sử dụng tương đương nhau. Thông thường, một khung bao gồm 2 miền đan xen – miền trên và miền dưới. Miền trên chứa các dòng điểm ảnh chẵn (0, 2, …, H-2) còn miền dưới chứa các dòng lẻ (1, 3, …, H-1), trong đó H là số lượng điểm ảnh theo chiều dọc của khung. Tuỳ theo thời điểm của 2 miền trên/dưới của một khung mà khung được xác định là loại p (progressive - Hình 4a) – 2 miền mang thông tin về hình ảnh tại cùng một thời điểm, hay loại i (interlaced - Hình 4b) – 2 miền chứa thông tin của 2 thời điểm khác nhau. (a) (b) Hình 4 - Progressive - interlaced frame Trang 15 b. Phân loại khung Trong nén video khung được phân ra thành 3 loại: khung I, khung P, và khung B (Hình 5) [7] Hình 5 - Phân loại khung: I, P, B  Khung I (intra-coded): là một hình ảnh hoàn chỉnh, như một hình ảnh tĩnh thông thường. Thông tin lưu trữ trong khung I có thể được nén dựa trên đặc tính dư thừa thông tin theo không gian, giống như khi nén ảnh tĩnh (ví dụ: chuẩn nén ảnh tĩnh JPEG).  Khung P (predicted/predictive): chỉ lưu thông tin về phần thay đổi so với khung trước đó. Ví dụ, khi có hình ảnh một quả bóng vàng chuyển động trên nền trắng, bộ mã hoá H.264 sẽ chỉ mã hoá thông tin về sự chuyển động của quả bóng, mà không lưu thông tin gì về nền trắng. Do đó, lượng dữ liệu cần lưu sẽ được giảm đi rất nhiều.  Khung B (bi-predictive): mang thông tin về sự khác biệt giữa khung hiện tại với các khung trước đó và các khung sau đó. Do lượng dữ liệu lưu trong khung P và khung B nhỏ hơn nhiều so với khung I, nên mức độ nén sẽ phụ thuộc vào tỉ lệ giữa số lượng khung trong từng loại khung I, P, B. Tỉ lệ khung I càng ít thì tỉ lệ nén sẽ càng cao, tuy nhiên, khi giảm tỉ lệ khung I sẽ dẫn tới vấn đề sau: Do chỉ có khung I mới không bị ảnh hưởng của hiệu ứng lan truyền lỗi (error propagation) nên giảm tỉ lệ khung I đồng nghĩa với tăng ảnh hưởng của lan truyền lỗi. Trang 16 Hình 6 - Hiệu ứng lan truyền lỗi Bên cạnh đó, giảm tỉ lệ khung I còn có những ảnh hưởng nhỏ như làm hạn chế khả năng tua khi xem phim. Thông thường, các phần mềm xem phim chỉ cho phép tua nhảy cách tới những vị trí của khung I. c. Định dạng YCbCr Mắt người thông thường có đặc điểm là nhạy cảm với mức độ sáng hơn so với màu sắc (nhận biết được mức độ thay đổi độ sáng ở mức độ nhỏ). Các hệ thống mã hoá/hiển thị video đã lợi dụng đặc điểm này để có được chất lượng hiệu quả nhất bằng cách sử dụng không gian màu YCbCr (thay vì RGB) cùng với việc giảm tần suất lấy mẫu cho các thành phần Cb, Cr. YCbCr (hay còn được gọi là YUV – YUV thường được sử dụng trong kỹ thuật tương tự, còn YCbCr là tên thường được sử dụng trong kỹ thuật số) là một không gian màu với 3 thành phần: Y là thành phần độ sáng, còn Cb, Cr là hai thành phần màu. Do mắt người nhạy cảm hơn với độ sáng, nên khi lấy mẫu video, thông thường người ta lấy mẫu Cb, Cr với tần suất thấp hơn. Tần suất lấy mẫu thường được biểu thị bởi một bộ số, ví dụ: 4:4:4, 4:2:2, 4:2:0, … Trong đó 4:2:0 là tần suất phổ biến hơn cả, với tần suất lấy mẫu của thành phần Cb, Cr bằng ¼ thành phần Y (½ theo chiều dọc và ½ theo chiều ngang). Trang 17 Hình 7 - YUV 4:4:4 và 4:2:2 Hình 8 - YUV 4:2:0 d. Macro-block Một hình (picture) được phân ra thành nhiều khối macro-block (MB). Mỗi MB là một hình vuông gồm 16x16 mẫu độ sáng và 8x8 mẫu màu. MB là phần tử cơ bản của hình khi thực hiện mã hoá và giải mã. e. Mảnh và nhóm mảnh Mảnh (slice) là một chuỗi các MB khi quét hình theo dòng (raster scan). Một hình thường được chia thành một hoặc một số mảnh. Trong quá trình mã hoá/giải mã, mỗi mảnh là một đơn vị độc lập – việc giải mã một mảnh không ảnh hưởng/phụ thuộc vào các mảnh khác (Hình 9). Với mỗi ảnh gồm nhiều Trang 18 mảnh, khi thực hiện mã hoá/giải mã có thể tiến hành song song đối với các mảnh, từ đó nâng cao được tốc độ xử lý. Hình 9 - Mảnh (slice) khi không sử dụng FMO Tuy nhiên, trong H.264, với việc sử dụng FMO, đã xuất hiện khái niệm mới là nhóm mảnh (slice group), đồng thời thay đổi khái niệm về mảnh. Theo đó, các MB trong một hình được chia vào các nhóm mảnh khác nhau (Hình 10). Việc chia MB không còn được thực hiện theo dạng quét dòng, mà việc xác định MB nào thuộc nhóm nào được mô tả trong một bảng ánh xạ. Khi đó, khái niệm mảnh sẽ là một chuỗi các MB liên tiếp trong nhóm mảnh. Hình 10 - Chia MB vào các nhóm mảnh (slice group) Trường hợp không sử dụng FMO, khi đó, sẽ là một trường hợp đặc biệt của FMO – toàn bộ hình chỉ có một nhóm mảnh duy nhất. Tuy nhiên, việc mã hoá một mảnh không phụ thuộc việc có sử dụng FMO hay không. Mỗi mảnh có thể được mã hoá theo một trong những phương pháp sau:  Mảnh loại I: là mảnh với tất cả các MB được mã hoá với đầy đủ thông tin gốc, không phải tham chiếu tới khác khung hình khác.  Mảnh loại P: là mảnh có chứa một số MB được mã hoá có sử dụng tham chiếu từ các khung hình khác, với tối đa một dự đoán bù chuyển động. Trang 19  Mảnh loại B: bổ sung thêm một số MB có 2 dự đoán bù chuyển động. Trang 20
- Xem thêm -