Trước khi tìm hiểu các kỹ thuật này, khóa luận trình bày một số kiến thức cơ sở nhằm mục đích phục vụ cho việc thủy vân số trong ảnh được hiệu quả hơn, như kiến thức về mô hình thị giác
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trang 3TÓM TẮT NỘI DUNG KHÓA LUẬN
Khóa luận này tìm hiểu và nghiên cứu các kỹ thuật thủy vân số trong môi trường ảnh tĩnh và ứng dụng trong bảo vệ bản quyền
Trước khi tìm hiểu các kỹ thuật này, khóa luận trình bày một số kiến thức cơ sở nhằm mục đích phục vụ cho việc thủy vân số trong ảnh được hiệu quả hơn, như kiến thức
về mô hình thị giác người, các mô hình màu và cấu trúc của một số định dạng ảnh thông dụng Sau đó, khóa luận trình bày tổng quan về thủy vân số như khái niệm, nguồn gốc, phân loại cũng như ứng dụng của thủy vân số hiện nay, sự phân biệt giữa Thủy vân số và Giấu tin
Các kỹ thuật thủy vân số trong môi trường ảnh là nội dung chính sẽ được trình bày trong khóa luận Các kỹ thuật thủy vân được nghiên cứu nằm trong hai hướng tiếp cận chính là tiếp cận theo miền không gian ảnh và tiếp cận theo miền tần số ảnh Trong mỗi phương pháp thủy vân số, khóa luận sẽ nêu lên cơ sở kỹ thuật, nội dung cũng như phân tích ưu nhược điểm của chúng
Từ những kiến thức lý thuyết đã nghiên cứu, khóa luận đã vận dụng và cài đặt thử nghiệm chương trình thủy vân số cho ảnh, với đối tượng là ảnh màu và ảnh cấp xám, sử dụng hai phương pháp LSB và DCT tương ứng với hai hướng tiếp cận của kỹ thuật thủy vân Cuối cùng là kết luận về những kết quả đã đạt được, những điểm hạn chế cần nghiên cứu và tìm hiểu sâu hơn, đồng thời đưa ra hướng phát triển tiếp theo của khóa luận
Trang 4MỤC LỤC
Hoàng Trí Nhân 1
HÀ NỘI - 2010 1Hoàng Trí Nhân 2
Trang 5CÁC KÝ HIỆU VIẾT TẮT
BMP Windows bitmap format Ảnh bitmap
CMY Cyan-Magenta-Yellow Không gian màu CMY
DCT Discrete Cosine Transform Biến đổi Consine rời rạc
DFT Discrete Fourier Transform Biến đổi Fourier rời rạc
DWT Discrete Wavelet Transform Biến đổi sóng rời rạc
GIF Graphics Interchange Format Ảnh gif
HSL Hue – Saturation – Lightness Không gian màu HSL
HSV Hue – Saturation – Value Không gian màu HSV
HVS Human Visual System Hệ thống thị giác người
JND Just Noticeable Difference Sự khác biệt nhỏ nhất có thể phân biệtJPEG Joint Photographic Expert Group Ảnh nén JPEG
LSB Least Significant Bit Bit ít quan trọng nhất
MSE Mean Square Error Sai số bình phương trung bình
NC Normalized Correlation Hệ số tương quan chuẩn
PSNR Peak Signal to Noise Ratio Tỉ lệ của tín hiệu nhọn với nhiễuRGB Red – Green – Blue Không gian màu RGB
Trang 6DANH MỤC HÌNH VẼ
Hình 1 Ngưỡng biến đổi nhỏ nhất mắt người cảm nhận được
Hình 2 Hàm nhạy cảm tương phản dựa trên mẫu của Mannos và SakrisonHình 3 Sự cảm nhận 3 màu của thị giác người
Hình 4 Độ nhạy cảm của mắt người với các tần số thời gian khác nhauHình 5 So sánh ảnh gốc và ảnh đã nhúng thủy vân
Hình 6 Không gian màu RGB
Hình 7 Không gian màu HSV
Hình 8 Không gian màu CMY
Hình 9 Một trong những thủy vân trên giấy đầu tiên
Hình 10 Số lượng các paper về thủy vân số qua các năm
Hình 11 Ảnh trước và sau nhúng thủy vân
Hình 12 Tách thủy vân từ ảnh đã nhúng
Hình 13 So sánh ảnh gốc và ảnh bị xuyên tạc
Hình 14 Minh họa một ảnh nhúng các thủy vân khác nhau
Hình 15 Mô hình hệ thống thủy vân ảnh số
Hình 16 Phân chia 3 miền tần số ảnh của biến đổi DCT
Hình 17 Năng lượng phân bố của ảnh ứng với biến đổi DCT
Hình 18 Tần số ảnh phân tích theo DWT
Hình 19 Vấn đề thủy vân dưới góc nhìn của truyền thông
Hình 20 Khó phân biệt ảnh giả mạo bằng mắt thường
Hình 21 Quá trình nhúng thủy vân vào ảnh
Hình 22 Quá trình tách thủy vân
Hình 23 Ảnh trước và sau khi nhúng thủy vân bằng thuật toán F4
Hình 24 Sử dụng thuật toán F5 để nhúng thủy vân
Trang 7MỞ ĐẦU
Từ xa xưa, con người đã biết giấu thông tin (ý nghĩa hay sự hiện diện) trước khi gửi cho nhau, để đảm bảo tính bí mật, người khác không biết, không hiểu thông tin đó, nhằm phục vụ cho các mục đích khác nhau Ví dụ, người ta khắc bản đồ kho báu lên đầu các thủy thủ, để tóc mọc che kín đi,… Hai phương pháp cơ bản của giấu thông tin
(information hiding) là cryptography (còn gọi là secret writing – viết mật hay mã hóa) và steganography (còn gọi là cover writing – viết phủ hay ẩn giấu tin) Trong ẩn giấu tin
được chia làm hai hướng là: giấu tin – bảo vệ thông tin được giấu, và ẩn tin (còn gọi là watermarking) – bảo vệ chính môi trường chứa tin
Ngày nay, sự phát triển mạnh mẽ của các mạng máy tính tốc độ cao, đặc biệt là Internet, các phương tiện kỹ thuật số như phương tiện lưu trữ, phương tiện truyền thông,
đã mở ra một kỷ nguyên mới – kỷ nguyên thông tin số Hầu hết các thông tin ngày nay đều được lưu trữ dưới dạng số hóa Tuy nhiên, việc trao đổi, phân bố, sao chép và xử lý các sản phẩm số này ngày càng nhanh chóng, đơn giản, nằm ngoài tầm kiểm soát của các
tổ chức Chính trong môi trường mở và tiện nghi như thế đã xuất hiện những tiêu cực, vấn nạn đang rất cần đến những giải pháp hữu hiệu cho vấn đề an toàn thông tin như nạn vi phạm bản quyền, xuyên tạc thông tin, truy cập thông tin trái phép, giả mạo thương hiệu,
… Trước tình hình đó, thủy vân số ngày càng khẳng định được vị thế của mình Chúng được dùng để ghi “dấu ấn số” (như chữ ký, nhãn thương hiệu,…) vào các sản phẩm số để chứng minh sự hợp pháp của sản phẩm, chống giả mạo Đây là hướng đi đang thu hút sự quan tâm nghiên cứu của nhiều nước trên thế giới cũng như ở Việt Nam
1 Thực trạng tài liệu số
Sự ra đời của máy tính đưa việc lưu trữ tài liệu lên một tầm cao mới Các tài liệu đều được số hóa và lưu trữ trong máy tính Máy tính cùng với Internet cho phép lưu trữ một khối lượng khổng lồ tư liệu được bảo hộ và phân phối trực tuyến Khả năng đăng lên hay tải về các cuốn sách, phim, hay nhạc giờ không còn là giấc mơ
Đi liền với những cơ hội là những thách thức cho chủ sở hữu, người dùng và các tổ chức quản lý Việc trao đổi, phân bố, sao chép tự do dẫn đến việc vi phạm bản quyền, giả mạo thương hiệu,… đã xảy ra ở nhiều nơi Thậm chí nhiều vụ việc nghiêm trọng, gây thiệt hại lớn đã xảy ra do sự vi phạm bản quyền
Trang 82 Nhược điểm của tài liệu số
Việc số hóa tài liệu giúp cho việc sao chép, phổ biến và lưu trữ các tài liệu này trở nên dễ dàng hơn bao giờ hết Những đặc điểm đó chính là những ưu điểm nổi bật của tài liệu số Tuy nhiên, trong một số trường hợp, chúng lại là nhược điểm, đặc biệt là trong lĩnh vực bảo vệ bản quyền
- Dễ dàng sao chép: Sao chép một tài liệu số là rất dễ dàng, nhanh chóng và chất lượng vẫn như bản gốc Hơn nữa, những bản sao chép này lại tiếp tục được sao chép ra thành rất nhiều các bản khác, thời gian sao chép và chất lượng tài liệu là không thay đổi
- Dễ dàng phổ biến: Sự xuất hiện của Internet làm cho việc phổ biến một tài liệu số trở nên rất dễ dàng Từ một máy tính cá nhân, qua mạng toàn cầu, có thể chuyển một tài liệu đến hàng triệu người Mỗi người này lại có thể chuyển tài liệu ấy cho rất nhiều người khác, khiến cho số lượng tăng theo cấp số nhân Cùng với tính dễ dàng sao chép, tài liệu này lại được sao chép ra với một số lượng không thể dự đoán
- Dễ dàng lưu trữ: Với các tài liệu số, việc lưu trữ trở nên tiện lợi và dễ dàng hơn rất nhiều Các thiết bị lưu trữ được phát triển với tốc độ chóng mặt, không chỉ về số lượng
mà còn về dung lượng lưu trữ Thiết bị flash, đĩa CD, DVD, ổ cứng di động,… là những
ví dụ điển hình Một khối lượng thông tin ngày càng lớn được lưu trữ trong những thiết bị ngày càng nhỏ
3 Yêu cầu đặt ra
Từ những đặc điểm và thực trạng trên, việc bảo vệ bản quyền các tài liệu số ngày càng được quan tâm nghiên cứu Các quốc gia trên thế giới, trong đó có Việt Nam, đã ban hành những luật liên quan đến bản quyền tài liệu số Tuy nhiên, chỉ có hành lang pháp lý
là chưa đủ, cần đưa thêm các dấu hiệu đánh dấu bản quyền nhúng vào các tài liệu số ấy
Kỹ thuật thủy vân số giúp thực hiện điều đó Thủy vân (những dấu hiệu đánh dấu bản quyền) sau khi được nhúng vào tài liệu số (ảnh, video, audio,…) thường rất khó để kẻ gian phá hỏng Gỡ thủy vân cũng đồng nghĩa với việc phá hủy tài liệu ấy
Trang 94 Mục tiêu khóa luận
- Về lý thuyết: Nghiên cứu và nắm bắt các kiến thức liên quan đến thủy vân số cho ảnh
Tổng quan về thủy vân số như nguồn gốc, định nghĩa, phân loại và ứng dụng của thủy vân số, các yêu cầu cũng như quá trình xây dựng một hệ thống thủy vân
Các hướng tiếp cận của kỹ thuật thủy vân, các kỹ thuật tương ứng trong các hướng tiếp cận này, ưu nhược điểm của chúng
Một số kiến thức bổ trợ khác
- Về chương trình: Xây dựng chương trình thủy vân số cho ảnh số với các chức năng
Nhúng thủy vân là một thông điệp dạng văn bản vào một ảnh (ảnh màu hay ảnh cấp xám ở các định dạng khác nhau), bằng hai phương pháp LSB và DCT
Tách thủy vân từ các ảnh đã nhúng để kiểm tra đánh giá
5 Phương pháp nghiên cứu
Dựa vào các tài liệu, thông tin tìm kiếm qua thư viện, trên internet, cùng với sự định hướng của cán bộ hướng dẫn, nghiên cứu cơ sở lý thuyết, lựa chọn tìm hiểu những kỹ thuật thủy vân cho ảnh số Từ đó, cùng với việc chọn lựa ngôn ngữ lập trình chuyên dụng, xây dựng chương trình minh họa, thử nghiệm trên một tập các ảnh và đánh giá kết quả
6 Nội dung nghiên cứu
Nghiên cứu tổng quan về thủy vân số
Nghiên cứu các kiến thức đặc thù ảnh hưởng đến chất lượng và phương pháp thủy vân cho ảnh số như mô hình thị giác người, các định dạng ảnh
Nghiên cứu yêu cầu, các bước trong xây dựng hệ thống thủy vân
Nghiên cứu các hướng tiếp cận của kỹ thuật thủy vân và các kỹ thuật tương ứng trong các hướng tiếp cận đó, tìm hiểu ưu nhược điểm của các phương pháp để lựa chọn phương pháp phù hợp nhất
Xây dựng chương trình ứng dụng cho phép nhúng thủy vân vào ảnh màu hay ảnh cấp xám ở các định dạng khác nhau và tách thủy vân ở các bức ảnh đã nhúng để kiểm tra
Trang 10Chương 1 MỘT SỐ KIẾN THỨC LIÊN QUAN ĐẾN THỦY VÂN ẢNH
1.1 MÔ HÌNH THỊ GIÁC NGƯỜI
Sự hiểu biết về đặc điểm của hệ thống thị giác người sẽ góp phần không nhỏ trong việc cải tiến và nâng cấp các thuật toán về thủy vân số
Võng mạc của mắt chia tín hiệu nhận được thành các thành phần khác nhau và mỗi thành phần kích thích não qua các kênh khác nhau Để nhận biết một ảnh, não người phải
xử lý thông tin thu nhận được như vị trí không gian, đường nét, màu sắc, độ chói, độ tương phản, tần số,… của ảnh Ánh sáng trắng hay dải sóng mà mắt người có thể cảm nhận được, khi đi qua lăng kính được phân tách thành những luồng ánh sáng đơn sắc có phổ màu từ tím đến đỏ, và dải bước sóng tương ứng từ 400-700 nm Mắt người có thể nhận biết và phân biệt khoảng 4000 màu, thực tế gặp khó chịu khi quan sát sự pha trộn lộn xộn quá nhiều màu Có ba thuộc tính chủ yếu của hệ thống màu:
- Sắc màu (Hue): dùng để phân biệt các màu với nhau
- Độ bão hòa (Saturation): độ thuần màu hay khoảng cách của màu tới điểm có cường độ cân bằng
- Độ sáng (Lightness): cường độ sáng, chính là ánh sáng phản xạ nhận được từ đối tượng Đôi khi thuật ngữ độ sáng được thay thế bởi Độ phát sáng (Brightness), nó
mô tả cường độ sáng do đối tượng tự phát ra
Dưới đây là một số đặc tính của hệ thống thị giác người:
1.1.1 Nhạy cảm về sự tương phản
Mắt người nhạy cảm với sự có mặt của một tín hiệu trong một tín hiệu khác Đặc điểm này nói lên khả năng dò tìm một tín hiệu trong một tín hiệu khác của mắt người, kết quả tốt nhất khi hai tín hiệu cùng một tần số, hướng và vị trí
Nhạy cảm về sự tương phản cũng chính là sự nhạy cảm về mật độ mô tả tính thấy được của nhiễu trên ảnh gốc Giả sử, mắt người đã quen với độ chói Io của nền, mục đích
là tìm lượng khác biệt nhỏ nhất ∆I giữa điểm ở tâm và các điểm xung quanh để mắt người
có thể phân biệt được Sự khác biệt này thường được gọi là sự khác biệt nhỏ nhất có thể
Trang 11Hình 1 Ngưỡng biến đổi nhỏ nhất mà con người cảm nhận được với các độ chói I khác nhau
1.1.2 Nhạy cảm về độ chói
Giá trị ngưỡng để dò tìm một nhiễu trên một nền sẽ nhận giá trị bất biến Đối với mắt người đó là một hàm không tuyến tính và phụ thuộc vào thuộc tính của ảnh Weber chỉ ra rằng, mắt người nhạy cảm với các mức cường độ thấp và giảm nhanh với các mức cường độ cao Thêm vào đó là sự phụ thuộc vào cường độ của các vùng xung quanh của vùng đang được kiểm tra Theo đó, nếu cường độ của các vùng xung quanh tăng, sẽ kéo theo cường độ tương đối trong vùng tối giảm và độ nhạy cảm trong vùng sáng sẽ tăng
1.1.3 Nhạy cảm về tần số
Không gian tần số cũng có ảnh hưởng đáng lưu ý đến sự nhạy cảm của mắt người Mắt người nhạy cảm với các sóng hình sin với các tần số khác nhau Sự nhạy cảm này chỉ phụ thuộc vào chức năng truyền sự điều biên của mắt và không phụ thuộc vào dữ liệu ảnh Mắt người rất nhạy cảm với các nhiễu ở tần số thấp và không nhạy cảm với các nhiễu ở tần số cao Mắt người phản ứng không đồng nhất với các tần số khác nhau, một ví
dụ đơn giản là mắt người sẽ nhạy cảm hơn ở các vùng đối lập cao và các vùng góc cạnh.Đối với hệ thống thị giác người, có ba dạng của sự đáp ứng tần số Thứ nhất là các tần số không gian (spatial frequencies), thứ hai là các tần số quang phổ (spectral frequencies) và thứ ba là các tần số thời gian (temporal frequencies)
JND
Trang 12Các tần số thời gian được nhận biết như là các mẫu kết cấu Sự đáp ứng tần số thời gian thường được mô tả bằng sự nhạy cảm với sự tương phản về độ chói như là một hàm của tần số thời gian Nó được gọi là hàm nhạy cảm tương phản (contrast sensitivity function – CSF) Một ví dụ được mô tả trong hình 2:
Hình 2 Hàm nhạy cảm tương phản dựa trên mẫu của Mannos và Sakrison
Hình trên chỉ ra rằng mắt người nhạy cảm nhất với sự khác nhau về độ chói ở dải tần
số giữa và ít nhạy cảm với dải tần số cao hoặc thấp Các mẫu tần số không gian hai chiều được biểu diễn bởi hướng và độ lớn của chúng Các nghiên cứu đã chỉ ra rằng: mắt người không chỉ phụ thuộc vào tần số của các mẫu khác nhau mà còn phụ thuộc vào hướng của chúng Cụ thể, mắt người nhạy cảm nhất với các đường, các cạnh ngang và dọc, và ít nhạy cảm nhất với các đường, các cạnh có hướng 45 độ
Trang 13Các tần số quang phổ được mắt người nhận biết như là màu sắc Mức cơ bản nhất của hệ thống màu của hệ thống thị giác người gồm ba màu cơ bản: Đỏ (Red), Xanh lá cây (Green) và Xanh da trời (Blue) Sự đáp ứng của mắt người với ba màu trên được minh họa như hình 3.
Hình 3 Sự cảm nhận ba màu của thị giác người
Từ hình ta thấy, mắt người kém nhạy cảm với kênh màu xanh xa trời (Blue channel) hơn hai kênh còn lại Vì lý do này mà nhiều hệ thống thủy vân số nhúng lượng thông tin nhiều nhất vào kênh màu xanh da trời
Các tần số thời gian được nhận biết như là sự chuyển động Hình 4 chỉ ra một thí nghiệm đo sự đáp ứng của mắt người với nhiều tần số thời gian khác nhau Kết quả chỉ ra rằng độ nhạy cảm của mắt người giảm nhanh với các tần số trên 30Hz Điều này giải
Trang 14thích vì sao trong truyền hình, tỉ lệ khung hình trên giây (frame/sec) không vượt quá mức 60.
Hình 4 Độ nhạy cảm của mắt người với các tần số thời gian khác nhau
1.1.4 Mặt nạ thị giác
Ngữ cảnh ảnh hưởng đến nhận thức Do vậy, mặc dù chúng ta có thể nghe một âm thanh riêng biệt rất rõ ràng, nhưng lại không thể khi có một âm thanh khác cùng tần số nhưng lớn hơn Cũng vậy, một cấu trúc (texture) có thể nhìn được rõ ràng khi nó đứng biệt lập, nhưng lại rất khó phát hiện khi được nhúng vào một ảnh có cấu trúc cao Người
ta gọi đó là hiện tượng sự hiện diện của một tín hiệu có thể ẩn hay che đi sự hiện diện của một tín hiệu khác, hay “mặt nạ” – masking Hình 5 dưới đây so sánh hai ảnh: ảnh ban đầu
và ảnh được nhúng thủy vân tần số thấp Mặc dù thủy vân nhúng vào phần bầu trời và
Trang 15phần núi là đồng nhất, chúng ta lại rất dễ nhận ra sự thay đổi của phần bầu trời so với ảnh
cũ, trong khi rất khó nhận ra sự thay đổi ở phần núi
a Ảnh ban đầu
b Ảnh sau khi nhúng thủy vân
Trang 16Hình 5 So sánh ảnh ban đầu và ảnh đã nhúng thủy vân
Mặt nạ thị giác là hiện tượng trực giác mà khung của ảnh bị che bởi ảnh Ảnh được coi là tín hiệu nền mà làm giảm khả năng nhìn thấy khung của ảnh Với một ảnh bị biến đổi bởi nhiễu cộng, chúng ta có thể thấy rằng nhiễu dễ dàng nhìn thấy ở vùng bằng phẳng, không gồ ghề, hơn là các vùng góc cạnh, có cấu trúc
Có nhiều hiện tượng mặt nạ Với hệ thống thị giác, có hai trường hợp cơ bản là mặt
nạ tần số và mặt nạ độ chói Với mặt nạ tần số, sự hiện diện của một tần số che đi sự nhận biết sự hiện diện của một tần số khác Với mặt nạ độ chói, độ chói địa phương che đi sự thay đổi tương phản
1.1.5 Kết luận
Từ việc nghiên cứu hệ thống thị giác người, ta rút ra được một số điểm lợi ích để thủy vân số cho ảnh:
- Tần số cao ít được thấy hơn các tần số thấp
- Để việc nhúng thủy vân được tốt, sự biến đổi phải nằm trong ngưỡng cho phép, nghĩa là nhỏ hơn ngưỡng JND (ngưỡng mà sự thay đổi nhỏ hơn ngưỡng này hầu như không nhận biết được)
- Nhúng thủy vân vào các thành phần màu xanh da trời (Blue) sẽ khó bị phát hiện hơn vào các thành phần màu khác
Trang 171.2 CÁC KHÔNG GIAN MÀU
Ảnh số được tạo nên bởi ma trận các điểm ảnh, mỗi điểm ảnh lại mang một màu, màu này là sự hòa trộn của các màu cơ bản Việc tìm hiểu về các không gian màu sẽ hỗ trợ cho các kỹ thuật thủy vân số
Không gian màu (color space) được đưa ra để định các màu hiển thị trên máy tính bởi vì chúng làm đơn giản hóa các thao tác tính toán cần thiết cho việc chuyển đổi màu sắc (color transformation) Không gian màu có thể được thiết kế hoặc là dựa trên cơ sở của bộ phát sinh màu của phần cứng (hardware color generation) (ví dụ như không gian RGB) hoặc là dựa trên sự cảm nhận màu sắc của mắt (như không gian HSL) Với một ứng dụng, việc chọn không gian màu nào để sử dụng tùy thuộc vào một số nhân tố sau: độ chính xác mà các nhà thiết kế cần kiểm soát màu sắc (color control), và yêu cầu về sự tương tác giữa các màu sắc và tốc độ các tính toán cho ứng dụng đó
1.2.1 Không gian RGB
Không gian RGB mô tả màu sắc bằng ba thành phần: Đỏ (red), Xanh lá cây (Green), Xanh da trời (Blue) Không gian màu này được mô tả như hình dưới:
Hình 6 Không gian màu RGB
Mỗi màu trong không gian RGB được biểu diễn như một vector thông qua ba vector
cơ sở là Red, Green, Blue Do đó, ứng với tổ hợp khác nhau của ba màu này sẽ cho ta một màu mới Ví dụ: màu vàng được tạo bởi tổ hợp hai màu đỏ và xanh lá cây, màu trắng được tạo bởi tổ hợp ba màu,…
Trang 18- Ưu điểm: Việc sử dụng không gian RGB có một số lợi ích:
Không gian RGB là chuẩn công nghiệp cho các thao tác đồ họa máy tính Các thao tác màu sắc có thể được tính toán trên các không gian màu khác nhưng cuối cùng cần phải chuyển về không gian RGB để có thể hiển thị trên màn hình (do thiết kế của phần cứng dựa trên mô hình RGB)
Có thể chuyển đổi qua lại giữa không gian RGB với các không gian màu khác như CMY, HSL, HSV,
Các thao tác tính toán trên không gian RGB thường đơn giản hơn
- Nhược điểm:
Các giá trị RGB của một màu là khác nhau đối với các màn hình khác nhau: Nghĩa là các giá trị RGB của màu trên màn hình màu này sẽ không sinh ra đúng màu đó trên một màn hình khác
Sự mô tả các màu trong thế giới thực đối với không gian RGB còn nhiều hạn chế bởi vì không gian RGB không hoàn toàn phù hợp với sự cảm nhận màu sắc của con người Hai điểm phân biệt trong không gian RGB, với mắt người có thể hoặc không thể là thể hiện của hai màu khác nhau Chính vì điều này mà không gian RGB không thể ánh xạ trực tiếp đến bất cứ chiều cảm nhận nào khác (như độ bão hòa - saturation, độ sáng - lightness) ngoài hue (sắc độ)
1.2.2 Không gian HSV
Không gian RGB là màu mà mắt con người cảm nhận ánh sáng chứ không phải màu
mà mắt người cảm nhận màu sắc Mặc dù không gian RGB biểu diễn chính xác cái mà màn hình cần hiển thị cho mắt người, nhưng nó lại không phải là mô hình tốt để người sử dụng biểu diễn một màu cụ thể khi họ suy nghĩ Ví dụ, sẽ rất khó cho người dùng khi họ muốn biết giá trị R,G, B để biểu diễn màu tía Không gian màu HSV ra đời cải thiện yếu điểm của mô hình RGB, việc tạo ra một màu mới của nó dựa trên quy tắc pha màu của các họa sĩ Do vậy, không gian màu RGB gần với sự cảm nhận màu sắc của mắt người hơn Không gian màu HSV được minh họa như hình dưới:
Trang 19Hình 7 Không gian HSV
Trong đó:
H (Hue): bước sóng gốc của ánh sáng, được biểu diễn bằng góc nằm trong khoảng 0 - 360 độ
V (Value): cường độ hay độ chói của ánh sáng, có giá trị trong khoảng 0-1
S (Saturation): độ tinh khiết của ánh sáng gốc, có giá trị trong khoảng 0-1
- Nhược điểm:
Cần có các phép hiệu chỉnh gamma
Trang 201.2.3 Không gian CMY
Không gian màu CMY được xác định bởi ba màu cơ sở cyan, magenta và yellow dành cho máy in màu Không gian màu CMY thuộc loại mô hình trừ, trong khi RGB thuộc loại mô hình cộng Nghĩa là với không gian màu RGB, một màu được tạo ra bằng cách thêm vào màu đen ( giá trị RGB là 0,0,0) một tổ hợp các màu cơ sở để tạo màu mới,
ví dụ màu vàng (giá trị RGB là 1,1,0) Trong khi với không gian màu CMY, một màu được tạo ra bằng cách loại bỏ từ ánh sáng trắng Hình bên dưới minh họa và so sánh giữa không gian màu RGB và CMY
Hình 8 RGB và CMY
Công thức biến đổi màu từ RGB sang CMY:
C M Y
1.2.4 Không gian YCbCr
Không gian YCbCr xuất phát từ không gian màu YUV, một chuẩn không gian màu
để xây dựng chuẩn video số Không gian YUV quy định một không gian màu được tạo bởi độ sáng Y và hai thành phần màu Cụ thể với không gian YCbCr thì Cb là màu blue/yellow, và Cr là màu red/green
R
G
WCB
C
Y
KRM
Trang 21Công thức chuyển đổi giữa không gian YCbCr và RGB:
Y Cb Cr
Ưu điểm của không gian YCbCr là tín hiệu trong không gian này có thể được xử lý
để loại bớt một số thông tin Do vậy, không gian màu này được sử dụng phổ biến trong kỹ thuật nén, như nén ảnh JPEG hay nén video MPEG
1.3 CẤU TRÚC MỘT SỐ LOẠI ẢNH THÔNG DỤNG
1.3.1 Biểu diễn ảnh trên máy tính
1.3.1.1 Khái niệm ảnh số
Ảnh trong thực tế là ảnh liên tục về không gian và về giá trị độ sáng Một ảnh có thể
được định nghĩa là một hàm hai chiều f(x,y), trong đó x và y là tọa độ trong không gian, và biên độ của hàm f tại bất kỳ cặp tọa độ (x, y) nào được gọi là cường độ của ảnh tại điểm
đó Khái niệm cấp xám thường được sử dụng để đề cập đến cường độ của ảnh đơn sắc Ảnh màu được tạo thành từ sự kết hợp của các ảnh 2D riêng biệt Ví dụ, trong hệ thống màu RGB, một ảnh màu là sự phối hợp của ba thành phần màu (đỏ, xanh lá cây, xanh da trời) riêng biệt Chính vì lý do này, rất nhiều kỹ năng áp dụng với ảnh đơn sắc cũng có thể
áp dụng với ảnh màu bằng cách xử lý ba thành phần ảnh riêng biệt
Chuyển đổi một ảnh thông thường sang dạng số yêu cầu tọa độ không gian cũng như biên độ của ảnh đó phải được số hóa, nghĩa là các tín hiệu liên tục được biến đổi thành các tín hiệu rời rạc thông qua quá trình lấy mẫu (sampling – rời rạc hóa về không gian) và lượng tử hóa (quantization – chuyển đổi tín hiệu tương tự dang tín hiệu số) các thành phần của ảnh mà về nguyên tắc bằng mắt thường không thể phân biệt được hai điểm kề
nhau Do đó, khi các giá trị x, y và biên độ của hàm f là xác định, mang giá trị rời rạc, ta
gọi một ảnh là ảnh số
Sau quá trình lấy mẫu và lượng tử hóa, ta thu được một ma trận số thực gồm M hàng
và N cột Một giá trị (x,y) của ma trận được gọi là một điểm ảnh (pixel hay pel), mỗi điểm ảnh được xác định bởi tọa độ và màu Như vậy, một ảnh số là tập hợp nhiều điểm ảnh, ta nói ảnh gồm M x N điểm ảnh
Trang 221.3.1.2 Các loại ảnh số
Căn cứ vào phương pháp xử lý dữ liệu trong hệ thống, người ta phân biệt thành hai
hệ thống: đồ họa vector (Geometry Based Graphic) và đồ họa điểm (Sample Based Graphic) Ảnh biểu diễn trên máy tính vì vậy cũng được chia thành hai loại: ảnh mành và ảnh vector
Ảnh mành
Ảnh mành được lưu trữ theo ma trận các điểm ảnh Để tạo được ảnh mành, người ta
có thể dùng phần mềm vẽ trực tiếp từng điểm ảnh (như phần mềm Paint) hoặc số hóa các ảnh thu từ các thiết bị quang học (như sử dụng phần mềm Photoshop)
Đặc điểm của ảnh mành:
- Có thể dễ dàng thay đổi trực tiếp thuộc tính các điểm, thay đổi từng phần và từng vùng ảnh
- Dễ dàng sao chép các điểm ảnh từ hình này sang hình khác
- Vì đơn vị biểu diễn là các điểm ảnh, nên ảnh mành cho phép thực hiện các phép toán trên các bít của nó
- Dữ liệu (Data): nội dung của ảnh, nằm ngay sau phần bảng màu, chứa giá trị màu của điểm ảnh
- Tiêu đề cuối (Footer): chứa một số thông tin đặc biệt nhứ tính tương thích với các phiên bản cũ
Trang 23 Ảnh vector
Trong kỹ thuật đồ họa vector, người ta chỉ lưu trữ mô tả toán học của các thành phần trong mô hình hình học cùng với các thuộc tính tương ứng của nó mà không lưu lại toàn
bộ các điểm ảnh
Đặc điểm của ảnh vector:
- Không cho phép thay đổi thuộc tính của từng điểm ảnh riêng biệt trực tiếp mà phải xử lý với từng thành phần hình học cơ sở
- Cho phép quan sát ảnh ở nhiều góc độ khác nhau một cách dễ dàng bằng cách thay đổi điểm nhìn và góc nhìn
Các thành phần của ảnh vector:
- Tiêu đề đầu (header): Lưu trữ cấu trúc của ảnh, kích thước tiêu đề phụ thuộc loại
dữ liệu lưu trữ
- Dữ liệu (data): Công thức toán học biểu diễn các thành phần đối tượng
- Tiêu đề cuối (footer): Lưu số lượng các đối tượng trong ảnh
1.3.2 Cấu trúc một số định dạng ảnh thông dụng
1.3.2.1 Ảnh bitmap (BMP)
Ảnh bitmap (hay Windows bitmap) được phát triển bởi Microsoft Corporation, được lưu trữ dưới dạng độc lập thiết bị cho phép Windows hiển thị dữ liệu không phụ thuộc vào khung chỉ định màu trên bất kỳ phần cứng nào Các ảnh bitmap thường được lưu trữ với phần mở rộng phổ biến bmp (hoặc dạng ít gặp hơn là dib – device independent bitmap)
- Bảng Palette màu: định nghĩa các màu sẽ được sử dụng trong ảnh
Trang 24- Bitmap data: nằm ngay sau phần palette màu, chứa giá trị màu của các điểm ảnh Các điểm ảnh được lưu theo các dòng từ trái sang phải, các dòng ảnh được lưu từ dưới lên trên Giá trị mỗi điểm ảnh là một chỉ số trỏ tới phẩn tử màu tương ứng của bảng màu Người ta kí hiệu số bit trên một điểm ảnh (bit per pixel) là n Một ảnh bitmap n-bit
có 2n màu, giá trị n càng lớn thì ảnh càng có nhiều màu và càng rõ nét Các giá trị thường gặp của n là 1 (ảnh đen trắng), 4 (ảnh 16 màu), 8 (ảnh 256 màu), 16 (ảnh high color -
65536 màu) và 24 (ảnh true color – 16 triệu màu) Ảnh 24 bit cho chất lượng ảnh trung thực nhất
Đặc điểm nổi bật của ảnh bitmap là ảnh không được nén bởi bất kỳ thuật toán nào Khi lưu ảnh, các điểm ảnh được ghi trực tiếp vào tập tin - một điểm ảnh sẽ được mô tả bởi một hay nhiều byte tùy thuộc vào giá trị n của ảnh Do đó, một hình ảnh lưu dưới dạng BMP thường có kích cỡ rất lớn, gấp nhiều lần so với các ảnh được nén (chẳng hạn GIF, JPEG hay PNG)
1.3.2.2 Ảnh IMG
Ảnh IMG là ảnh đen trắng, mỗi điểm ảnh được thể hiện bởi 1 bit Toàn bộ ảnh được chỉ gồm các điểm sáng và tối tương ứng với các giá trị 1 hoặc 0 Phần đầu của ảnh IMG (16 byte) chứa các thông tin cần thiết:
+ 6 byte đầu: dùng để đánh dấu định dạng ảnh IMG
+ 2 byte tiếp theo: chứa độ dài mẫu tin Đó là độ dài của dãy các byte kề liền nhau
mà dãy này sẽ được lặp lại một số lần nào đó Số lần lặp này sẽ được lưu trữ trong byte đếm Nhiều dãy giống nhau được lưu trong một byte Đó là cách lưu trữ nén.+ 4 byte tiếp: mô tả kích cỡ pixel
+ 2 byte tiếp: số pixel trên một dòng ảnh
+ 2 byte cuối: số dòng ảnh trong ảnh.
Ảnh IMG được nén theo từng dòng, mỗi dòng gồm các gói (pack) Các dòng giống nhau sẽ được nén thành một gói
Trang 251.3.2.3 Ảnh GIF (Graphics Interchange Format)
Ảnh GIF là một định dạng tập tin hình ảnh bitmap dùng cho các hình ảnh dùng ít hơn 256 màu sắc khác nhau và cho các hoạt hình dùng ít hơn 256 màu cho mỗi khung hình GIF là định dạng nén dữ liệu đặc biệt hữu ích cho việc truyền hình ảnh qua đường truyền lưu lượng nhỏ Tập tin GIF dùng phương pháp nén không mất mát dữ liệu, làm cho kích thước tập tin giảm đáng kể mà vẫn không làm ảnh hưởng đến chất lượng ảnh
Số lượng tối đa 256 màu làm cho định dạng này không phù hợp cho các hình chụp (thường có nhiều màu sắc), tuy nhiên các kiểu nén dữ liệu bảo toàn cho hình chụp nhiều màu cũng có kích thước quá lớn đối với truyền dữ liệu trên mạng hiện nay Định dạng JPEG là nén dữ liệu có mất mát có thể được dùng cho các ảnh chụp, nhưng lại làm giảm chất lượng cho các bức vẽ ít màu, tạo nên những chỗ nhòe thay cho các đường sắc nét, đồng thời độ nén cũng thấp cho các hình vẽ ít màu Như vậy, GIF thường được dùng cho
sơ đồ, hình vẽ nút bấm và các hình ít màu, còn JPEG được dùng cho ảnh chụp
1.3.2.4 Ảnh JPEG (Joint Photographic Expert Group)
Ảnh JPEG là các ảnh có tỉ lệ nén dữ liệu rất cao, thường dùng cho ảnh chụp Đây là một định dạng ảnh rất thông dụng hiện nay Phần mở rộng hay gặp nhất của ảnh JPEG
là jpg, ngoài ra còn có jpeg, jpe Phương pháp nén ảnh JPEG là một trong những phương pháp nén ảnh hiệu quả, có tỷ lệ nén ảnh tới vài chục lần Tuy nhiên ảnh sau khi giải nén sẽ khác với ảnh ban đầu Chất lượng ảnh bị suy giảm sau khi giải nén Sự suy giảm này tăng dần theo hệ số nén Tuy nhiên sự mất mát thông tin này là có thể chấp nhận được và việc loại bỏ những thông tin không cần thiết được dựa trên những nghiên cứu về
hệ thống thị giác người
Quá trình nén ảnh JPEG thường trải qua các giai đoạn:
- Chuyển đổi hệ thống màu RGB sang hệ thống màu YCbCr (Y: intensity, Cb: blue/yellow, Cr: red/green)
- Loại bỏ các thông tin thừa trong ảnh gốc, các thông tin được chọn để loại bỏ thường có đặc điểm ít gây chú ý với mắt người, có mặt chúng hay không con người cũng khó nhận thấy
Trang 26- Biến đổi Cosine rời rạc: Ảnh ban đầu được chia thành các khối 8*8, và thực hiện phép biến đổi Cosine rời rạc trên các khối này.
- Lượng tử hóa: Dựa vào ma trận lượng tử và công thức để lượng tử hóa các hệ số DCT ( DCT coefficients)
- Sắp xếp theo hình zig-zag: Các hệ số DCT sau khi được lượng tử hóa phần lớn đều mang giá trị 0, ta sắp xếp theo hình zig-zag, sẽ được các hệ số DCT khác 0 nằm phía trên bên trái của ma trận lượng tử
- Nén không mất dữ liệu: thuật toán Huffman thường được sử dụng để nén, tạo ảnh JPEG
Với các ưu điểm có được, ảnh JPEG được công nhận là chuẩn để lưu trữ ảnh màu thực tế (theo chuẩn ISO 10918-1)
Trang 27Chương 2. CÁC KỸ THUẬT THỦY VÂN SỐ
2.1 TỔNG QUAN VỀ THỦY VÂN SỐ
2.1.1 Khái niệm thủy vân số
1/ Khái niệm thủy vân số
Thủy vân số (Digital Watermarking) là kỹ thuật nhúng “dấu ấn số” (watermark – tin giấu) vào một sản phẩm số (text, image, audio, video), mà tin giấu này có thể được phát hiện và tách ra sau đó, nhằm chứng thực (đánh dấu, xác thực) nguồn gốc hay chủ sở hữu của sản phầm số này
Một ví dụ đơn giản của thủy vân số là một dấu hiệu (như chữ ký) trên một bức ảnh
để chứng thực nguồn gốc và chủ sở hữu của bức ảnh đó
2/ So sánh thủy vân số với giấu tin
Mặc dù thủy vân số (watermarking) và giấu tin (steganography) cùng nằm trong lĩnh vực nghiên cứu nhằm che dấu đi sự hiện diện của thông tin nhưng chúng có một số đặc điểm khác biệt:
Bảng 1 Bảng so sánh đặc điểm của thủy vân số và giấu tin
liệu thông tin mật
- Thông tin được giấu phải ẩn,
không cho người khác thấy được
bằng mắt thường
- Chỉ tiêu quan trọng nhất là dung
lượng của tin được giấu
- Mục đích là bảo vệ môi trường giấu tin
- Chỉ cần thông tin đủ để đặc trưng cho bản quyền của chủ sở hữu
- Thông tin giấu có thể ẩn (invisible watermarking) hoặc hiện (visible watermarking)
- Chỉ tiêu quan trọng nhất là tính bền vững của tin được giấu
2.1.2 Nguồn gốc thủy vân số
Trang 28Thủy vân trên giấy (paper watermark): Thủy vân trên giấy xuất hiện trong ngành sản xuất giấy cách đây hơn 700 năm Thủy vân trên giấy (paper watermark) đầu tiên được tìm thấy có nguồn gốc từ Fabriano, Italy.
Hình 9 Một trong những thủy vân trên giấy đầu tiên
Cuối thế kỷ 13, Fabriano có 40 xưởng sản xuất giấy với kiểu dáng, kích thước, chất lượng và giá cả khác nhau, người mua rất dễ bị nhầm lẫn Vào thời gian đó, các xưởng sản xuất giấy chỉ sản xuất được giấy sống (raw paper) với bề mặt rất sần sùi và chưa thể làm giấy viết được Giấy sống này sẽ được chuyển cho các thợ thủ công, những người sẽ làm phẳng, làm nhẵn bề mặt giấy sống bằng các viên đá cứng gọi là máy cán là (calender) Sau khi đã được làm phẳng, các giấy này có thể sử dụng cho việc viết chữ lên
đó Giấy này sẽ được bán cho các thương gia, họ sẽ cất giữ chúng trong các kho hàng lớn, sau đó bán lại cho những khách hàng với lợi nhuận rất cao
Sự cạnh tranh không chỉ của 40 xưởng sản xuất giấy mà còn giữa thợ thủ công và thương gia là rất lớn, điều này làm cho thị trường giấy trở nên khá lộn xộn, người mua rất
dễ bị nhầm lẫn sản phẩm của các xưởng sản xuất vì không có dấu hiệu nào để nhận biết
Vì vậy, các xưởng giấy đã nghĩ ra phải đánh dấu giấy của xưởng mình bằng dấu hiệu nào
Trang 29vân giấy nhanh chóng được sử dụng rộng rãi khắp Italy, sau đó là châu Âu Ban đầu, thủy vân chỉ là nhãn hiệu hay tên của xưởng sản xuất giấy, sau đó, các thủy vân này như một dấu hiệu nói lên chất lượng giấy Xa hơn, thủy vân được sử dụng với ý nghĩa nói lên ngày sản xuất và tác giả, một dạng sơ khai của chứng nhận bản quyền
Thủy vân số (digital watermark): Khái niệm thủy vân số cũng xuất phát từ khái niệm thủy vân trên giấy Tuy nhiên, thật khó để nói chính xác khi nào khái niệm “thủy vân số” (digital watermarking) bắt đầu được nói đến Năm 1979, Szepanski mô tả một mẫu thông tin số có thể nhúng vào tài liệu nhằm mục đích chống giả mạo Chín năm sau, Holt và các đồng nghiệp mô tả một phương pháp để nhúng mã định danh vào tín hiệu âm thanh Tuy nhiên, mãi đến năm 1988, Komatsu và Tominaga mới lần đầu tiên sử dụng cụm từ
“digital watermark” Nhưng phải đến đầu những năm 90 thì thủy vân số với thực sự nhận được sự quan tâm của công chúng
Hình10 Số lượng các paper về thủy vân số qua các năm
Trang 30Về bản chất, thủy vân số cũng giống như thủy vân trên giấy – dùng để chứng thực quyền sở hữu về một sản phẩm nào đó – nhưng thay vì thủy vân trên các sản phẩm thực, thủy vân số nhúng các dấu hiệu chứng thực bản quyền lên các tài liệu số Qua các năm, thủy vân số ngày càng được quan tâm nhiều hơn, với số lượng các bài báo, tài liệu tăng nhanh chóng Hiện nay, thủy vân số đã có những vai trò quan trọng và được sử dụng trong nhiều ứng dụng khác nhau, đặc biệt là trong việc bảo vệ bản quyền.
2.1.3 Phân loại thủy vân số
Có rất nhiều cách phân loại thủy vân số khác nhau:
Theo khả năng cảm nhận:
Visible/Perceptible (hữu hình): Có thể nhìn thấy thông tin được giấu Trong một
số trường hợp, chủ sở hữu muốn người khác nhìn thấy ngay thủy vân họ nhúng vào ảnh, để chứng nhận bản quyền Ví dụ nhãn sản phẩm có logo của công ty
Invisible (vô hình): Không thể nhìn thấy thông tin được giấu bằng mắt thường Trường hợp này, chủ sở hữu không muốn thủy vân làm ảnh hưởng đến bức ảnh, thủy vân sẽ khó có thể nhìn thấy bằng mắt thường, chỉ được tách ra khỏi ảnh khi cần thiết, như để chứng thực bản quyền của bức ảnh
Theo tính bền vững:
Robust watermarking: Watermark nhúng theo phương pháp này rất khó phá hủy Việc tấn công watermark trong trường hợp này sẽ làm suy giảm nghiêm trọng chất lượng thông tin Nói một cách dễ hiệu, nếu tháo watermark cũng đồng nghĩa với việc phá hủy ảnh mang watermark
Fragile watermarking: Loại này nhằm đảm bảo tính toàn vẹn cho nội dung thông tin Bất kỳ một sự thay đổi nhỏ nào cũng có thể làm hỏng watermark
Semi-fragile watermarking: Nói cách dễ hiểu là loại watermark này sẽ tự phá hủy trong trường hợp bị tấn công Ví dụ: Một ảnh có chứa một watermark, nhưng khi tấn công không hợp lý thì watermark này sẽ bị phá hủy vĩnh viễn, và không thể khôi phục
Trang 31 Theo sự yêu cầu ảnh gốc cho việc tách watermark:
Blind watermarking: không yêu cầu ảnh gốc khi tách watermark
Non-blind watermarking: yêu cầu ảnh gốc khi tách watermark
Semi-blind watermarking: yêu cầu thông tin của ảnh gốc khi tách watermark
Theo khuynh hướng tiếp cận:
Spatial domain: nhúng watermark theo miền không gian
Frequency domain: nhúng watermark theo miền tần số
Theo tính phụ thuộc ảnh:
Image-adaptive (phụ thuộc ảnh): Các phương pháp nhúng watermark theo loại này phụ thuộc vào định dạng ảnh Nó có hạn chế là thông tin giấu rất dễ bị tổn hại bởi các phép biến đổi ảnh
Image-independent (độc lập ảnh): Các phương pháp nhúng watermark trong loại này lợi dụng việc biến đổi ảnh để giấu tin vào trong đó, ví dụ giấu vào các hệ số biến đổi Nhóm này có nhiều ưu điểm hơn nhóm phụ thuộc ảnh về tính bền vững, nhưng cài đặt sẽ phức tạp hơn
Trang 322.1.4 Ứng dụng của thủy vân số
Bảo vệ bản quyền (copyright protection)
Đây là ứng dụng cơ bản nhất của thủy vân số Một thông tin để chứng minh quyền
sở hữu của tác giả (gọi là watermark hay thủy vân) sẽ được nhúng vào các tài liệu số trước khi các tài liệu này được đưa lên mạng Thủy vân này chỉ có người sở hữu các sản phẩm có và được sử dụng làm minh chứng bản quyền của sản phẩm Yêu cầu quan trọng với ứng dụng này là tính bền vững của thủy vân, để người khác khó có thể gỡ chúng ra khỏi các sản phẩm số
a Ảnh ban đầu b.Sau khi nhúng watermark
Hình 11 Trước và sau khi nhúng watermark
Hình 12 Watermark của ảnh h1b
Trang 33 Xác thực thông tin hay phát hiện xuyên tạc thông tin
Thủy vân số có thể được dùng để xác thực thông tin hay phát hiện giả mạo Thủy vân được dùng để kiểm tra xem ảnh là nguyên gốc hay đã chịu sự tác động bằng các phép
xử lý ảnh Người ta thường dùng phương pháp thủy vân dễ vỡ (fragile watermarking) để nhúng thông tin vào ảnh Nếu ảnh bị tác động bằng các phép xử lý ảnh, thủy vân sẽ không còn nguyên vẹn
(a) Clinton vµ Hillary (b) Clinton vµ Monica
Hình 13 Khó phân biệt ảnh nào là giả bằng mắt thường