羅鵬
摘 要:為了提高水印檢測效率,本章提出了一種可以嵌入表達圖像基本語義極性矩陣的抗打印掃描數字水印算法。主要創新點如下:實驗發現圖像經過NSCT分解后,同方向子帶系數序關系在打印掃描前后得到了很好的保持。因此依據待嵌入水印信號,通過改變或保持中頻帶某一方向相鄰兩級子帶系數的序關系實現水印嵌入。基于非抽樣輪廓小波(NSCT:NonSampled Contourlet Transform)分解的多方向性、多分辨率性和非抽樣特性,使得水印算法具有良好的視覺不可見性和較大的嵌入容量。
關鍵詞:數字水印;NSCT;抗打印掃描
1 算法實現方案
1.1 水印信號生成
盡管打印掃描過程造成含水印圖像嚴重降質,但是打印掃描前后圖像表達的基本語義沒有變化,即Baboon圖像表達的語義沒有變成Lena圖像的語義。因此為了利用這一規律提高水印檢測效率,選擇刻畫圖像語義的極性矩陣[1]作為水印信息。
定義1-1:如果矩陣 滿足式(3-8)的條件,則 稱作圖像的極性矩陣。
其中, 是圖像 所有像素 的均值,式(3-9)為 的計算方法:
為了定量描述打印掃描前后極性矩陣的變化情況,本文采用歸一化相似度[2-4](NC:Normalized Correlation)度量兩者的相似性。為了使結論具有一般性,統計了不同圖像打印掃描前后極性矩陣變化情況,測試圖像是灰度為256級大小為128×128像素的50幅UCID庫的圖像和50幅Corel庫的圖像以及10幅普通生活照。
1.2 水印嵌入
本章算法的嵌入流程具體描述如下:
(1)按照式(1-1),計算載體圖像I的極性值矩陣 (待嵌水印信號)。
(2)對載體圖像和其極性矩陣做t次Arnold變換,得到置亂后的圖像 和置亂后的極性值矩陣 。
(3)在兼顧魯棒性、不可見性和效率的情況下,將置亂后的圖像 進行三級NSCT分級。其中第1級設置為4個方向,第2級和第3級的方向數設置為8個,由此共得到1個低頻子帶和20個高頻方向子帶。
(4)根據系數序變化統計結果,本文水印嵌入位置就選擇在第1級和第2級編號為0和6的子帶,然后通過保持或調換它們的大小關系實現水印嵌入。
(5)水印具體嵌入公式為:
其中, 為NSCT分解第1級和第2級方向為i的高頻子帶,在本文中i=0,6。
對經公式(1-3)~(1-6)修改的子帶系數和未修改的子帶系數做NSCT逆變換,得到含水印的置亂圖像 。
對圖像 做T-t次Arnold變換,其中T為圖像的Arnold變換周期,對于本文256×256圖像T=192。得到最終含水印的圖像 。
2 實驗結果及分析
2.1 算法性能測試
由于本文研究的是抗打印掃描數字水印魯棒性測試主要指含水印數字圖像,經歷打印掃描過程提取水印能力的測試。在圖1Baboon圖像為載體進行了演示(圖中空域極性矩陣是指含水印圖像的空域極性矩陣)。
由圖1可知,含水印圖像經歷打印掃描過程后提取的水印在主觀上清晰可辨。對于標準灰度圖像,與原始載體圖像的極性矩陣的NC均值為0.831,與打印掃描圖像極性矩陣的NC均值為0.796;對于普通證件照片圖像,相應的值分別為0.808和0.794。
3 結論
本章首先介紹了NSCT的特點及原理,并分析了打印掃描前后其方向子帶系數序關系的變化情況,同時為了提高算法安全性和魯棒性還引入了Arnold置亂算法。在此基礎上,提出了基于NSCT系數序不變性的抗打印掃描數字水印算法。該算法具有視覺效果好和水印檢測方便等特點,根據該特點設計了一種證件防偽方案。該方案只需要比較掃描證件照圖像空域極性矩陣和在其NSCT域提取的水印信號,即可查驗真偽,同時對方案的實用性進行了分析。
參考文獻
[1]樓偶俊, 王鉦旋. 基于特征點模板的Contourlet域抗幾何攻擊水印算法研究[J]. 計算機學報, 2009, 32(2): 308-317.
[2]L. Arthur, Cunha, Jianping Zhou, M. N. Do. The nonsubsampled contourlet transform: theory, design, and application [J]. IEEE Trans.Image Processing,2006, 15 (10): 3089-3101.
[3]連學強. 無下采樣Contourlet變換及其在圖像處理中的應用研究[D]. 大連: 大連理工大學, 2008.
[4]Yang, Hong-ying, Wang Xiangyang, Chen, Lili. Geometrically invariant image watermarking using SVR Correction in NSCT domain [J]. Computers and Electrical Engineering, 2011, 37 (5): 695-713.