李林靜 鄭月齋
摘要:該文以在StirMark中對含水印圖像實(shí)施JPEG壓縮攻擊為例,探討StirMark在水印方案魯棒性分析中應(yīng)用。為了驗(yàn)證StirMark的性能,該文以基于DWT-SVD的圖像盲水印算法作為實(shí)例,對給定的水印圖像通過StirMark生成各種攻擊修改圖像,最后以JPEG壓縮攻擊為例,詳細(xì)地分析了利用StirMark批量生成不同質(zhì)量因子壓縮下的修改圖像,在水印檢測時(shí),相互關(guān)聯(lián)的文件名為我們一次性執(zhí)行水印提取和檢測水印DCT相關(guān)系數(shù)奠定了基礎(chǔ),與通過代碼生成批量攻擊文件相比,StirMark基準(zhǔn)測試程序具有較高的效能,同時(shí)從日志文件獲得水印算法執(zhí)行時(shí)間和魯棒性量化值,對評測水印算法的性能,改進(jìn)水印算法提供了有力的依據(jù)。
關(guān)鍵詞:StirMark;魯棒性分析;JPEG壓縮攻擊;評測水印算法;日志文件
中圖分類號:TP391 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2015)07-0256-05
Abstract: This paper discusses the application of stirMark in the analysis of robust watermark, for example, JPEG compression attack in the StirMark implementation of the watermarked image. In order to verify the performance of StirMark, for example, In order to verify the performance of StirMark, in this paper the image blind watermarking algorithm based on DWT-SVD as an example, StirMark generates a variety of attacks that modify the image for the watermark image given, lastly, JPEG compression attack ,for example, analyzes in detail the modification image of Compression of different quality factor using StirMark, When we detect watermark, Interrelated documents lay a foundation called our one-time implementation of watermark extraction and detection of the watermark in the DCT correlation coefficient, Compared with the handwritten code StirMark is efficiency, at the same time obtains the watermarking algorithm execution time and the robustness of the quantitative value from the log file , fully Contribute to the performance evaluation of watermarking algorithm, further improves watermarking algorithm, the robustness and security of watermarking algorithm has better.
Key words: StirMark; robustness analysis; JPEG compression attack; evaluation of watermarking algorithm; log file
評價(jià)水印算法的方法和標(biāo)準(zhǔn)是數(shù)字水印研究的一個(gè)重要內(nèi)容[1]。在對其進(jìn)行性能測試評價(jià)過程中,需要對水印系統(tǒng)進(jìn)行一系列的攻擊,以測試其性能,這些攻擊是指一個(gè)水印系統(tǒng)在實(shí)際使用過程中可能會(huì)遭受的有意或無意的各種攻擊。有意的攻擊是指為了去除水印而采取的各種處理方法,這種攻擊往往是惡意的;無意的攻擊是指含水印的載體在使用的過程中不可避免的受到諸如有損壓縮、噪聲影響的處理。水印測試主要是從水印魯棒性角度來考慮,也即當(dāng)水印在遭受各種攻擊后仍能提取水印,但目前并沒有一個(gè)統(tǒng)一的測試標(biāo)準(zhǔn),大部分測試標(biāo)準(zhǔn)都只能針對某一種水印算法。為了得到一個(gè)統(tǒng)一的水印測試標(biāo)準(zhǔn),已有很多學(xué)者和組
織進(jìn)行了水印測試標(biāo)準(zhǔn)基準(zhǔn)方面的研究,英國劍橋大學(xué)的Fabien Petitcolas設(shè)計(jì)一個(gè)通用的水印基準(zhǔn)測試軟件StirMark[2],該工具已經(jīng)變成水印領(lǐng)域使用最為廣泛的水印技術(shù)評測工具。StirMark可從多個(gè)方面來評測水印算法的魯棒性,模擬多種水印攻擊手段來測試水印的魯棒性。本文以JPEG壓縮為例,詳細(xì)分析StirMark在水印魯棒性分析中應(yīng)用。
2 StirMark基準(zhǔn)測試程序
StirMark是一種通用的水印算法魯棒性測試程序, 通過對含水印作品應(yīng)用各種攻擊以評價(jià)它的安全性和魯棒性的計(jì)算機(jī)程序,現(xiàn)在僅支持圖像媒體,對其它媒體保留了擴(kuò)展接口,當(dāng)給定嵌入水印的圖像,StirMark生成一定數(shù)量的修改圖像,這些被修改的圖像被用來驗(yàn)證水印是否能被檢測出。在StirMark4.0的攻擊手段包括Gaussian濾波、旋轉(zhuǎn)、旋轉(zhuǎn)-尺度、剪切、水平翻轉(zhuǎn)各個(gè)方向按比例變換、尺度變換、線性移除、顏色縮減、JPEG壓縮圖像等操作。本文以JPEG壓縮為例,探討StirMark在水印方案魯棒性分析中應(yīng)用。
StirMark基準(zhǔn)測試程序通過配置文件和目錄結(jié)構(gòu)實(shí)現(xiàn)對含水印圖像攻擊的測試方案配置。StirMark基準(zhǔn)測試程序的目錄結(jié)構(gòu)如圖1所示[3]。
在圖1中Benchmark包含了StirMark基準(zhǔn)測試程序本身和測試輸出的日志文件,配置文件Profiles包含了它的配置文件SMBsettings,該文件在測試時(shí)創(chuàng)建,并通過StirMark基準(zhǔn)測試程序的命令行執(zhí)行。Media包含了Input和Output文件夾,分別對應(yīng)于StirMark基準(zhǔn)測試程序的輸入媒體集和經(jīng)過攻擊后輸出媒體集。
2 水印的魯棒性
魯棒性反映了水印算法抵御各種攻擊的能力[4],常見的攻擊主要包括JPEG有損壓縮、線性/非線性濾波、幾何變換、噪聲干擾等,帶有水印信息的數(shù)字媒體在傳輸過程中,不可避免的會(huì)受到一定程度的攻擊,從而對原水印圖像造成了修改,對修改圖像提取水印,通過提取水印和原水印的相關(guān)性值來評價(jià)水印的魯棒性,好的魯棒性就是要保證含水印圖像在經(jīng)受這些攻擊后,還能檢測和提出水印。
3 實(shí)驗(yàn)設(shè)計(jì)與分析
為了驗(yàn)證StirMark的性能,本文以基于DWT-SVD的圖像盲水印算法為例,探討StirMark在水印魯棒性分析中作用。
3.1 基于DWT-SVD的彩色圖像盲水印方案
離散小波變換(Discrete Wavelet Transform,DWT)提供一種多分頻率分解,能更好地與人眼視覺系統(tǒng)(Human Vision System, HVS)相匹配,并且與JPEG2000和MPEG-4等壓縮標(biāo)準(zhǔn)兼容,奇異值分解(Singular Value Decomposition,SVD)具有內(nèi)在的穩(wěn)定性,因此基于DWT-SVD的水印算法具有良好的視覺效果和抵抗多種攻擊的能力,是目前主要的研究方向[5-6],水印方案為盲提取,便于實(shí)際的需要。所以本文選擇DW-SVD的彩色圖像盲水印方案作為StirMark水印魯棒性分析的基礎(chǔ)
3.1.1水印嵌入
載體圖像采用512×512的真彩色lena圖像,水印為32×32的二值圖像,嵌入過程如圖2所示。步驟如下。
1)根據(jù)密鑰key對水印圖像W進(jìn)行 Arnold 置亂預(yù)處理,得到加密后的水印圖像W,其中置亂次數(shù)key 可作為密鑰保存起來。
2)對原RGB載體圖像提取R分量,對提取到R分量進(jìn)行二級haar小波分解,得到 7 個(gè)子帶 LL2、HL2、LH2、HH2、HL1、LH1、HH1;將低頻子帶 LL2 按 4×4 分塊,則LL2 所能嵌入的水印最大比特?cái)?shù)為256/(2 ×4) × 256/(2 ×4) =32 × 32 = 1024。
上述代碼存在不停地讀取和寫入文件,消耗大量的執(zhí)行時(shí)間,在對水印系統(tǒng)進(jìn)行性能評價(jià)的過程中,不如StirMark來的高效,且許多公開發(fā)表的數(shù)字水印論文都以StirMark的攻擊結(jié)果作為衡量水印算法好壞的標(biāo)準(zhǔn)。
采用上面的水印提取算法一次性實(shí)現(xiàn)對圖5中水印的提取,提取的水印如圖6所示,圖6中q=20表示質(zhì)量因子為20時(shí)提取到的水印圖像。
根據(jù)式(1)在提取水印時(shí)計(jì)算圖6提取的各水印和原始水印的DCT相關(guān)系數(shù),得到的結(jié)果如表1所示,此時(shí)同樣用到StirMark生成的9個(gè)含水印的壓縮圖像,通過循環(huán)和數(shù)組計(jì)算corr_DCTcoef相關(guān)性值。
在表1中q是JPEG壓縮的質(zhì)量因子,可以看出當(dāng)q越來越小時(shí),其圖像質(zhì)量就越差。在q=20時(shí),提取出的水印圖像就無法分辨了,在q>=30時(shí)水印能夠提取出來。這些數(shù)據(jù)表明該算法對JPEG壓縮具有很好的魯棒性。有了表1以后,就可以繪制JPEG壓縮率與檢測相關(guān)性值的關(guān)系曲線,DWT-SVD抗JPEG壓縮攻擊曲線如圖7所示。
從圖7可以看出,對加有水印的圖像壓縮得越厲害,對水印的破壞就越大,這也是符合我們直觀認(rèn)識的。
此外,從日志文件可以獲得水印算法的執(zhí)行時(shí)間信息,通過此信息來估算水印算法的時(shí)間復(fù)雜性和比較不同算法的執(zhí)行速度;同時(shí)也可以獲得關(guān)于算法的魯棒性信息,這通過視覺質(zhì)量的客觀量度峰值信噪比(PNSR)和確定性度量值(Certainty)來評估。
4 結(jié)論
StirMark基準(zhǔn)測試程序具有較高的效能,它提供了數(shù)字水印攻擊方案的測試方法,通過這些測試方法,用戶可以獲得關(guān)于水印方案對抗各種攻擊的魯棒性量化值,同時(shí)獲得關(guān)于水印算法本身的時(shí)間復(fù)雜性信息,從而根據(jù)這些信息對水印方案的性能作出公正的評價(jià)。
參考文獻(xiàn):
[1] 孫超.基于DWT-SVD的數(shù)字圖像盲水印算法研究[D].廣州:華南理工大學(xué),2012.
[2] 王麗娜,郭遲,李鵬.信息隱藏技術(shù)[M].武漢:武漢大學(xué)出版社,2004:262-265.
[3] 張衛(wèi),高政. StirMark基準(zhǔn)測試程序在數(shù)字水印方案評價(jià)中的應(yīng)用[J] .電視技術(shù),2004(8):75-77.
[4] 蔡宜嘉.基于變換域的魯棒性數(shù)字水印算法[D].上海:華東理工大學(xué),2013.
[5] 朱建忠,姚志強(qiáng).基于DWT-SVD和Turbo碼的彩色圖像盲水印算法[J].吉林大學(xué)學(xué)報(bào):理學(xué)版,2014,52(4):773-778.
[6] 陳璐,馬小虎.基于離散小波變換和奇異值分解的盲水印算法[J].軟件導(dǎo)刊,2014,13(1):51-54.
[7] 方旺盛,張蓉.基于DWT-SVD域的彩色圖像自適應(yīng)水印算法[J].計(jì)算機(jī)應(yīng)用研究,2012,2(11):4323-4326.