陳功平
(信陽師范學院 網絡信息與計算中心,河南 信陽 464000)
關于計算機圖像的可逆水印算法研究
陳功平
(信陽師范學院 網絡信息與計算中心,河南 信陽 464000)
隨著現代信息技術的迅猛發展,數字多媒體在眾多領域中得到應用.隨之產生了一系列安全問題:開放式網絡中傳輸的信息容易被攔截;多媒體軟件強大的編輯功能也讓信息的剪切、復制、拼接、刪除以及偽造變得極易發生.針對這些現狀,本文對多媒體圖像進行研究,針對當前數字水印方面的熱點問題可逆水印進行探討.
圖像;可逆水印法;研究
隨著計算機技術的發展,各種媒體內容被轉化為數字形式,因為數字形式便于流傳,便于大家的分享與傳閱,以及它低廉的成本,幾乎可以讓創作者“一勞永逸”地享受創作帶來的收益,不過這也同時帶來了一個問題,就是數字內容的安全問題,如何能享受網絡便利的同時依然保護數字內容的安全,這變成了當下一個嚴峻的問題.這也是本文研究的目的所在,本文重點探討多媒體里的圖像問題,深入研究了對圖像的所有權、完整性、機密性的保護問題.
數字水印技術作為信息隱藏技術研究領域的重要分支,目前在多媒體信息安全研究領域異軍突起,已成為國際上的一個前沿熱點領域.它利用數字嵌入,將與載體內容相關或不相關但具有特定意義的水印,隱藏到聲音、文檔、數字圖像、視頻、圖書等數字產品這樣的載體中.這些數字水印可以作為證據來鑒定、起訴非法侵權,可以證明作品的所有權歸屬問題.并且針對數字水印的檢測和分析也可以保證數字信息的可靠性和完整性,對于知識產權的保護也能發揮很大作用.因而數字水印技術在對信息的保護以及完整性認證方面,有著廣闊的前景,當今在技術前沿領域發展迅速.本文對多媒體圖像的可逆水印進行研究,具有很強的現實意義,希望對應用者有一定的實踐參考價值.
對于數字水印的研究起步于上世紀80年代,Komatsu運用預測編碼的方法實現了在圖像中嵌入水印.之后一系列研究數字水印的文章陸續出現,Turner實現了在采樣點的非重要比特位點處嵌入認證碼.Cox在他的方案中使用了原始宿主圖像,而這種對圖像隨機擾動、掃描、剪切、壓縮這些操作具有一定的的魯棒性,基于擴頻通信思想,Cox實現了在圖像DCT變換后的中低頻系數中嵌入水印. Furon基于公鑰密碼學的思想,提出了非對稱水印方法,而這一方法可以滿足Kerckhoff準則.Cox等引入了通信領域中的邊信息,認為可以在嵌入水印時借助于宿主媒體自帶的信息.Moulin等研究了在數字水印中使用臟紙理論,如果宿主圖像不滿足加性高斯白噪聲的特征,臟紙理論仍然適用且有效.使用到了量化索引調制(QIM)理論,該理論能夠實現傳輸信息的目的,其實它是針對臟紙理論的拓展.Eggers等提出了一種盲水印方法,這種方法簡化了Costa理論中使用到的碼本,是將Costa臟紙理論使用到信息隱藏中的一種次優解.隨后自適應數字水印借助于感知掩蔽現象進行信息隱藏.目前其他一些算法則針對DWT變換域內.
同時,在信息的完整性保護方面,脆弱/半脆弱水印收效頗豐.Zhu通過研究得出了利用失真度量而不是二值判斷的圖像認證法.Fridrich和Goljan將自身低畫質版本的圖像嵌入到宿主圖像的最低比特位中,這是一種自嵌入的脆弱水印法. Wong則提出了剛夠檢測多處圖像篡改,卻對圖像壓縮處理很敏感的圖像認證算法,這種方法是基于修改圖像象素中最不重要比特位.這些方法大多是在空域中嵌入脆弱水印,另外還可在變幻域中嵌入水印,這樣的水印屬于半脆弱水印,因為它對適量的濾波處理和壓縮不敏感.此外有些學者修改含所有權的水印進行研究.還有人關注與圖像認證相關的的安全可靠性問題,并提出了一些攻擊方法. Holliman和Memon提出了把圖像中的水印拷貝到其它不含水印的圖像中的拷貝攻擊法.
1994年Barton提出可以將原始數據流進行無損壓縮從而擠出一定的空間來嵌入有用信息,這是關于可逆信息隱藏的思想最早可以追溯到的文獻.隨后Honsinger等使用Hash函數將原圖像生成認證信息,再與原圖像一起進行模256運算,進而生成水印圖像.但這種方法能夠導致圖像部分邊界元素異常.Fridrich設計出兩種可逆認證法,第一種方法在具有兩特性的數據塊中隱藏認證信息,并且數據塊具有一定的壓縮能力,對隨機處理不敏感.第二種方法使用hash運算對宿主圖像進行處理生成認證信息,再對平面進行無損壓縮,并嵌入認證信息.算法一能夠用到原始的多媒體數據中,但這兩種方法都有局限性.法一,對不敏感的數據塊進行處理時,信息隱藏量有限.方法二,當針對最不重要位平面時,信息隱藏量有限.當針對其它位平面時,圖像容易失真.
Celik等則利用自適應無損圖像編碼進行壓縮,信息隱藏量更大,這個方法稱為G-LSB可逆信息隱藏算法.Xuan等經研究提出了無損信息隱藏算法,這種方法基于可逆整數小波變換.該方法首先對圖像的灰度直方圖實行壓縮處理,并且記錄修改信息,從而避免了象素值的溢出.其次對這些圖像運用整數小波變換,對中低位平面實行壓縮,之后嵌入有用信息,再做一次逆整數小波變換,就可以得到需要的結果.Tian的研究則在信息隱藏容量方面做出很大提高,他運用可逆整數小波變換,把信息嵌入到高頻小波系數中.Alattar則使用了更為一般的可逆整數小波變換,他選擇相鄰的幾個象素如相鄰的四個象素作為一個變換單元來進行信息隱藏,相對于Tian的算法,Alattar可以隱藏更多的信息.象素間差值小的值都可用來進行信息隱藏.Thodi提出了一次對圖像作用最大可取得接近1bpp信息隱藏量的方法,該法首先選取一個預測算子對象素值預測,再加大預測誤差來處理信息.Chang和Lu通過提高象素和它之前幾個象素均值的差值,然后利用這些差值來隱藏信息.該方法僅僅分析比較了總信息隱藏量,沒有在性能分析時考慮到輔助數據對于有效信息隱藏量的影響.Kamstra借助于低頻系數在嵌入前后基本不變的特點,構造出一個度量函數,它與此處的象素近似關聯,函數值越大相關性越小,反之則越大,按照函數值升值排序,再在處理后的象素對差值中隱藏信息.這個方法對紋理偏多的圖像效果不好,對低頻信息偏多的圖像效果好.Thodi在特征值擴展算法中引入調整直方圖這一思想收效頗為不錯.Kamstra和Thodi在減少位置圖的消極效應方面收效明顯,信息隱藏量上比較顯著.Yang等則基于壓擴技術和整數離散余弦變換提出了可逆水印法.Bao等制定了兩種針對醫學圖像的可逆水印法.Chang和Lin提出了無需區分嵌入位置的可逆信息隱藏算法.Wang等探討了基于二維矢量圖的可逆信息隱藏法.還有學者設計出與音頻相關聯的大容量可逆水印法.Shi等則對這些算法分析后進行了歸類,將目前的可逆信息隱藏算法分為三種:脆弱認證、半脆弱認證、大數據量信息隱藏.
LSB是Least Significant Bit的縮寫,意思是最不重要比特位.LSB算法利用了數字圖像處理中位平面的原理,即改變圖像的最低位的信息,對圖像信息產生的影響非常小以至于人眼的視覺感知系統往往不能察覺.以一幅256灰度的圖像為例,256灰度共需要8個位來表示,但其中每一個位的作用是不一樣的,越高位對圖像的影響越大,反之越低的位影響越小,甚至不能被感知.
LSB算法實現較為簡單,嵌入水印步驟如下:
①將原始載體圖像的時/空域像素值由十進制轉換到二進制表示,下面以大小的塊圖像為例.

②用二進制秘密信息中的每一比特信息替換與之相對應的載體數據的最低有效位,假設待嵌入的二進制秘密信息序列為[011000100],則替換過程如圖所示.

③將得到的含秘密信息的二進制數據轉換為十進制像素值,從而獲得含秘密信息的圖像,如圖所示.

LSB算法提取水印步驟如下:
○1將得到的隱藏有秘密信息的十進制像素值轉換為二進制數據,如圖所示.

○2將二進制數據的最低有效位提取出來,即為秘密信息序列[011000100].如圖所示.

但是,對于上述思路,一個八位的二進制水印信息就需要載體作品用八個像素值空間去存儲.如果盲目照搬上述思路來進行水印嵌入,不僅在有限的作品容量中嵌入的信息量小,而且當嵌入的水印數據量多時,計算機的計算量會很大,也可能載體作品的容量不夠或為了使作品能夠存儲水印信息而將作品高位也進行數據置換,從而帶來嚴重的失真.因此,必須在上述思路的基礎上另辟蹊徑.
本文中,我是將一副灰度圖片嵌入到一副偏藍的RGB圖片中.這里我在嵌入前先將圖片進行了裁剪,使得載體圖片的R、G、B任何一個通道矩陣的行、列大小都大于的嵌入的灰度圖片矩陣的行、列大小.由于圖片偏藍,因此為了使得嵌入水印后,圖片失真較小,我選擇用色彩非常弱的紅色通道嵌入灰度圖片.
程序算法如下:
(1)取出RGB圖片的紅色通道,然后用mod這個函數將該通道與灰度圖片矩陣大小相等的部分的各個像素取模2值,那么像素值為奇數的就會余1,像素值為偶數的就為0,將取模余數用一個和灰度圖片矩陣等大小的矩陣存儲起來,然后將紅色通道被模2的像素與其對應余數相減.那么,紅色通道取模2的那部分像素此刻值的二進制最后一位都為0.
(2)對要嵌入的灰度圖片,我們將其各個像素值都除以128,并將其商的整數部分和小數部分分別用一個和灰度圖片大小相同的矩陣存儲起來.那么,存儲整數的矩陣是一個二值矩陣,取值要么是0,要么是1.
(3)將RGB圖片的紅色通道中按1步驟處理的那部分像素值與存儲灰度圖片的矩陣對應值相加,那么紅色通道就有了灰度圖片的信息,水印被嵌入.
(4)為無失真取出水印,可以將RGB圖片紅色通道按1及3步驟處理的那部分像素值再取mod 2值,并將余數組成的矩陣與2步驟中存儲小數部分的矩陣相加再乘以128,把所得矩陣顯示出來,就是原來嵌入的灰度圖片.
(5)為無失真還原RGB圖片,可以將嵌入水印的RGB圖片按1步驟的方式處理,再將處理后得到的矩陣與1步驟中存儲余數的矩陣相加,再將得到矩陣顯示出來,就是原來的RGB圖片了.
〔1〕張立凡,游福成,張勇斌.手寫數字識別系統設計.北京:印刷學院學報,2009(04).
〔2〕馮偉興.VisualC++數字圖像模式識別技術詳解.機械工業出版社,2010.
〔3〕張宏林.精通VisualC++數字圖像模式識別技術及工程實踐.人民郵電出版社,2008.
〔4〕章毓晉.圖像工程(中冊)圖像分析(第二版).北京:清華大學出版社.
〔5〕劉金春,蔣先剛.均值聚類在三維重構圖像預處理中的應用.微計算機信息,2007.
TP 302.4
A
1673-260X(2013)02-0025-03