王樹梅,張文斌
(江蘇師范大學(xué) 計(jì)算機(jī)學(xué)院,江蘇 徐州 221011)
一種基于偽隨機(jī)的支持大尺寸圖像水印算法
王樹梅,張文斌
(江蘇師范大學(xué) 計(jì)算機(jī)學(xué)院,江蘇 徐州 221011)
數(shù)字水印技術(shù)是信息隱藏的一種重要技術(shù),在保護(hù)數(shù)字圖像版權(quán)方面發(fā)揮著重要作用。提出了一種支持大尺寸的數(shù)字圖像水印算法。該算法將大尺寸的圖像作為水印信息嵌入到被保護(hù)的對(duì)象里,亦即將大尺寸的水印圖像信息依據(jù)載體圖像的特征大小獲取水印信息量,并基于偽隨機(jī)編碼器確定水印信息的采樣和嵌入位置,在對(duì)嵌入信息置亂的基礎(chǔ)上對(duì)載體信息進(jìn)行離散余弦變換,應(yīng)用自適應(yīng)方式將置亂后的水印信息嵌入到變換域的低頻位置。自適應(yīng)嵌入方式中的嵌入因子由嵌入位置的水印信息大小和載體像素值大小確定,需要對(duì)原始圖像和含水印圖像進(jìn)行處理,在確定水印所在位置后,利用嵌入的逆運(yùn)算提取出水印信息,利用逆置亂算法還原水印信息到原始水印圖像。驗(yàn)證實(shí)驗(yàn)結(jié)果表明,所提出的算法具備較強(qiáng)的實(shí)用性和安全性。
數(shù)字水印;數(shù)字圖像;偽隨機(jī);離散余弦變換
網(wǎng)絡(luò)技術(shù)的發(fā)展使得信息的傳播速度進(jìn)一步加快,網(wǎng)絡(luò)空間里的信息安全問題愈加凸顯。保護(hù)數(shù)字信息安全的技術(shù)有多種,其中信息隱藏是一種常用的安全技術(shù),而數(shù)字水印技術(shù)又是信息隱藏技術(shù)中的典型代表。
數(shù)字水印技術(shù)指的是將含有作者版權(quán)信息的秘密信息嵌入到需要保護(hù)的文件里,從而起到一定的保護(hù)作用。多年來,很多專家在數(shù)字水印技術(shù)方面做出了突出貢獻(xiàn)。黃繼武教授于2000年發(fā)表的一篇有關(guān)DCT域數(shù)字水印的文章[1]影響力很大,詳細(xì)討論了圖像的DCT域的數(shù)據(jù)分布特點(diǎn)以及哪些區(qū)域適合嵌入數(shù)字水印,為后面研究DCT域的學(xué)者們指出了方向。孫圣和教授等在文獻(xiàn)[2]中比較系統(tǒng)地介紹了當(dāng)前存在的數(shù)字水印算法及應(yīng)用領(lǐng)域,對(duì)于空間域和變換域[3-8](DCT域、DWT域、DFT域)的數(shù)字水印算法進(jìn)行了詳細(xì)介紹和解讀。此外,還有基于位平面的數(shù)字水印算法[9]和彩色圖像的水印算法[10],這些算法對(duì)數(shù)字水印技術(shù)都是一種完善和提升。
數(shù)字圖像的信息安全問題主要關(guān)注的是水印技術(shù),即如何保證圖像的版權(quán)所有權(quán)問題。目前大多數(shù)水印技術(shù)重點(diǎn)在于載體圖像嵌入水印后的不可見性和魯棒性,對(duì)于水印信息本身的特點(diǎn)較少考慮到,而且水印信息量一般都在遠(yuǎn)遠(yuǎn)小于載體信息量的前提下實(shí)施水印算法。在滿足載體圖像的不可見性和魯棒性[11-12]的前提下,水印信息特征也是必須要納入研究范圍的。水印特征包括:水印的呈現(xiàn)狀態(tài)(是圖像還是其他信息)、水印的大小(圖像尺寸和信息量)以及水印與載體的關(guān)系。為此,在研究分析載體圖像的不可見性和魯棒性的基礎(chǔ)上,提出了一種支持大尺寸的數(shù)字圖像水印算法。
水印信息的處理是整個(gè)水印算法的第一步,是影響水印算法性能的重要組成部分。之前的大部分算法都是在水印信息給定而且水印的信息量遠(yuǎn)遠(yuǎn)小于載體信息量的前提下進(jìn)行實(shí)現(xiàn)的,這里的水印也是事先給定的,但在信息量大于載體信息量的情況下,如何處理水印和嵌入水印是主要討論的問題。
1.1 水印圖像采樣
設(shè)W(i,j)為M×N的水印圖像,F(xiàn)(i,j)為P×Q的載體圖像。M和N都不小于P和Q,即水印信息量大于載體信息量,這種情況下,既要保證水印信息的完整性,又要保證載體圖像的不可見性,需要對(duì)水印內(nèi)容進(jìn)行采樣,采樣結(jié)果必須清晰表達(dá)水印整體結(jié)構(gòu),嵌入后不會(huì)影響載體的視覺效果。
圖像采樣分為上采樣、插值和下采樣,為了減少水印信息,采用下采樣,又稱之為抽樣。每次采樣處理后的結(jié)果是原來圖像面積的1/4,那么n次采樣后是原來大小的2-2n。但是需要多少次采樣需要根據(jù)載體圖像的大小確定,理論上,水印與載體之間的差距越大,嵌入后的不可見性越好,但過小會(huì)影響水印的魯棒性。一般情況下,水印信息量不少于載體信息的1/16能滿足水印的魯棒性要求,不可見性要考慮到嵌入因子α的大小。
設(shè)n次采樣后的水印為W1(i,j),大小變?yōu)閙×n,則有:
(1)
根據(jù)載體圖像的大小確定采樣次數(shù),前提是既要保證水印圖像的清晰度,又要保證載體圖像受攻擊后提取出的水印信息與原來水印信息的相似度。
1.2 水印圖像預(yù)處理
當(dāng)確定要嵌入的圖像信息后,需要對(duì)水印進(jìn)行置亂處理,這是嵌入之前對(duì)水印所做的最后處理。置亂后的水印圖像不會(huì)再有任何明顯的原始信息,在置亂過程中以偽隨機(jī)序列作為工具,使用具有安全保障的密鑰,當(dāng)水印被攻擊者提取后,即使可以提取出水印,如果沒有密鑰,也不能恢復(fù)到原始水印狀態(tài)。具體置亂步驟如下所述:
(1)讀入水印圖像,計(jì)算出水印的尺寸;
(2)利用密鑰生成與水印圖像大小一致的平均分布的偽隨機(jī)序列矩陣;
(3)降維并排序,得到兩個(gè)向量,一個(gè)是將隨機(jī)序列排序后的有序向量,另一個(gè)是記錄原隨機(jī)矩陣元素地址的向量;
(4)對(duì)水印圖像進(jìn)行置亂,并重新將一維向量轉(zhuǎn)變?yōu)槎S矩陣,即得到置亂后的水印圖像。
若對(duì)置亂還原,可通過對(duì)置亂逆過程實(shí)現(xiàn)對(duì)置亂圖像的還原。當(dāng)然,圖像置亂有多種方法,常見的有Arnold、Logistic、幻方變換、Hash置亂、變化模板形狀的圖像置亂方法等。采用平均分布的偽隨機(jī)序列,因?yàn)槠渚哂忻荑€唯一性和混沌的特點(diǎn),即只需一個(gè)密鑰就可以產(chǎn)生具有混沌性質(zhì)的序列。
在水印信息處理完成后,如何嵌入到載體內(nèi)部是下一步要解決的問題。一般情況下,載體信息是具有保護(hù)原始數(shù)據(jù)目的的,對(duì)原始載體圖像基本不作處理。水印嵌入過程基本上就是按照設(shè)計(jì)好的算法步驟將處理過的水印信息嵌入進(jìn)去,但必須確保載體圖像的視覺效果與嵌入水印之前沒有區(qū)別,至少人類視覺系統(tǒng)覺察不出差別。
在嵌入過程中,嵌入位置至關(guān)重要。在以往的算法中,有的嵌入到載體的一定級(jí)別的小波域(DWT),有的直接嵌入到離散余弦變換(DCT)后的高頻域,這些嵌入位置很容易被攻擊者計(jì)算出水印信息。這里采用的水印位置是依據(jù)密鑰計(jì)算出的,密鑰不同,水印在載體中的坐標(biāo)(x,y)就不同[13]。
水印嵌入流程如圖1所示。
具體嵌入過程描述如下:
Step1:確定水印文件并讀入,得到數(shù)據(jù)W(i,j)M×N,對(duì)其進(jìn)行兩次采樣得到W1(i,j),大小為m×n;
Step2:確定密鑰數(shù)據(jù)Key1,利用前述方法對(duì)W1(i,j)置亂,得到W2(i,j),并將其轉(zhuǎn)換到離散余弦域W2D(i,j);
Step3:讀入載體圖像文件F(x,y),并對(duì)其做離散余弦變換,得到FD(x,y);
Step4:依據(jù)密鑰Key2生成嵌入位置坐標(biāo),分別是(x1,y1)、(x1,y1+n-1)、(x1+m-1,y1)和(x1+m-1,y1+n-1),如圖2所示。這個(gè)過程也將載體元素集合分成兩部分:F1(x,y)和F2(x,y)m×n,并且F1D(x,y)=FD(x,y)m×n。具體流程見圖3;
圖1 水印嵌入流程
圖2 嵌入位置示意圖
圖3 嵌入位置定位過程
Step5:在F2D(x,y)中嵌入W2D(i,j),得到F2DW(x,y),嵌入規(guī)則如下:
(2)
Step6:將FD(x,y)中的F2D(x,y)替換為F2DW(x,y),對(duì)FD(x,y)進(jìn)行離散余弦逆變換得到FW(x,y),即完成對(duì)載體圖像的水印嵌入。
水印的提取過程在步驟上與水印的嵌入過程有部分是相通的,這里水印的提取要用到原始載體圖像。與嵌入過程不同的是,利用密鑰Key2進(jìn)行水印提取要對(duì)含水印圖像和原始載體圖像作水印位置定位并作離散余弦變換。設(shè)提取出的水印為W2DE(x,y),則具體提取公式如下:
W2DE(x,y)=
(3)
通過式(3)提取出的結(jié)果并不能顯示原始水印的任何清晰標(biāo)識(shí)信息,需要利用Key1生成的偽隨機(jī)數(shù)據(jù)進(jìn)行圖像重建。重建后的水印圖像與原始水印采樣后的圖像進(jìn)行比較,計(jì)算出相似度Sim:
(4)
為了檢測該算法的性能,采用Lena圖像(大小為256×256)作為主要載體圖像。另外采用OU作為水印圖像,大小為256×256,與載體圖像相比較,屬于相對(duì)大尺寸圖像。
3.1 不可見性檢測
水印的不可見性意義在于比較含水印圖像和原始載體圖像間的峰值信噪比(Peak Signal-to-Noise Ratio,PSNR),如式(5)所示:
(5)
其中,MSE為原載體圖像與處理的含水印圖像間的均方誤差。
令I(lǐng)(i,j)為原載體圖像,K(i,j)為嵌入水印后的圖像,它們間的MSE計(jì)算方法如下:
(6)
為了更好地證明提出算法的不可見性,使用比較典型的實(shí)驗(yàn)圖像作為嵌入水印的載體,它們分別是:Lena、Fishingboat、Peppers和Baboon,如圖4所示。
圖4 不可見性檢測結(jié)果
從實(shí)驗(yàn)結(jié)果可以看出,每一幅圖像嵌入水印后PSNR值都大于35 dB。一般情況下,當(dāng)它們間的峰值信噪比不小于35 dB時(shí),人眼不會(huì)覺察出兩幅圖像之間的區(qū)別。因此,實(shí)驗(yàn)結(jié)果表明,該算法具有良好的不可見性,具備水印算法應(yīng)有的性能。
3.2 魯棒性檢測
魯棒性是衡量水印算法的一個(gè)比較重要的標(biāo)準(zhǔn),檢測水印算法的抗攻擊能力。常見的攻擊有濾波、加噪、剪切、壓縮和旋轉(zhuǎn)[14]等。濾波主要用于去除圖像中明顯存在的噪音的非線性操作,屬于無意攻擊。在圖像傳播和處理過程中,加噪是攻擊者常用的手段,最常見的噪聲是服從高斯分布的隨機(jī)噪聲。還有比較常見的攻擊就是對(duì)圖像進(jìn)行剪切、旋轉(zhuǎn)和縮放處理,這類攻擊屬于幾何范圍內(nèi)的攻擊,通常會(huì)改變圖像像素的分布。下面就這些常見攻擊進(jìn)行水印提取,檢測所提算法對(duì)攻擊的魯棒性。
圖5分別為含水印圖像接受各種不同程度攻擊后的結(jié)果以及所提取的水印。
圖5 魯棒性檢測結(jié)果
其中,圖5(a)用的是參數(shù)為0.1的3×3拉普拉斯濾波器,濾波后圖像發(fā)生了較大程度的變化,但提取出的水印信息仍能清晰地看出原始印跡,通過計(jì)算原始水印與提取水印之間的相似度值,結(jié)果為0.992 7,表明抗濾波攻擊性能良好。圖5(b)中加的是參數(shù)為0.1的鹽椒噪聲,水印相似度值為0.955 2,提取出的水印中噪聲較多,有意義標(biāo)識(shí)還是比較清楚。相對(duì)于噪聲攻擊,圖5(c)中的剪切攻擊的效果更加明顯,具體操作是將含水印圖像的(30∶100,20∶90)范圍內(nèi)的像素值修改為0,提取出的水印相似值為0.903 1。對(duì)含水印圖像攻擊最不明顯的是壓縮攻擊,圖5(d)是進(jìn)行的30%的壓縮攻擊測試,圖像基本看不出變化,但水印確實(shí)受到影響,相似值為0.845 9。圖5(e)和(f)是旋轉(zhuǎn)角度不同的幾何攻擊,(e)旋轉(zhuǎn)50°,(d)旋轉(zhuǎn)100°,可以看出并不是旋轉(zhuǎn)角度越大,相似度就越小。(e)提取的水印相似度為0.832 2,(d)提取的水印相似度為0.937 8。因此,從魯棒性的所有檢測結(jié)果不難看出,所提算法對(duì)常見攻擊的抵抗性較強(qiáng)。
提出了一種支持大尺寸的圖像水印算法。在水印圖像的預(yù)處理過程中,用到了采樣和基于密鑰的偽隨機(jī)置亂處理,之后對(duì)處理過的水印信息轉(zhuǎn)換到變換域。通過采樣達(dá)到縮小尺寸的目的,還保留了原始水印信息。偽隨機(jī)置亂操作對(duì)于水印安全性很重要。對(duì)載體圖像的處理仍要轉(zhuǎn)換到變換域,這樣可以使水印信息能夠滲透到載體的所有元素里。再有,就是水印信息嵌入位置的確定,這里不再選擇在載體變換域的低頻部分,因?yàn)楣粽邔?duì)此已經(jīng)比較熟悉,也比較容易受到攻擊。嵌入位置的選擇依據(jù)密鑰來確定,密鑰不同,值也不同,進(jìn)一步增加了安全性。在嵌入過程中,嵌入規(guī)則近似于乘法,但嵌入系數(shù)不是一個(gè)確定的數(shù)字,而是根據(jù)嵌入位置的載體系數(shù)和水印系數(shù)確定,這樣做的目的是為了增加水印嵌入的容量,增強(qiáng)水印的魯棒性,實(shí)驗(yàn)結(jié)果也證明了這一點(diǎn)。
[1] 黃繼武,Shi Y Q,程衛(wèi)東.DCT域圖像水印:嵌入對(duì)策和算法[J].電子學(xué)報(bào),2000,28(4):57-60.
[2] 孫圣和,陸哲明,牛夏牧.數(shù)字水印技術(shù)及應(yīng)用[M].北京:科學(xué)出版社,2004:13-16.
[3] 李趙紅,侯建軍.基于Logistic混沌映射的DCT域脆弱數(shù)字水印算法[J].電子學(xué)報(bào),2006,34(12):2134-2137.
[4] Tataru R L, El Assad S, Deforges O.Improved blind DCT watermarking by using chaotic sequences[C]//International conference for internet technology & secured transactions.[s.l.]:IEEE,2012:46-50.
[5] Sridhar B, Arun C. On secure multiple image watermarking techniques using DWT[C]//3th IEEE international conference on computing communication & networking technologies.[s.l.]:IEEE,2012:1-4.
[6] Deb K, Sajib Al-Seraj M S, Hoque M M,et al.Combined DWT-DCT based digital watermarking technique for copyright protection[C]//Proceedings of the 7th IEEE international conference on electrical & computer engineering.Bangladesh:IEEE,2012:458-461.
[7] 孫秋冬,馬文新,顏文英,等.數(shù)字圖像的隨機(jī)置亂加密及其與Arnold變換技術(shù)的比較[J].上海第二工業(yè)大學(xué)學(xué)報(bào),2008,25(3):159-163.
[8] 王 強(qiáng),丁 群,張 忠.離散小波變換和混沌結(jié)合的數(shù)字圖像水印算法[J].電子測量與儀器學(xué)報(bào),2008,22(5):16-20.
[9] 盧宗慶,梅蕤蕤,黃敬雄.基于位平面的數(shù)字水印算法[J].計(jì)算機(jī)工程與應(yīng)用,2003,39(6):79-81.
[10] Guo C,Xu G,Niu X,et al.A color image watermarking algorithm resistant to printscan[C]//IEEE international conference on wireless communications,networking and information security.[s.l.]:IEEE,2010:518-521.
[11] 劉國賀,李玉惠,李 勃,等.基于FPGA的數(shù)字圖像水印實(shí)時(shí)嵌入系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2010(3):27-30.
[12] 牛少彰,舒南飛.數(shù)字水印的安全性研究綜述[J].東南大學(xué)學(xué)報(bào):自然科學(xué)版,2007,37(S1):220-224.
[13] 王樹梅,趙衛(wèi)東,王志成.一種基于混沌變換的自適應(yīng)盲水印[J].計(jì)算機(jī)仿真,2007,24(11):129-133.
[14] 王萬良,管 秋,楊旭東.小波域數(shù)字圖像水印改進(jìn)算法及其性能分析[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2004,16(9):1235-1239.
A Large-size Image Watermarking Algorithm with Pseudo-random
WANG Shu-mei,ZHANG Wen-bin
(School of Computer Science,Jiangsu Normal University,Xuzhou 221011,China)
Digital watermarking is an important technology of information hiding and plays an important role in protection of copyright of digital images.A digital watermarking algorithm with support of large size is proposed,which embeds images of large size as watermark information in the protected object.That means the watermark information amount is acquired by watermark image information with large size according to the feature of the carrier image,and the sampling and embedded location of watermark information is determined based on the pseudo-random encoder.Then the carrier information is carried on the discrete cosine transform on the basis of embedded information scrambled,using the adaptive way to embed the scrambled watermark information into low-frequency location of the transformed domain.The embedding factor in the adaptive embedding method is determined by the watermark information size and the vector pixel value of the embedding position.The original image and the watermarked image need to be processed.After positioning the watermark,the embedded inversion is used to extract the watermark information and the watermark information is restored to the original watermarked image by the inverse scrambling algorithm.The experimental results show that it has strong practicability and security.
digital watermarking;digital image;pseudo-random;discrete cosine transform
2016-09-06
2016-12-08 網(wǎng)絡(luò)出版時(shí)間:2017-07-05
國家自然科學(xué)基金資助項(xiàng)目(61304174)
王樹梅(1972-),女,博士,副教授,研究方向?yàn)閳D像處理及信息隱藏。
http://kns.cnki.net/kcms/detail/61.1450.TP.20170705.1651.050.html
TP391
A
1673-629X(2017)08-0121-04
10.3969/j.issn.1673-629X.2017.08.025