Professional Documents
Culture Documents
- Tìm hiểu chung phương pháp nén Video tiên tiến (AVC: Advanced
Video Coding)
- So sánh phương pháp nén Video chuẩn MPEG - 4 với phương pháp
nén Video theo chuẩn MPEG - 1.
- Tìm hiểu một thuật toán trong nén theo chuẩn MPEG - 4, thử nghiệm
ứng dụng.
Tìm hiểu chung phương pháp nén Video tiên
tiến AVC và chuẩn MPEG - 4/ H264 AVC
- Là một chuẩn mã hóa/ giải mã Video và định dạng video đang được
sử dụng rộng rãi hiện nay để ghi, nén và chia sẻ Video phân giải cao,
dựa trên việc bù chuyển động (Motion - Compensation) trên từng
Block (Block Oriented).
Tìm hiểu chung phương pháp nén Video tiên
tiến AVC
- Kỹ thuật SVC (Scalable Video Coding) được sử dụng trong phương
pháp này để thể hiện sự tiên tiến.
Ứng dụng
- MPEG4 Part 10 /H264 hay AVC là một trong những định dạng
đang được dùng phổ biến nhất hiện nay trong công nghệ mã hóa,
phân phối và xử lý Video.
- Ví dụ: Digital Television, DVD and Blu - Ray Disks, Mobile TV,
Video Conferencing and Internet Video Streaming, iTunes Store
Movies/ Videos…
Đặc tính nổi bật của chuẩn nén Video
MPEG - 4/ H.264/ AVC
- Dự đoán không gian định hướng trong kiểu mã hóa Intra: hỗ trợ tới
17 kiểu dự đoán, làm cho việc dự đoán mẫu được chính xác hơn, đạt
hiệu quả nén cao hơn.
- Bù chuyển động với kích thước nhỏ có thể thay đổi. Kích thước bù
chuyển động nhỏ nhất là 4x4, điều này mang lại hiệu suất 15% so
với MPEG - 2.
- Kiểu dự đoán trọng số H.264/ AVC có thể hỗ trợ quá trình mờ dần
hay tối dần khung hình trong những đoạn Film có hiệu ứng mờ dần
(những frame đến sau rất giống so với những frame ngay trước nó,
chỉ có sắc độ là khác một chút).
Các Profile và các Level
H.264/AVC có 4 Profile như sau:
Các Profile và các Level
- Slice I (Slice mã hoá trong ảnh): Slice đã mã hoá bằng việc sử dụng
dự đoán chỉ từ các mẫu đã mã hoá bên trong cùng một Slice .
- Slice P (Predictive - Coded Slice ): các Slice được mã hoá bằng việc
sử dụng dự đoán liên ảnh từ các ảnh tham chiếu đã được mã hoá
trước đó sử dụng hầu hết cho Vector chuyển động và hệ số tham
chiếu để dự đoán các giá trị mẫu cho mỗi Block.
- 2 bits tiếp theo được sử dụng để chỉ ra rằng có hay không NALU
chứa chuỗi (tập hợp) các tham số Picture hoặc một mảnh của một
Picture tham chiếu.
- 5 bits tiếp theo được sử dụng để chỉ ra loại của NALU Units, cái
tương ứng với loại dữ liệu được mang trong NALU Unit.
Quá trình nén H264/ MPEG – 4:
- Khôi phục lỗi: Một trong những nhiệm vụ quan trọng nhất của bộ
giải mã là làm phù hợp và khôi phục lại các lỗi chắc chắn xảy ra, đặc
biệt là khi kết nối qua các liên kết dễ xảy ra lỗi như mạng không dây.
Các kỹ thuật trong H.264/ AVC
Mỗi thành phần chroma 8x8 được dự đoán dựa trên các mẫu chroma ở
trên và/hoặc bên trái đã được mã hóa trước đó. 4 chế độ dự đoán tương
tự như các chế độ dự đoán cho khối luma 16x16 đã trình bày ở trên, chỉ
khác ở số hiệu các chế độ:
Mode 0: DC
Mode 1: Horizontal
Mode 2: Vertical
Mode 3: Plane
Mã hóa frame I
Mã hóa kiểu dự đoán
Kiểu dự đoán của mỗi khối 4x4 phải được thông báo cho bộ giải mã và
có thể tốn nhiều dung lượng. Tuy nhiên, kiểu dự đoán của các khối 4x4
kề nhau là có tương quan. Bộ mã hóa sử dụng 1 cờ để đánh dấu cho biết
một khối 4x4 có sử dụng cùng kiểu dự đoán với các khối kề nó hay
không.
Mã hóa frame P
Mã hóa kiểu inter tạo ra mẫu dự đoán từ một hoặc nhiều frame được mã
hóa trước đó bằng cách dịch chuyển các mẫu từ các frame tham chiếu
(dự đoán bù chuyển động). H.264 sử dụng bù chuyển động theo khối
như một số chuẩn trước đó, nhưng khác biệt ở việc hỗ trợ nhiều kích
thước block, nhỏ nhất là 4x4 và hỗ trợ các vector chuyển động rất nhỏ,
tối thiểu ¼ pixel đối với thành phần luma.
Mã hóa frame P
Bù chuyển động theo cấu trúc cây (thành phần luma)
Mã hóa frame P
Ví dụ bộ mã hóa tự động chọn cách phân vùng tốt nhất
Mã hóa frame P
Vector chuyển động nhỏ hơn điểm ảnh
Các mẫu luma và chroma ở các vị trí nhỏ hơn điểm ảnh không tồn tại
trong hình tham chiếu, do đó cần nội suy chúng từ các mẫu gần đó, ví
dụ như hình dưới
Mã hóa frame P
Dự đoán vector chuyển động
Một vector dự đoán MVP được tính dựa trên các vector chuyển động đã
được tính trước đó. Sau đó, vector MVD được tạo ra là sự sai khác giữa
vector thực tế và vector được tính. Việc tạo vector MVP phụ thuộc cách
phân vùng.
Ở bộ giải mã, vector MVP được tạo ra theo cách tương tự, rồi cộng với
vector sai khác MVD
Biến đổi và lượng tử hóa
Nhiều phép biến đổi được mô tả trong chuẩn H.264: biến đổi 4x4 cơ
bản, biến đổi Hadamard 4x4 và 2x2, biến đổi 8x8
Biến đổi và lượng tử hóa
Phép biến đổi chiều thuận
Biến đổi và lượng tử hóa
Tính Cf
Xét biến đổi DCT 2 chiều của khối 4x4 X:
Y = A.X.AT
Với
Bằng cách nhân các thành phần của A với 2.5 và làm tròn, ta được Cf
Biến đổi và lượng tử hóa
Phép biến đổi chiều thuận
Để khôi phục tính trực chuẩn của A, ta lấy
Trong đó
- Ở mức mép khối: cường độ lọc phụ thuộc vào kiểu dự đoán Intra
hay Inter, sai số chuyển động.
- Ở mức mẫu: Các giá trị mẫu và các điểm bắt đầu phụ thuộc vào bộ
lượng tử hóa có thể dừng lọc cho mỗi mẫu riêng biệt
Thuật toán Deblocking trong H.264/AVC
Video (Deblocking Filter)
Boundary Strength (Bs)
Thuật toán deblocking trong H.264/AVC
Video (Deblocking Filter)
Nguyên lý lọc tách khối:
Ở cấp độ xử lý mẫu, nội dung của
một tập hợp các mẫu và lượng tử
hóa ngưỡng tham số có thể bật /
tắt tính năng lọc cho mỗi mẫu cá
nhân
Thuật toán Deblocking trong H.264/AVC
Video (Deblocking Filter)
Quá trình lọc khối
Bước 1: Chia bức ảnh thành các khối MB và tìm khối bị nhiễu
Thuật toán Deblocking trong H.264/AVC
Video (Deblocking Filter)
Bước 2: Lọc cạnh thành phần độ chói theo chiều dọc
Thuật toán deblocking trong H.264/AVC
Video (Deblocking Filter)
Bước 3: Lọc cạnh thành phần độ chói theo chiều ngang
Thuật toán Deblocking trong H.264/AVC
Video (Deblocking Filter)
Bước 4: Lọc cạnh thành phần sắc màu
Thuật toán Deblocking trong H.264/AVC
Video (Deblocking Filter)
Thực hiện bộ lọc
Ứng dụng chuyển đổi Video từ các định
dạng khác sang H264
- WinX H264 Converter Deluxe:
• Chuyển đổi định dạng video H.264 sang các định dạng
video MPEG, MP4, MKV, AVC, AVI, MOV, MP3, AAC,
MP3...
• Chuyển đổi định dạng MKV, AVCHD, MOD, camcorder/Blu-
ray HD, SD sang định dạng H.264.
• Tốc độ chuyển đổi nhanh, chất lượng cao.
- QuickTime Player: Hỗ trợ H.264 nhưng không hỗ trợ tất cả các định
dạng Video khác.
Ứng dụng chuyển đổi Video từ các định
dạng khác sang H264
Giao diện WinX H.264 Video Giao diện Quick Time
Converter Deluxe
Ứng dụng chuyển đổi Video từ các định
dạng khác sang H264
Sử dụng 1 video có dạng .webm không thuộc định dạng H264 nên
không thể mở trên quick time và sử dụng phần mềm WinX H.264 Video
Converter Deluxe để làm video được chuyển đổi sang định dạng H264
Ứng dụng chuyển đổi Video từ các định
dạng khác sang H264
Click vào Run và chờ video được chuyển sang dạng H264
Ứng dụng chuyển đổi Video từ các định
dạng khác sang H264
Kết quả khi chạy trên Quicktime
Ứng dụng chuyển đổi Video từ các định
dạng khác sang H264
So sánh chi tiết giữa 2 file trước và sau khi chuyển