Trong nhiều ứng dụng, ngoài việc trích thủy vân người dùng còn muốn khôi phục lại ảnh gốc từ ảnh chứa tin, các lược đồ thủy vân có khả năng như vậy được gọi là thủy vân thuận nghịch.. Đố
Trang 1
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
NGUYỄN THÁI SƠN
THỦY VÂN THUẬN NGHỊCH TRÊN ẢNH SỐ VÀ
MỘT SỐ ỨNG DỤNG TRONG Y TẾ
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
THÁI NGUYÊN -2016
Trang 2
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
NGUYỄN THÁI SƠN
THỦY VÂN THUẬN NGHỊCH TRÊN ẢNH SỐ VÀ
MỘT SỐ ỨNG DỤNG TRONG Y TẾ
Ngành: Công nghệ thông tin
Mã số: 60.48.01.01
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TS Phạm Văn Ất
THÁI NGUYÊN -2016
Trang 3
LỜI CAM ĐOAN
Tôi xin cam đoan luận văn thạc sĩ Công nghệ thông tin: “Thủy vân thuận
nghịch trên ảnh số và một số ứng dụng trong y tế” là kết quả của quá trình
học tập, nghiên cứu khoa học độc lập, nghiêm túc
Các số liệu trong luận văn là trung thực, có nguồn gốc rõ ràng, được trích dẫn và có tính kế thừa, phát triển từ các tài liệu, tạp chí, các công trình nghiên cứu đã được công bố, các website,…
Các phương pháp nêu trong luận văn được rút ra từ những cơ sở lý luận
và quá trình nghiên cứu tìm hiểu của tác giả
Hà nội, tháng năm 2016
Tác giả
Nguyễn Thái Sơn
Trang 4LỜI CẢM ƠN
Tôi xin chân thành cảm ơn thầy PGS.TS Phạm Văn Ất đã tận tình hướng dẫn, dạy dỗ về mặt chuyên môn, động viên khích lệ về mặt tinh thần và tạo mọi điều kiện cho tôi hoàn thành luận văn tốt nghiệp
Cám ơn các thầy cô Khoa Công nghệ thông tin, các cán bộ Phòng đào tạo ĐH & SĐH đã quan tâm, tạo điều kiện giúp đỡ tôi rất nhiều trong quá trình học tập và nghiên cứu tại trường
Cám ơn Truyền hình Nhân đạo Việt Nam đã tạo điều kiện về thời gian thuận lợi cho tôi trong suốt thời gian học tập và nghiên cứu
Tôi cũng mong muốn nói lời cảm ơn tới gia đình và những người thân của tôi đã luôn theo sát, ủng hộ động viên tôi trong quá trình học tập, công tác
Cuối cùng, tôi xin gửi lời cám ơn tới tất cả bạn bè, đồng nghiệp vì sự quan tâm, góp ý để tôi có thể hoàn thành tốt luận văn
Hà Nội, ngày tháng năm 2016
Tác giả
Nguyễn Thái Sơn
Trang 5MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC HÌNH VẼ v
DANH MỤC CÁC BẢNG VẼ vi
MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ THỦY VÂN THUẬN NGHỊCH 3
1.1.Một số khái niệm 3
1.1.1 Khái niệm giấu tin 3
1.1.2 Phân loại phương pháp giấu tin 3
1.1.3 Mô hình kỹ thuật giấu tin 4
1.2.Một số vấn đề cơ bản về thủy vân 6
1.2.1 Khái niệm về thủy vân 6
1.2.2 Phân loại thủy vân 6
1.2.3 Các ứng dụng của thủy vân với ảnh số 7
1.3.Ảnh số 10
1.3.1 Khái niệm ảnh Bitmap 10
1.3.2 Phân loại ảnh bitmap 10
1.3.5 Định dạng tệp ảnh bitmap 16
1.3.6 Chất lượng ảnh 17
1.4.Hàm băm 18
1.5 Phương pháp nén loạt dài 19
1.6.Thủy vân thuận nghịch 20
CHƯƠNG 2: THỦY VÂN THUẬN NGHỊCH SỬ DỤNG PHÉP BIẾN ĐỔI MỞ RỘNG HIỆU 31
2.1.Phép biến đổi Haar nguyên trên một cặp giá trị 31
2.2.Lược đồ thủy vân Tian 34
2.2.1 Phương pháp mở rộng hiệu và khái niệm khả mở 35
Trang 62.2.2 Phương pháp chèn bit thấp và khái niệm khả biến 40
2.2.3 Một số tính chất đối với thuật toán khả mở và chèn bít thấp 43
2.2.4 Thuật toán thủy vân 43
2.2.5 Thuật toán trích tin và khôi phục ảnh gốc 45
2.3.Một số lược đồ cải tiến phương pháp mở rộng hiệu 46
2.3.1 Lược đồ Alattar 46
2.3.2 Lược đồ Mohammad 54
CHƯƠNG 3: CÀI ĐẶT VÀ ỨNG DỤNG 62
3.1.Bài toán chuẩn đoán bệnh 62
3.1.1 Mô tả bài toán 62
3.1.2 Phương pháp giải quyết bài toán 62
3.2.Phần mềm thử nghiệm ứng dụng trong y tế 65
3.2.1 Thuật toán nhúng thủy vân 65
3.2.2 Thuật toán trích tin và khôi phục ảnh gốc 66
3.3.Kết quả thực nghiệm 67
KẾT LUẬN VÀ KIẾN NGHỊ 71
TÀI LIỆU THAM KHẢO 72
Trang 7DANH MỤC CÁC HÌNH VẼ
Hình 1.1.Phân loại các kỹ thuật giấu tin 3
Hình 1.2.Mô hình thuật toán nhúng tin 4
Hình 1.3 Mô hình trích tin 5
Hình 1.4.Phân loại thủy vân theo mục đích ứng dụng 6
Hình 1.5 Biểu diễn các điểm ảnh trong ảnh số 11
Hình 1.6 Tổ hợp màu Red-Green-Blue trong hệ màu RGB 12
Hình 1.7 Tổ hợp các màu trong mô hình màu CMYK 13
Hình 1.8 Mặt phẳng màu U-V tại giá trị Y = 0.5 15
Hình 1.9 Minh hoạ cấu trúc tệp ảnh bitmap 16
Hình 1.10: Biểu đồ histogram của ảnh màu Pepper 17
Hình 1.11 Điểm Peak và Zero 21
Hình 1.12 Các đường chéo của khối DCTLT 24
Hình 1.13 Lược đồ nhúng tin LS 29
Hình 3.1 Mô hình nhúng hồ sơ bệnh nhân 63
Hình 3.2 Mô hình trích hồ sơ bệnh nhân và xác thực tính toàn vẹn 64
Hình 3.3.Hồ sơ bệnh nhân 67
Hình 3.4 Ảnh XQ gốc 67
Hình 3.5.Giao diện nhúng hồ sơ bệnh nhân vào ảnh gốc 68
Hình 3.6.Ảnh chứa hồ sơ 68
Hình 3.7.Giao diện trích hồ sơ bệnh nhân và khôi phục ảnh gốc 69
Hình 3.8.Hồ sơ bệnh nhân sau khi trích ra từ ảnh chứa hồ sơ 69
Hình 3.9.Ảnh sau khi khôi phục từ ảnh chứa hồ sơ (Ảnh gốc) 70
Trang 8DANH MỤC CÁC BẢNG VẼ
Bảng 1 Kết quả tiền xử lý và nhúng tin trên Hình 1.12 25Bảng 2 Kết quả trích tin và khôi phục ảnh gốc 28
Trang 9
MỞ ĐẦU
1 Tính cấp thiết của đề tài nghiên cứu
Một trong những thành tựu quan trọng của những thập niên cuối thế kỷ 20, đầu thế kỷ 21 là sự ra đời phát triển của mạng Internet Mọi người đều có thể kết nối vào Internet để tìm kiếm thông tin một cách dễ dàng thông qua nhà cung cấp dịch vụ Internet Người dùng có thể đọc các thông tin mới nhất, tra cứu các thư viện số, tìm thông tin lĩnh vực mình quan tâm Bên cạnh
đó các nhà cung cấp sản phẩm cũng sẵn sàng cung cấp dữ liệu của mình cho người dùng thông qua mạng
Tuy nhiên việc phân phối một cách phổ biến các tài nguyên trên mạng hiện nay luôn gặp phải vấn nạn sao chép và sử dụng không hợp pháp Kỹ thuật thuỷ vân được xem là một trong những giải pháp hữu hiệu trong việc bảo vệ bản quyền và xác thực tính toàn vẹn của dữ liệu số Trong nhiều ứng dụng, ngoài việc trích thủy vân người dùng còn muốn khôi phục lại ảnh gốc từ ảnh chứa tin, các lược đồ thủy vân có khả năng như vậy được gọi là thủy vân thuận nghịch Thủy vân thuận nghịch được đề xuất vào đầu những năm 2000 và đang nhận được nhiều sự quan tâm của cộng đồng nghiên cứu Trong giấu tin thuận nghịch nói chung và thủy vân thuận nghịch nói riêng thường sử dụng một số hướng tiếp cận như: dịch chuyển histogram, đặc trưng nén JPEG, nén bảo toàn và các phép biến đổi nguyên thuận nghịch Trong nhóm phép biến đổi nguyên thuận nghịch, phép biến đổi mở rộng hiệu được đánh giá là một trong những phép biến đổi hay và
có nhiều tiềm năng ứng dụng Do vậy, em đã chọn đề tài “Thủy vân thuận
nghịch trên ảnh số và một số ứng dụng trong y tế” làm luận văn tốt
nghiệp của mình
Trang 102 Đối tượng và mục đích nghiên cứu
Đối tượng nghiên cứu của luận văn là nghiên cứu về ảnh số, kỹ thuật thủy vân thuận nghịch và một số hướng tiếp cận của thủy vân thuận nghịch để xây dựng phần mềm ứng dụng trong y tế …với mục đích xác thực tính toàn vẹn của dữ liệu và khôi phục được ảnh gốc từ ảnh chứa tin
3 Phạm vi nghiên cứu
Đề tài nghiên cứu thủy vân thuận nghịch trên ảnh số và một số ứng dụng trong y tế Qua đó đề tài muốn tập trung nghiên cứu về thủy vân thuận nghịch
sử dụng phép biến đổi mở rộng hiệu
4 Mục tiêu nghiên cứu
Từ những yêu cầu cần thiết là xác thực tính toàn vẹn của dữ liệu và khôi phục được ảnh gốc từ ảnh chứa tin, vì vậy đề tài tập trung nghiên cứu và đưa
ra các lược đồ thủy vân thuận nghịch với mục tiêu có khả năng nhúng tin cao
và chất lượng ảnh tốt
5 Phương pháp nghiên cứu
Phương pháp nghiên cứu của đề tài là sự kết hợp giữa nghiên cứu về thủy vân thuận nghịch sử dụng phép biến đổi mở rộng hiệu dựa trên cơ sở phân tích
lý thuyết của các lược đồ kết hợp với thực nghiệm trên thực tế
6 Kết cấu của luận văn
Luận văn bao gồm:
Phần mở đầu
Chương I: Tổng quan về thủy vân thuận nghịch
Chương II: Thủy vân thuận nghịch sử dụng phép biến đổi mở rộng hiệu Chương III: Cài đặt và ứng dụng
Phần Kết luận
Trang 11CHƯƠNG 1: TỔNG QUAN VỀ THỦY VÂN THUẬN NGHỊCH 1.1 Một số khái niệm
1.1.1 Khái niệm giấu tin
Giấu tin là một kỹ thuật nhúngthêm thông tin A vào một đối tượng dữ liệu
số B để nhận được đối tượng C chứa thông tin A Theo các tài liệu nghiên cứu, giấu tin hướng đến hai mục đích ứng dụng chính là bảo vệ đối tượng C (dữ liệu chứa tin) hoặc bảo vệ đối tượng A (dữ liệu nhúng) Đối với các ứng dụng nhằm bảo vệ đối tượng dữ liệu chứa tin trên môi trường trao đổi thì được gọi là thủy vân số (digital watermarking) Trái với thủy vân số, trong các ứng dụng giấu tin mật (steganography) lại nhằm bảo vệ dữ liệu nhúng
1.1.2 Phân loại phương pháp giấu tin
Dựa theo mục đích sử dụng, ta có chia các lược đồ giấu tin thành hai nhóm chính giấu tin mật và thủy vân số như hình sau :
Giấu tin
Hình 1.1.Phân loại các kỹ thuật giấu tin
Trên Hình 1.1, giấu tin mật là những lược đồ dùng để trao đổi các thông điệp mật trên môi trường trao đổi không an toàn Theo đó, thông điệp mật được nhúng vào các dữ liệu được truyền tải phổ biến trên Internet như: Ảnh số, video,
âm thanh Việc nhúng thông tin mật vào những dữ liệu được truyền tải phổ biến
sẽ tránh được sự theo dõi của các đối thủ Trái với giấu tin mật, thủy vân số là
Trang 12các lược đồ giấu tin nhằm bảo vệ chính sản phẩm chứa tin trên môi trường trao đổi không an toàn
1.1.3 Mô hình kỹ thuật giấu tin
Giống như các lược đồ mã hóa thông tin, một kỹ thuật giấu tin gồm thuật toán nhúng tin và thuật toán trích tin Theo [8], sơ đồ của thuật toán nhúng tin tổng quát có mô hình như sau :
Dữ liệu môi trường
Dữ liệu nhúng Khóa
Hình 1.2.Mô hình thuật toán nhúng tin
Trong Hình 1.2, môi trường giấu tin là những dữ liệu dùng để chứa thông tin mật, dữ liệu môi trường thường là những dữ liệu được dùng phổ biến trên Internet như : tệp ảnh, tệp âm thanh, tệp video, tệp text…Thông tin cần giấu là một lượng thông tin mang ý nghĩa và mục đích nào đó tùy thuộc vào mục đích
và yêu cầu của người sử dụng (tin mật) Tin mật được nhúng vào trong môi trường chứa thông tin nhờ một bộ nhúng thông tin Trong quá trình nhúng tin, thuật toán có thể sử dụng hệ thống khóa làm tăng tính an toàn cho hệ thống Sau khi nhúng tin mật vào dữ liệu môi trường ta nhận được dữ liệu môi trường
có chứa tin Dữ liệu này được truyền tải trên các môi trường truyền thông khác nhau
Trang 13Khi nhận được dữ liệu có chứa tin, người nhận thực hiện thuật toán trích tin tương ứng để trích rút tin mật từ dữ liệu môi trường Trong một số trường hợp, người dùng có thể khôi phục lại dữ liệu môi trường từ dữ liệu chứa tin Theo [6], thuật toán trích tin có mô hình thực hiện như sau:
Dữ liệu gốc
Thuật toán trích tin
Dữ liệu chứa tin
mã tương ứng với bộ nhúng thông tin và kết hợp với khóa để giải mã tin Khóa
để giải mã tin này có thể giống hay khác với khóa đã nhúng tin Kết quả thu được bao gồm môi trường gốc và thông tin đã được che giấu Tùy theo các trường hợp cụ thể, thông tin tách được ra có thể phải cần xử lý, kiểm định và
so sánh với thông tin đem giấu ban đầu Thông qua dữ liệu được tách ra từ môi trường chứa thông tingiấu, người ta có thể biết được trong quá trình truyền tải, phân phát dữ liệu có bị xâm phạm, tấn công hay không
Đối với các hệ thống giấu thông tin mật này rất quan tâm đến tính an toàn
và bảo mật thông tin của dữ liệu cần giấu Hệ thống giấu tin mật có độ bảo mật cao nếu có độ phức tạp của các thuật toán thám mã khó có thể thực hiện được trên máy tính Tuy nhiên, cũng có các hệ thống chỉ quan tâm đến số lượng thông
Trang 14tin có thể được che giấu, hay quan tâm đến sự ảnh hưởng của thông tin mật đến các môi trường chứa dữ liệu
1.2 Một số vấn đề cơ bản về thủy vân
1.2.1 Khái niệm về thủy vân
Như luận văn đã đề cập, thủy vân số là các lược đồ giấu tin nhằm bảo vệ chính sản phẩm chứa tin (sản phẩm thủy vân) Việc nhúng thông tin (dấu thủy vân) vào các sản phẩm đa phương tiện (ảnh, video, âm thanh, cơ sở dữ liệu )
sẽ làm giảm chất lượng sản phẩm nhưng dấu thủy vân là dấu vết để phát hiện
sự thay đổi hay chứng minh quyền tác giả đối với dữ liệu thủy vân
1.2.2 Phân loại thủy vân
Theo [7], các lược đồ thủy vân có thể được chia thành hai nhóm chính như hình sau:
Thủy vân (Watermarking)
Thủy vân bền vững
(Robust watermarking)
Thủy vân dễ vỡ (Fragile watermarking)
Hình 1.4.Phân loại thủy vân theo mục đích ứng dụng
Thủy vân bền vững yêu cầu dữ liệu nhúng (dấu thủy vân) phải tồn tại trước các phép tấn công nhằm loại bỏ dấu thủy vân, hoặc trong trường hợp loại bỏ được dấu thủy vân thì dữ liệu chứa dấu thủy vân cũng không còn giá trị sử dụng Do vậy, các lược đồ thủy vân bền vững thường được ứng dụng trong bài toán bảo vệ bản quyền trên các sản phẩm số
Trang 15Trái với thủy vân bền vững, thủy vân dễ vỡ yêu cầu dấu thủy vân phải nhậy cảm (dễ bị biến đổi) trước sự thay đổi của dữ liệu chứa dấu thủy vân Do vậy, thủy vân dễ vỡ được dùng trong việc xác thực tính toàn vẹn của sản phẩm chứa dấu thủy vân
1.2.3 Các ứng dụng của thủy vân với ảnh số
Các ứng dụng của thuỷ vân đối với ảnh số bao gồm các lĩnh vực như bảo
vệ bản quyền, xác thực ảnh và bảo toàn dữ liệu, giấu dữ liệu và gán nhãn ảnh,
ta sẽ lần lượt đề cập từng ứng dụng
a) Bảo vệ bản quyền
Mục đích của thuỷ vân với bảo vệ bản quyền là gắn một “dấu hiệu” vào dữ liệu ảnh mà có thể xác định được người nắm giữ bản quyền Và ta cũng có thể gắn thêm một dấu hiệu khác gọi là vân tay để xác định người dùng của sản phẩm Dấu hiệu có thể là một dãy số như mã hàng hoá quốc tế, một message hoặc một logo… Thuật ngữ thuỷ vân xuất phát từ phương thức đánh dấu giấy
tờ với một logo từ thời xa xưa với mục đích tương tự
b) Xác thực ảnh và bảo toàn dữ liệu
Một ứng dụng khác của thuỷ vân là xác thực ảnh và phát hiện giả mạo Ảnh
số ngày càng được sử dụng như các bằng chứng trước pháp luật ngày nay Vấn
đề là cần xác thực được tính hợp pháp của ảnh này Thuỷ vân được sử dụng ở đây để xác định xem ảnh là nguyên bản hay đã chịu tác động của con người, bằng các ứng dụng xử lý ảnh Thuỷ vân được dấu lúc đầu phải mang tính chất không bền vững, để bất kỳ sự thay đổi nhỏ nào tới ảnh cũng có thể làm hỏng thuỷ vân hoặc phát hiện được thay đổi đối với thuỷ vân này Tuy vậy, thuỷ vân vẫn phải tồn tại với các phép biến đổi ảnh thông thường như chuyển đổi định
dạng, lấy mẫu, nén…
c) Giấu dữ liệu và gán nhãn ảnh
Trang 16Giấu dữ liệu là nhằm trao đổi dữ liệu bí mật thông qua một bức ảnh Điều này cho phép trao đổi thông tin mà không gây chú ý đối với người ngoài Khối lượng dữ liệu dấu được là quan trọng nhất đối với mục đích này
Còn gán nhãn ảnh là ứng dụng dùng để cung cấp thêm thông tin cho người dùng hoặc để phục hồi ảnh từ cơ sở dữ liệu
d) Kiểm soát sao chép
Các thuỷ vân trong những trường hợp này được sử dụng để kiểm soát việc sao chép thông tin Các thiết bị phát hiện ra thuỷ vân thường được gắn sẵn vào trong các hệ thống đọc/ghi Ví dụ như hệ thống quản lí sao chép DVD đã được
sử dụng ở Nhật Các ứng dụng loại này yêu cầu thuỷ vân phải được đảm bảo
an toàn và cũng sử dụng phương pháp phát hiện thuỷ vân đã giấu mà không cần thông tin gốc
1.2.4 Một số tính chất của thủy vân
Tuỳ thuộc vào từng loại thuỷ vân số và ứng dụng của nó mà ta có các yêu cầu khác nhau đối với các phương pháp tạo thuỷ vân Ở đây chỉ đề cập đến yêu cầu đối với thuỷ vân số ẩn
Đối với loại thuỷ vân này, ba yêu cầu sau đây là cơ bản và cần thiết đối với các ứng dụng bảo vệ bản quyền:
Tính ẩn: Thứ nhất, thuỷ vân phải ẩn đối với trực giác của con người
(imperceptibility hay perceptual tranperancy), tức là con người phải không nhận biết được sự có mặt của thuỷ vân trong ảnh Điều này cũng có nghĩa là việc dấu thuỷ vân chỉ gây ra sự thay đổi rất nhỏ đối với ảnh, không ảnh hưởng đến chất lượng ảnh
Tính bền vững: Yêu cầu thứ hai là thuỷ vân phải bền vững (robustness),
thuỷ vân phải có khả năng tồn tại cao với các tấn công có chủ đích và không có
Trang 17chủ đích Các tấn công không có chủ đích đối với ảnh số bao gồm như nén ảnh, lấy mẫu, lọc, chuyển đổi A/D và D/A … còn các tấn công có chủ đích có thể là việc xoá, thay đổi hoặc làm nhiễu thuỷ vân trong ảnh Để thực hiện được điều này, thuỷ vân phải được dấu trong các vùng quan trọng đối với trực giác (perceptual significant) Phương pháp thuỷ vân số phải đảm bảo sao cho việc không thể lấy lại thuỷ vân tương đương với việc ảnh đã bị biến đổi quá nhiều, không còn giá trị về thương mại
Khả năng mang tin cao: Với yêu cầu này, lượng tin cần thêm vào ảnh phải đủ
dùng trong ứng dụng mà không làm thay đổi quá nhiều chất lượng ảnh
Tuy vậy, việc làm tốt cả ba yêu cầu trên là một điều rất khó Để dấu thuỷ vân trong ảnh thì ta bắt buộc phải thay đổi dữ liệu ảnh Ta có thể tăng tính bền vững cho thuỷ vân bằng cách tăng lượng thay đổi ảnh cho mỗi đơn vị tin cần dấu Nhưng, nếu thay đổi quá nhiều thì tính ẩn không còn được đảm bảo nữa Còn nếu thay đổi ảnh quá ít thì các yếu tố dùng để xác định thuỷ vân trong ảnh sau các phép tấn công có thể không đủ để xác định thuỷ vân Nếu thông tin được dấu quá nhiều thì cũng dễ làm thay đổi chất lượng ảnh, và làm giảm tính bền vững Vì vậy, lượng thay đổi ảnh lớn nhất có thể chấp nhận và tính bền vững là hai nhân tố quyết định cho khối lượng tin được dấu trong ảnh
Còn đối với các ứng dụng để phát hiện giả mạo ảnh gốc thì thuỷ vân nhúng vào phải có tính giòn (fragile) nghĩa là sẽ bị vỡ nếu chịu sự biến đổi mất thông tin Một cách thực hiện điều này mà vẫn đảm bảo tính ẩn của thuỷ vân là dấu
nó vào các phần dữ liệu ít đáng chú ý về mặt trực giác (perceptual insignificant) Đối với ảnh, đó có thể là các bít thấp của các điểm ảnh (LSB)
Trang 181.3 Ảnh số
Theo [1-2], ảnh số được lượng tử hóa từ ảnh liên tục (ảnh tự nhiên) Do
vậy, dữ liệu của ảnh số có sự tương quan cao Nói cách khác, các điểm ảnh lân cận (liền kề) thường có giá trị xấp xỉ nhau
1.3.1 Khái niệm ảnh Bitmap
Ảnh Bitmap là định dạng ảnh do Microsoft đề xuất, có phần mở rộng là BMP, loại ảnh này truyền tải, sử dụng rộng rãi trên máy tính, và các thiết bị điện tử khác
1.3.2 Phân loại ảnh bitmap
Trên phương diện toán học, ảnh số được xem như là một ma trận nguyên dương có 𝑚 hàng và 𝑛 cột, mỗi phần tử của ma trận đại diện cho một điểm ảnh Dựa theo màu sắc ta có thể chia ảnh số thành 3 dạng cơ bản như: ảnh nhị phân, ảnh đa cấp xám và ảnh màu (true color)
- Ảnh nhị phân là ảnh chỉ có hai màu, một màu đại diện cho màu nền và màu còn lại cho đối tượng của ảnh Nếu hai màu là đen và trắng thì gọi là ảnh đen trắng Như vậy, ảnh nhị phân được xem như một ma trận nhị phân
- Ảnh đa cấp xám là ảnh có thể nhận tối đa 256 mức sáng khác nhau trong khoảng màu đen – màu trắng Như vậy, ảnh đa cấp xám xem như là ma trận không âm có giá trị tối đa 255
- Ảnh màu hay còn gọi là ảnh true color, mỗi điểm ảnh được biểu diễn bởi một số byte (thường 3 byte) đại diện cho 3 thành phần màu R, G và B Như vậy, ảnh màu có thể xem như 3 ma trận nguyên ứng với 3 thành phần màu của các điểm ảnh
Trong lĩnh vực giấu tin, mỗi dạng ảnh có những thuận lợi, khó khăn và cách tiếp cận riêng Tuy nhiên, một lược đồ giấu tin trên ảnh nhị phân ta có thể dễ dàng áp dụng cho ảnh đa cấp xám, hoặc ảnh màu thông qua tính chẵn lẻ của giá
Trang 19trị điểm ảnh Nhưng từ lược đồ giấu tin trên ảnh màu hoặc ảnh đa cấp xám khó
có thể áp dụng đối với ảnh nhị phân
1.3.3 Điểm ảnh
Điểm ảnh (pixel, picture element) là một phần tử ảnh, đơn vị thông tin nhỏ nhất trong một ảnh dạng raster Ảnh số (digital image) là tập hợp hữu hạn các điểm ảnh Ảnh số có thể được biểu diễn dưới dạng một ma trận 2 chiều, mỗi phần tử của ma trận tương ứng với một điểm ảnh
Hình 1.5 Biểu diễn các điểm ảnh trong ảnh số
1.3.4 Màu và mô hình màu
Một mô hình màu là một mô hình toán học trừu tượng mô tả cách các màu sắc có thể được biểu diễn như là bộ dữ liệu số, thường là ba hoặc bốn giá trị hoặc các thành phần màu sắc Người ta chia ra thành nhiều mô hình màu khác nhau tùy thuộc vào ứng dụng của từng lĩnh vực Dưới đây là các mô hình màu được dùng phổ biến nhất
Trang 20Mô hình RGB
Mô hình màu RGB sử dụng mô hình bổ sung trong đó ánh sáng đỏ, xanh
lá cây và xanh lam được tổ hợp với nhau theo nhiều phương thức khác nhau để tạo thành các màu khác Từ viết tắt RGB trong tiếng Anh có nghĩa là đỏ (red), xanh lá cây (green) và xanh lam (blue), là ba màu gốc trong các mô hình ánh sáng bổ sung
Hình 1.6 Tổ hợp màu Red-Green-Blue trong hệ màu RGB
Cũng lưu ý rằng mô hình màu RGB tự bản thân nó không định nghĩa thế nào là "đỏ", "xanh lá cây" và "xanh lam" một cách chính xác, vì thế với cùng các giá trị như nhau của RGB có thể mô tả các màu tương đối khác nhau trên các thiết bị khác nhau có cùng một mô hình màu
Mô hình RGB sẽ làm việc tốt với các thiết bị phát quang sử dụng ánh sáng trắng làm cơ sở Vì vậy mô hình RGB được sử dụng cho các màu thể hiện trên màn hình máy tính cũng như các màu trong thiết kế Web được chiếu qua các màn hình hay máy chiếu dùng ánh sáng
Trong biểu diễn số trên máy tính, ảnh màu RGB có thể sử dụng số bít màu là 16, 24, 32 hoặc 48 Ảnh có số bít càng cao thì càng biểu diễn chính xác màu sắc của điểm ảnh
Trang 21Mô hình CMYK
Từ CMYK (hay YMCK) là một mô hình màu được sử dụng nhiều trong in
ấn Mô hình màu này dựa trên cơ sở trộn các chất màu của các màu sau:
C = Cyan - màu xanh lơ
M = Magenta - màu cánh sen hay hồng sẫm
Y = Yellow - màu vàng
K = Key - màu đen (Ký hiệu là K vì màu Black đã dùng ký hiệu B trong
mô hình RGB)
Hình 1.7 Tổ hợp các màu trong mô hình màu CMYK
Nguyên lý làm việc của CMYK là trên cơ sở hấp thụ ánh sáng Màu mà chúng ta nhìn thấy là từ phần của ánh sáng không bị hấp thụ Trong CMYK, hồng sẫm cộng với vàng sẽ cho màu đỏ, cánh sen cộng với xanh lơ cho màu xanh lam, xanh lơ cộng với vàng sinh ra màu xanh lá cây và tổ hợp của các màu xanh lơ, cánh sen và vàng tạo ra màu đen
Trang 22Vì màu “đen” sinh ra bởi việc trộn các màu gốc loại trừ là không thực sự giống như mực đen thật sự hay màu đen của vật đen tuyệt đối (là vật hấp thụ toàn bộ ánh sáng), việc in ấn trên cơ sở bốn màu (đôi khi gọi là in các màu mặc
dù điều này không chính xác) phải sử dụng mực đen để bổ sung thêm vào với các màu gốc loại trừ là các màu vàng, cánh sen và xanh lơ
Việc sử dụng công nghệ in ấn bốn màu sinh ra kết quả in ấn cuối cùng rất cao cấp với độ tương phản cao hơn Tuy nhiên màu của vật thể mà người ta nhìn thấy trên màn hình máy tính thông thường có sự sai khác chút ít với màu của nó khi in ra vì các mô hình màu CMYK và RGB (sử dụng trong màn hình máy tính) có các gam màu khác nhau Mô hình màu RGB là mô hình dựa trên
cơ sở phát xạ ánh sáng trong khi mô hình CMYK làm việc theo cơ chế hấp thụ ánh sáng
Mô hình HSB
Mô hình màu HSB, còn gọi là mô hình màu HSV, là một mô hình màu dựa trên ba giá trị:
H: (Hue) Vùng màu
S: (Saturation) Độ bão hòa màu
B (hay V): (Bright hay Value) Độ sáng
Mô hình YUV
Mô hình YUV quy định một không gian màu được tạo bởi một độ sáng
và hai thành phần màu (chrominance) YUV được sử dụng trong hệ thống phát
sóng truyền hình theo chuẩn PAL, đây là chuẩn ở phần lớn các nước trên thế giới
Mô hình YUV giúp tạo ra màu đúng với nhận thức của con người hơn chuẩn RGB (được dùng trong các thiết bị đồ hoạ máy tính) nhưng không chuẩn bằng không gian màu HSV
Trang 23Hình 1.8 Mặt phẳng màu U-V tại giá trị Y = 0.5
Trong mô hình YUV, Y đại diện cho thành phần độ sáng, U và V là đại diện cho các thành phần màu Không gian màu YCbCr hay YPbPr, được sử dụng trong các thiết bị phát hình, đều xuất phát từ mô hình màu YUV (Cb/Pb
và Cr/Pr là những phiên bản biến thể của U và V), và đôi khi bị gọi một cách không chính xác là “YUV” Không gian màu YIQ được dùng trong các hệ thống truyền hình NTSC cũng liên quan đến YUV, tuy nhiên lại đơn giản hơn YUV nhiều
Các tín hiệu YUV đều xuất phát từ các nguồn RGB Các giá trị trọng số R,
G và B được cộng lại với nhau để tạo ra một tín hiệu Y đơn để biểu diễn độ sáng chung tại một điểm Tín hiệu U sau đó được tạo ra bằng cách trừ Y khỏi tín hiệu xanh lam (B của RGB) và được nhân với một tỉ lệ nhất định, còn V được tính bằng cách trừ Y khỏi màu đỏ (R của RGB) và nhân tỉ lệ với một hệ số khác
Các công thức sau có thể dùng để tính toán Y, U và V từ R, G và B:
Trang 241.3.5 Định dạng tệp ảnh bitmap
Ảnh Bitmap được lưu trữ dưới dạng nhị phân, một tệp định dạng bitmap
được chia thành các phần cơ bản như: phần tiêu đề file (BITMAP HEADER), thông tin về ảnh (BITMAP INFOR), bảng màu (PALLETE Table) và vùng
dữ liệu ảnh (DATA) Và thứ tự các phần của tệp ảnh được lưu trữ tuần tự trong
bộ nhớ như trong hình Hình 1.5
BITMAP HEADER BITMAP INFOR PALLETE Table DATA
Hình 1.9 Minh hoạ cấu trúc tệp ảnh bitmap
Ý nghĩa các phần trong tệp ảnh bitmap
Bitmap Header: Mô tả thông tin chung về File định dạng bitmap, độ dài
của phần này được cố định với mọi file ảnh bitmap
Bitmap Infor: Mô tả thông tin về ảnh được lưu trữ, độ dài của phần này
cũng cố định
Pallete Table: Chính là bảng màu của ảnh bitmap, độ dài của phần này có
thể bằng không (không có bảng màu) đối với ảnh đen trắng và ảnh màu có số lượng màu lớn hơn 256 màu
Data: Thông tin của từng điểm ảnh, độ dài của phần này phụ thuộc kích
thước ảnh Phần này lưu trữ dữ liệu ảnh theo hướng từ dưới lên trên và từ trái
qua phải
Với ảnh 8 bít màu giá trị của mỗi điểm ảnh trong vùng Data là chỉ số của màu trong bảng màu, chỉ số màu của điểm ảnh là một số nguyên có giá trị từ 0 đến 255
Trang 25Như đã trình bày ở trên, với ảnh có số lượng màu lớn hơn 256 màu thì giá trị trong vùng Data chính là giá trị của các thành phần màu cơ bản, số lượng bít dùng để biểu diễn giá trị cho từng thành phần màu có thể sẽ khác nhau phụ thuộc vào chất lượng ảnh Đối với ảnh 24 bit màu, mỗi thành phần màu được lưu trữ bởi 8 bit và thứ tự lưu trữ là 𝐵, 𝐺, 𝑅
Histogram của ảnh
Histogram là bảng thống kê tần số giá trị cường độ sáng của các điểm ảnh Đối với ảnh màu, cường độ sáng của một điểm ảnh được xác định theo công thức:
𝑌 = 0.299𝑅 + 0.587𝐺 + 0.114𝐵, trong đó: 𝑅, 𝐺, 𝐵 là giá trị các thành phần màu và 𝑌 là cường độ sáng của điểm ảnh
Ví dụ: từ ảnh màu pepper ta có thể dễ dàng xác định được biểu đồ histogram tương ứng như hình 1.6
(a) ảnh pepper.bmp (b) Biểu đồ histogram
Hình 1.10: Biểu đồ histogram của ảnh màu Pepper
Trang 26hệ số 𝑃𝑆𝑁𝑅 càng lớn thì chất lượng ảnh chứa tin càng cao Hệ số 𝑃𝑆𝑁𝑅 của ảnh chứa tin 𝐼′ so với ảnh gốc 𝐼 kích thước 𝑚 × 𝑛 được tính theo công thức:
𝑃𝑆𝑁𝑅 = 20 𝑙𝑜𝑔10( MAX
√𝑀𝑆𝐸), Trong đó, 𝑀𝐴𝑋 là giá trị cực đại của điểm ảnh và 𝑀𝑆𝐸(Mean Square Error) được xác định theo công thức:
𝑚 × 𝑛∑ ∑[𝐼(𝑖, 𝑗) − 𝐼
′(𝑖, 𝑗)]2 𝑛
Nếu gọi 𝛴 là tập hợp tất cả các văn bản và 𝛥 là tập hợp các bản tóm lược
có thể được sử dụng Theo [7], việc tìm cho mỗi văn bản một bản tóm lược tương ứng xác định bởi hàm ℎ: ∑ → ∆ Một hàm ℎ như vậy được gọi là hàm băm (hash function)
Đối với hàm băm, các văn bản có độ dài tùy ý nhưng bản tóm tắt (mã đại diện) thì có độ dài cố định như: 128 bít (hàm băm MD5), 160 bít, 256 bít và
348 bít (họ hàm băm SHA) Việc sử dụng hàm băm ℎ trên văn bản 𝑥, ký hiệu
𝑦 = ℎ(𝑥) Khi đó, 𝑦 là dãy bít đại diện cho văn bản 𝑥 Theo [7], hai tính chất quan trọng nhất của hàm băm là:
1) Hàm băm phải là hàm một phía, nghĩa là từ 𝑥 tính 𝑦 = ℎ(𝑥) khá dễ nhưng từ 𝑦 không xác định được 𝑥
2) Hàm băm phải là hàm không va chạm mạnh theo nghĩa: không có thuật toán tính trong thời gian đa thức để tìm được 𝑥 1 ≠ 𝑥 2 nhưng có ℎ(𝑥 1 ) = ℎ(𝑥2).
Trang 27Thông thường, mã hàm băm càng dài thì càng ít va chạm Trong luận văn
sử dụng hàm băm SHA-348 (ký hiệu là SHA2) để tạo dấu thủy vân ứng dụng
trong việc xác định tính toàn vẹn của ảnh thủy vân
1.5 Phương pháp nén loạt dài
Mã hoá theo độ dài loạt RLE (Run Length Encoding) là một phương pháp nén bảo toàn, loạt dài được định nghĩa là dãy các phần tử liên tiếp có cùng chung một giá trị
Nguyên tắc của phương pháp này là phát hiện một loạt các giá trị lặp lại liên tiếp
Ví dụ: 110000000000000011
Ta thấy giá trị 0 xuất hiện nhiều lần liên tiếp thay vì phải lưu trữ toàn bộ các giá trị 0 ta chỉ cần lưu trữ chúng bằng cách sử dụng các cặp (độ dài loạt, giá trị)
Ví dụ: Cho một chuỗi nguồn d :
d =5 5 5 5 5 5 5 5 5 5 19 19 19 19 19 0 0 0 0 0 0 0 23 23 23 23 23 23 23 23 Qua mã hóa Run length ta có chuỗi mới : (10 5) (5 19) (7 0) (8 23)
Tỷ số nén = 30/8 = 2.5
Ví dụ: Cho một dãy nhị phân b :
b=000000000000000111111111100000000001111111111000000000000000 Qua mã hóa Run length ta có chuỗi mới: ((15,0)(10,1)(10,0)(10,1)(15,0))
Tỷ số nén = 60 bít / (5*4 bít) = 3
Trong chương 2 và chương 3 của luận văn sử dụng phương pháp này trong các thuật toán thủy vân thuận nghịch bằng phương pháp mở rộng hiệu
Trang 281.6 Thủy vân thuận nghịch
Mục trình bày một số khái niệm về thủy vân thuận nghịch và các tính chất của một lược đồ thủy vân thuận nghịch cũng như phạm vi ứng dụng của chúng
1.6.1 Khái niệm
Thủy vân thuận nghịch (reversible watermarking) theo [3-9] là các lược
đồ nhúng tin có khả năng khôi phục lại dữ liệu gốc từ dữ liệu thủy vân Hai tính chất quan trọng nhất của chúng là khả năng nhúng tin và chất lượng ảnh thủy vân
Thủy vân thuận nghịch có vai trò quan trọng trong một số lĩnh vực như
an ninh, quốc phòng và y tế [11] Bởi, chỉ cần một sự khác biệt nhỏ giữa ảnh
sử dụng với ảnh gốc cũng có thể ảnh đến những quyết định của bác sĩ và dẫn đến những hệ lụy nghiêm trọng
Trong các lược đồ thủy vân thuận nghịch, sau khi xác thực tính toàn vẹn của dữ liệu thủy vân thì quá trình khôi phục ảnh gốc hoặc trích thông tin mật được thực hiện Việc khôi phục lại ảnh gốc là một trong những yêu cầu bắt buộc trong y tế, quân sự và nghệ thuật
1.6.2 Một số hướng tiếp cận của thủy vân thuận nghịch
Thủy vân thuận nghịch có vai trò quan trọng trong lĩnh vực thủy vân, đặc biệt trong lĩnh vực xác thực dữ liệu Nội dung phần này trình bày một số lược
đồ thủy vân theo các hướng tiếp cận khác nhau như:
Trang 291.6.2.1 Dịch chuyển Histogram
Dựa trên bảng thống kê tần xuất giá trị điểm ảnh (histogram), Zhicheng Ni
và các cộng sự (𝑁𝑆𝐴𝑆) đã đề xuất lược đồ giấu tin thuận nghịch trên ảnh đa cấp xám [8] bằng cách dịch chuyển histogram
Với ảnh đa cấp xám, giá trị điểm ảnh luôn thuộc tập {0,1, … ,255} Gọi ℎ(𝑥)
là tổng số điểm ảnh có giá trị bằng 𝑥 Khi đó, tập 𝐻 = {ℎ(0), ℎ(1), … ℎ(255)} chính là histogram của ảnh đa cấp xám Theo lược đồ 𝑁𝑆𝐴𝑆, trước khi nhúng
tin ta cần xác định cặp điểm (Peak, Zero) như sau:
𝑝 được gọi là điểm Peak nếu ℎ(𝑝) đạt cực đại trong một lân cận nào đó
𝑧 được gọi là điểm Zero nếu ℎ(𝑧) = 0
Khi đó, cặp điểm Peak – Zero được ký hiệu (𝑝, 𝑧) và số bít có thể nhúng là ℎ(𝑝) Trong trường hợp không tồn tại điểm Zero, thuật toán chọn 𝑧 có ℎ(𝑧) đạt cực tiểu và thiết lập các điểm ảnh có giá trị 𝑧 bằng 0 Để nhúng nhiều thông tin, thuật toán có thể chọn nhiều cặp điểm (Peak – Zero) và nhúng tin trên từng cặp
điểm (các cặp điểm phải không giao nhau) Các điểm Peak – Zero được mô tả
như hình 1.11
Hình 1.11 Điểm Peak và Zero
Nội dung thuật toán nhúng tin của lược đồ 𝑁𝑆𝐴𝑆 như sau:
Trang 30Thuật toán nhúng tin
Vớ i ảnh gốc 𝐹 kích thước 𝑚 × 𝑛 và (𝑝, 𝑧) là giá trị của cặp điểm Peak-Zero
(gia ̉ sử z>p) Khi đó, thuâ ̣t toán nhúng dãy bít 𝑏 = 𝑏1𝑏2, , 𝑏ℎ(𝑝) vào ảnh 𝐹 để nhận được ảnh chưa tin 𝐺 như sau:
Bước 1:Dịch histogram
𝐺𝑖,𝑗= {𝐹𝑖,𝑗, 𝑛ế𝑢 𝑧 < 𝐹𝑖,𝑗≤ 𝑝
𝐹𝑖,𝑗+ 1, 𝑛ế𝑢 𝑝 + 1 ≤ 𝐹𝑖,𝑗 ≤ 𝑧 − 1 , 𝑖 = 1 … 𝑚, 𝑗 = 1 𝑛 Như vậy, sau Bước 1, ảnh 𝐺 có ℎ(𝑝 + 1) = 0
Bước 2: Nhúng tin
Gọi D = d1d2… dh(p) là dãy điểm ảnh của 𝐺 có giá trị bằng 𝑝 Khi đó, thuật toán nhúng dãy bít b = b1b2, , bh(p) vào D để nhận được D′=
d1′… dh(p)′ theo công thức:
𝑑𝑖′= 𝑑𝑖+ 𝑏𝑖 , 𝑖 = 1 ℎ(𝑝)
Thuật toán trích tin và khôi phu ̣c ảnh gốc
Từ ảnh chứa tin 𝐺 và hai tham số 𝑝, 𝑧 đã sử du ̣ng khi nhúng tin, thuâ ̣t toán trích dãy bít 𝑏 = 𝑏1𝑏2… 𝑏ℎ(𝑝)+ℎ(𝑝+1) và khôi phu ̣c ảnh gốc 𝐹 như sau:
Bước 1: Trích dãy bít
Gọi 𝐷′= 𝑑1′𝑑2′… 𝑑ℎ(𝑝)+ℎ(𝑝+1) ′ là dãy điểm ảnh của 𝐺 có giá trị bằng 𝑝 hoặc
𝑝 + 1(theo thứ tự nhúng tin) Khi đó, dãy bít 𝑏 được xác định:
Trang 31thông tin nhúng dễ bị biến đổi trước các phép tấn công ảnh như: nén JPEG,
nhiễu và biến đổi hình học đối với ảnh chứa tin
1.6.2.2 Sử dụng đặc trưng nén JPEG
Việc sử dụng đặc trưng ảnh nén JPEG để nhúng tin được bắt đầu nghiên cứu bởi Iwata và các đồng sự trong [7] bằng cách sử dụng các khối DCT (Discrete Cosine Transform) nhận được sau khi đã lượng tử hóa (khối DCT lượng tử) Mỗi khối này có kích thước 8 × 8 và thường chứa nhiều hệ số (phần tử) 0 ở góc dưới phải Iwata sử dụng 9 đường chéo của khối (cùng chiều với đường chéo chính) và nhúng 1 bít trên mỗi đường chéo bằng cách biến đổi sao cho tổng số các hệ số 0 liên tiếp tính từ dưới lên của mỗi đường chéo có cùng tính chẵn lẻ với bít cần nhúng Tuy nhiên lược đồ này chưa có tính chất thuận nghịch
Chang và đồng sự [4]cũng sử dụng 9 đường chéo như trong [5] nhưng nhúng trên mỗi đường chéo tối đa một bít tại hai phần tử bằng 0 cuối cùng (nếu có) trong dãy các phần tử 0 liên tiếp tính từ dưới lên Ngoài ra, phần tử khác 0 cuối cùng được biến đổi theo một qui tắc nhất định để có thể xác định chính xác vị trí nhúng tin Do đó lược đồ [4] (lược đồ CLTT) vừa trích được các bít
đã nhúng và vừa có khả năng khôi phục được ảnh gốc Tuy nhiên khả năng nhúng tin của lược đồ này còn hạn chế Để nâng cao khả năng nhúng tin, trong [5] đề xuất lược đồ nhúng tin hai lớp (lược đồ LS) bằng cách kết hợp lược đồ CLTT với phương pháp mở rộng hiệu [11] Theo kết quả thực nghiệm trong [5], khả năng nhúng tin của lược đồ LS được cải thiện hơn so với lược đồ CLTT, nhưng chất lượng ảnh giảm đáng kể
Như đã đề cập, lược đồ nhúng tin thuận nghịch CLTT [4] được đề xuất dựa trên ý tưởng nhúng tin của Iwata [7] Với mỗi khối DCTLT của thành phần Y, lược đồ [7] nhúng 9 bít dữ liệu trên 9 đường chéo song song với đường chéo chính như Hình 1.12
Trang 32Thuật toán nhúng tin
Thuật toán nhúng bít dữ liệu 𝑤𝑖 vào dẫy 𝐷𝑖 = (𝑑1, 𝑑2, , 𝑑𝑘𝑖)có 𝑏𝑖≥ 2 bằng cách biến đổi hệ số 𝑑𝑏𝑖−1 thành 𝑑𝑏′𝑖−1 theo công thức:
𝑑𝑏′𝑖−1= {1 hoặc − 1, nếu𝑤𝑖= 1
0, nếu𝑤𝑖= 0
Để tránh nhập nhằng (nhầm lẫn) trong quá trình trích tin và khôi phục ảnh gốc, thuật toán thực hiện bước tiền xử lý các tập 𝐷𝑖 (1 ≤ 𝑖 ≤ 9)với 3 luật biến đổi:
Luật A Nếu 2 ≤ 𝑏𝑖 ≤ 𝑘𝑖− 2 và 𝐷𝑖 có dạng (𝑑1, … , 𝑑𝑏𝑖, 𝑥, 0,∗∗∗) với 𝑥 ≠ 0 thì:
Trang 33(ký tự * đại diện cho giá trị nguyên tùy ý)
Để tiện theo dõi thuật toán, xét ví dụ nhúng dãy bít dữ liệu 𝑤 = (010110) vào khối DCTLT trên Hình 1.12 Kết quả tiền xử lý và nhúng tin trình bày trong Bảng 1
Trang 34Theo kết quả thực nghiệm trong [4], chất lượng ảnh chứa tin của lược đồ CLTT khá tốt Tuy nhiên theo [5], khả năng nhúng tin của lược đồ này còn hạn chế
Thuật toán trích tin
Trên mỗi khối DCTLT của ảnh chứa tin, thuật toán xác định các dẫy 𝐷𝑖′=(𝑑1′, 𝑑2′, , 𝑑𝑘′𝑖) với 1 ≤ 𝑖 ≤ 9 theo Hình 1.12 Ngoài việc trích bít dữ liệu 𝑤𝑖 từ dẫy 𝐷𝑖′ thuật toán còn xác định vị trí nhúng tin 𝑧𝑖 phục vụ quá trình khôi phục ảnh gốc
Với mỗi dẫy 𝐷𝑖′= (𝑑1′, 𝑑2′, , 𝑑𝑘′𝑖), gọi 𝑝𝑖 là vị trí đầu tiên để 𝑑 𝑝′𝑖 khác 0 tính
từ 𝑑1′,1 ≤ 𝑝𝑖≤ 𝑘𝑖 Khi đó, tham số 𝑧𝑖 và bít dữ liệu 𝑤𝑖(trường hợp 𝐷𝑖 ′ có nhúng tin) được xác định theo 1 trong 6 luật sau:
Luật 1 Nếu 𝑑𝑝′𝑖 = ±1 và 𝑑𝑝′𝑖+1 = 0, thì 𝑤𝑖= 1 và 𝑧𝑖= 𝑝𝑖
Luật 2 Nếu 𝑑𝑝′𝑖 = ±1 , 𝑑𝑝′𝑖+1≠ 0 và 𝑝𝑖≥ 3, thì 𝑤𝑖= 0 và 𝑧𝑖 = 𝑝𝑖− 2
Luật 3 Nếu 𝑑𝑝′𝑖 = ±1, 𝑑𝑝′𝑖+1≠ 0 và 𝑝𝑖 ≤ 2, thì 𝐷𝑖′ không chứa tin
Luật 4 Nếu 𝑑𝑝′𝑖 ≠ ±1 và 𝑝𝑖 ≥ 3, thì 𝑤𝑖 = 0 và 𝑧𝑖= 𝑝𝑖− 2
Luật 5 Nếu 𝑑𝑝′𝑖 ≠ ±1 và 𝑝𝑖 ≤ 2, thì 𝐷𝑖′ không chứa tin
Luật 6 Nếu không tồn tại 𝑝𝑖 (𝑑𝑗′= 0 với 𝑗 = 1 … 𝑘𝑖) thì 𝑤𝑖= 0 và 𝑧𝑖=
𝑘𝑖− 1
Dựa vào nội dung thuật toán nhúng tin và Luật 1, Luật 2, Luật 4, Luật 6 của thuật toán ta thấy: trong trường hợp 𝐷𝑖′ có nhúng tin, giá trị hệ số 𝑑𝑧′𝑖 chính là bít đã nhúng Nói cách khác, 𝑧𝑖 là vị trí đã nhúng bít 𝑤𝑖
Trang 35Thuật toán khôi phục ảnh gốc
Thuật toán thực hiện khi đã hoàn thành quá trình trích tin trên các dẫy 𝐷𝑖′=(𝑑1′, 𝑑2′, , 𝑑𝑘′𝑖) Dựa vào vị trí nhúng tin 𝑧𝑖 thuật toán khôi phục dẫy hệ số DCTLT gốc 𝐷𝑖= (𝑑1, 𝑑2, , 𝑑𝑘𝑖)gồm hai bước:
Bước 1: Khôi phục vị trí nhúng tin (trường hợp 𝐷𝑖′ có nhúng tin):
𝑑𝑧𝑖 = 0
Bước 2: Khôi phục các trường hợp nhập nhằng bằng 1 trong 3 luật sau: Luật 1 Nếu 𝐷𝑖′ có nhúng tin, 4 ≤ z𝑖+ 3 ≤ 𝑘𝑖 và 𝑑𝑧′𝑖+3= 0 , thì hệ số 𝑑𝑧𝑖+2được tính:
Trang 36Các số liệu trong Bảng 2 cho thấy, ngoài việc trích được dãy bít đã nhúng
𝑤 = (010110) thuật toán còn khôi phục thành công các dẫy hệ số DCT lượng
tử gốc như trên Hình 1.12
Lược đồ nhúng tin thuận nghịch LS
Với mục đích nâng cao khả năng nhúng tin, Lin và cộng sự [5] đề xuất mô hình nhúng tin thuận nghịch hai lớp theo sơ đồ:
Trang 37Ảnh gốc Biến đổi DCT Lương tử hóa Mở rộng hiệu
CLTT Giải lượng tử
Biến đổi IDCT Ảnh chứa tin
Hình 1.13 Lược đồ nhúng tin LS
Giống như lược đồ CLTT, lược đồ LS cũng xét 9 dẫy hệ số DCT lượng tử theo các đường chéo như Hình 1.12 Mỗi dẫy hệ số 𝐷𝑖(1 ≤ 𝑖 ≤ 9) lược đồ LS thực hiện nhúng tin hai lớp như Hình 1.13: trước tiên dùng phương pháp mở rộng hiệu [10] để nhúng một bít trên hai hệ số DCT lượng tử lân cận, sau đó sử dụng lược đồ CLTT để nhúng thêm một bít
Theo kết quả thực nghiệm trong [5], khả năng nhúng tin của lược đồ LS được cải thiện hơn so với lược đồ CLTT, nhưng chất lượng ảnh lại giảm đáng kể
1.6.2.3 Phương pháp nén bảo toàn
Đối với các lược đồ sử dụng phương pháp nén bảo toàn, các lược đồ thủy vân thường dùng một số thuật toán nén như: Run-length, Huffman và mã hóa
số học để nén các bít thấp của dữ liệu nhằm tạo ra một khoảng trống dùng để chứa dấu thủy vân Do vậy, khả năng nhúng tin của các lược đồ thủy vân phụ thuộc vào tính hiệu quả của phương pháp nén Trong thực tế, các bít thấp của
dữ liệu ảnh và âm thanh thường có xu hướng ngẫu nhiên nên tỉ lệ nén không cao Do vậy, khả năng nhúng tin của các lược đồ thủy vân thuộc phương pháp này thường thấp
Trang 381.6.2.4 Phương pháp mở rộng hiệu
Tuy mỗi lược đồ nhúng tin ở trên có cách tiếp cận và kỹ thuật khác nhau tùy theo từng dạng ảnh Nhưng điểm chung trong thuật toán trích tin của các lược đồ là: biết chính xác vị trí điểm ảnh bị thay đổi và giá trị gốc của chúng
Để thực hiện điều này, các lược đồ thủy vân thuận nghịch thường cố định vị trí nhúng tin, và sử dụng hàm đổi hai chiều khi cần thay đổi giá trị điểm ảnh trong quá trình nhúng tin, hoặc sử dụng phương pháp nén để có thể gửi giá trị gốc của các điểm ảnh thay đổi kèm theo ảnh chứa tin Ngoài ra, nhiều lược đồ nhúng tin còn gặp phải khó khăn chung là giá trị sau khi biến đổi vượt ra khỏi phạm
vi giá trị của điểm ảnh (overflow and underflow)
Đối các phép biến đổi nguyên thuận nghịch, phương pháp mở rộng hiệu được đánh giá là một trong những phương pháp có khả năng nhúng tin cao và
có nhiều tiềm năng ứng dụng Nội dung phương pháp này và một số phương pháp cải tiến sẽ được trình bày chi tiết trong Chương 2 của luận văn
Trang 39CHƯƠNG 2: THỦY VÂN THUẬN NGHỊCH SỬ DỤNG PHÉP BIẾN
ĐỔI MỞ RỘNG HIỆU
Trong các hướng tiếp cận của thủy vân thuận nghịch, phương pháp mở rộng hiệu được xem là phương pháp có nhiều triển vọng và có khả năng nhúng tin cao Phương pháp này được đề xuất đầu tiên bởi Tian [8] và sau đó được nhiều tác giả tiếp tục nghiên cứu, cải tiến nhằm tăng khả năng nhúng tin và cải thiện chất lượng ảnh Đây là hai tính chất quan trọng của thủy vân thuận nghịch Nội dung chính của chương này sẽ trình bày, phân tích các lược đồ thủy vân thuận nghịch theo phương pháp mở rộng hiệu như: lược đồ Tian [8],lược
đồ Alattar [3] và lược đồ Mohammad [9] Tuy mỗi lược đồ thủy vân ở trên có cách tiếp cận và kỹ thuật khác nhau nhưng đều hướng tới mục đích tăng khả năng nhúng tin và cải thiện chất lượng ảnh
Trong thủy vân thuận nghịch, lược đồ Tian[8] là một trong những lược đồ nhận được nhiều sự quan tâm của các nhà nghiên cứu Ý tưởng chính của Tian
là sử dụng phép biến đổi Haar nguyên thuận nghịch để nhúng một bít theo phương phương pháp mở rộng hiệu Để tiện cho việc theo dõi, trước tiên luận văn trình bày phép biến đổi Haar nguyên trên một cặp giá trị
2.1 Phép biến đổi Haar nguyên trên một cặp giá trị
Với mỗi cặp số nguyên (𝑥, 𝑦), phép biến đổi Haar nguyên thuận được thực hiện theo các công thức:
Trang 40𝑦 = 𝑙 − ⌊ℎ
2⌋ Khi đó, từ ℎ và 𝑙 tính được trong các công thức (2.1) và (2.2) ta có phép biến đổi Haar ngược như sau:
Trong đó ⌊𝑎⌋ là giá trị nguyên dưới, ví dụ: ⌊52⌋ = 2
Xét ví dụ, với (𝑥, 𝑦) = (300,250) thì phép biến đổi Haar nguyên thuận như sau:
là tính thuận nghịch của phép biến đổi Haar nguyên Tính thuận nghịch này có thể được chứng minh bằng lý thuyết như sau:
Chứng minh phép biến đổi Haar nguyên có tính thuận nghịch
Với hai số nguyên (𝑥, 𝑦) bất kỳ, phép biến đổi Haar nguyên thuận tính hiệu ℎ và giá trị trung bình 𝑙 theo công thức: ℎ = 𝑥 − 𝑦 và𝑙 = ⌊𝑥+𝑦
2 ⌋
Nếu gọi: