• 
    

    
    

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

      ?

      基于直方圖平移的圖像二次分塊可逆數(shù)據(jù)隱藏方法

      2015-12-25 14:28:08陳俊杰魯康
      軟件 2015年7期

      陳俊杰 魯康

      摘要:由Ni提出的對(duì)像素進(jìn)行直方圖平移進(jìn)行可逆數(shù)據(jù)隱藏,一方面在單峰值或雙峰值的情況下嵌入容量不夠高,另一方面在嵌入數(shù)據(jù)之后對(duì)于圖像的保真度也不夠好。在此,基于直方圖平移的方式,提出一種改進(jìn)算法,將圖像進(jìn)行二次劃分,增加像素峰值點(diǎn),提升圖片的峰值信噪比。實(shí)驗(yàn)結(jié)果表明,該算法不僅可以實(shí)現(xiàn)可逆數(shù)據(jù)隱藏,而且與Ni算法相比,既提升了嵌入容量,也使隱藏后的圖像失真更小。

      關(guān)鍵詞:可逆數(shù)據(jù)隱藏;直方圖平移;像素分塊;雙向直方圖平移;區(qū)域再分塊

      中圖分類(lèi)號(hào):TP309

      文獻(xiàn)標(biāo)識(shí)碼:A

      DOI:10.3969/j.issn.1003-6970.2015.07.023

      0 引言

      可逆數(shù)據(jù)隱藏是指在正確提取數(shù)據(jù)后還能無(wú)損地恢復(fù)原始圖像,通常要滿(mǎn)足隱蔽性好和容量高兩個(gè)特性,被廣泛應(yīng)用于醫(yī)學(xué)、軍事、司法、政務(wù)等領(lǐng)域。當(dāng)前比較受關(guān)注的算法是2006年Ni等人提出的基于直方圖平移的方法。該算法是基于圖像的直方圖來(lái)展開(kāi)。近年來(lái)對(duì)于該算法的改進(jìn),大多追求容量的最大化。其改進(jìn)思路主要有三類(lèi):一是通過(guò)各類(lèi)預(yù)測(cè)算法建立圖像預(yù)測(cè)誤差直方圖,產(chǎn)生高峰值。二是通過(guò)改變直方圖位移水平,增加載荷。三是在圖像中進(jìn)行多層隱藏,得到多峰值。四是通過(guò)一種自適應(yīng)的算法讓載密信息根據(jù)圖像特征來(lái)動(dòng)態(tài)嵌入。在實(shí)際應(yīng)用中,對(duì)于一些敏感的圖像,如醫(yī)學(xué)圖像、軍事圖像等,減少圖像失真遠(yuǎn)比增加負(fù)載更重要。

      本文的研究就是從提高嵌入容量和降低圖像失真的角度對(duì)Ni算法進(jìn)行改進(jìn),通過(guò)對(duì)圖像的二次劃分,第一次劃分將圖像劃分成若干個(gè)大的區(qū)域,在這些區(qū)域中分別計(jì)算其峰值,從而得到較多的峰值點(diǎn),第二次劃分,在第一次劃分的若干個(gè)大區(qū)域中,再一次將區(qū)域像素分成很多小像素塊,若小像素塊中存在當(dāng)前區(qū)域像素的峰值點(diǎn),就進(jìn)行直方圖平移,嵌人數(shù)據(jù),若不存在,就不改變?cè)撓袼貕K,以此來(lái)降低圖像失真。另外,為了盡量提升嵌入容量,采用雙向直方圖平移方法,最終可以實(shí)現(xiàn)低失真高負(fù)載的要求。

      1 直方圖平移可逆數(shù)據(jù)隱藏

      由Ni提出直方圖平移可逆數(shù)據(jù)隱藏算法描述如下:

      在圖1中,左側(cè)為原始圖像,右側(cè)為該圖像的灰度直方圖。此灰度直方圖,中存在峰值最高的像素點(diǎn),依賴(lài)此像素點(diǎn)進(jìn)行數(shù)據(jù)嵌入。具體方法是尋找峰值點(diǎn)A右側(cè)最近的零點(diǎn)灰度的像素值B,在峰值點(diǎn)A和零點(diǎn)B之間的所有像素向右平移一位,這樣峰值點(diǎn)右側(cè)的第一個(gè)像素點(diǎn)即A+l為0。遍歷圖像的像素點(diǎn),當(dāng)遇到像素灰度直方圖中的峰值點(diǎn)A時(shí),如果嵌入的比特流是0,則保持不變,如果嵌入的比特流是1,則將峰值點(diǎn)A像素+1,則灰度直方圖中的峰值點(diǎn)右側(cè)第一個(gè)像素的數(shù)量即(A+1)增加1;一直到所有峰值點(diǎn)嵌入完成。提取數(shù)據(jù)時(shí),遍歷所有像素點(diǎn),當(dāng)遇到像素點(diǎn)A時(shí),提取“0”比特,當(dāng)遇到(A+1)時(shí)候,提取“1”比特,然后將A+1像素值減1,還原成A像素。當(dāng)數(shù)據(jù)提取完成之后,將A點(diǎn)和B點(diǎn)之間的像素值減1,即可還原原始圖像,可以看出Ni算法的負(fù)載量是取決于原始圖像峰值點(diǎn)的個(gè)數(shù)的。

      2 二次分塊嵌入算法描述和實(shí)現(xiàn)

      2.1 算法描述

      判斷嵌入算法的好壞在于嵌入容量和圖像的峰值信噪比。本文提出一種基于灰度直方圖平移的信息隱藏可逆算法能較大提升嵌入容量和提高嵌入之后的峰值信噪比。

      基于直方圖平移的信息隱藏嵌入容量的關(guān)鍵在于峰值點(diǎn)的個(gè)數(shù),以512*512*8的灰度圖像為例,在圖1所示的lena圖。通過(guò)Ni算法的描述,經(jīng)過(guò)實(shí)驗(yàn)數(shù)據(jù)得到像素峰值點(diǎn)的個(gè)數(shù)為2714.

      首先,提升嵌入容量。為了得到更多的峰值點(diǎn),將512*512*8圖像分為64個(gè)區(qū)域,在64個(gè)區(qū)域中分別都有各自的灰度直方圖,統(tǒng)計(jì)每個(gè)區(qū)域的峰值點(diǎn)和零點(diǎn),當(dāng)嵌入圖像時(shí),判斷當(dāng)前所在區(qū)域,根據(jù)當(dāng)前區(qū)域的峰值點(diǎn)來(lái)進(jìn)行直方圖平移嵌入,實(shí)驗(yàn)數(shù)據(jù)得到圖1中的lena圖,經(jīng)過(guò)第一次劃分的64個(gè)區(qū)域之后,峰值點(diǎn)的總和達(dá)到10596個(gè)峰值點(diǎn),大大提升了峰值點(diǎn)的個(gè)數(shù),極有利于提升嵌入容量。

      其次,降低圖像的失真率。通過(guò)提升峰值信噪比來(lái)降低圖像的失真率。峰值信噪比的計(jì)算公式如下。

      其中numS是平移點(diǎn)的個(gè)數(shù),numB為隱藏比特流中1的個(gè)數(shù)。numS和numB越小,PSNR就越大,圖像質(zhì)量越好。

      在第一次將圖片進(jìn)行劃分之后峰值點(diǎn)增多,則會(huì)造成直方圖平移的數(shù)量增多,那么會(huì)造成圖像的失真率較高。為保證圖像的質(zhì)量,將第一次劃分的每一個(gè)區(qū)域中,再次將像素進(jìn)行劃分,第二次劃分則將像素分塊的范圍變小,比如分成4*4的16個(gè)像素為一個(gè)塊。在該分塊中,判斷是否存在分塊所在的區(qū)域的灰度直方圖的峰值點(diǎn),若存在,則將該分塊像素進(jìn)行直方圖平移,嵌人數(shù)據(jù),若不存在,則不嵌入數(shù)據(jù)。這樣能造成不必要的像素點(diǎn)平移,從而提高嵌入數(shù)據(jù)后的峰值信噪比,保證圖像質(zhì)量。實(shí)驗(yàn)數(shù)據(jù)證明,這種二次劃分的方法,既能提高嵌入容量,也能提高峰值信噪比。

      2.2 嵌入算法實(shí)現(xiàn)過(guò)程

      以512×512×8的圖片為例。嵌入過(guò)程如下所述:

      1)將圖片分成64個(gè)區(qū)域,對(duì)應(yīng)為64×64×8的圖塊,則一共有64個(gè)這樣的圖塊。

      2)保存每個(gè)圖塊的峰值點(diǎn)Ai,用來(lái)嵌人數(shù)據(jù)。

      3)在每個(gè)64×64×8的圖塊中,再次將該圖塊劃分成64個(gè)4x4x8的小塊。

      4)在第一次劃分的64個(gè)圖塊,每個(gè)圖塊中,以4x4的方塊為單位進(jìn)行遍歷,判斷4x4的方塊是否存在該像素值等于Ai的像素點(diǎn)。 嵌入算法如下:

      i)若該4x4的方塊存在1個(gè)Ai的像素點(diǎn),則僅僅平移該區(qū)域直方圖,不進(jìn)行數(shù)據(jù)嵌入。

      ii)若該4x4的方塊不存在等于Ai的像素點(diǎn),則不平移該區(qū)域直方圖。

      iii)若該4x4的方塊存在n個(gè)等于Ai的像素點(diǎn)(n>1),則將直方圖進(jìn)行平移,若在前n.1個(gè)等于Ai的像素點(diǎn)中有嵌入0的峰值點(diǎn),則最后等于Ai的像素可以嵌入0或1;若前n-l個(gè)等于Ai的像素中沒(méi)有嵌入0的峰值點(diǎn),則保留最后一個(gè)等于Ai的像素不嵌入。若嵌入了1,則嵌入后分塊中會(huì)存在Ai+l的像素點(diǎn);若分塊中都嵌入0,則嵌入后分塊中像素值等于Ai的像素的個(gè)數(shù)大于1.

      5)遍歷第一次劃分的64個(gè)圖塊,每個(gè)圖塊依次按照4)中的嵌入方法進(jìn)行嵌入。

      2.3 提取算法實(shí)現(xiàn)過(guò)程

      提取算法是嵌入算法的逆過(guò)程。

      1)將圖片分成64個(gè)區(qū)域,對(duì)應(yīng)為64×64×8的圖塊,則一共有64個(gè)這樣的圖塊。

      2)根據(jù)嵌入時(shí)的保存下來(lái)的峰值點(diǎn)(Ai)集合,來(lái)遍歷這64個(gè)圖塊。

      3)在每個(gè)64×64×8的圖塊中,再次將該圖塊劃分成64個(gè)4x4x8的小塊。

      在第一次劃分的64個(gè)圖塊,每個(gè)圖塊中,以4x4的分塊為單位進(jìn)行遍歷,判斷4x4的方塊是否存在等于Ai的像素點(diǎn)。描述如下:

      i)若該4x4的分塊存在1個(gè)等于Ai的像素點(diǎn),則反向平移該區(qū)域直方圖,修改該區(qū)域的像素。

      ii)若該4x4的分塊不存在等于Ai的像素,則說(shuō)明當(dāng)前的分塊在嵌入的時(shí)候并沒(méi)有進(jìn)行像素修改,不需要平移像素。

      iii)若該4x4分塊中存在2個(gè)以上的等于Ai的像素點(diǎn),或者該分塊中存在1個(gè)等于Ai的像素點(diǎn)且在這個(gè)像素點(diǎn)之后的遍歷存在Ai+l的像素點(diǎn),則遍歷分塊,在等于Ai的像素點(diǎn)上提取0,等于Ai+l的像素點(diǎn)提取1,然后反向平移直方圖,恢復(fù)原始像素;若該分塊中只存在一個(gè)Ai像素點(diǎn),且是遍歷該點(diǎn)之前存在Ai+l的像素點(diǎn),遍歷該點(diǎn)之后不存在Ai+l的像素點(diǎn),則將分塊中峰值點(diǎn)右側(cè)的像素點(diǎn)提取1,平移其他像素。

      5)對(duì)每一個(gè)64×64×8的分塊執(zhí)行4)中的步驟,完成所有數(shù)據(jù)的提取。

      3 實(shí)驗(yàn)結(jié)果

      實(shí)驗(yàn)采用visual studi0 2010進(jìn)行實(shí)驗(yàn)仿真,從USC-SIPI圖像庫(kù)中選擇了若干圖片進(jìn)行測(cè)試。嵌人數(shù)據(jù)采用雙向直方圖嵌入,且對(duì)比數(shù)據(jù)都是采用雙向直方圖嵌入。原始圖像如圖2所示。嵌入了隱藏?cái)?shù)據(jù)之后的圖像如圖3所示。

      表1中表示了與Ni算法和文獻(xiàn)9的實(shí)驗(yàn)數(shù)據(jù)的嵌入容量對(duì)比。

      表2中表明了與Ni算法和文獻(xiàn)9的實(shí)驗(yàn)數(shù)據(jù)詳細(xì)的峰值信噪比對(duì)比。

      以上對(duì)比數(shù)據(jù)均采用雙向直方圖平移算法進(jìn)行測(cè)試。從表1中可以看出,因?yàn)榉逯迭c(diǎn)數(shù)量的增加,嵌入容量有明顯的提高。

      從表2中可以看出,嵌人數(shù)據(jù)之后,峰值信噪比也有明顯的提高,即圖片的質(zhì)量會(huì)更好。

      4 結(jié)論

      本文對(duì)Ni的直方圖平移嵌入數(shù)據(jù)的算法進(jìn)行了改進(jìn),提出了一種基于像素直方圖平移的可逆信息隱藏算法。算法通過(guò)第一次區(qū)域劃分,提升了像素峰值點(diǎn),從而提高嵌入容量;其次對(duì)每個(gè)區(qū)域進(jìn)行了第二次像素分塊,盡可能的減少了像素直方圖平移的數(shù)量從而增加圖片質(zhì)量。綜述,該方案是在嵌入容量和圖像質(zhì)量方面都是有所提高的。

      峨山| 广安市| 侯马市| 时尚| 张掖市| 南华县| 崇州市| 仁化县| 英山县| 临沂市| 淮北市| 凤阳县| 枣强县| 乌什县| 扎赉特旗| 镇江市| 合肥市| 沽源县| 仁寿县| 临汾市| 大庆市| 英吉沙县| 鄂温| 特克斯县| 鞍山市| 浪卡子县| 宿松县| 瓮安县| 景洪市| 雷波县| 荣昌县| 泽库县| 榆社县| 黄石市| 玉树县| 洮南市| 青岛市| 电白县| 金堂县| 城市| 双城市|