• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于分塊預(yù)測的差值直方圖平移的可逆水印算法

      2019-07-16 11:08:04
      關(guān)鍵詞:分塊差值直方圖

      (山東科技大學(xué) 計算機(jī)科學(xué)與工程學(xué)院,山東 青島 266590)

      隨著安全意識和知識產(chǎn)權(quán)意識的提高,人們對自身信息的安全度也越來越重視,數(shù)字水印技術(shù)的使用也越來越多。圖像數(shù)字水印技術(shù)根據(jù)嵌入的水印圖像能否無損恢復(fù)分為可逆和不可逆水印技術(shù)。為了保護(hù)圖像的完整性,可逆水印已成為水印技術(shù)的主流??赡嫠∮址Q無損水印,屬于脆弱性數(shù)字水印,能明顯反映出信號是否被篡改,并且可以在提取出水印之后無損地恢復(fù)原始圖像,適合圖像完整性的認(rèn)證。 因此,可逆圖像水印技術(shù)被廣泛用于醫(yī)學(xué)、軍事和法學(xué)方面等特殊領(lǐng)域的圖片保留存儲工作,用來保證重要圖像信息不丟失。

      現(xiàn)有可逆水印算法主要包括頻域算法和空域算法,二者各有優(yōu)劣,頻域算法嵌入容量相對空域較少,但是嵌入效果比空域隱秘??沼蛩惴ǔS玫挠胁钪禂U(kuò)展、直方圖平移和預(yù)測值擴(kuò)展等方法。差值擴(kuò)展(difference expansion, DE)的方法由 Tian[1]在2003年提出,主要思路是通過擴(kuò)展相鄰像素的差值,對像素進(jìn)行稍微改動,利用兩個像素之間的冗余性來實現(xiàn)水印嵌入,水印提取之后,圖像并無失真。 Ni等[2]提出了基于直方圖平移(histogram shifting, HS)的水印嵌入方法,算法實現(xiàn)容易,但是用于像素值均衡的圖像時,嵌入的容量主要取決于峰值點,導(dǎo)致算法的效果并不好。為了得到效果更好的直方圖,Lee等[3]使用差值直方圖替代灰度直方圖,實現(xiàn)嵌入容量的增加。預(yù)測值擴(kuò)展由 Thodi等[4]首先提出,通過相鄰像素計算產(chǎn)生預(yù)測值和原值的差值進(jìn)行水印的嵌入。Ni等[2]利用圖像像素的直方圖平移進(jìn)行水印的嵌入;熊祥光[5]對水印嵌入進(jìn)行一遍多比特嵌入和多遍單比特嵌入的比較,最終得出多遍嵌入的效果更好的結(jié)論。王俊祥等[6]根據(jù)直方圖信息準(zhǔn)確估計多層嵌入后水印容量及相應(yīng)的水印圖像質(zhì)量,使直方圖平移算法在多層嵌入方向進(jìn)行容量估計。Kelkar等[7]對直方圖平移的方法做出改進(jìn),增大了水印的嵌入容量,提高了安全性,但只是針對醫(yī)學(xué)圖像進(jìn)行的研究。為了更好地利用直方圖嵌入水印,黃志強(qiáng)等[8]進(jìn)行鄰域預(yù)測值擴(kuò)展,利用八鄰域與中間像素得到預(yù)測值,通過閾值判斷對水印進(jìn)行嵌入。鄭淑麗等[9]使用相鄰兩像素的差分,選取水平相鄰像素,然后對相鄰像素做差值。通常的差值直方圖都是通過平滑區(qū)域進(jìn)行差值計算得到,為了同時使紋理區(qū)域也得到應(yīng)用,Thomas等[10]提出在紋理區(qū)域和平滑區(qū)域都進(jìn)行差值計算來生成差值直方圖的方法。Mathpati等[11]提出了使用基于中止濾波器的動態(tài)預(yù)測誤差直方圖嵌入水印信息,能夠更加靈活的選取嵌入位。針對溢出問題,Lee等[12]提出了誤差預(yù)測補(bǔ)償?shù)姆椒?,通過相鄰像素來生成差值直方圖。

      由于可逆水印算法比較復(fù)雜,為了在保持圖像視覺效果的前提下進(jìn)一步簡化算法復(fù)雜程度,精簡水印嵌入和提取步驟,并且在差值直方圖算法中增加水印的嵌入容量,本研究提出了基于分塊預(yù)測的差值直方圖平移的可逆水印算法,既可以增加嵌入容量也能保證鄰域預(yù)測的精確度。實驗結(jié)果表明,本算法的峰值信噪比(peak signal noise ratio,PSNR)值比文獻(xiàn)[9]高,視覺效果好。

      1 基于分塊預(yù)測的差值直方圖平移的可逆水印算法思想

      本研究提出一種基于分塊預(yù)測的差值直方圖平移的可逆水印算法,對比傳統(tǒng)的選取3×3的分塊,使用周圍8個像素對中心像素進(jìn)行預(yù)測,提高可嵌入的像素點的個數(shù),從而增加一些嵌入容量;相對于直接采用直方圖平移的方式,可以提高水印直方圖的陡峭性,突出峰值點像素的個數(shù),避免像因素值分布均勻而導(dǎo)致直方圖平移嵌入水印容量少的問題;采用差值直方圖解決直方圖平移的上限溢出問題并能提高PSNR值,使含水印圖像的視覺效果提高。算法的基本原理是根據(jù)圖像的平滑度做出分塊預(yù)測,將載體圖像進(jìn)行4×4分塊,然后分塊為4個像素一組,最后在分塊內(nèi)實施預(yù)測差值直方圖平移實現(xiàn)水印嵌入。

      2 基于分塊預(yù)測的差值直方圖平移的可逆水印算法過程

      設(shè)原圖像為M×N的灰度圖像,本節(jié)從圖像分塊、水印嵌入、水印提取和圖像恢復(fù)及溢出處理等四個方面說明本研究算法的具體過程。

      2.1 圖像分塊

      1) 將原圖像劃分成4×4的圖像塊,記為Bk,k=1,2,3…[M/4]×[N/4],如圖1(a)所示;對圖像進(jìn)行4×4分塊后可能導(dǎo)致最后的行(列)剩余一些像素值,當(dāng)剩余3行(列)時采用圖1(b)分塊方式的前3行(列)進(jìn)行處理;剩余兩行(列)時用圖2方式的前兩行(列)進(jìn)行處理;當(dāng)剩余一行(列)時舍棄最后一行(列)像素值。

      圖1 分塊方式Fig.1 Blocking mode

      (1)

      (2)

      6) 根據(jù)計算可以得到一幅差值直方圖,之所以選取差值直方圖,是因為差值直方圖在對其進(jìn)行平移的時候,不用像普通的圖像直方圖一樣,考慮直方圖中像素值的溢出問題,嵌入的水印中不用添加附加信息,以減小算法復(fù)雜度。根據(jù)計算,大部分峰值點是0,為了減少算法復(fù)雜度,直接選取0值點作為嵌入點,使用直方圖平移,把像素值大于0的點向大于0的方向平移一個單位,選取Lena圖像顯示直方圖平移,為了效果明顯,將像素值大于150的像素點右移5位,如圖2、3所示。

      7) 根據(jù)差值直方圖判斷嵌入容量,選取大小適合的水印圖片,進(jìn)入水印嵌入過程。

      2.2 水印嵌入

      設(shè)圖像大小為M×N,其灰度值為I(i,j) (0≤I(i,j)≤255),把水印圖像轉(zhuǎn)換為水印序列W,選取64×64的二值水印圖片,將圖像轉(zhuǎn)化為1×4 096的水印序列,嵌入水印后的圖像像素值用IW(i,j)表示,詳細(xì)步驟如圖4所示。

      圖2 Lena圖像的直方圖平移圖Fig.2 Histogram shifting of Lena

      圖3 Lena圖像右移5位直方圖平移圖Fig.3 The right by a five-bit histogram shifting of Lena

      圖4 水印嵌入流程圖 Fig.4 Watermark embedding flow chart

      水印嵌入具體過程如下:

      1) 對原圖像按照圖1(a)、1(b)的方式進(jìn)行分塊處理,分塊后就可以知道原圖像的嵌入點;

      2) 然后根據(jù)公式(1)、公式(2)對分塊后的像素塊進(jìn)行計算求出差值,生成差值直方圖;

      3) 對于差值直方圖中像素值大于0的部分整體向右平移一個單位,這樣在差值直方圖像素值為1的位置上就會留出空白;

      4) 從第一個分塊開始嵌入水印,判斷嵌入點的差值是否為零,差值為零的嵌入水印,不為零的繼續(xù)對分塊內(nèi)的第二個嵌入點進(jìn)行判斷,對4×4分塊內(nèi)的4個點依次判斷,完成后,繼續(xù)對下一個分塊進(jìn)行上述過程,直至所有分塊處理完畢。公式如下所示:

      (3)

      5) 對水印圖像進(jìn)行處理,把二值水印圖像做成水印序列用于嵌入,根據(jù)水印圖像的大小設(shè)置一個水印嵌入的終止值,此終止值就是水印圖片的大小,例如64×64的水印圖片,終止值就是4 096,當(dāng)可嵌入水印的像素點即差值為0的點達(dá)到4 096時,停止嵌入。

      2.3 水印提取和圖像恢復(fù)

      水印從圖像中被提取后,再經(jīng)過下面步驟就能恢復(fù)出原圖像。

      1) 對嵌入水印后的圖像進(jìn)行分塊,分塊方式仍是按照圖1(a)、1(b)的方式進(jìn)行;

      3) 利用差值生成一個差值直方圖,因為是在差值為0的時候水印嵌入,故差值為1說明嵌入的水印值為1;然后同嵌入水印的順序一樣,從第一個分塊開始進(jìn)行水印提取,對每個嵌入點進(jìn)行判斷,若差值為1,說明嵌入的水印值為1,提取1;若差值為0,說明嵌入的水印值為0,提取0。然后繼續(xù)對分塊內(nèi)的第二個嵌入點進(jìn)行判斷,對4×4分塊內(nèi)的4個點依次判斷完成后,繼續(xù)對下一個分塊進(jìn)行上述過程,直至所有分塊處理完畢。水印提取流程如圖5所示。

      圖5 水印提取流程圖 Fig.5 Watermark extraction flow chart

      4) 因為水印嵌入時對差值直方圖大于0的像素向右平移了一個單位,使得在嵌入水印前,像素值為1 的像素點數(shù)為0,所以提取水印時對得到的差值進(jìn)行判斷,如果得到的差值點為0,說明嵌入的水印值為0,差值為1說明嵌入的水印值為1。公式如下所示:

      (4)

      5) 提取水印后,對圖像進(jìn)行恢復(fù),把差值直方圖中差值大于1的像素點向左平移一位,得到原圖像。

      2.4 溢出處理

      普通的直方圖右移要考慮像素值為255的像素值怎么處理,但是差值直方圖不需考慮移位時的溢出。利用差值直方圖在原本像素上嵌入水印時,若像素值是255,則該像素不嵌入水印,因為嵌入的水印值為1的話就會產(chǎn)生溢出;下限0不存在溢出現(xiàn)象,故可嵌入的像素值范圍為[0,255],水印嵌入的判斷公式為:

      (5)

      同理在提取水印時,對像素值是255的像素不處理,得到水印提取的判斷公式:

      (6)

      圖6 水印圖像Fig.6 Watermark image

      3 實驗結(jié)果和分析

      3.1 實驗過程

      為了驗證本方案的性能,選取了 Lena、Boat、Peppers、Lake、Couple和Plane 6幅較為典型的大小為512×512的8-bit灰度圖像進(jìn)行實驗。水印信息選用64×64的水印。圖 6 給出了一幅大小為64×64的二值圖像作為水印,相當(dāng)于大小 4 096 bits 的二進(jìn)制序列。

      選取的6幅原圖像見圖7。

      圖7 6幅原圖像Fig.7 Six original images

      對上述6幅圖像進(jìn)行分塊處理后,利用公式(1)、(2)得到每一副圖像的差值直方圖,如圖8所示。

      圖8 6幅圖像分塊后的差值直方圖Fig.8 Difference histogram of six images after block

      根據(jù)得到的差值直方圖,使用直方圖平移,把像素值大于0的點向大于0的方向平移一個單位,然后在0值點嵌入水印,得到嵌入水印后的差值直方圖如圖9所示。

      圖9 嵌入水印后的6幅圖像差值直方圖Fig.9 Six image difference histograms after embedding watermark

      根據(jù)公式(8)對圖像進(jìn)行水印的嵌入,嵌入后的6幅圖像如圖10所示:

      圖10 6幅嵌入水印后的圖像Fig.10 Six watermarked images

      對嵌入水印圖像進(jìn)行水印提取和圖像恢復(fù)后的圖像如圖11所示。

      圖11 水印提取后的6幅圖像Fig.11 Six images after watermark extraction

      3.2 實驗結(jié)果與分析

      從PSNR和最大嵌入容量兩方面來評估算法的性能。PSNR 值越高說明圖像的穩(wěn)健性越好,失真越少,越能夠反映圖像的可視效果,計算公式為:

      (7)

      其中均方誤差

      (8)

      表1顯示了Lena、Boat、Lake、Peppers、Couple和Plane 6幅圖像在嵌入大小為64×64的水印圖像時的PSNR結(jié)果圖和最大嵌入容量。

      表1 6幅圖像的嵌入容量及嵌入圖7水印的PSNR對比結(jié)果Tab.1 embedding capacity and PSNR of six images’ comparison results of watermark embedded in Fig.7

      通常PSNR值的普遍基準(zhǔn)在30 dB,30 dB以下的圖像劣化較為明顯,在50 dB以上則表明效果良好,而表1中本文算法的PSNR的值均達(dá)56 dB以上,說明可視效果很好。一般的空域算法的嵌入量主要與圖像的平滑度有關(guān),圖像越平滑嵌入的容量越大,故整體趨于平滑的圖像,可以嵌入更多的水印。

      圖12 本文算法中6幅圖像的PSNR值對比Fig.12 Comparison of PSNR values of six images in the algorithm

      圖13 Lena在不同算法下嵌入率和PSNR對比Fig.13 Comparison of Lena images in different algorithms

      作用于6幅圖像的PSNR值如圖12,由圖可見6幅圖像隨著嵌入水印大小的增加,圖像的PSNR值逐漸減少,但是減少的幅度不大。從表1和圖12可以看出,在嵌入圖7水印后,使用本算法嵌入水印后的圖像PSNR總體大于56 dB,達(dá)到很好的視覺效果,保證了水印的不可見性和圖像的效果。

      使用Lena圖像將本方法與Ni[2]和Zheng[9]的算法進(jìn)行對比(如圖13),可見在嵌入率偏低的情況下,本算法的PSNR值在56 dB以上,而其他兩個算法的PSNR值都在55 dB以下,提出的可逆水印算法的圖像可視效果高于其他兩種算法。

      4 結(jié)語

      基于直方圖平移和差分直方圖,提出了一種基于分塊預(yù)測的差值直方圖平移的可逆水印算法,對于灰度圖像而言,實現(xiàn)比較簡單,比以八鄰域作為預(yù)測的標(biāo)準(zhǔn)嵌入水印算法的容量高,但總體上水印的嵌入容量比較少,水印的嵌入和提取簡單易懂,且PSNR值都在56 dB以上。通過對最大像素值255的不嵌入來解決像素的溢出問題;本算法在嵌入水印信息時,選擇差值直方圖0值點進(jìn)行嵌入,減少了一定的嵌入量。本方法屬于完全脆弱水印,不具有抗攻擊性。水印的抗攻擊性和嵌入容量的提升是下一步研究的主要方向。

      猜你喜歡
      分塊差值直方圖
      統(tǒng)計頻率分布直方圖的備考全攻略
      符合差分隱私的流數(shù)據(jù)統(tǒng)計直方圖發(fā)布
      差值法巧求剛體轉(zhuǎn)動慣量
      分塊矩陣在線性代數(shù)中的應(yīng)用
      用直方圖控制畫面影調(diào)
      枳殼及其炮制品色差值與化學(xué)成分的相關(guān)性
      中成藥(2017年6期)2017-06-13 07:30:35
      反三角分塊矩陣Drazin逆新的表示
      基于自適應(yīng)中值濾波的分塊壓縮感知人臉識別
      基于多分辨率半邊的分塊LOD模型無縫表達(dá)
      基于直方圖平移和互補(bǔ)嵌入的可逆水印方案
      绍兴县| 阿拉善盟| 天镇县| 桃园县| 抚松县| 芦山县| 芒康县| 江源县| 汾阳市| 资中县| 邢台县| 桐城市| 航空| 宿迁市| 海林市| 营口市| 南宁市| 弥勒县| 黑龙江省| 西和县| 嵊州市| 桦甸市| 锡林郭勒盟| 岳西县| 霍城县| 鹤山市| 桐乡市| 红安县| 漾濞| 台南县| 辽阳县| 平和县| 房山区| 宜兰市| 盖州市| 云霄县| 白河县| 洛扎县| 东源县| 汨罗市| 南昌市|