鄭淑麗, 王美玲, 邢慧芬, 胡東輝
(合肥工業(yè)大學 計算機與信息學院,安徽 合肥 230009)
數(shù)字水印技術(shù)[1-2]為日益嚴峻的多媒體版權(quán)認證問題提供了可靠而有效的解決方案,但是在某些特殊的應(yīng)用中(如軍事、醫(yī)療和司法等領(lǐng)域),對圖像的完整性、真實性要求比較高,甚至不允許由于嵌入水印而帶來的失真。因此,這種特殊類型被稱為可逆水印的脆弱水印技術(shù),近幾年得到了廣泛關(guān)注。可逆數(shù)字水印算法最早出現(xiàn)在1997年Barton的一項美國專利中[3],該專利基于空間域提出了一種脆弱水印的算法。該技術(shù)的主要研究目標是以最小的失真取得最大的有效信息隱藏量。因此,高容量的可逆水印算法是研究的主要方面。
文獻[4]方法是基于差值擴展可逆水印算法的基礎(chǔ),通過對Haar整數(shù)小波變換的高頻分量(即像素對差值)作幅值乘2的數(shù)值擴展,用空出來的LSB(least significant bit,簡稱LSB)嵌入水印信息。算法通過產(chǎn)生1個二值位置圖來標識嵌入時用于擴展的差值位置,再無損壓縮位置圖,把其同載荷一起嵌入到原始載體圖像中。
文獻[5]把文獻[4]的差值擴展思想應(yīng)用到n(n>2)個像素組成的矢量中,使每n個像素組成的矢量能攜帶(n-1)bit的水印信息。雖然文獻[5]的方法在嵌入率和位置圖大小上都比文獻[4]的差值擴展算法有很大的改進,但是它也同樣面臨如何高效壓縮位置圖來提高有效信息隱藏量的問題。此后高容量可逆水印技術(shù)大都是從降低位置圖對可用容量的消耗來改進文獻[4]算法,其中比較有代表性的是排序方法[6]和文獻[7]方法。文獻[6]在文獻[4]算法基礎(chǔ)上,提出先通過計算每個像素值在其周邊區(qū)域的平滑性,改變嵌入像素對的次序,該方法在不滿嵌的情況下得到較好效果。文獻[7]把灰度平移應(yīng)用到了差擴展中,從而在嵌入容量和嵌入失真方面都有了一定的提高。本文在改進文獻[4]差值擴展算法基礎(chǔ)上,基于圖像位平面分解理論提出一種基于位平面的差值擴展可逆水印算法,該算法同樣適用以上基于文獻[4]的各種改進算法[8]。
對任一像素對p=(x,y)進行Haar整數(shù)小波變換,得到均值l和差值h。相應(yīng)地,均值l和差值h經(jīng)過其逆變換,也可以完全地恢復(fù)出原始像素值x和y。
正變換:
逆變換:
把得到的差值h左移1bit,并將水印嵌入到空出的最不重要位上,這樣的操作即為差值擴展,其數(shù)學表達式為:
同時,為了不引起像素溢出,逆變換得到的x、y都應(yīng)該被限制在[0,255]范圍之內(nèi),否則后續(xù)水印提取和圖像的恢復(fù)就不再可逆。因此,還應(yīng)該有以下的限制條件:
在文獻[4]方法中,對幅值大的差值進行數(shù)值擴展會引入較大失真,因此,事先設(shè)置一個閾值,閾值越小,可用于數(shù)值擴展的差值數(shù)量越少,且擴展差值所獲得的可用容量也越少,而增大閾值又會導致嵌入失真的增加。本文算法主要是想結(jié)合圖像位平面分解理論,把差值擴展算法推廣到位平面的范疇里,不修改圖像較高位平面,在其他的較低位平面進行差值擴展,從而有效地減小幅度較大差值,以同時達到增加嵌入容量和降低嵌入失真率。
所謂圖像的位平面就是將圖像的每個像素值用相應(yīng)的二進制數(shù)值表示,所有像素的每個相同位組成一幅二值圖像,稱為位平面,而位平面分解就是把一幅圖像分解成各個單獨的位平面。一幅M×N的Lbit圖像I進行位分解得到L個位平面,每個像素在每一位平面對應(yīng)0或1。第i行第j列像素為I(i,j),則得到I(i,j)的第k位為:
同樣可由Ik(i,j)重構(gòu)I(i,j),即
對于灰度級256的圖像,每個像素值可以用8位二進制數(shù)來表示,記b7b6b5b4b3b2b1b0,其中每個bi(i=0,…,7)為0或1,所有像素的b7位就構(gòu)成了圖像的第7個位平面(最高位平面),依此類推。由此,一幅圖像可以看作是由這8個位平面重疊而成。
本文方法的主要思想是在對圖像進行可逆水印嵌入算法前,先將圖像I進行位平面分解,選擇重要位平面并將其值都做置0處理,由此得到包含其余較低位平面的像素值的圖像C,相反的操作得到只保留較高位平面的圖像B;再對圖像C運用差值擴展的可逆水印算法將水印信息嵌入其中,最后得到了嵌入信息后的完整的圖像I′。算法的嵌入流程如圖1所示。
圖1 算法嵌入流程圖
該流程主要是為了解決差值擴展算法中差值幅度大像素對影響算法的總嵌入容量的問題,有效地減小差值幅度大像素對的差值,進一步提高嵌入容量,同時使嵌入水印信息對圖像的重要位平面沒有任何改變和影響,從而很好地保證了圖的視覺效果,同樣能很好地抵抗基于位平面直方圖特征向量的圖像檢測,使圖像有很好的不可感知性。
取圖像中的一個差值幅度大像素對p=(x,y),且x,y∈[0,255],具體操作見表1所列。其中bi(i=0,…,7)表示第i個位平面;xi,yi(i=0,…,7)為0或1,分別表示原始像素值x和y在第i個位平面的取值。將最高位平面b7做置0操作,各個像素值x′=xmod 27,y′=y(tǒng)mod 27,計算它們的差值h′。
表1 最高位平面置0時部分位平面的情況
由此,h-h(huán)′=(x7-y7)×27-0×27。
推廣到從bi(i=0,…,6)到b7都置0操作,即可得到:
操作后對于那些取值介于第bi位平面與第bi-1位平面之間,原差值很小的像素對的差值絕對值反而增大了,這對增加嵌入容量是有影響的。因此,需要通過(8)式計算確定能減小差值的像素值的取值范圍,對任一像素對p=(x,y),2i≤x≤255,0≤y≤2i-1,則
由此可以看出,當像素(2i-1+2i-1)≤x≤255時將從bi(i=6,…,0)到b7位平面進行置0操作,都能減小它與y的差值。因此,必須通過圖像的直方圖觀察統(tǒng)計出圖像中像素值x分布,決定是否將從bi到b7位平面都做置0操作。i的取值可由圖像像素值的集中分布和算法的復(fù)雜度等共同決定,當最高位平面不置0時,文獻[4]差值擴展算法就成為本文算法的一種特例。
原始圖像I進行位平面分解后,從位平面bi(i=6,…,0)到b7位平面都做置0操作,得到包含其余較低位平面像素值的圖像C。先對圖像C中任一像素對p=(x,y)余較低位平面的溢出問題,不可溢出到高位平面,從而保證了水印提取的可逆性。因此,還應(yīng)該增加限制條件:
對任一像素對p=(x,y),0≤x,y≤2i-1,做(1)式的整數(shù)小波變換,得到均值l和差值h。
定義1 可擴展差值。對h經(jīng)過(3)式的修改得到h′,無論水印比特b=0還是b=1,如果h′滿足條件(9)式,則稱差值h是可擴展的。
定義2 可改變差值。對h按照(10)式修改得到h′,無論水印比特b=0還是b=1,如果h′滿足條件(9)式,則稱差值h是可改變的,即
若h經(jīng)(10)式修改得到的h′不滿足條件(9)式,則差值h是不可改變的。
信息嵌入時,首先將圖像分成許多像素對,其次將所有像素對分成S1(可擴的)、S2(可變的)和S3(不可變的)3個集合。生成一個位置圖L0,將每個像素對對應(yīng)1bit信息,S1中的像素對對應(yīng)于1,S2中的像素對對應(yīng)于0。
由于S1∪S2是與S3直接可分的,故對于S3可以不做標記。采用算術(shù)編碼L0無損地壓縮成碼流L1,該碼流尾部的唯一標識符為EOS。S2中像素對差值的LSB也同時記錄下來組成碼流B,將L=L1∪B∪W(W 是真正的水印)作為水印信息嵌入到圖像中。
對于S1中的像素對,利用(11)式提取水印并恢復(fù)原始的差值,即
對于S2中的像素對,由(12)式得到水印并恢復(fù)差值,即
通過實驗,對基于位平面差值擴展的可逆水印算法進行驗證。實驗選取的F-16、Lena、baboon等多副圖像都是512×512的8bit灰度級的標準圖像。圖像的紋理越來越復(fù)雜,代表了不同類型的圖像,實驗中所用的隱藏信息為一系列偽隨機數(shù)。實驗結(jié)果部分用信息的隱藏量和圖像的客觀失真度評價算法的性能,客觀失真度用峰值信噪比(PSNR)表示,信息隱藏量用位每像素(bpp)計量。將本算法與文獻[4]和文獻[6]的2種算法進行比較,對比結(jié)果如圖2、圖3所示及表2所列,其中表2的PNSR設(shè)置為42.63dB左右。
圖2 Lena圖像不同嵌入率(φ)下的信噪比
圖3 baboon圖像不同嵌入率(φ)下的信噪比
表2 本文算法與其他算法的對比
對于F-16、Lena等圖像,使用本文方法和文獻[6]方法嵌入相同容量的水印,本文方法所得含水印圖像的P明顯高于文獻[6]方法;同樣,在相同P的情況下,本文算法的嵌入容量也有明顯增加,且本文方法更為簡單,易于實現(xiàn)。對于baboon等圖像,當嵌入率大于0.4bpp時,本文算法的作用更加明顯,得到的圖像P至少提高了5dB??梢姡绞羌y理豐富的圖像,基于位平面的差值擴展可逆水印算法就越能體現(xiàn)其優(yōu)勢。
本文基于圖像位平面分解理論提出一種新的空間域的差值擴展的可逆水印算法,主要是想結(jié)合圖像位平面理論把差值擴展算法推廣到位平面的范疇里,不修改圖像較高位平面,在其他的較低位平面進行差值擴展,從而有效地減小幅度的較大差值,以同時達到增加嵌入容量和降低嵌入失真率。該算法同樣適用基于文獻[4]的各種改進算法,進一步提高算法的效率。
由于嵌入水印信息對圖像的重要位平面改變和影響很小,從而保證了圖的視覺效果,同樣能很好地抵抗基于位平面直方圖特征向量的圖像檢測,使圖像有很好的不可感知性。
[1]胡 敏,劉 輝.基于特征點的自適應(yīng)三維網(wǎng)格數(shù)字水印算法[J].合肥工業(yè)大學學報:自然科學版,2010,33(1):55-59.
[2]王玲玲,胡社教.基于DCT系數(shù)量化的自適應(yīng)數(shù)字水印算法[J].合肥工業(yè)大學學報:自然科學版,2010,33(8):1198-1201.
[3]Barton J M.Method and apparatus for embedding authentication information within digital data:US,5646997[P].1997-07-08.
[4]Tian J.Reversible watermarking by difference expansion[C]//Proc Workshop on Multimediaand Security,2002:19-22.
[5]Alattar A M.Reversible watermark using the difference expansion of a generalized integer transform[J].IEEE Transactions on Image Processing,2004,13(8):1147-1156.
[6]Kamstra L,Henk J A,Heijmans M.Reversible data embedding into images using wavelet techniques and sorting[J].IEEE Transactions on Image Proccssing,2005,14(12):2082-2090.
[7]Thodi D M,Rodriguez J J.Expansion embedding techniques for reversible watermarking[J].IEEE Transactions on Image Processing,2007,16(3):721-730.
[8]劉向麗,劉向陽,寇衛(wèi)東.利用差分擴展實現(xiàn)可逆水?。跩].光電子·激光,2008,19(8):1094-1096.