蔡立軍,易葉青,劉云如,周會軍
(1.湖南大學 信息科學與工程學院,湖南 長沙 410082;2.湖南人文科技學院 計算機科學技術系,湖南 婁底 417000)
數(shù)字水印是保護數(shù)字作品版權的重要技術,它通過水印嵌入算法將一些可感知或不可感知的標識信息直接嵌入到數(shù)字載體當中,以確定數(shù)字產品的所有權或檢驗數(shù)字內容的原始性.目前,傳統(tǒng)的水印算法是將水印嵌入到圖像的頻域或是空域中:空域算法通常結合加密、分塊等常規(guī)圖像處理手段,利用人類視覺盲點隱藏水印[1-2],而頻域算法一般是將圖像轉換到特定域嵌入水印信息[3-4].
然而,傳統(tǒng)的水印技術總是需要修改原始圖像的內容,雖然這種修改會盡量控制在肉眼不易察覺的程度,但畢竟對原作品造成了一定程度的損壞,對于某些高分辨率的攝影作品、高精度的醫(yī)學甚至是衛(wèi)星圖像,顯然不適用.高精度圖像的版權保護需要一種新的、不會對原始作品造成任何破壞的水印技術.
傳統(tǒng)水印算法的研究主要集中在空域處理技術上,如Fridrich等人提出了一種基于Yeung-Mintzer算法的脆弱水印,這是一種典型的空域算法[1].Chang等人提出了一種引入了分塊均值計算的空域水印算法,利用分塊均值計算得到新的導向圖,以生成水印信息[2].隨著水印技術的進一步發(fā)展,研究人員開始關注頻域處理技術,如Chen等人在2004年提出了一種結合DWT變換的LL小波系數(shù)生成水印信息的方法[3].該方法是水印技術和加密技術的融合.Omari等人在2005年提出了一種基于盲認證方式的魯棒水印算法,力圖獲得較大的數(shù)字水印容量[4].傳統(tǒng)水印算法的相關研究還出現(xiàn)了既非空域也非頻域的第二代圖像處理技術.如Wang等人所提出的基于Harris-Laplace檢測算子以及偽Zernike矩相關知識的魯棒水印算法[5],Xu等人基于零知識交互證明系統(tǒng)和位委托方案設計的算法[6],以及Zhao等人引入了RSA-PSS公鑰簽名機制[7]提高水印信息的性能.
由于這些傳統(tǒng)水印算法還是無法避免圖像信息不同程度地受損,因此有的學者用粒子群優(yōu)化、克隆選擇等智能算法對這些傳統(tǒng)的水印嵌入算法進行了優(yōu)化,以修正圖像信息受損所帶來的誤差.Shih等人在頻域處理技術的基礎上引入了智能算法,提出了一種基于智能算法修正技術的脆弱水印,通過訓練不同的取整方案獲取樣本集,并不斷進化最終得到一個優(yōu)化結果,以此提高水印的性能[8].類似的工作還有,Aslantas等人于2007年先后提出的一種基于克隆選擇算法的脆弱水印方案、以及一種采用了粒子群優(yōu)化算法的頻域水印技術,并于2009年設計了基于遺傳算法(GA)、微分進化(DE)等4種智能算法的脆弱水印方案[9].由于采用了智能優(yōu)化算法,這些算法都擁有較好的誤差修正效果,但同時存在著計算量過大,運算時間過長的缺陷.
與以上水印算法不同,本文提出了一種新的非嵌入式認證水印,并參照AACS標準的密鑰管理機制提出了基于可信第三方的水印認證碼.與智能算法不同的是,該算法不是修正受損的圖像信息,而是利用可信第三方及水印認證碼避免信息受損,保證原始載體圖像的質量.實驗結果證實,與常規(guī)的DCT域水印嵌入技術[10]相比,該算法對普通的圖像處理操作(如銳化、噪聲、反色處理等)具有更好的魯棒性,能有效抵御JPEG壓縮攻擊,對幾何攻擊(如旋轉、裁剪等)也具有一定的抵抗能力.
本文的結構安排如下:第1節(jié)介紹Sobel邊緣檢測的基本原理,第2節(jié)詳細敘述非嵌入式認證水印算法,第3節(jié)是實驗結果及性能分析,第4節(jié)總結本文算法,并展望下一步工作.
邊緣檢測是使用數(shù)學方法提取圖像像元中具有亮度值(灰度)空間方向梯度大的邊、線特征的過程.圖像邊緣檢測大幅度地減少了數(shù)據(jù)量,并且剔除了不相關的信息,保留了圖像重要的結構屬性.有許多方法用于邊緣檢測,Sobel邊緣檢測是這當中的一個典型算法.
圖1 Sobel邊緣檢測模板Fig.1 Sobel edge detection kernels
本文采用的Sobel邊緣檢測算法使用了水平、垂直、左對角線及右對角線4個方向的模板進行邊緣檢測.圖1(a)表示的是某圖像的輸出像素點x及其8個鄰接點a1,a2,…,a8.像素點x的4個Sobel邊緣檢測模板,根據(jù)圖1(b)~(e)定義如下.
水平模板:
垂直模板:
左對角線模板:
右對角線模板:
以上4個模板分別表示了像素點x在模板對應的方向上的強度變化.用這4個模板變量計算輸入像素點x的梯度:
設定一個閾值T,若 ▽g(x)>T,則認為輸入像素點x是邊緣點,否則將該點標記為非邊緣點.
本文提出的認證碼生成算法基本思想是,使用8×8分塊DCT變換技術將圖像由空域轉換到頻域,隨后提取各個分塊的直流 (DC)系數(shù),重新構建一個含有圖像大部分能量的系數(shù)矩陣,利用Sobel算子對該矩陣進行邊緣檢測,并結合圖像水印生成帶有水印信息的認證碼,在可信第三方注冊并發(fā)布認證碼信息.
假定原始圖像大小為N×N,水印大小為(N/8)×(N/8),算法具體步驟如下:
第一步,YUV變換.根據(jù)顏色空間變換的通用公式(6),將原始圖像從RGB格式轉換成為YUV格式.
YUV 是編譯true-color顏色空間(color space)的種類,“Y”表示明亮度(Luminance,Luma),“U”和“V”則分別是色度、濃度(Chrominance,Chroma).YUV通常用來描述類比訊號,現(xiàn)今已經在電腦系統(tǒng)上廣泛使用.本文采用的是標準彩色測試圖像,通常表達成紅綠藍(RGB)三基色模型,紅綠藍3個通道之間的相關性極大,并不適合數(shù)字水印的應用,但也有一些針對藍色通道進行水印嵌入的研究.為了將算法應用于彩色圖像,本文將圖像變換成YUV格式,YUV格式的優(yōu)越性在文獻[10]中得到了證實.
第二步,構建DC系數(shù)圖.將亮度分量Y進行8×8分塊處理:
對各個亮度分塊進行DCT變換:
提取各個DCT分塊左上角的DC系數(shù),構造DC系數(shù)圖M:
第三步,構建邊緣圖,獲取準確的圖像邊緣特征信息.對DC系數(shù)圖M進行Sobel邊緣檢測,根據(jù)公式(1)~(4)計算M圖各點的4個方向模板,并根據(jù)公式(5)構建公式(10),計算各點的梯度:
其中,K =E(H)2+E(V)2+E(DL)2+E(DR)2.
確定某閾值T(根據(jù)實驗來確定其具體值),比較梯度值 ▽g(M(i,j))與T 值,若 ▽g(M(i,j))≥T ,則點 M(i,j)被認為是邊緣點;若 ▽g(M(i,j))<T,則點M(i,j)被認為是平滑點.根據(jù)公式(11)構建邊緣圖E,若系數(shù)圖某點是邊緣點,則相應位置的E中元素取1值,否則取0值:
第四步,水印預處理.根據(jù)某閾值S將圖像水印W 二值化,水印像素值在S值以下的置0,其余置1.為了盡可能簡單,本文采用閾值為128,二值圖像W0-1計算公式:
第五步,認證碼生成.認證碼V由經過處理的圖像水印W0-1和邊緣圖E計算得出:
獲取認證碼后,將版權所有者信息ID,水印信息W,閾值T,認證碼信息V在可信第三方進行注冊并發(fā)布.
本文提出的水印提取算法步驟與認證碼生成算法類似,在從可信第三方申請獲取認證碼V后,計算得到水印信息的zigzag掃描值,并將像素值重新擴展至[0,255],得到水印圖像.詳細過程不再贅述.
對DC系數(shù)圖進行Sobel邊緣檢測時,邊緣圖閾值T將直接影響到輸出的邊緣圖像的準確性,進一步影響到由邊緣圖和水印共同生成的認證碼,從而影響算法的抵抗能力.為了得到合適的閾值,本文以圖2中512×512大小的國際標準彩色測試圖像lena及peppers進行實驗,考察了不同T值之下,Sobel邊緣檢測的效果.實驗結果如圖3和圖4所示.閾值T的最終取值介于最大和最小的DC系數(shù)值之間,本文取T=100作為初始值,以100為跨度,逐個遞增.觀察邊緣檢測效果,選取效果最佳時的T值作為閾值.比較數(shù)次實驗結果發(fā)現(xiàn),閾值T在1 300至1 900之間時,邊緣檢測的效果最佳,最能反映圖像的邊緣信息特征.綜合比較了各個邊緣信息的完整程度之后,本文最終決定采用T=1 600.
圖2 測試圖像Fig.2 Images for test
圖3 各種閾值下lena的邊緣檢測效果Fig.3 Edge detection of lena during various thresholds
圖4 各種閾值下peppers的邊緣檢測效果Fig.4 Edge detection of peppers during various thresholds
以圖2中512×512大小的標準彩色圖像lena和64×64大小的灰度圖像水印作為測試數(shù)據(jù),在經過本文算法處理后,對lena圖像進行各種攻擊.
1)普通圖像處理攻擊:對lena圖像進行各種普通圖像處理攻擊,水印提取的效果見表1.
表1 常見的圖像處理攻擊效果Tab.1 The effect of common image operations attacks
NC值(the Normalized Correlation value)是用來衡量水印的準確程度的,而PSNR值則用于對被攻擊圖像損壞程度進行估計,經過觀察實驗數(shù)據(jù)發(fā)現(xiàn),本文算法對于高通濾波的抵抗能力稍弱,但圖像水印仍可辨認,對于其他攻擊如高斯噪聲、反色及模糊處理等具有良好的魯棒性,水印的NC值均在0.9以上.
2)幾何攻擊:對標準彩色lena圖像進行幾何攻擊,實驗結果記錄在表2中.
表2 幾何攻擊效果Tab.2 The effect of geometric transformations attacks
對比實驗結果,算法對于旋轉攻擊的抵抗能力一般,隨著旋轉角度的增大,NC值不斷下降,由0.8以上降至0.6.對于裁剪攻擊的魯棒性則較為穩(wěn)定,NC值保持在0.8至0.9.實驗結果說明,算法對于幾何攻擊具有一定的抵抗能力.
3)JPEG攻擊:對彩色lena圖像進行不同質量因子下的JPEG壓縮,得到的實驗數(shù)據(jù)見表3.
表3 JPEG壓縮攻擊效果Tab.3 The effect of JPEG compression attack
實驗結果證實,本文算法對于JPEG壓縮攻擊具有極好的抵抗能力,水印的NC值均達到了0.99以上.
4)與常規(guī)DCT域水印算法[10]比較:文獻[10]針對JPEG壓縮攻擊,提出了一種基于DCT域的水印算法,通過調和DCT系數(shù),將水印嵌入到載體圖像的低頻部分,是一種典型的傳統(tǒng)水印算法.分別采用文獻[10]提出的常規(guī)DCT域水印算法和本文提出的非嵌入式水印算法,以圖2中512×512大小的國際標準彩色測試圖像lena,peppers,baloon,airplane以及64×64大小的灰度圖像水印作為測試數(shù)據(jù),進行實驗.對經過水印算法處理的圖像進行JPEG壓縮、銳化、裁剪等各種攻擊,通過比較圖像水印的質量 (PSNR值)和準確性(NC值),對比2種算法對各種攻擊的抵抗能力.
實驗結果見表4,其中,JPEG(QF90)表示質量因子為90的JPEG壓縮處理.觀察實驗結果發(fā)現(xiàn),2種算法在遭受攻擊時,PSNR值相近,NC值差異較大,本文的非嵌入式算法NC值較高,均在0.9以上,算法所提取的水印更準確,在抵御普通圖像處理攻擊及幾何攻擊方面,比常規(guī)DCT域水印算法具有更好的魯棒性,在抵抗JPEG壓縮攻擊時,本文算法的優(yōu)勢更明顯.
表4 非嵌入式算法與常規(guī)DCT域算法[10]魯棒性比較Tab.4 Comparison between non-embedded and common DCT-based watermarking[10]
5)算法復雜度分析:本文中對數(shù)字圖像DCT系數(shù)進行Sobel邊緣檢測,需要遍歷所有像素點進行計算,時間復雜度為O(M×N),其中,M×N為圖像的像素個數(shù).
用邊緣信息與水印進行運算,水印需經過Zigzag掃描,計算結果長度假定為L,該運算時間復雜度為O(L).
本文算法在引入了特征提取方法Sobel邊緣檢測技術的同時引進了頻域處理方法DCT變換,通過反復實驗獲取了邊緣圖的閾值,獲取了準確的邊緣信息,取得了質量較高的認證碼,從而提高了水印強度,得到了良好的實驗效果.綜合上述實驗結論,該算法對于普通圖像處理操作和幾何攻擊的魯棒性得到了證實.
本文提出了一種新的基于邊緣檢測及頻域變換技術的非嵌入式認證水印算法,不會對原始作品造成任何破壞,在有效地保護了作品版權的同時,也保證了作品的質量.算法通過采用Sobel邊緣檢測技術對圖像的DCT系數(shù)進行計算處理,取得了含有水印信息的認證碼,對普通的圖像處理操作(如銳化、噪聲等)、JPEG壓縮攻擊具有很好的魯棒性,對幾何攻擊(如旋轉、裁剪等)也具有一定的抵抗能力.然而,不在原始圖像中嵌入水印對于算法本身來說,既是優(yōu)勢也是局限,盡管可以抵御各種針對圖像本身的破壞性攻擊,很好地進行版權認證,但在侵權追蹤方面就無法與傳統(tǒng)的水印技術相比,未來將針對這一局限做出改進.
[1] FRIDRICH J,GOLJAN M,BALDOZA A C.New fragile authentication watermark for images[C]//Proc IEEE Int Conf Image Processing(ICIP’00).New York:IEEE,2000:446-449.
[2] CHANG C C,LIN P Y.Adaptive watermark mechanism for rightful ownership protection[J].Journal of Systems and Software,2008,81(7):1118-1129.
[3] CHEN T H ,HORNG G,LEE W B.A publicly verifiable copyright-proving scheme resistant to malicious attacks[J].IEEE Transactions on Industrial Electronics,2005,52(1):327-334.
[4] AL-OMARI R S,AL-JABER A.A robust watermarking algorithm for copyright protection[C]//The 3rd ACS/IEEE International Con-ference on Computer Systems and Applications.New York:IEEE,2005:90-97.
[5] 王向陽,侯麗敏,楊紅穎.基于圖像特征點與偽Zernike矩的魯棒水印算法研究[J].計算機研究與發(fā)展,2008,45(5):772-778.WANG Xiang-yang,HOU Li-min,YANG Hong-ying.A robust watermarking scheme based on image feature and Pseudo-Zernike moments[J].Journal of Computer Research and Development,2008,45(5):772-778.(In Chinese)
[6] 許文麗,于葉云,王育民.安全高效的水印認證協(xié)議[J].計算機研究與發(fā)展,2008,45(2):557-562.XU Wen-li,YU Ye-yun,WANG Yu-min.Secure and efficient protocols for watermark verification[J].Journal of Computer Research and Development,2008,45(2):557-562.(In Chinese)
[7] 趙險峰,李寧,黃煒.使用閾下信道的可逆R-S數(shù)字水印[J].計算機研究與發(fā)展,2009,46(1):100-107.ZHAO Xian-feng,LI Ning,HUANG Wei.Reversible R-S digital watermarking using the subliminal channel[J].Journal of Computer Research and Development,2009,46(1):100-107.(In Chinese)
[8] SHIH F Y,WU Y.Enhancement of image watermark retrieval based on genetic algorithms[J].Visual Communication and Image Representation,2005,2(16):115-133.
[9] ASLANTAS V,OZER S,OZTURK S.A novel clonal selection algorithm based fragile watermarking method[C]//Proceedings of the 6th International Conference on Artificial Immune Systems.Berlin:Springer,2007:358-369.
[10] LIN S D,SHIE S C,GUO J Y.Improving the robustness of DCT-based image watermarking against JPEG compression[J].Computer Standards &Interfaces,2009,32(1/2):54-60.