Wavelet này không có hàm mức và là dẫn xuất của một hàm mà tỷ lệ với
đạo hàm bậc hai của hàm mật độ xác suất Gauss.
Hình 3.21. Hàm ψ(t )của biến đổi Mexican Hat
3.6.8. Biến đổi Wavelet Meyer
Yves Meyer là một trong những nhà khoa học đã đặt nền móng cho phép biến
đổi Wavelet. Phép biến đổi Wavelet mang tên Meyer cũng là một phép biến đổi thông dụng, và là hàm mức xác định theo miền tần số. Biến đổi này có khả năng phân tích tín hiệu tốt hơn nhiều so với biến đổi Haar.
Dạng của hàm ψ(t ) với biến đổi Meyer cho ở hình vẽ:
Chương IV: Một số Thuật toán Watermarking
Gần đây, phần đông thuật toán watermarking số được phát triển nhằm mục
đích bảo vệ bản quyền ảnh số và xác minh tình trạng nguyên vẹn dữ liệu. Hầu hết các thuật toán watermarking chuyển đổi ảnh gốc sang một miền làm thuận tiện cho việc nhúng thông tin watermark nhằm bảo đảm tính bền vững và không nhìn thấy. Những phương pháp trước thì vận dụng phép biến đổi cosin rời rạc (DCT) để nhúng những hệ số quan trọng cảm nhận được trong phổ tần số thấp, tiêu chuẩn nén JPEG cũng dựa vào DCT. Tuy nhiên, những điều kiện cần mới như là việc truyền tốc độ
bit thấp và tiến dần, đặc tính tỷ lệ và mã hóa ROI (region-of-interest) đòi hỏi việc mã hóa ảnh linh hoạt và hiệu quả hơn. Tiêu chuẩn nén ảnh JPEG2000 dựa trên phép biến đổi wavelet rời rạc (DWT) có nhiều cải tiến và cho tỉ lệ nén cao hơn. Vì thế
luận văn này nghiên cứu sơđồ watermarking trong miền biến đổi Wavelet.
4.1 Phương pháp watermarking trong miền không gian ảnh (spatial domain)
Watermarking trong miền không gian tín hiệu được khảo sát bằng cách rời rạc trực tiếp. Các giá trị rời rạc của điểm ảnh gọi là miền biến sốđộc lập tự nhiên. Sau
đó tìm cách nhúng thông tin vào ảnh bằng cách thay đổi các giá trị điểm ảnh sao cho không làm ảnh hưởng nhiều đến chất lượng ảnh và đảm bảo sự bền vững của thông tin nhúng trước những tấn công có thể có đối với bức ảnh đã nhúng. Có hai phương pháp điển hình là phương pháp tách bit có trọng số ít quan trọng nhất (LSB- Least Significant Bit) và phương pháp sử dụng chuỗi giả ngẫu nhiên.
4.1.1 Quá trình chèn watermark vào hình ảnh
Mục đích:
Đưa một đoạn thông điệp N bit (Watermark) vào image A.
- Chia ảnh A (ảnh gốc) thành làm N khối có chiều dài bằng nhau hoặc gần bằng nhau.
- Trên mỗi khối: lấy ngẫu nhiên 1 bit có trọng số nhỏ nhất của 1 điểm ảnh thuộc khối đó (có thể chọn cố định bit có trọng số nhỏ nhất của byte đầu tiên, tuy nhiên làm theo cách này thì watermark dễ bị phá hủy hơn).
- Trên mỗi khối thay thế 1 bit được chọn bằng 1 bit trong watermark W sẽ
thu được một hình ảnh A’ và một khoá key, khoá này cho biết vị trí của bit trong khối i được thay thế.
Nhận xét:
Vì dùng bit có trọng số nhỏ nhất để chứa message (watermark) nên trong các tác vụ xử lý ảnh thông thường người ta có thể bỏ qua bit này mà chất lượng của ảnh không bị suy giảm. Do đó cách đưa watermark vào ảnh theo cách này sẽ không bền vững trước các tấn công.
4.1.2 Quá trình phát hiện watermark:
Mục đích:
Phát hiện xem ảnh A’ có chứa watermark hay không?
Cách thực hiện:
- Giá trị vào: A, A’, và key.
- Dựa vào key ta lấy được các bit bị thay đổi trong giải thuật nhúng ở trên. - So sánh A và A’ chỉ khác nhau ở các vị trí quy định trong các bit hay không? Nếu đúng thì A’ chứa watermark từ A, ta có thể thu được watermar W bằng cách lấy lại các bit thay đổi ở trên.
Nhận xét:
Bởi vì so sánh A’ và A đòi hỏi phải giống nhau ở tất cả các vị trí còn lại nên khi ảnh A’ bị nhiễu hoặc bị thay đổi do các hành động thông thường như cắt, xoay
ảnh … thì giải thuật trên không phát hiện được. Trong thực tế thì khi hiện thực giải thuật này người ta không yêu cầu phải so sánh chính xác, mà có một sai số cho phép, nếu kết quả của quá trình so sánh A và A’ nhỏ hơn sai số cho phép này thì xem như A’ được sinh ra từ A.
4.2 Phương pháp watermarking dùng biến đổi DCT
Kỹ thuật watermarking dùng phép biến đổi DCT thường chia ảnh gốc thành các khối, thực hiện phép biến đổi DCT với từng khối ảnh gốc đểđược miền tần số
thấp, miền tần số giữa và miền tần số cao. Đa số kỹ thuật watermarking ẩn bền vững sẽ chọn miền tần số giữa của mỗi khối để nhúng watermark theo một hệ số k nào đó gọi là hệ số tương quan giữa chất lượng ảnh sau khi nhúng (tính ẩn của watermark và độ bền vững của watermark)
Ví dụđơn giản quá trình watermarking sử dụng biến đổi Cosin rời rạc (DCT) với đối tượng ảnh như sau:
Thực hiện biến đổi DCT đối với ảnh chứa mà được đại diện bởi khối thứ
nhất (8x8 pixel) của bức ảnh “rừng cây” như trên hình 4.1.
Hình 4.1: Khối 8x8 đầu tiên của ảnh “Rừng cây”
Khối được cho bởi: 0.7232 0.8245 0.6599 0.7232 0.6003 0.6122 0.6122 0.5880 0.7745 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7745 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7025 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 B1 = 0.7745 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7025 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7025 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7025 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 0.7232 Biến đổi DCT khối B1được kết quả là:
Lưu ý: phần lớn năng lượng DCT của B1 được nén tại giá trị DC (hệ số
DC=5.7656).
Watermark là một số giả ngẫu nhiên được phát sinh bằng cách dùng bộ tạo số ngẫu nhiên khởi đầu từ giá trị nguồn (khóa), được cho bởi:
5.7656 0.1162 -0.0379 0.0161 -0.0093 -0.0032 -0.0472 -0.0070 -0.0526 0.1157 0.0645 0.0104 -0.0137 -0.0114 -0.0415 -0.0336 -0.0354 0.0739 -0.0136 -0.0410 -0.0081 -0.0187 -0.0871 0.0063 -0.0953 0.0436 0.0379 -0.0090 -0.0394 0.0182 -0.0031 -0.0589 DCT (B1) = -0.1066 0.0500 0.0034 -0.0355 -0.0093 0.0147 0.0526 -0.0278 -0.0790 -0.0064 0.0088 0.0240 -0.0200 -0.0361 -0.0586 -0.0731 -0.0422 0.0366 -0.0460 -0.0150 0.0518 0.0141 0.0105 -0.0980 0.0025 0.0697 0.0327 -0.0140 0.0286 -0.0084 -0.0422 0.0329 1.6505 0.2759 -0.8579 -1.6130 -1.0693 0.2259 -0.4570 0.7167 0.7922 - 0.6320 0.8350 -0.3888 0.4993 0.2174 -1.6095 -0.9269 0.7319 0.7000 1.6191 -0.0870 0.7859 0.1870 -0.3633 2.5061 0.9424 0.8966 -0.0246 -1.4165 0.5422 0.1539 -1.1958 0.0374 W = 0.2059 1.8204 0.5224 -0.9099 -1.6061 -0.7764 -0.8054 -1.0894 -0.1303 -0.3008 1.6732 -1.1281 -0.3946 0.8294 -0.0007 -0.7952 0.0509 -1.7409 1.1233 0.3541 0.1994 -0.0855 0.1278 -0.6312 -0.1033 -1.7087 0.5532 0.0268 2.5359 1.7004 -0.6811 - 0.7771
Biến đổi DCT trên W, được kết quả là:
Hình 4.2: Sơđồ khối quá trình tạo watermark
B1đã được watermark với W như biểu diễn trong sơđồ khối ở hình 4.2, căn cứ theo: f w f fW = +α (4.1) Trong đó f là hệ số DCT của tín hiệu chứa (B1), w là hệ số DCT của tín hiệu watermark (W) và α là năng lượng watermarking được lấy đến 0.1 (α = 0.1). Giá trị
DC của tín hiệu chứa thì không được thay đổi mục đích là làm giảm sự méo dạng của ảnh được watermark. Do vậy, giá trị DC sẽđược giữ lại, không bị nhúng.
0.2390 1.5861 0.1714 0.7187 -0.3163 -1.0925 2.6675 1.3164 0.1255 0.8694 2.8606 -0.2411 0.6162 -1.1665 -0.1335 -0.8266 0.0217 -1.4093 -1.3448 1.3837 1.3513 1.0022 0.8743 0.3735 -1.7482 0.8337 1.5394 -0.0076 -1.7946 1.1027 -0.4434 -0.5771 DCT (W) = -0.7653 0.5313 0.9799 1.2930 -0.0309 -0.9858 -0.9079 -0.8152 0.4222 -0.9041 1.2626 -0.0979 0.6200 0.1858 -0.1021 0.1452 1.4724 -1.1271 1.7449 -0.2921 - 0.3144 -0.7244 0.4119 0.0535 0.4453 0.0380 0.9942 -1.5084 0.0656 0.4169 -0.7046 - 0.5278 Biến đổi tần số (DCT) Bộ mã hoá α = 0.1 Bộ tạo Watermark Biến đổi tần số ngược (IDCT) + key Biến đổi tần số (DCT) Ảnh đã nhúng watermark Ảnh gốc
Phương trình (4.1) có thểđược viết lại ở dạng ma trận như sau:
Trong đó, B1w là tín hiệu đã được watermark của B1. Kết quả sau khi áp dụng hàm trên như sau:
Chú ý giá trị DC của DCT (B1w) giống giá trị DC của DCT (B1). Để tạo ảnh
đã được watermark, thực hiện biến đổi DCT ngược ta được kết quả sau:
Nhận xét:
- Dễ dàng so sánh B1w và B1 và nhận thấy sự thay đổi rất nhỏ do watermark. - Phương pháp bền vững dưới sự thay đổi khác nhau của ảnh nên kỹ thuật này áp dụng trong thiết bị xác nhận, chống lại nén JPEG.
- Tuy nhiên cần có ảnh gốc để khôi phục watermark.
DCT (B1) + α . DCT (W). DCT (B1), với mọi hệ số, trừ giá trị DC DCT (B1w)= (4.2) DCT (B1) chỉ với giá trị DC 5.7656 0.1346 -0.0386 0.0172 -0.0090 -0.0028 -0.0598 -0.0079 -0.0532 0.1258 0.0830 0.0101 -0.0145 -0.0101 -0.0409 -0.0308 -0.0355 0.0635 -0.0117 -0.0467 -0.0092 -0.0206 -0.0947 0.0066 -0.0786 0.0472 0.0438 -0.0090 -0.0323 0.0202 -0.0029 -0.0555 DCT(B1w) = -0.0984 0.0527 0.0037 -0.0400 -0.0092 0.0132 0.0478 -0.0255 -0.0823 -0.0058 0.0099 0.0238 -0.0212 -0.0368 -0.0580 -0.0742 -0.0485 0.0325 -0.0494 -0.0146 0.0502 0.0131 0.0109 -0.0985 0.0026 0.0700 0.0360 -0.0119 0.0288 -0.0088 -0.0392 0.0312 0.7331 0.8361 0.6609 0.7228 0.5991 0.6026 0.6175 0.5922 0.7818 0.7809 0.7735 0.7011 0.7712 0.6955 0.7755 0.6998 0.7734 0.7746 0.6973 0.7682 0.7663 0.7002 0.6956 0.6920 0.7064 0.7093 0.7045 0.7037 0.7013 0.7692 0.6986 0.6933 B1w = 0.7872 0.7100 0.7789 0.7081 0.7067 0.7012 0.7013 0.6996 0.7051 0.7032 0.7026 0.7801 0.7078 0.7741 0.7015 0.6978 0.7017 0.7765 0.7002 0.7067 0.7765 0.7026 0.7736 0.6992
4.3 Phương pháp watermarking trải phổ
Nhiều kỹ thuật watermarking hợp nhất nhiều ý tưởng của truyền thông trải phổ [35,47] để nhúng và trích mô hình nhiễu giả ngẫu nhiên thêm vào.
Trong truyền thông trải phổ, một tín hiệu băng hẹp được trải qua một băng tần rộng của tần số. Điều này có thể được thực hiện bằng cách điều chế tín hiệu băng hẹp (thông tin watermark) cùng với tín hiệu băng rộng chẳng hạn như nhiễu Gaussian. Tín hiệu watermark trải ra được xem như là nhiễu đã có mặt trong tín hiệu ảnh và vì thế khó mà phát hiện.
Mặt khác, phương pháp này có trở ngại là bản thân tín hiệu ảnh phải được xem như nhiễu, điều này làm cho việc phát hiện watermark khó khăn. Để phát hiện ra sự có mặt của watermark một cách đáng tin, dường như nhiều hệ số phải tương quan hơn. Điều này làm giảm tính bền vững và dung lượng của thuật toán.
4.4 Phương pháp watermarking dùng biến đổi Wavelet 4.4.1 Lý do dùng phân tích wavelet 4.4.1 Lý do dùng phân tích wavelet
Vì sao lại chọn tiếp cận bằng phép biến đổi wavelet. Ta nhận thấy rằng các
đặc trưng trong miền biến đổi này là khá phù hợp với mặt nạ vì nó tập trung cả
trong miền thời gian và miền tần số. Bên cạnh đó biến đổi wavelet phù hợp với mô
hình đa kênh của hệ thống nhìn của con người (HVS) vì thế thật sự có thể đặt một số giới hạn vào các hệ số wavelet để sắp xếp chúng dưới mức HVS chỉ sai khác 3JND, mà mắt người có thể bắt đầu cảm nhận sự thay đổi trong ảnh.
Ngoài ra, biến đổi wavelet là một phần của chuẩn nén dựa trên JPEG-2000 vì
thế kỹ thuật dựa trên wavelet thực hiện dễ dàng và tối ưu hơn bao gồm cả việc bảo vệ bản quyền vào trong các mã nén của nó.
4.4.2 Watermarking dùng phân tích wavelet
Kỹ thuật watermarking cơ bản sử dụng phép biến đổi DWT thường phân tích
ảnh gốc thành 4 băng tần số khác nhau gồm: tần số cao, tần số giữa và tần số thấp (ký hiệu là : LL1, HL1, LH1, HH1) bằng cách sắp xếp các bộ lọc băng con. Để tạo thêm được các hệ số wavelet, băng con LL1 lại tiếp tục được phân tích tiếp. Quá trình này được lặp lại cho đến khi có được kết quả mong muốn nhằm phù hợp với từng ứng dụng. Sau đó nhúng thông tin watermark vào một hoặc một số wavelet băng con với các hệ số tương quan khác nhau. Ảnh chứa watermark sau đó được thử qua các phép biến đổi ảnh thông thường rồi tìm lại watermark gốc [35,21,8,23,29,22,43].
Hình 4.3 mô tả sơđồ tổng quát của thuật toán watermarking dùng biến đổi wavelet.
Hình 4.3 : Sơđồ watermarking tổng quát dùng phân tích wavelets
Trước tiên, phân tích đa phân giải và thứ bậc được lưu vào bộ phát hiện của
máy tính. Sau đó nó được làm trong suốt nhờ sử dụng các đặc trưng của hệ thống
Ảnh gốc Ảnh đã nhúng watermark watermark Trích watermark 1. Nhúng watermark 5.So sánh 2. Mã hoá 3. Truyền 4. Giải mã
nhìn. Lưu ý cần cân nhắc giữa tính trong suốt của ảnh sau khi nhúng và tính mạnh
mẽ của phương pháp. Cuối cùng dùng biến đổi wavelets phù hợp với chuẩn nén
ảnh, để sơđồ watermarking có thể dễ dàng thích ứng với chuẩn nén JPEG-2000 dựa trên cơ sở wavelet.
Cách làm đơn giản là cộng các mã ngẫu nhiên giả có trọng số vào các hệ số
lớn tại các băng tần số cao và giữa của biến đổi wavelet rời rạc của ảnh.
Cách thực hiện:
- Phân tích ảnh thành 10 băng con dùng họ wavelets Haar.
Trong hình 4.4, ảnh gốc Lena được phân tích làm 3 mức với 10 băng con. Mỗi mức có thông tin băng tần cụ thể chẳng hạn như là LL, LH, HL và HH. Băng tần thấp nhất nằm ở trên cùng bên trái, và băng tần tần sô cao ở dưới cùng bên phải.
Hình 4.4 : Kết quả phân tích DWT ảnh [ LL3 HL2 HH2 LH2 HL1 HH1 LH1 HL3 LH3 HH3
Quá trình nhúng
- Tiếp theo cộng một chuỗi ngẫu nhiên giả N (thường dùng phân bố Gauss có
trung bình bằng không và phương sai đơn vị) vào các hệ số của các băng tần số cao
và băng tần số giữa (nghĩa là tất cả các băng tần thấp nhất bị loại trừ, nằm ở góc trái bên trên của hình 4.4). Phân bố chuẩn hóa được dùng vì nó khá mạnh mẽ với các
loại tấn công kết cấu. Để sắp xếp trọng số watermark vào các hệ số wavelet có biên
độ lớn, ta dùng một trong hai quan hệ theo hai phương trình sau đối với các hệ số của ảnh gốc y và y’, nơi chứa watermark .
ÿ[m,n] = y[m,n] + α . (y[m,n])2 N[m,n] ( 4.3) hoặc
ÿ[m,n] = y[m,n] + α . abs(y[m,n]) N[m,n] (4.4)
Giữa (4.3) và (4.4) về mặt toán học khác nhau nhưng lại có cùng mục đích là đặt nhiều trọng số watermark được cộng vào các hệ số wavelet có giá trị cao. Tham số αdùng để điều khiển mức độ watermark, cách tốt nhất để chọn lựa là phải dung
hòa giữa tính mạnh mẽ và dung lượng. Cuối dùng biến đổi wavelet ngược hai chiều
để tạo lại ảnh đã nhúng watermark y’.
Quá trình trích
Tại đầu cuối của kênh truyền, một bộ giải mã được dùng để trích thông tin watermark từ ảnh thu được. Dựa trên ảnh watermark đề xuất, thuật toán phát hiện watermark bằng cách so sánh các hệ số DWT của ảnh thu được so với DWT của
ảnh gốc (không nhúng watermark). Bài toán gồm việc lấy khóa mật để đặt vào trong bằng cách tính tương quan các mức phân giải đầu tiên (nghĩa là các hệ số tần số cao nhất). Watermark được phát hiện nếu có đỉnh tương quan ứng với dấu hiệu dương. Nếu không, bộ giải mã thực hiện tiếp ở mức phân giải thứ hai (nghĩa là hình vuông
ở đáy bên trái của cấu trúc pyramic ở hình 4.6) mục đích để tìm đỉnh. Nếu có một
đỉnh thì watermark được gọi là bị phát hiện nếu không cứ tiếp tục cho tới mức phân
hiện watermark tốt thậm chí cảở phần bị sửa, giữ ở mức phát hiện sai ở trạng thái cực tiểu vì tìm kiếm dấu hiệu riêng xuyên qua từng bước phát hiện để xác nhận giá trị dương gọi là bị phát hiện. Mục đích các bước của bộ phát hiện nhằm bảo đảm cực đại giá trị trích được trong bộ phát hiện với các key riêng, cực tiểu số giá trị