Matlab
Thảo luận môn học: Matlab và ứng dụng
Giảng viên hướng dẫn: Vũ Thúy Hằng
Thành viên trong nhóm
Lê Minh Công
Hoàng Thị Kiểm
Triệu Thị Trang
Vi Đức Trung
Trần Anh Tú
Câu hỏi?
Thế nào là nén ảnh
số?
Mục đích của việc nén ảnh số là mã hoá
các dữ liệu ảnh về một dạng thu gọn,
tối thiểu hoá cả số bit
Câu hỏi?
Tại sao
phải nén ảnh?
Giảm được nguồn tài nguyên cũng như dung lượng lưu
trữ hay băng thông đường truyền. Tuy nhiên, vì dữ liệu
nén cần được giải nén nên sẽ đòi hỏi nhiều phần cứng và
xử lý.
Phương pháp mã hóa xử lý khối BTC
Phương pháp mã hoá xử lý khối bảo toàn moment MPBTC
Ý tưởng:
1
245
0
239
1
249
0
239
Chia ảnh ra thành nhiều khối 4x4
Tính giá trị trung bình và độ lệch chuẩn σ
Matlab
= 241,875
245
1
245
1
239
0
235
0
245
1
245
1
245
1
245
1
245
1
235
0
235
0
239
0
σ = 22,8787
Phương pháp mã hóa xử lý khối BTC
Phương pháp mã hoá xử lý khối bảo toàn moment MPBTC
Ý tưởng:
1
245
0
239
1
249
0
239
Giải mã ảnh:
= 241,875
246
237
246
237
246
246
237
237
246
246
246
246
246
237
237
237
Matlab
σ = 4,36
245
1
245
1
239
0
235
0
245
1
245
1
245
1
245
1
là tổng số bit 1
là tổng số điểm ảnh
245
1
235
0
235
0
239
0
1=a
0=b
Phương pháp mã hóa xử lý khối BTC
Phương pháp mã hoá xử lý khối bảo toàn moment MPBTC
Nhược điểm:
Chất lượng của nó rất kém đối với các khối có độ tương phản cao bởi vì trong trường hợp
Matlab
này chỉ hai giá trị lượng tử không thể mô tả đủ toàn bộ khối
Khắc phục
Sử dụng phương pháp thay đổi các kích thước của các khối
Phân cấp theo cấu trúc cây 4 nhánh
Phương pháp mã hóa xử lý khối BTC
Phương pháp mã hoá xử lý khối bảo toàn moment tuyệt đối AMBTC
Chọn các giá trị lượng tử a và b là các giá trị trung bình của các điểm ảnh trong hai nhóm (nhóm bit 1
Matlab
và nhóm bit 0)
là tổng số bit 1
là tổng số điểm ảnh
Phương pháp mã hóa xử lý khối BTC
Các ảnh nén bằng các giải thuật BTC khác nhau
BTC: Mã hoá xử lý khối bảo toàn moment
AMBTC: Mã hoá xử lý khối bảo toàn moment tuyệt đối
HBTC – VQ: Mã hoá xử lý khối phân cấp với lượng tử hoá vector
Phương pháp mã hóa xử lý khối BTC
Hàm được sử dụng
btcode:
out = btcode (infile,bx,by,outfile)
Matlab
Cú pháp
infile: là tên tập tin hình ảnh gốc cần nén
bx, by: là các kích thước của mỗi khối
outfile: là tên tập tin hình ảnh sau khi nén
Phương pháp mã hóa xử lý khối BTC
Dùng hàm btcode để nén ảnh theo giải thuật BTC
Chương trình
»
»
in = imread('C:\ViDu\AnhGoc.jpg')
out = btcode('C:\ViDu\AnhGoc.jpg',4,4,'C:\ViDu\AnhNen.jpg')
Phương pháp mã hóa xử lý khối BTC
Dùng hàm btcode để nén ảnh theo giải thuật BTC
Hình ảnh trước khi nén
Hình ảnh sau khi nén
Phương pháp mã hóa xử lý khối BTC
Dùng hàm btcode để nén ảnh theo giải thuật BTC
Ảnh gốc: 39 607 byte
Ảnh nén: 37 996 byte
Matlab
Cảm ơn cô giáo và các bạn
đã lắng nghe bài thuyết trình