李 尋, 陳戈珩, 王會平
(長春工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院, 吉林 長春 130012)
隨著科技的飛速發(fā)展,多媒體信息已經(jīng)無處不在地滲透于生活之中,而其中智能手機(jī)是多媒體信息傳播與處理的主要途徑之一,智能手機(jī)不僅能夠方便交流,而且可以隨時隨地獲取所需要的信息。因此如何保護(hù)智能手機(jī)圖像的版權(quán)問題也成為了時下一個現(xiàn)實(shí)問題。利用數(shù)字水印技術(shù)[1]可以有效解決圖像的版權(quán)問題,現(xiàn)如今已有許多優(yōu)秀的數(shù)字水印技術(shù),卻因?yàn)橹悄苁謾C(jī)較電腦存儲空間小、運(yùn)算能力差而不能應(yīng)用。如何能運(yùn)用較小的運(yùn)算量設(shè)計(jì)出魯棒性與透明性共存的數(shù)字水印算法是一個難題。
數(shù)字水印可分為空域法[2]與頻域法[3],其中頻域法是經(jīng)過變換后通過修改變換系數(shù)把水印嵌入到變換域中得到含水印圖像,空域法相對于頻域法來說不需要進(jìn)行圖像變換,直接修改像素值來達(dá)到嵌入水印的目的,其算法復(fù)雜度較低,存儲空間較小,能夠有效地在智能手機(jī)的平臺中運(yùn)行,因此空域算法更適用于智能手機(jī)。
空域水印算法是通過用一種算法來達(dá)到修改像素值的目的,計(jì)算簡單快捷,能夠存儲大量的水印信息,但它的魯棒性即抗攻擊能力較差,由于智能手機(jī)上的圖片多為彩色圖片,而很多優(yōu)秀的水印算法[4]是應(yīng)用在灰度圖像中,智能手機(jī)彩色圖到灰度圖的轉(zhuǎn)換需要大量的時間與存儲空間,所以很多現(xiàn)有的算法沒有辦法在其平臺上實(shí)現(xiàn),針對智能手機(jī)的有效水印少之又少。文獻(xiàn)[5]設(shè)計(jì)了一種應(yīng)用于智能手機(jī)中的脆弱水印方案,用于檢測圖像內(nèi)容的完整性和定位被篡改的區(qū)域,不能抵抗常規(guī)的攻擊,文獻(xiàn)[6-7]分別提出一種應(yīng)用于智能手機(jī)的水印算法,簡化了提取嵌入水印的時間復(fù)雜度,并能一定程度上抵抗常規(guī)的圖像處理攻擊,卻不能抵抗幾何攻擊。為提高水印的魯棒性,文中采用了水印信息分塊重新組合[8]并利用奇偶量化[9]嵌入到原始圖像中,提取相同圖像信息塊并對信息重新擬合的方法[10]。
采用RGB格式大小為nk×mk彩色圖像A做載體,水印大小為n×m,二值圖像W=Wij,將原始圖片提取出三個色位面,水印圖像分為像素相等的不重復(fù)的四個子塊W11、W12、W21、W22,重新組合并記錄重組規(guī)律分為nk×mk三張水印W1、W2、W3,采用奇偶量化的方法嵌入三個色位面中,使其三色位面相同位置嵌入的水印信息不同,如圖1所示。
圖1 k=2水印的重組
(1)
得出各子塊每個像素的灰度值和,并用各像素值和取平均值四舍五入至0或1,確定每一像素點(diǎn)的值:
Bij=round(average(3kBij))
(2)
因?yàn)閃ij=(Bij),W=(Wij),最后得出水印W圖像。
1)彩色RGB圖像A大小為nk×mk,二值圖像水印W大小為n×m,提取A的三個色位面Ar、Ag、Ab。
2)將水印圖像W均勻不重疊地劃分為相等的四個子塊Wij,并使其重新排列成三個大小和A相等的W1、W2、W3,排列的規(guī)律和后面的量化步長作為密鑰,在提取時使用。
3)計(jì)算帶嵌入水印像素值p的量化值:
(3)
式中: round——舍入函數(shù);
δ——量化步長。
4)求出原始圖像A嵌入w的像素值:
(4)
式中:wij——水印的像素值。
5)將A的每個像素量化得到嵌入水印圖像的載體圖像。
嵌入過程如圖2所示。
圖2 水印嵌入過程
1)將被攻擊的載體圖像A′提取出三色位圖。
2)根據(jù)式(5)分別求出三幅水印圖像的像素值。
(5)
式中:w′——攻擊后提取的水印像素值;
p″——載體圖像攻擊后的像素值;
|__|——向下取整。
3)將求得的三幅水印進(jìn)行區(qū)域劃分,并根據(jù)嵌入時的規(guī)律提取出三幅水印圖像所有內(nèi)容相同的子塊,根據(jù)多數(shù)原則求得子塊的像素值。
4)將得到的水印子塊合并,最終形成完整的水印圖像。
攻擊后的載體圖像經(jīng)過算法優(yōu)化的子塊水印圖像重新組合的水印圖像如圖3所示。
圖3 水印提取過程
該算法水印的透明性與k值大小有關(guān),k值變大,水印嵌入量增大,水印透明性減??;反之,k值減小時則相反,不同圖像k的最優(yōu)值不同,通過大量實(shí)驗(yàn)得出k值取8較合適。
文中將初始水印分成4個子塊,取得分塊越多,水印魯棒性越好,還原所需的時間越長,通過大量實(shí)驗(yàn)對比,若使魯棒性與算法復(fù)雜度兼得,子塊數(shù)目取4。
初始水印分割成子塊重組的規(guī)律,一般為每個子塊重新組合形成三張水印圖像后,各嵌入彩色圖像中,疊加后每個子塊顯示的內(nèi)容不同。這樣做的目的是,在載體圖像被攻擊后提取的各子塊水印圖像不相同,攻擊受損的水印位置不同,利于恢復(fù)完整的水印。
為更好地描述文中算法性能,選用同為智能手機(jī)平臺的文獻(xiàn)[7]算法做對比。并采用與文獻(xiàn)[7]大小相等的RGB格式512×512的24位真彩圖像為原始圖像,二值水印大小為64×64,如圖4所示(量化步長取4,水印子塊大小為32×32)。
(a) 原始圖像 (b) 水印圖像
主觀以人眼客觀引入峰值信噪比(PSNR)來評判嵌入水印的透明性,用歸一化相關(guān)系數(shù)(NC)來評價提取的水印質(zhì)量。
由于智能手機(jī)存儲空間小、運(yùn)算能力低,所以對算法的時間復(fù)雜度有很高的要求,文獻(xiàn)[7]算法與文中算法同是應(yīng)用在手機(jī)中,故與之做時間復(fù)雜度對比,選用和文獻(xiàn)[7]中相同環(huán)境對同一圖像做10次嵌入與提取實(shí)驗(yàn),并對時間取平均值,實(shí)驗(yàn)結(jié)果見表1。
表1 時間復(fù)雜度對比實(shí)驗(yàn)結(jié)果
文獻(xiàn)[7]嵌入水印時,其中有一個步驟是需要將彩色圖像轉(zhuǎn)換為灰度圖像,并求嵌入前后子塊圖像的均值差,最后加在彩色圖像中,而文中算法是直接嵌入水印不需要轉(zhuǎn)換為灰度圖,所以嵌入時間比文獻(xiàn)[7]算法耗時短。而提取水印時,文中算法需要對水印再做處理,所以耗時比文獻(xiàn)[7]算法稍長。
嵌入水印lena圖像與提取水印圖像如圖5所示。
圖5 嵌入水印lena圖像與提取水印圖像
圖5(a)和圖5(c)分別為文中和文獻(xiàn)[7]未受攻擊的含水印lena圖像,圖5(b)和圖5(d)為提取的水印圖像,分別求出psnr值、NC值,結(jié)果顯示NC值均為1,而文中psnr值大于文獻(xiàn)[7],即文中提取的水印透明性好于文獻(xiàn)[7]。
采用JPEG壓縮對兩種嵌入水印圖像進(jìn)行攻擊,lena圖像JPEG壓縮質(zhì)量因子為50、30,兩種攻擊的水印提取結(jié)果對比與NC值見表2。
表2 JPEG壓縮后水印NC對比
從表中可以看出,當(dāng)壓縮質(zhì)量因子為50時,兩種水印算法 NC值都為1,當(dāng)壓縮質(zhì)量因子為30時,比較 NC值得出文中算法的抗 JPEG壓縮攻擊的魯棒性更好。
對兩種算法分別添加零均值方差為0.001、0.002的零均值高斯噪聲,提取出的水印見表3。
表3 添加零均值高斯噪聲提取水印NC對比
實(shí)驗(yàn)顯示,文中算法在高斯噪聲攻擊中魯棒性優(yōu)于文獻(xiàn)[7]算法。
添加椒鹽噪聲提取水印NC對比見表4。
表4說明對兩種嵌入水印圖像,分別添加相同質(zhì)量因子的椒鹽噪聲,文中算法提取水印NC值大于文獻(xiàn)[7],證明文中算法對椒鹽噪聲的魯棒性好于文獻(xiàn)[7]。
表4 添加椒鹽噪聲提取水印NC對比
將含水印圖像放大2倍后提取的水印見表5。
表5 將含水印圖像放大提取的水印對比
由于文中算法在隱秘圖像(含水印圖像)經(jīng)過幾何變換后,提取出的水印圖像同樣經(jīng)過同等的變化,一個有意義的水印經(jīng)過幾何變換后,同樣具有意義。所以,可以得出該算法對幾何攻擊有很好的魯棒性。但是此時已經(jīng)無法用NC值判定與原水印的相似程度了,我們選擇用可視效果觀察,可以看出兩種算法提取的水印效果是一致的。
嵌入水印圖像旋轉(zhuǎn)5°和50°提取的水印見表6。
表6 隱秘圖像旋轉(zhuǎn)后提取的水印對比
此時文中算法用視覺可以識別出水印,而文獻(xiàn)[7]的水印圖像已經(jīng)模糊不能識別,說明文中算法較文獻(xiàn)[7]算法對于旋轉(zhuǎn)攻擊有很好的魯棒性。
隱秘圖像剪切后提取的水印見表7。
表7 隱秘圖像剪切后提取的水印對比
從表7視覺對比中可以看出,文中算法基本與原始水印沒有差別,從NC值對比上也能明顯的看出,文中算法對于剪切攻擊魯棒性好于文獻(xiàn)[7]算法。
大量實(shí)驗(yàn)表明,提出的基于智能手機(jī)的數(shù)字水印算法相比于文獻(xiàn)[7]算法快速、高效,并有較好的魯棒性,在不需要原始圖像的情況下,也能提取出水印,在常規(guī)攻擊與幾何攻擊中都有較好的魯棒性,能夠很好地適用于智能手機(jī)中。
參考文獻(xiàn):
[1] 張曉強(qiáng),王蒙蒙,朱貴良.圖像水印算法研究新進(jìn)展[J].計(jì)算機(jī)工程與科學(xué),2012,34(4):17-22.
[2] 戚娜.數(shù)字水印的相關(guān)應(yīng)用研究[J].電子設(shè)計(jì)工程,2017,25(1):152-154.
[3] 黨紅梅,李人厚,弋英民.幾種頻率域圖像數(shù)字水印算法[J].計(jì)算機(jī)工程與設(shè)計(jì),2003,24(12):52-55.
[4] 孔玲君,聶鵬.一種基于DWT-DCT變換域的全息水印技術(shù)[J].光電子·激光,2016(2):198-202.
[5] Hernández C P, Torres-Huitzi C. A fragile watermarking scheme for image authentication in mobile devices[C]//International Conference on Electrical Engineering Computing Science and Automatic Control. [S.l.]: IEEE,2011:1-6.
[6] 宋杰,金聰,葉俊民.基于Android智能手機(jī)的彩色圖像盲數(shù)字水印算法[J].中國體視學(xué)與圖像分析,2014(2):148-154.
[7] 彭樂,金聰.適用于Android智能手機(jī)的灰度均值水印算法[J].計(jì)算機(jī)科學(xué),2015,42(7):85-90.
[8] 王會平,陳戈珩,胡明輝.基于SUSAN和HU不變矩的零水印算法研究[J].長春工業(yè)大學(xué)學(xué)報(bào),2015,36(6):654-657.
[9] 陳利,何選森,趙天嬌.一種自適應(yīng)的奇偶量化水印算法[J].計(jì)算機(jī)工程與應(yīng)用,2011,47(35):203-205.
[10] 熊祥光.空域彩色圖像魯棒零水印算法[J].計(jì)算機(jī)工程與科學(xué),2017,39(1):103-110.