一種基于DWT-DCT變換強魯棒性的數(shù)字水印算法
(5)對于DCT變換后的第i塊系數(shù),采用比較DCT中頻系數(shù)法進行水印的嵌入。比較中頻系數(shù)法的思想是:從中頻區(qū)域選擇兩個位置鼠Bi(v1,v1)和Bi(v2,v2)進行比較,下標i表示第i塊??汕度?2個中頻系數(shù),如圖3所示。圖中FL表示塊的低頻部分,F(xiàn)H代表高頻部分。FM是可選擇嵌入的中頻區(qū)域,因為嵌入FM區(qū)域可避免圖像質(zhì)量下降,而且能夠提供較好的抗攻擊能力。為獲得較好的抗壓縮攻擊性能,選擇系數(shù)時可參考表1的JPEG量化表。選擇的兩個DCT系數(shù)應滿足調(diào)整它們的大小不會導致載體圖像嚴重降質(zhì)。因此要選擇JPEG壓縮算法中亮度量化值一樣的系數(shù)。從表1能觀察到系數(shù)(4,1)和(3,2)或(1,2)和(3,0)量化值相等,較適合用來比較。本文引用地址:http://m.butianyuan.cn/article/195618.htm
水印嵌入算法的具體實現(xiàn):對于每一個8x8塊,選擇(4,1)和(3,2)一對系數(shù),比較它們大小,確保滿足式(3),若不滿足,交換兩個系數(shù)的值。ωi為第i塊嵌入信息位的值。
為了提高魯棒性,對算法做進一步改進。引入控制量α擴大兩個DCT系數(shù)差值。引入α雖然會使圖像退化。但能夠降低檢測的誤差。
當ωi=1,系數(shù)(4,1)大于系數(shù)(3,2),且兩者差值小于α時,按式(4)調(diào)整:
當ωi=0,系數(shù)(3,2)大于系數(shù)(4,1)且兩者差值小于α時,按照式(5)調(diào)整:
(6)對于嵌入水印信息后的第i塊系數(shù),進行IDCT變換。
(7)按步驟(5)、(6)對其他塊進行水印的嵌入。
(8)進行IDWT變換,得到嵌入水印后的圖像。
3 水印的提取算法
本算法是盲水印算法,提取時無需水印圖像的原宿主圖像。提取水印是嵌人的逆過程,圖4為水印的提取過程。
其步驟可描述如下:
(1)對嵌入水印的圖像進行DWT變換。
(2)選取HL子帶,并將其分為8x8的塊,進行DCT變換。
(3)按式(6)提取水印。
(4)按提取出的水印位重建水印圖像,得到加密的水印。
(5)水印圖像使用混沌密鑰進行混沌解密,得到解密的水印。
(6)計算恢復出的水印信號和原水印信號的相似程度。
4 試驗結(jié)果
試驗采用大小為512×512的宿主圖像。經(jīng)DWT一級變換后HL子帶的大小為256×256。將選擇的HL子帶分成8×8的塊,得到1 024個塊。使用這些塊能嵌入1 024位水印位到宿主圖像。則以32×32的二值圖像作為水印嵌入到宿主圖像。
4.1 在無攻擊的情況下
圖5是實驗中應用的宿主圖像和水印圖像。圖6a和圖6b分別描述該算法嵌入水印后的圖像和提取出的水印。為了檢驗該算法的性能,將該算法和直接應用DCT相印嵌入的結(jié)果進行比較。圖7為直接應用DCT進行水印嵌入后圖像和提取的水印,可看出,水印能夠被正確從水印圖像中提取,但直接應用DCT算法嵌入水印后的圖像不可見性較低。
評論