1. Trang chủ
  2. » Luận Văn - Báo Cáo

báo cáo bài tập lớn môn học phương pháp tính đề tài 21 tìm hiểu về biến đổi cosin rời rạc trong nén ảnh

12 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tìm hiểu về Biến đổi Cosin Rời Rạc trong nén ảnh
Tác giả Nguyễn Văn Hóa, Lương Tuấn Kiệt, Nguyễn Vũ Thiên Bình, Cao Thanh Kiệt
Người hướng dẫn Lê Thị Yến Nhi
Trường học Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Phương pháp tính
Thể loại Báo cáo bài tập lớn
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 12
Dung lượng 1,18 MB

Nội dung

Với sự phát triển của khoa học công nghệ, truyền hình không ngừng được cải tiến so với các hệ thống truyền hình thô sơ, truyền hình đen trắng và màu, hệ thống tivi và truyền hình kỹ thuậ

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ

MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA

BÁO CÁO BÀI TẬP LỚN MÔN HỌC

PHƯƠNG PHÁP TÍNH

ĐỀ TÀI 21 TÌM HIỂU VỀ BIẾN ĐỔI COSIN RỜI RẠC

TRONG NÉN ẢNH

Lớp L09 Nhóm 13 GVHD: Lê Thị Yến Nhi

Trang 2

MỤC LỤC

I PHẦN MỞ ĐẦU – ĐẶT VẤN ĐỀ 3

II CƠ SỞ LÝ THUYẾT 4

1 Biến đổi cosin rời rạc (DCT) 4

2 Ứng dụng DCT trong nén ảnh 4

2.1 Quy trình nén ảnh 4

2.2 Ưu và nhược điểm 8

III CODE MATLAB 9

IV KẾT LUẬN 10

V TÀI LIỆU THAM KHẢO 11

Nguyễn Văn Hóa 2311094 100%

Lương Tuấn Kiệt 2311769 100%

Nguyễn Vũ Thiên Bình 2310302 100%

Cao Thanh Kiệt 2311751 100%

Trang 3

I PHẦN MỞ ĐẦU – ĐẶT VẤN ĐỀ

Nhìn chung, truyền hình đã đáp ứng được nhiều nhu cầu quan trọng của con người như giải trí, giáo dục, văn hóa, chính trị, nghệ thuật Với sự phát triển của khoa học công nghệ, truyền hình không ngừng được cải tiến so với các hệ thống truyền hình thô sơ, truyền hình đen trắng và màu, hệ thống tivi và truyền hình kỹ thuật số

đã có bước nhảy vọt về chất với việc số hóa tín hiệu truyền hình. Sự xuất hiện của công nghệ truyền hình kỹ thuật số có nhiều ưu điểm so với truyền hình analog như: khả năng chống nhiễu tốt, chất lượng âm thanh, hình ảnh tốt và nhất quán cùng nhiều hiệu ứng đặc biệt mà truyền hình analog không thể làm được

Đặc biệt trong việc truyền dữ liệu, truyền tải, ghi âm, tín hiệu video hình ảnh đen trắng, lồng tiếng hình ảnh đen trắng, nhân bản hình ảnh màu và quảng cáo đòi hỏi phải kết hợp tín hiệu thành phần thành một tín hiệu kênh duy nhất. Sau đó, nhu cầu về các dịch vụ truyền hình đa chức năng (multimedia) và tương tác hai chiều giữa trung tâm phát hình và người sử dụng đòi hỏi độ rộng kênh truyền phải lớn mà dải thông của các kênh thông tin hạn chế Do vậy để đáp ứng nhu cầu về truyền dẫn và lưu giữ thông tin ngày càng tăng trưởng mạnh mẽ theo cấp số nhân, bên cạnh việc nghiên cứu và áp dụng các công nghệ thông tin mới thì việc áp dụng các kỹ thuật nén dữ liệu cũng đóng vai trò quyết định.Trong những năm gần đây, có rất nhiều các phương pháp đã và đang được nghiên cứu rộng rãi để thực hiện nén ảnh Tất cả đều với một mục đích chung là làm thế nào để biểu diễn một ảnh với ít “bit” nhất để có thể tối thiểu hoá dung lượng kênh truyền và không gian lưu trữ trong khi vẫn giữ được tính trung thực của ảnh Điều này tương đương với việc biểu diễn ảnh có độ tin cậy cao nhất với tốc độ “bit” nhỏ nhất Để hiểu sâu hơn về lĩnh vực nén dữ liệu

đặc biệt là nén ảnh số, nhóm chúng em đã chọn đề tài: “TÌM HIỂU VỀ

BIẾN ĐỔI COSIN RỜI RẠC ĐỂ NÉN ẢNH”

Trang 4

II CƠ SỞ LÝ THUYẾT

1 Biến đổi cosin rời rạc (DCT)

DCT (Discrete Cosine Transform): biến đổi dữ liệu dưới dạng biên độ thành dữ liệu dưới dạng tần số Mục đích: loại bỏ sự dư thừa dữ liệu trong không gian

DCT chia thành 2 loại:

 DCT một chiều

 DCT hai chiều

Thuật toán DCT là phần quan trọng nhất trong nén ảnh JPEG, mình sẽ

sử dụng DCT hai chiều cho code nên trong bài viết này nhóm em xin giới thiệu qua về DCT-2d

F(u,v)=(2

2 ( 2

2∑

i=0

N−1

J =0

M−1

2 N(2 ⅈ+1)].cos[ πv

2 M (2 ⅈ+1)]⋅f(ⅈ, j)

Chú thích:

 Hình ảnh đầu vào là N by M;

 f (i, j) là cường độ của pixel trong hàng i và cột j;

 F (u, v) là hệ số DCT trong hàng k1 và cột k2 của ma trận DCT

 Đố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 của DCT

 Nén được thực 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ị bỏ qua với ít biến dạng

có thể nhìn thấy

 Đầu vào DCT là một mảng 8-8 số nguyên Mảng này chứa mức độ thang màu xám của mỗi pixel;

 Pixel 8 bit có các mức từ 0 đến 255

Trang 5

II.1. Quy trình nén ảnh

Chia ảnh thành các khối :

Ảnh được chia thành các khối pixel không chồng lấp (thường là 8x8) 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

Biến đổi DCT:

Mỗi khối 8x8 pixel được biến đổi bằng DCT DCT là một phép biến đổi tuyến tính, chuyển đổi dữ liệu từ miền không gian (pixel) sang miền tần số Kết quả của biến đổi DCT là một ma trận hệ số DCT, trong đó các hệ số ở góc trên bên trái đại diện cho các tần số thấp (thông tin quan trọng) và các hệ số ở góc dưới bên phải đại diện cho các tần số cao (thông tin chi tiết).

Trang 6

Lượng tử hóa

Ma trận hệ số DCT được lượng tử hóa bằng cách chia mỗi hệ số cho một giá trị lượng tử tương ứng và làm tròn kết quả Các giá trị lượng tử được lựa chọn dựa trên các đặc tính thị giác của con người, với các hệ số tần số cao thường được lượng tử hóa mạnh hơn (chia cho giá trị lượng tử lớn hơn) vì mắt người ít nhạy cảm

Chức năng cơ bản: chia các hệ số F(u,v) cho các hệ số ở vị trí tương ứng trong bảng lượng tử Q(u,v) để biểu diễn số lần nhỏ hơn các giá trị cho phép của hệ số DCT:

Trong phần lượng tử hóa, để biến đổi mảng hai chiều các hệ số Fq(u,v) thành một chuối số một chiều ta sử dụng qua thuật toán zigzag

Trang 7

Thu được kết quả là một chuỗi các số của ma trận cũ được lấy theo hình zigzag từ ô thứ nhất đến ô cuối cùng

Mã hóa Entropy:

Mục đích: Làm giảm độ dư thừa thống kê trong các phần tử được

mã hóa để truyền

Mã hóa entropy sử dụng mã hóa VLC và mã hóa RLC

 RLC (Run Length Code): mã hóa độ dài chạy thực hiện mã hóa một hệ số khác 0 sau giá trị DC bằng một từ mã

VLC (Variable Length Code): Mã hóa độ dài biến đổi được thực thi bằng cách đặt các từ mã ngắn cho các mức có xác suất xuất hiện cao và các từ mã dài cho các mức có xác suất xuất hiện thấp

Ghép các khối

Các khối đã mã hóa được ghép lại để tạo thành ảnh nén Thông tin về các giá trị lượng tử được sử dụng cũng được lưu trữ để giải nén ảnh.

Trang 8

II.2. Ưu và nhược điểm

Ưu điểm của nén ảnh bằng DCT:

Hiệu quả nén cao: DCT có khả năng loại bỏ các tần số cao

không quan trọng, giúp giảm kích thước dữ liệu ảnh đáng kể mà không làm giảm chất lượng ảnh quá nhiều

Phổ biến: DCT được sử dụng rộng rãi trong các tiêu chuẩn nén

ảnh như JPEG, MPEG và H.26x

Nhược điểm của nén ảnh bằng DCT:

Mất mát: Nén ảnh bằng DCT là một phương pháp nén mất mát,

nghĩa là một phần thông tin của ảnh gốc sẽ bị mất đi trong quá trình nén và không thể khôi phục hoàn toàn

Hiện tượng khối: Ở mức nén cao, ảnh nén bằng DCT có thể

xuất hiện hiện tượng khối, làm giảm chất lượng hình ảnh

Trang 9

III CODE MATLAB

Dưới đây là ví dụ về cách sử dụng DCT để nén một ảnh trong MATLAB:

1 Đọc và chuẩn bị ảnh:

2 Chia ảnh thành các block 8x8:

3 Áp dụng DCT cho từng block:

4 Lượng tử hóa:

5 Giải lượng tử hóa và DCT ngược:

6 Ghép các block lại thành ảnh:

7 Loại bỏ phần đệm và hiển thị:

Trang 10

*NHẬN XÉT CHUNG

Chất lượng hình ảnh: Quan sát ảnh gốc và ảnh tái tạo, bạn có thể

nhận thấy một số khác biệt nhỏ về độ sắc nét và chi tiết Ảnh tái tạo có thể bị mất một chút chi tiết, đặc biệt là ở các vùng có nhiều chi tiết nhỏ hoặc độ tương phản cao

Kích thước file: So sánh kích thước file của ảnh gốc (Picture1.jpg) và

ảnh tái tạo (thường được lưu dưới dạng file jpg mới) Bạn sẽ thấy kích thước file ảnh tái tạo nhỏ hơn đáng kể so với ảnh gốc

=> giảm đáng kể kích thước ảnh nhưng chất lượng ảnh giảm tối

thiểu ở mức độ mà mắt người khó nhận ra

Cải thiện và tối ưu hóa:

1 Tối ưu hóa ma trận lượng tử (Q): Ma trận Q sử dụng là ma trận

lượng tử mặc định của JPEG Tuy nhiên, có thể tinh chỉnh ma trận này để đạt được mức nén mong muốn và chất lượng hình ảnh tốt hơn Ví dụ, tăng các giá trị trong ma trận Q sẽ làm tăng độ nén nhưng giảm chất lượng hình ảnh

2 Sử dụng Zigzag Scan: Sau khi lượng tử hóa, nên sắp xếp các hệ

số DCT theo thứ tự zigzag trước khi mã hóa Việc này giúp tận dụng tính chất tập trung năng lượng ở các tần số thấp của ảnh, từ

đó cải thiện hiệu quả nén

3 Mã hóa Entropy (RLE hoặc Huffman): Để nén ảnh JPEG hiệu

quả hơn, cần mã hóa entropy dữ liệu sau khi lượng tử hóa và sắp

Trang 11

xếp zigzag Hai phương pháp mã hóa entropy phổ biến là Run-Length Encoding (RLE) và Huffman Coding

IV KẾT LUẬN

Biến đổi cosin rời rạc (DCT) đã khẳng định vai trò quan trọng trong lĩnh vực nén ảnh, đặc biệt là trong chuẩn JPEG phổ biến Thông qua việc chuyển đổi tín hiệu ảnh từ miền không gian sang miền tần số, DCT cho phép loại bỏ hiệu quả các thành phần tần số cao, ít quan trọng đối với mắt người, từ đó giảm đáng kể kích thước dữ liệu ảnh mà không làm giảm quá nhiều chất lượng hình ảnh

Bài tập lớn này đã cung cấp cái nhìn tổng quan về DCT, từ cơ sở lý thuyết đến ứng dụng thực tế trong nén ảnh Việc thực hành với MATLAB đã giúp minh họa rõ ràng quá trình biến đổi DCT, lượng tử hóa,

và tái tạo lại ảnh từ các hệ số DCT

Tuy nhiên, DCT cũng có những hạn chế nhất định Quá trình nén ảnh

sử dụng DCT là một quá trình nén mất mát, nghĩa là một phần thông tin của ảnh gốc sẽ bị mất đi sau khi nén Mức độ mất mát này phụ thuộc vào ma trận lượng tử hóa được sử dụng Việc lựa chọn ma trận lượng tử hóa phù hợp là một bài toán cân bằng giữa chất lượng ảnh và

tỷ lệ nén

Trong tương lai, với sự phát triển của công nghệ, các kỹ thuật nén ảnh mới có thể sẽ được phát triển để khắc phục những hạn chế của DCT và đạt được hiệu quả nén tốt hơn Tuy nhiên, DCT vẫn sẽ là một công cụ quan trọng và không thể thiếu trong lĩnh vực nén ảnh trong nhiều năm tới

Vì thời gian và kiến thức có hạn nên bài báo cáo của chúng em còn nhiều thiếu sót cùng với đó là một đề tài khá lạ với chương trình học thường ngày, nên bài báo cáo của chúng em chỉ mới dừng lại ở việc tìm hiểu, đúng như tên đề tài nhóm đã chọn Nhưng với đề tài trên, nhóm

đã lên kế hoạch làm việc và phân chia công việc cụ thể cho từng thành viên, các thành viên trong nhóm với tinh thần phối hợp, nâng cao kiến thức đã hoàn thành được bài báo cáo này Qua bài báo cáo nhóm đã rút ra:

- Về kiến thức

Trang 12

+ Ứng dụng của phép biến đổi cosin rời rạc trong thực tế, cụ thể là qui trình nén ảnh

+ Hiểu được qui trình và một vài bước mã hóa dữ liệu trong nén ảnh

- Về kĩ năng

+ Biết cách chọn lọc thông tin đầy đủ

+ Tìm hiểu tổng quát và chi tiết cách hoạt động của qui trình nén ảnh

V TÀI LIỆU THAM KHẢO

 Viblo Asia: Nén ảnh theo chuẩn JPEG: https://viblo.asia/p/nen-anh-theo-chuan-jpeg-maGK7pzOZj2

 Scribd: Phương pháp nén ảnh theo chuẩn

JPEG:https://www.scribd.com/doc/52683135/Ph

%C6%B0%C6%A1ng-phap-nen-%E1%BA%A3nh-theo-chu

%E1%BA%A9n-JPEG

Ngày đăng: 21/06/2024, 09:18

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w