摘要:介紹了一種基于空間域的信息隱藏方案,。在該方案中,,通過(guò)對(duì)水印像點(diǎn)的位置進(jìn)行隨機(jī)置亂,,達(dá)到加密的目的??紤]到了人類(lèi)視覺(jué)系統(tǒng)特性,,并根據(jù)圖像塊的特點(diǎn)自適應(yīng)地改變嵌入信息的強(qiáng)度,使水印具有更好的不可見(jiàn)性,。同時(shí),,將水印點(diǎn)嵌入到圖像塊中的位置進(jìn)行隨機(jī)置亂,提高了水印的安全性以及穩(wěn)健性,。該算法非常簡(jiǎn)便易行,,而且實(shí)驗(yàn)證明,該算法是有效的,。
1 引言
圖像的信息隱藏技術(shù)是指在圖像中加入代表版權(quán)擁有者的某些信息(水印),,以實(shí)現(xiàn)版權(quán)保護(hù)。加入水印后的圖像應(yīng)無(wú)明顯降質(zhì)現(xiàn)象出現(xiàn),,即水印具有較強(qiáng)的不可見(jiàn)性,;同時(shí)也應(yīng)具有魯棒性,即經(jīng)過(guò)各種惡意或無(wú)惡意的信號(hào)處理后,,水印仍能被完整,、準(zhǔn)確的鑒定出來(lái)。
本文介紹了一種空間域圖像信息隱藏方法,,該方法中首先將水印圖像各像點(diǎn)的位置進(jìn)行隨機(jī)置亂達(dá)到加密的目的,,再根據(jù)水印各像點(diǎn)的取值,并結(jié)合宿主圖像塊的特點(diǎn),,自適應(yīng)地改變嵌入信息的強(qiáng)度,,以滿(mǎn)足水印的不可見(jiàn)性,利用偽隨機(jī)序列將水印點(diǎn)嵌入到圖像中的位置進(jìn)行隨機(jī)置亂,,提高了水印的安全性以及受到剪切時(shí)的穩(wěn)健性,,此算法無(wú)論是在嵌入或是提取水印時(shí)都非常簡(jiǎn)便,可利于實(shí)時(shí)或者FPGA的實(shí)現(xiàn),,另外實(shí)驗(yàn)也證明,,該算法具有很好的水印透明性和魯棒性。
2 水印的嵌入方法描述
2.1 二值水印圖像的隨機(jī)置亂
將二值圖像作為水印,,設(shè)其像點(diǎn)為為Mm×Nm,。為了提高水印的安全性,首先對(duì)原始二值水印圖像進(jìn)行隨機(jī)排列,,即隨機(jī)置亂,。過(guò)程如下:
(1)將大小為Mm×Nm的二值圖像表示成向量形式。
(2)由密鑰key1控制產(chǎn)生一個(gè)長(zhǎng)度為Mm×Nm的隨機(jī)序列,,序列的元素是1-Mm×Nm之間隨機(jī)排列的整數(shù),。
(3)以隨機(jī)序列的元素為序號(hào),,重排水印序列的元素的次序,實(shí)現(xiàn)水印的置亂,。
2.2 宿主彩色圖像從RGB到Y(jié)UV格式的轉(zhuǎn)換
彩色圖像比較常用的表示格式為RGB(即紅,、綠、藍(lán))格式,,而YUV顏色表達(dá)方式主要用于電視信號(hào)中,,Y分量的物理含義是亮度,代表了圖像的所有信息,,U和V分量代表了色差信號(hào),,我們?cè)赮分量中加入水印,對(duì)于U,,V分量不做任何變換,,在Y分量中加入水印之后,由YUV分量重新生成RGB分量,,即構(gòu)成了加入水印后的圖像,。
圖像從RGB到Y(jié)UV以及從YUV到RGB格式的轉(zhuǎn)換的公式如下:
2.3 根據(jù)圖像塊特征,自適應(yīng)地改變嵌入水印的強(qiáng)度
將宿主圖像Y分量分成大小4×4的圖像塊,,水印加入的過(guò)程實(shí)際上就是根據(jù)水印像點(diǎn)值的取值情況依次改變對(duì)應(yīng)圖像塊灰度值的過(guò)程,,這里灰度值改變的大小程度主要是根據(jù)宿主圖像塊的特征而自適應(yīng)地改變,根據(jù)人類(lèi)的視覺(jué)特點(diǎn),,如果圖像塊的灰度值對(duì)比度越大,,人眼對(duì)圖像中的噪聲的敏感性越弱,相反,,對(duì)噪聲的敏感性就強(qiáng),。而水印的嵌入過(guò)程可以認(rèn)為是圖像加入噪聲的過(guò)程,嵌入水印的強(qiáng)度可以根據(jù)宿主圖像塊的灰度對(duì)比度而改變,,如果對(duì)比度大,,則加入的水印可以強(qiáng)一點(diǎn),假設(shè)Ymax和Ymin分別是選定的一個(gè)4×4塊中的16個(gè)象素中最大的灰度值和最小的灰度值,,那么差值Δ=gmax-gmin可以近似表示圖像塊的對(duì)比度的大小,,根據(jù)Δ可以改變宿主圖像灰度值的變化量的大小,即加入水印的強(qiáng)弱,,為了防止由于圖像塊過(guò)于平滑,,造成水印在圖像塊中強(qiáng)度太弱使魯棒性變差,我們?cè)O(shè)置了水印強(qiáng)度的下限λmin,,這樣構(gòu)成了如下用于調(diào)整水印強(qiáng)度的系數(shù):λ=max[λmin,K×(ymax-ymin),,其中k可以調(diào)整水印圖像中的整體強(qiáng)度,,λmin根據(jù)宿主圖像的特點(diǎn)由實(shí)驗(yàn)中確定,,下面介紹水印嵌入的方法。
首先產(chǎn)生一個(gè)數(shù)值在0-1之間的長(zhǎng)度為4×4的偽隨機(jī)序列,,并將該序列變成4行×4列的矩陣PN(i,,j),(j=1,,…,,4;j=1,,…,,4)
假如二值水印序列當(dāng)前元素值為0,相應(yīng)的宿主圖像塊的各灰度值y(i,,j)作如下修改:ynew(i,,j)=y(i,j)+λ×PN(i,,j),;若二值水印序列當(dāng)前元素值為0,相應(yīng)宿主圖像塊的各灰度值y(i,,j),,作如下修改:ynew(i,j)=y(i,,j)-λ×PN(i,,j)。也就是說(shuō)保證在水印像點(diǎn)值為1時(shí),,相應(yīng)宿主圖像塊中的各灰度值比原來(lái)的值有所增加,,而水印像點(diǎn)值為0時(shí)則相應(yīng)宿主圖像塊的灰度值變小,由于PN(i,,j)是隨機(jī)的,,所以圖像塊中任意位置增加或減小的灰度值是隨機(jī)的,類(lèi)似于噪聲,,使水印在視覺(jué)上不易被察覺(jué),。
2.4 水印信息隨機(jī)嵌入到圖像塊
水印信息隨機(jī)加入到各個(gè)圖像塊中,而不是依次將水印信息加入到由上而下,、由左到右描述的圖像塊中,,其主要原因有兩個(gè):第一是為了防止攻擊時(shí)可能將含水印的圖像部分完全剪切掉以致于提取不出水印,以及保證圖像成片被剪切時(shí)水印不是也被連續(xù)剪切,,從視覺(jué)角度還可以觀(guān)察到水印圖像的概貌,;第二,依賴(lài)于密鑰的水印信息的隨機(jī)加入,也是從水印安全性的角度考慮的,。
水印隨機(jī)嵌入的實(shí)現(xiàn)方法如下:設(shè)原始圖像的大小為M點(diǎn)×N點(diǎn),,由密鑰key2產(chǎn)生長(zhǎng)度為M×N的隨機(jī)序列,其值x是1- M×N的自然數(shù)的隨機(jī)重排,,x=p(i),,x即是第i(i=1,2,,…,,Mm×Nm)個(gè)水印點(diǎn)嵌入到宿主圖像中的圖像塊的序號(hào),通過(guò)實(shí)驗(yàn)證明,,這種隨機(jī)嵌入法可以很好地抗擊剪切的攻擊,。
3 水印的提取方法描述
對(duì)水印的提取可以分為以下幾個(gè)步驟:
(1)密鑰key2產(chǎn)生隨機(jī)序列,找出嵌入水印點(diǎn)的對(duì)應(yīng)圖像塊位置,;
(2)將彩色圖像由RGB表色方法轉(zhuǎn)換成YUV表色方法,,提取出灰度(亮度)Y分量;
(3)對(duì)4×4的圖像塊求所有象素灰度值的總和,;
該圖像塊已嵌入的水印像點(diǎn)值是1,;如果sw
(4)由密鑰Key1控制產(chǎn)生一個(gè)隨機(jī)序列對(duì)水印序列位置重排,并構(gòu)成二維的水印圖像,,這就是提取出的水印,。
4 實(shí)驗(yàn)結(jié)果
我們運(yùn)用Matlab語(yǔ)言設(shè)計(jì)了嵌入和提取的水印的程序,并對(duì)性能做了測(cè)試,,宿主圖像是512×512點(diǎn)的lena彩色圖像,,水印是41點(diǎn)×61點(diǎn)的二值圖像。
加入水印后的圖像的水印不可見(jiàn)性可用峰值信噪比PSNR來(lái)測(cè)試,。在λmin取0.2和k取0.5時(shí),,實(shí)驗(yàn)測(cè)出的峰值信噪比PSNR=43.0231,這個(gè)值表明了圖像在嵌入水印之后的透明性是比較好的,,從視覺(jué)的角度也可以看到,,圖像沒(méi)有任何可見(jiàn)失真;另外,,在沒(méi)有任何攻擊下,,水印可以完全準(zhǔn)確地提取出來(lái)(見(jiàn)圖1)。
下面進(jìn)行魯棒性測(cè)試,,圖2是對(duì)圖像進(jìn)行窗口大小為3×3的中值濾波后,,提取出的水印,相似度為0.7609,,圖3是對(duì)圖像加密度為0.03校驗(yàn)噪聲攻擊時(shí)提取出的水印,,相似度0.7016,,圖4是圖像進(jìn)行壓縮比為25:2的JPEG壓縮后提取的水印,相似度為0.9076,,圖5是將圖像旋轉(zhuǎn)18度后提取出的水印,,相似度為0.7503,圖6是對(duì)圖像進(jìn)行剪切掉1/4后提取出的水印,,相似度為0.92322,圖7是對(duì)圖像進(jìn)行剪切掉1/2后提取出的水印,,相似度為0.81931,。
從以上的測(cè)試結(jié)果看到,,該算法對(duì)一些常見(jiàn)的圖象處理或攻擊呈現(xiàn)出很好的魯棒性,。而對(duì)于剪切攻擊,其魯棒性更為突出,。
5 結(jié)語(yǔ)
本文介紹了一種基于空間域的簡(jiǎn)便的圖像水印算法,,根據(jù)圖像塊的灰度對(duì)比度,自適應(yīng)地改變水印加入的強(qiáng)度,,使水印不可見(jiàn)性增強(qiáng),,并兼顧了不可見(jiàn)性和魯棒性之間的矛盾。同時(shí)將水印加入到圖像中的位置隨機(jī)排列,,提高了水印的安全性,,也提高了水印抗擊剪切的魯棒性。