Đăng ký Đăng nhập
Trang chủ Bài tập lớn truyền thông đa phương tiện mã hóa nén ảnh jpeg và ứng dụng...

Tài liệu Bài tập lớn truyền thông đa phương tiện mã hóa nén ảnh jpeg và ứng dụng

.PDF
34
1
90

Mô tả:

Bài tập lớn  Truyền thông đa phương tiện Mã hóa - nén ảnh JPEG và ứng dụng   GVHD: PGS.TS. Nguyễn Thị Hoàng Lan Sinh viên MSSV Phạm Thanh Bình 20183693 Phạm Đức Đạt 20183704 Phạm Văn Hưởng 20183763 1 Phần I: Tìm hiểu về mã hóa-nén dùng phép biến đổi TC (Transform Coding) Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) Mục lục • Sơ đồ nén ảnh gồm 3 bước:  • Tiền xử lí: • Mã hóa xử lí-nén: • Hậu xử lí: • Tính độ đo hiệu năng của sơ đồ nén: • Tỉ số nén.  • Độ tổn hao.  Phần III: Tìm hiểu về một số công cụ, phần mềm nén ảnh đang có hiện nay và các ứng dụng của công nghệ nén ảnh JPEG. 2 2 Phần I: Tìm hiểu về mã hóa-nén dùng phép biến đổi TC Sơ đồ TC (Transform Coding) 3 3 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) Sơ đồ mã hóa Baseline JPEG 4 4 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) I. Tiền xử lí 1. Xử lý màu       Chuyển từ không gian màu RGB sang YCBCR . Mục đích: tăng thành phần độ chói, giảm các thành phần màu sắc. Công thức biến đổi từ RGB sang YCbCr: 5 5 Hình ảnh minh họa: 6 6 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) I. Tiền xử lí 2. Thực hiện bù mức (level offset) các giá trị điểm ảnh     Lúc mã hóa -128 với mỗi điểm ảnh     Lúc giải mã +128 với mỗi điểm ảnh Mục đích của điều này để đảm bảo tất cả các hệ số DCT sẽ là các đại lượng có dấu với dải rộng động tương tự. 7 7 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) I. Tiền xử lí 3. Chia khối ảnh đầu vào thành các khối 8x8 pixels để xử lý khối Mục đích: Tính toán DCT cho từng vùng dư thừa dữ liệu khác nhau Tất cả các block có cùng kích thước và mỗi block là một ma trận điểm ảnh 8×8 pixel được lấy từ một ảnh màn hình theo chiều từ trái sang phải, từ trên xuống dưới. Kích thước block là 8×8 được chọn bởi hai lý do sau: - Kích thước block lớn làm tăng độ phức tạp thuật toán - Khoảng cách giữa các pixel vượt quá 8 sẽ làm cho hàm tương quan suy giảm nhanh 8 8 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) II. Mã hóa xử lí nén 1.Biến đổi Cosin (DCT) đối với mỗi khối     Công đoạn đầu tiên của quá trình nén theo JPEG là biến đổi cosin rời rạc DCT (Discrete Cosine Transform). DCT biến đổi dữ liệu từ miền không gian sang miền tần số.     Biến đổi DCT được thực hiện trong phạm vi các khối 8*8 mẫu tín hiệu chói Y và các khối tương ứng của tín hiệu màu (Cb, Cr)      Biến đổi DCT hai chiều (2-D) được dùng cho các khối ảnh có kích thước 8x8. Quá trình biến đổi thuận DCT (Forward DCT) dùng trong tiêu chuẩn JPEG được định nghĩa như sau: 9 9 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) II. Mã hóa xử lí nén  Chú ý: F(0, 0) là giá trị trung bình của tất cả các điểm ảnh trong block. 10 10 Ví dụ minh họa 11 11 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) II. Mã hóa xử lí nén 2. Lượng tử hóa     Bước tiếp theo của quá trình nén ảnh là bước lượng tử hóa các hệ số DCT F(u , v) với mục đích chuyển các giá trị hệ số sang số nguyên để chuẩn bị cho mã hóa huffman. Mã hóa huffman là một thuật toán mã hóa dùng để nén dữ liệu. Nó dựa trên bảng tần số xuất hiện các ký tự cần mã hóa để xây dựng một bộ mã nhị phân cho các ký tự đó sao cho dung lượng (số bit) sau khi mã hóa là nhỏ nhất.     Đối với hầu hết các hình ảnh, phần lớn năng lượng tín hiệu nằm ở tần số thấp; chúng xuất hiện ở góc trên bên trái DCT     Nén được thể hiện do các giá trị bên phải thấp hơn biểu thị tần số cao hơn và thường nhỏ-đủ nhỏ để bị loại bỏ qua với ít biến dạng có thể nhìn thấy 12 12 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) II. Mã hóa xử lí nén Để thực hiện việc nén dữ liệu ta thực hiện chia các hệ số DCT cho bảng trọng số Q(u, v). 13 13 Ví dụ minh họa 14 14 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) II. Mã hóa xử lí nén 3. Quét zig-zag     Để mã hóa entropy các hệ số Fq (u, v ), trước hết cần biến đổi ma trận hệ số Fq (u, v ) thành chuỗi số một chiều. Trong kỹ thuật JPEG sử dụng phương pháp đọc theo đường zig-zag. 15 15 Ví dụ minh họa 16 16 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) II. Mã hóa xử lí nén 4. Mã hóa thành phần DC     Các hệ số DC là giá trị trung bình của các khối ảnh 8x8. Độ chói trung bình của các block ảnh gần nhau thường ít biến đổi, do đó trong chuẩn nén JPEG, các hệ số DC được mã hóa theo phương pháp DPCM. Để tăng hiệu suất nén, kết quả nhận được sau đó được mã hóa tiếp bằng Huffman.     Sơ đồ mã hóa thành phần DC: 17 17 Phần II: Tìm hiểu thuật toán của sơ đồ công nghệ nén JPEG cơ bản (baseline JPEG) II. Mã hóa xử lí nén       Hệ số DC của các block DCT được lần lượt đưa tới bộ DPCM. Thành phần sai số giữa hai hệ số liên tiếp sẽ được mã hóa trong bộ mã Huffman. Quá trình mã hóa Huffman được thực hiện cho thành phần DC như sau:   - Dò tìm trong bảng phân loại để tìm “loại” của giá trị ∆DC. (“loại” chính là chiều dài từ mã dùng để mã hóa thành phần ∆DC).   - Dùng bảng mã Huffman cho thành phần DC để tìm ra từ mã cho “loại” ∆DC tìm được ở trên   - Mã hóa nhị phân giá trị ∆DC  - Ghép các từ mã Huffman và giá trị nhị phân của ∆DC để có được từ mã cho thành phần DC. 18 18     Bảng phân loại hệ số AC và DC: 19 19     Bảng mã Huffman cho thành phần DC 20 20
- Xem thêm -

Tài liệu liên quan