Kỹ thuật đánh dấu hình ảnh số thích ứng để bảo vệ bản quyền
Kỹ thuật đánh dấu số (Watermarking) được đề xuất để bảo vệ bản quyền hoặc nhận dạng chủ sở hữu của tài liệu đa phương tiện số như âm thanh, hình ảnh, video hoặc văn bản. Một chữ ký số hay mã đánh dấu số được nhúng vào tài liệu đa phương tiện. Mã đánh dấu số bị che dấu để không thể bị phát hiện, thống kê hay cảm nhận được. Mã đánh dấu này sau đó có thể được lấy ra khỏi tài liệu đó và được dùng để xác định chủ sở hữu của nó. Trong ứng dụng bảo vệ bản quyền, mã đánh dấu bị che phải có khả năng khôi phục lại được nếu dữ liệu chủ bị nén, bị xử lý, hiệu chỉnh hoặc được chuyển đổi từ dạng số sang dạng tương tự và ngược lại. Bài này đề xuất một kỹ thuật đánh dấu số dựa trên độ nhạy cảm của mắt người để nhúng thích ứng một mã đánh dấu vào một hình ảnh mà không làm ảnh hưởng đến chất lượng cảm nhận của hình ảnh chủ. Ngoài ra, mã đánh dấu sẽ tồn tại nếu các thao tác xử lý hình ảnh làm mất mát như lọc thông thấp và nén hình ảnh IPEC. Cuối cùng, các tác giả kết hợp khái niệm về mật mã và kỹ thuật đánh dấu số để thực hiện một hệ thống đánh dấu số an toàn hơn.
1. Giới thiệu
Cuộc cách mạng Internet làm cho việc truyền các thông tin đa phương tiện số như âm thanh, hình ảnh, tín hiệu video hay văn bản trở nên nhanh hơn. Đa phương tiện số có thể được truy nhập hoặc được phân tán qua mạng. Vì thế, việc sao chép rất đơn giản và hoàn toàn chính xác, nghĩa là bản sao đồng nhất với bản gốc. Một số lượng không hạn chế các bản sao các dữ liệu này có thể được tạo ra bất hợp pháp, đây là hiểm họa nghiêm trọng về bản quyền của người chủ sở hữu. Bởi vậy, việc bảo vệ các quyền sở hữu trí tuệ của người chủ sở hữu là vấn đề quan trọng trong thế giới số.
Kỹ thuật mã đánh dấu số là một biện pháp nhúng một chữ ký số hay dấu hiệu nào đó để nhận dạng thông tin về chủ sở hữu, cấp phép, hoặc thông tin khác liên quan đến chính dữ liệu mang nó. Các mã đánh dấu có thể đưa ra các cơ chế kiểm soát, chẳng hạn như xác định xem liệu dữ liệu có bị can thiệp hay bị sao chép bất hợp pháp không. Trong lĩnh vực quảng bá video và vệ tinh, các mã đánh dấu được dùng để cản trở các thiết bị ghi lại nhằm hạn chế phần nào việc phát đi các bản sao phát thanh truyền hình. Một số công nghệ cứng và mềm cũng được phát triển để phát hiện sao chép trái phép.
Hầu hết các thuật toán đánh dấu dùng một chuỗi tuần tự hoặc ID của tác giả làm mã đánh dấu. Trong các thuật toán đó, cần có một đại lượng đo định lượng để xác minh kết quả lấy ra. Thường thì người ta tính một giá trị q giữa mã đánh dấu ban đầu và mã đánh dấu được lấy ra. Giá trị q sau đó được kiểm định dựa vào ngưỡng T nào đó. Nếu q > T, hình ảnh đã được đánh dấu, trái lại, hình ảnh không có mã đánh dấu. Tuy nhiên, việc xác định giá trị ngưỡng T gây nên sự không rõ ràng. Một giá trị T nhỏ sẽ có thể thừa nhận sự tồn tại của mã đánh dấu mặc dù không có mã nào cả. Mặt khác, một giá trị T lớn sẽ không thừa nhận sự tồn tại của mã đánh dấu mặc dù có nó.
Bởi vậy, giá trị ngưỡng đúng là vấn đề quan trọng. Một giải pháp tốt hơn là dùng một mã đánh dấu có nghĩa nhìn thấy được (chẳng hạn một hình ảnh nhỏ). Mắt người khi đó có thể dễ dàng kiểm tra các kết quả lấy ra. Tuy nhiên, khi đó lượng dữ liệu được nhúng vào dữ liệu số lại lớn. Như vậy, thuật toán nhúng phải biến ứng với chiến lược chèn để điều chỉnh một lượng lớn dữ liệu trong ảnh chủ.
Để bảo vệ bản quyền, kỹ thuật đánh dấu số phải thỏa mãn các yêu cầu sau:
a. Trong suốt về mặt cảm nhận
Mã đánh dấu sau khi nhúng vào hình ảnh phải không làm ảnh hưởng đến chất lượng cảm nhận của dữ liệu chủ dưới những điều kiện cảm nhận chuẩn. Nghĩa là các giác quan của con người không thể phân biệt được dữ liệu ban đầu với dữ liệu đã được đánh dấu, mắt người không thể nhận ra sự tồn tại của các mã đánh dấu.
b. Không tối nghĩa
Mã đánh dấu phục hồi lại sẽ nhận dạng rõ ràng chủ sở hữu. Ngoài ra, độ chính xác của việc nhận dạng chủ sở hữu sẽ bị suy giảm khi bị tấn công.
c. Bền vững
Khi một mã đánh dấu được dùng để nhận dạng một chủ sở hữu tài liệu số, việc loại bỏ mã đánh dấu được nhúng trong đó sẽ khó khăn đối với kẻ tấn công hay người dùng bất hợp pháp. Thực tế, có thể loại bỏ mã đánh dấu bất kỳ nếu biết đầy đủ về quá trình gài nó. Tuy nhiên, nếu chỉ có một phần thông tin thì nỗ lực loại bỏ hay phá hủy nó sẽ làm suy giảm rõ rệt chất lượng dữ liệu số trước khi mã đánh dấu được lấy ra. Nói chung, các thao tác trong quá trình xử lý làm mất dữ liệu gây nguy hiểm tới thông tin đa phương tiện được đánh dấu thì cũng có thể gây nguy hiểm tới mã đánh dấu. Bởi vậy, mã đánh dấu phải vẫn còn duy trì trong dữ liệu chủ khi các thao tác xử lý tín hiệu được tiến hành trên dữ liệu số được đánh dấu. Các hoạt động này bao gồm: lấy mẫu lại, lượng tử hóa lại, nén gây mát dữ liệu (tức nén JPEC, MPEC, wavelet), các méo hình học cũng như các phép chuyển đổi tương tự - số và số - tương tự.
d. Chống can thiệp
Mã đánh dấu phải chống lại được sự can thiệp nhờ thông đồng bằng cách so sánh nhiều bản sao được nhúng bằng các mã đánh dấu khác nhau.
2. Các công trình trước đây
Trong bài này, chúng ta sẽ tập trung vào các kỹ thuật đánh dấu hình ảnh số. Các thuật toán đánh dấu hình ảnh có thể được phân thành 2 loại: Các kỹ thuật vùng không gian và các kỹ thuật vùng tần số. Các kỹ thuật vùng không gian biến đổi trực tiếp các giá trị cường độ hay màu sắc của một số điểm ảnh chọn trước, trong khi các kỹ thuật vùng tần số biến đổi các giá trị của các hệ số biến đổi.
Kỹ thuật đánh dấu hình ảnh vùng không gian đơn giản nhất là nhúng một mã đánh dấu vào các bít thấp (LSB) của một số điểm ảnh chọn ngẫu nhiên. Mã đánh dấu thực sự không thể nhìn thấy đối với mắt người. Tuy nhiên, nó có thể dễ dàng bị phá hủy nếu hình ảnh có mã đánh dấu bị lọc thông thấp hay bị nén JPEC. Để tăng tính an toàn của mã đánh dấu, Matsui và Tanaka [1] đã đề xuất một phương pháp dùng một khóa mật để chọn vị trí gài mã đánh dấu, tức là dùng một bộ tạo số giả ngẫu nhiên để xác định dãy các vị trí trên bề mặt hình ảnh. Voyatzis và Pitas thì dùng biện pháp tự đồng cấu [2] để lấy mẫu mã đánh dấu trước khi gài nó vào hình ảnh. Để tăng tính bền vững của nó, có nhiều biện pháp được đề xuất để biến đổi một số tính chất của các điểm ảnh hay các khối được chọn.
Các kỹ thuật vùng tần số trước hết biến đổi hình ảnh thành một tập các hệ số vùng tần số. Phép biến đổi có thể là DCT (biến đổi cosin rời rạc), biến đổi Fourier, hoặc wavelet v.v… Mã đánh dấu sau đó được nhúng vào các hệ số biến đổi của hình ảnh sao cho ít nhìn thấy được nhất và bền vững hơn trước các thao tác xử lý hình ảnh. Cuối cùng, các hệ số được biến đổi ngược lại để tạo thành hình ảnh có mang mã đánh dấu. Độ nhạy tần số hệ thống thị giác của con người có thể được dùng để đảm bảo mã đánh dấu không thể nhìn thấy và bền vững trước tấn công bất kỳ.
Ở đây chúng ta sẽ đề xuất một kỹ thuật đánh dấu hình ảnh thích ứng, bền vững trước các hoạt động xử lý hình ảnh, chẳng hạn như lọc thông thấp và nén JPEC. Biện pháp đề xuất tận dụng tính nhạy cảm của hệ thống thị giác đối với sự biến đổi thích ứng cường độ sáng của một số điểm ảnh trong một khối. Sự biến đổi cường độ của điểm ảnh phụ thuộc vào nội dung khối. Nếu độ tương phản của khối lớn, cường độ có thể được thay đổi lớn mà không gây sự biến đổi nào đối với cảm nhận của mắt người. Mặt khác, nếu độ tương phản nhỏ, cường độ chỉ có thể được điều chỉnh không đáng kể. Phần sau sẽ mô tả chi tiết về phương pháp đề xuất này.
3. Thuật toán đánh dấu hình ảnh thích ứng đề xuất
Trong phần này, ta sẽ mô tả kỹ thuật đánh dấu hình ảnh vùng không gian thích ứng. Mã đánh dấu ở đây là một hình ảnh có nghĩa nhìn thấy được dưới dạng nhị phân, chứ khôngphải là một dãy bít được tạo ra một cách ngẫu nhiên. Như vậy, mắt người có thể dễ dàng nhận biết mã đánh dấu được lấy ra. Thực tế, việc nhúng một mã đánh dấu vào các bít thấp của một điểm ảnh ít nhạy cảm với mắt người. Tuy nhiên, mã đánh dấu sẽ bị phá hủy nếu dùng lọc thông thấp xử lý ảnh được đánh dấu. Bởi vậy, để có khả năng chống lại được tấn công bất kỳ, mã đánh dấu phải được nhúng vào các bít có trọng số lớn hơn. Điều này sẽ tạo ra độ méo nhiều hơn đối với ảnh chủ và xung đột với yêu cầu về tính không nhìn thấy được. Để thỏa mãn cả yêu cầu về tính bền vững lẫn không nhìn thấy, ta sẽ thay đổi thích ứng các giá trị cường độ của một số điểm ảnh được chọn lớn đến mức có thể mà sự thay đổi này không gây chú ý đối với mắt người. Ngoài ra, để ngăn chặn sự can thiệp hay truy nhập bất hợp pháp, mã đánh dấu trước hết được hoán vị với dữ liệu đã lấy mẫu. Sơ đồ khối của hệ thống đánh dấu vẽ trên hình 1. Trong các phần tiếp theo, ta sẽ mô tả quá trình nhúng và quá trình lấy mã đánh dấu ra.
Hình 1: Sơ đồ khối của hệ thống mã đánh dấu
3.1 Nhúng mã đánh dấu
Trong biện pháp đưa ra, mã được nhúng phải không nhìn thấy được và bền vững trước hầu hết các thao tác xử lý ảnh. Để thỏa mãn các yêu cầu này, một bít của giá trị điểm ảnh nhị phân (0 hoặc 1) được nhúng vào một khối của ảnh chủ. Trước khi gài, ảnh chủ được chia thành N x N khối. Tùy thuộc vào sự tương phản của khối, các điểm ảnh trong khối được thay đổi ứng biến để tăng tối đa tính bền vững và giá trị cường độ .
Vị trí hay khối để nhúng được chọn theo một bộ tạo số giả ngẫu nhiên thông qua một hạt giống k. Giá trị k tương tự với khóa mật của hệ thống mã DES an toàn.
3.2 Lấy mã đánh dấu ra
Việc lấy mã đánh dấu ra tương tự với quá trình nhúng song theo thứ tự đảo ngược. Trong thuật toán đề xuất, việc lấy mã đánh dấu ra phải tham chiếu tới ảnh chủ ban đầu. Trước hết, dùng giá trị hạt giống k để tạo ra dãy các vị trí hoặc các khối, nơi sẽ nhúng mã đánh dấu.
4. Các kết quả thực nghiệm
Hình 2. (gồm 2 hình trên) minh họa phương pháp đề xuất
(a) Ảnh chủ có kích thước 512 x 512.
(b) Ảnh mã đánh dấu nhị phân kích thước 128 x 128.
(c) Ảnh chủ có mã đánh dấu.
(d) ảnh mã đánh dấu nhị phân sau khi lấy ra
Hình 3: Kết quả áp dụng nén JPEC lên hình 2(c)
(a) Ảnh nén JPEC với CR = 5.35
(b) Mã đánh dấu lấy ra với NC = 97.24%
Trong thực nghiệm, kích thước của ảnh chủ là 512×512 với 256 giá trị cường độ. Mã đánh dấu là một hình ảnh nhị phân có nghĩa có kích thước 128×128. Các hình 2(a) và 2(b) cho thấy ảnh chủ 512×512 và ảnh mã đánh dấu 128×128 tương ứng. Hình 2(c) là ảnh đã nhúng mã đánh dấu nhận được. Xem các hình ảnh 2(a) và 2(c), ta không thể phân biệt được hai hình ảnh này vì chúng hầu như là một. Hình 2(d) là mã đánh dấu đã được khôi phục và ta có thể thấy rằng, nó là bản tương tự của 2(b). Sự tương tự của hai hình ảnh này được đánh giá định lượng bằng tương quan chéo chuẩn hóa như sau:
Trong đó Wij và W’ij là các giá trị điểm ảnh tại vị trí (i, j) trong các ảnh mã đánh dấu ban đầu và lấy ra tương ứng.
Để thấy được tính bền vững của thuật toán đề xuất dưới phép nén hình ảnh JPEC, trước hết ta sẽ nén ảnh được đánh dấu và sau đó lấy ra mã đánh dấu từ ảnh đã bị nén. Hình 3 là hình ảnh đã nén với tỷ số nén (CR) là 5.35 và mã đánh dấu lấy ra tương ứng. Giá trị tương quan chéo NC chuẩn hóa là 97.24%. Hình ảnh qua lọc thông thấp và mã đánh dấu lấy ra được thể hiện trong hình 4. Từ các hình 3 và 4, có thể thấy rằng, có thể dùng các mã đánh dấu được lấy ra để nhận dạng chủ sở hữu của ảnh chủ mặc dù vẫn có méo do lọc thông thấp và nén mất dữ liệu.