国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種新型漢明碼混合變換及在圖像信息隱藏中的應(yīng)用

2018-06-17 07:56李亞峰鄭紫微楊任爾葉超勇陳貞佐
移動(dòng)通信 2018年4期
關(guān)鍵詞:圖像

李亞峰 鄭紫微 楊任爾 葉超勇 陳貞佐

【摘 要】為保證在數(shù)字媒體隱藏信息前后圖像的直方圖保持不變,提出了一種新的漢明碼混合變換算法,即漢明碼結(jié)合直方圖保持的信息隱藏算法。該算法先利用二元漢明碼嵌入方案,確定原圖像的改寫位并進(jìn)行改寫翻轉(zhuǎn),成功嵌入秘密信息。然后根據(jù)盈虧補(bǔ)償平衡點(diǎn)的思想,對每個(gè)嵌入的比特秘密信息,都進(jìn)行相鄰位直方圖數(shù)據(jù)的檢測并補(bǔ)償,使信息隱藏前后圖像的直方圖改變保持最小值。通過對密寫分析的結(jié)果進(jìn)行對比,表明該種算法具有良好的圖像信息隱藏性能。

【關(guān)鍵詞】信息隱藏;漢明碼;圖像;混合變換

A Novel Hamming Code Mixed Transform and its Application in

Image Information Hiding

LI Yafeng1,2, ZHENG Ziwei2, YANG Rener2, YE Chaoyong2, CHEN Zhenzuo2

[Abstract] In order to keep the histogram of the image unchanged before and after it is written, a novel hamming code mixed transform is proposed, which is an information hiding algorithm based on hamming code combined with histogram-preserving. First, the embedded binary hamming code is used by the algorithm to determine the reposition of the original image, reverse it and successfully embed the secret information. Then, according to the idea of the balance between profit and loss compensation, it is adjacent to a histogram data detection and compensation for bits of each embedded secret information to keep the minimum value for the image histogram change before and after the steganography. The experimental results show that the algorithm has good performance in image information hiding.

[Key words]information hiding; hamming code; image; mixed transform

1 引言

信息隱藏(Information Hiding)是在不對載體信號產(chǎn)生過分影響的條件下,將額外的信息嵌入到數(shù)字媒體當(dāng)中,以實(shí)現(xiàn)版權(quán)保護(hù)、隱蔽通信等功能[l]。隱寫算法研究的主要目的是通過秘密信息植入,使秘密信息可以在公開的數(shù)字媒體中實(shí)現(xiàn)隱蔽通信。

目前隱寫算法研究的一個(gè)重要問題是如何實(shí)現(xiàn)對現(xiàn)有載體作微量改動(dòng)實(shí)現(xiàn)大量信息嵌入。通常在相同信息嵌入率的情況下,載體被修改的越少,從中檢出隱藏信息的可能性越小,信息安全性越高。信息隱藏的目標(biāo)是在獲得較大隱寫容量的同時(shí)對載體進(jìn)行較少的修改。糾錯(cuò)碼的引入在信息隱藏性能提升方面取得了較好的效果[2]。

1998年R Crandall提出了“Matrix Encoding”算法[3],該算法通過修改n個(gè)載體像素中的r個(gè)最低位來嵌入數(shù)據(jù),提高了嵌入效率,但總體容量較小。2007年Zhang等人基于“Matrix Encoding”算法,提出了“Hamming+1”算法[4],該算法用“Matrix Encoding”算法嵌入前k比特?cái)?shù)據(jù),然后用前n個(gè)像素的次低位與第(n+1)個(gè)像素的最低位嵌入第(k+1)比特?cái)?shù)據(jù),實(shí)現(xiàn)了嵌入容量的小幅提升。文獻(xiàn)[5]通過將載體圖像分割成矩陣塊,重復(fù)利用載體矩陣塊像素,結(jié)合濕紙碼和漢明碼提出了一種新的隱寫算法,其隱藏效率僅在某一范圍內(nèi)高于PPC和F5算法。文獻(xiàn)[6]通過量化方式實(shí)現(xiàn)水印嵌入,提出了一種基于小波域的均值量化音頻水印算法。文獻(xiàn)[7]提出一種具有自適應(yīng)嵌入和盲提取特性的離散余弦變換和漢明碼相結(jié)合的數(shù)字圖像水印算法。

對于目前關(guān)于漢明碼的隱寫算法,大部分是從嵌入效率和嵌入容量方面進(jìn)行分析比較的[8],對于經(jīng)漢明碼隱寫后圖像的直方圖是否能夠保持以及保持的程度如何,并沒有具體的算法提出。

本文基于漢明碼算法和圖像直方圖保持特性,提出了一種保持直方圖特性的漢明碼隱寫方法。該方法將漢明碼嵌入與直方圖保持算法相結(jié)合,使通過數(shù)字隱寫后的直方圖特性基本保持不變,使攻擊者難以判斷該圖像是否經(jīng)過隱寫,因此這種隱寫算法的安全性較原始方法有了很大提高。大量實(shí)驗(yàn)表明這種算法在進(jìn)行圖像隱寫分析時(shí)表現(xiàn)出了良好的性能。

2 漢明碼

漢明碼是一種由Bell實(shí)驗(yàn)室的Hamming發(fā)明的錯(cuò)誤校驗(yàn)碼碼集,是效率最高的具有糾正一位錯(cuò)碼能力的分組碼[9-10]。與其他的錯(cuò)誤校驗(yàn)碼類似,漢明碼通過容量的增加,并采用了奇偶校驗(yàn)位,實(shí)現(xiàn)了數(shù)據(jù)的有效性驗(yàn)證。漢明碼還可以發(fā)現(xiàn)錯(cuò)誤位置并對其進(jìn)行改正,它滿足:

2r-n>1 (1)

其中,n表述碼元總位數(shù),r表示監(jiān)督碼元位數(shù),構(gòu)造一個(gè)k(信息位)=4的漢明碼。根據(jù)(1)式,可得r>3。當(dāng)r=3,則n=7。

用a6、a5、a4、a3表示信息位,則可得到a2、a1、a0三位監(jiān)督位:

(2)

由7個(gè)碼元按照下列方法運(yùn)算得到校正子:

(3)

不難看出:

當(dāng)a6、a5、a4或a2出現(xiàn)錯(cuò)誤時(shí),S1=1;

當(dāng)a6、a5、a3或a1出現(xiàn)錯(cuò)誤時(shí),S2=1;

當(dāng)a6、a4、a1或a0出現(xiàn)錯(cuò)誤時(shí),S3=1;

其他情況下校正子為0。

校正子與錯(cuò)碼位置存在如表1所示的對應(yīng)關(guān)系。對其進(jìn)行計(jì)算獲得(7, 4)碼的全部碼字,如表2所示。

表1 校正子與錯(cuò)誤位置的對應(yīng)關(guān)系

S1S2S3 錯(cuò)誤位置

000 無錯(cuò)

001 a0

010 a1

011 a2

100 a3

101 a4

110 a5

111 a6

(7, 4)碼具有糾正1個(gè)錯(cuò)誤的能力,當(dāng)7位信息位時(shí),監(jiān)督碼需要4位(24>7+4+1),當(dāng)64位信息位時(shí),監(jiān)督碼需要7位(27>64+7+1)。

3 保持直方圖不變的信息隱藏算法研究

基于以上思想,本文構(gòu)造出了漢明碼嵌入和直方圖保持相結(jié)合的算法。如圖1所示,秘密信息經(jīng)過預(yù)處理,與經(jīng)過預(yù)處理的載體圖像和生成矩陣進(jìn)行運(yùn)算,如果等式成立,則直接把秘密信息嵌入;如果結(jié)果不成立,則需要在載體圖像中找到位置和對應(yīng)值,并進(jìn)行修改,最后結(jié)合直方圖保持算法,嵌入信息。最終秘密信息的提取,可以通過對矩陣進(jìn)行逆運(yùn)算得到。

圖1 保持直方圖不變的信息隱藏算法流程圖

下面詳細(xì)分析該算法的實(shí)施步驟。

3.1 秘密信息的嵌入

(1)圖像及秘密信息的分塊處理

1)步驟1:定義數(shù)據(jù)

以大小I=512×512的圖像為例,n為圖像中的像素,取值范圍為(0~255)。令cimage為原來的圖像,simage為隱藏后的圖像,bimage為分塊后的圖像,m為秘密信息,bm為分塊后的秘密信息。

2)步驟2:圖像的分塊

以(7, 4)漢明碼來分析,基于漢明碼的編碼規(guī)則,令原始圖像cimage為每7個(gè)元素為一組進(jìn)行分塊,則隱藏后的圖像simage也同樣按照該規(guī)律分組,即:

simage[0]-simage[6] simage[7]-simage[13] simage[14]-simage[20] ……

令:bimage為分塊后的圖像,則:

(4)

3)步驟3:隱藏信息的分塊

m為每三個(gè)元素為一組進(jìn)行分塊,即:

m[0]-m[2] m[3]-m[5] ……

分塊后的秘密信息為bm:

(5)

4)步驟4:把秘密信息bm插入到分塊后的圖像bimage中。

(2)秘密信息的嵌入

1)步驟1

主要討論采用基于(7, 4)漢明碼的方式插入信息。假設(shè)發(fā)送方要傳遞相對長度為ap=p/(2p-1),p≥0的秘密信息,即有p比特秘密數(shù)據(jù)m[0], …, m[p]須被嵌入到(2p-1)個(gè)像素中。此時(shí),發(fā)送者和接收者共享一個(gè)p(2p-1)的二進(jìn)制隨機(jī)矩陣H,矩陣H的列由長度為p的非零二進(jìn)制數(shù)構(gòu)成。在(7, 4)漢明碼中,p=3,此時(shí)矩陣H為:

(6)

根據(jù)以上分析,首先將分塊后的秘密信息bm,隱藏在圖像I中,得到隱藏秘密信息后的分塊圖像bimage。然后將分塊后的圖像bimage進(jìn)行二值化得到bj,再進(jìn)行矩陣乘法,得到:

使bm=Hbj,即=

(7)

其中,得到的列向量Hbj即為bj的伴隨式。

2)步驟2

根據(jù)公式(5)可以得出m',如果秘密信息m=m',則無需修改(bj0, bj1, bj2, bj3, bj4, bj5, bj6, bj7)。如果m不等于m',需要通過計(jì)算L=m'⊕m,遍歷標(biāo)準(zhǔn)矩陣的7列,在矩陣H中找到和向量L相同的位于第幾列的列向量,記下列序號t。此時(shí),t即為要改變的位置。然后將這一列對應(yīng)的二進(jìn)制比特流中相應(yīng)的那個(gè)像素的LSB翻轉(zhuǎn)。經(jīng)過修改,將產(chǎn)生一組新的二進(jìn)制比特流(bj0, bj1, bj2, bj3, bj4, bj5, bj6, bj7)',其中修改位t與原數(shù)列相比,經(jīng)過了翻轉(zhuǎn)。

下面用具體實(shí)例說明信息是如何嵌入的。給定一組載體像素值g=(21, 20, 25, 27, 23, 31, 29)'以及秘密消息m=(0, 0, 1)'。首先將像素值變?yōu)楸忍亓?,即取其二進(jìn)制,x=g mod 2(1, 0, 1, 1, 1, 1, 1)',之后計(jì)算伴隨式Hx=(0, 1, 0)',此時(shí)H如式(6)所示。然后在矩陣H中找到和向量Hx-m=(0, 1, 1)'相同的位于第三列的列向量。因此,如果要將消息m嵌入到本組載體數(shù)據(jù)中,需要將第三像素對應(yīng)的LSB反轉(zhuǎn)。在本例中,可以將g[3]由25改為24,也可以改為26,從而達(dá)到同樣的目的。

3.2 保持直方圖不變的信息隱藏算法

對于本文提出的直方圖保持的隱寫算法,是基于以上在確定了改寫位t的情況下,考慮采用什么樣的方法,盡可能地保持直方圖不變。主要是根據(jù)盈虧補(bǔ)償?shù)乃枷?,每嵌入一個(gè)比特的秘密信息,就進(jìn)行相鄰位的檢測補(bǔ)償,即采用平衡自適應(yīng)思想,把嵌入的每一步都進(jìn)行盈虧平衡操作。最終使隱寫后的直方圖與原圖像的直方圖改變保持最小值。也就是在上述實(shí)例中,本文提出了盈虧平衡的操作。

(1)步驟1

盈虧補(bǔ)償?shù)木唧w算法過程為:假設(shè)嵌入秘密信息的位置為t,此時(shí)的值為bimage[t]。令a=bimage[t],那么比較嵌入信息處左右兩個(gè)像素的頻率大小,即h(a-1)和h(a+1)的大小。如果h(a-1)>h(a+1),則要補(bǔ)償?shù)絟(a+1);反之,如果h(a-1)

(2)步驟2

如果嵌入的比特是相對特殊的位置,如是特殊的0和255兩個(gè)數(shù),那么處理的方法是單獨(dú)拿出來,做補(bǔ)償假設(shè)。

該方法通過對每個(gè)嵌入比特的秘密信息進(jìn)行遍歷并補(bǔ)償,使通過數(shù)字隱寫后的直方圖特性基本保持不變,攻擊者難以判斷該圖像是否經(jīng)過隱寫,直方圖失真參數(shù)也比沒有保持前小了很多。同時(shí)計(jì)算復(fù)雜度也很低,抵抗了常用的隱寫分析,達(dá)到了較好的隱寫效果。

3.3 秘密信息的提取

假設(shè)標(biāo)志位flag,根據(jù)公式(3)還原出m,依次檢測并給標(biāo)志位加1,即flag=flag+1,最終提取出秘密信息m。

3.4 載體圖像的實(shí)驗(yàn)結(jié)果分析

(1)直方圖失真分析

載體圖像與隱寫圖像的直方圖分別記作hc[n]與

hs[n] (n∈{0, 1, …, 255}),那么直方圖失真(Histogram

Distortion)定義為:

(8)

直方圖失真Dh表示載體圖像嵌入秘密信息后直方圖改變的情況,Dh越小,表示了隱寫系統(tǒng)的抗統(tǒng)計(jì)檢測性越好。

利用本文提出算法,分別對1號、2號、3號、4號圖進(jìn)行秘密信息的隱藏,其中,圖2為原載體圖像,圖3為隱藏了秘密信息后的圖像。

從以上2組圖中可以發(fā)現(xiàn),上下相對應(yīng)的兩幅圖像在主觀視覺上是分辨不出差異的,這說明該隱寫算法具有良好的視覺隱蔽性。

用本文提出的算法在主觀視覺上很難分別差異,通過對直方圖失真的分析,對以上4幅圖進(jìn)行直方圖相應(yīng)的算法比對。其中,算法LHA是傳統(tǒng)LSB隱寫的改進(jìn)算法,即采用直方圖補(bǔ)償算法對LSB隱寫后的直方圖完成修復(fù)[13]。而在秘密信息發(fā)送端,對隱藏的信息進(jìn)行DES加密,然后通過LSB隱寫術(shù)把加密后信息嵌入載體圖像的算法為D-LHA算法[14]。LHA算法不僅降低了對載體圖像的內(nèi)存需求,還平衡了秘密信息的二進(jìn)制流分布,增強(qiáng)了信息隱秘性。而D-LHA算法通過改變秘密信息的統(tǒng)計(jì)特性改善它與載體圖像最低位的匹配性能,從而提高了圖像隱寫術(shù)的抗檢測性能[13-14]。下面將以上兩種算法與Hanmming算法和本文提出的算法進(jìn)行比較,由結(jié)果可知,對于相同的圖像,本文提出的算法,直方圖失真參數(shù)Dh最小,即效果相對較好。幾種相關(guān)算法的直方圖失真參數(shù)比較如表3所示。

(2)大量圖像數(shù)據(jù)研究

基于Visual Studio 2013平臺對本文所提出的算法進(jìn)行比較。本文所使用的實(shí)驗(yàn)圖片(像)均來自標(biāo)準(zhǔn)的測試圖像庫,圖像大小為標(biāo)準(zhǔn)的512×512的灰度圖像。對標(biāo)準(zhǔn)測試圖庫中的84幅常用隱寫圖像進(jìn)行算法仿真,最終得到了大量有效數(shù)據(jù)。從中選取了較有代表性的10幅圖像,進(jìn)行了數(shù)據(jù)對比分析。數(shù)據(jù)分析記錄見表4,實(shí)驗(yàn)結(jié)果如圖4所示。

表4 漢明碼嵌入+直方圖保持算法前后直方圖失真參數(shù)比較

圖片序號 直方圖失真Dh

(7, 4)漢明碼嵌入 直方圖失真Dh

(7, 4)漢明碼嵌入

+直方圖保持算法

1 3 290 914

2 3 032 1 052

3 4 374 1 318

4 3 388 1 104

5 4 412 1 936

6 5 852 788

7 3 934 1 622

8 5 110 1 784

9 3 504 1 308

10 4 148 1 446

圖4 (7, 4)漢明碼嵌入結(jié)合直方圖保持算法直方圖失真對比

由圖4可以看出,單獨(dú)采用(7, 4)漢明碼嵌入的方法進(jìn)行信息隱藏,隱藏后圖像的直方圖失真Dh參數(shù)為3 000、4 000、5 000左右,而漢明碼嵌入與直方圖保持方法相結(jié)合后,直方圖失真Dh參數(shù)都能達(dá)到1 000左右,根據(jù)公式(6)說明Dh越小,隱寫系統(tǒng)的抗統(tǒng)計(jì)檢測性越好,系統(tǒng)越穩(wěn)定,安全性越高。仿真結(jié)果說明了漢明碼結(jié)合直方圖保持隱寫算法的有效性。

4 結(jié)論

本文提出了漢明碼嵌入結(jié)合直方圖保持的隱寫算法,對幾種有關(guān)直方圖保持的算法和(7, 4)漢明碼嵌入結(jié)合直方圖保持算法進(jìn)行了大量實(shí)驗(yàn)數(shù)據(jù)的仿真和對比,實(shí)踐證明,圖像在信息隱藏后的直方圖特性基本保持不變,使攻擊者難以判斷該圖像是否經(jīng)過隱寫。因此,該種隱寫算法在安全性、復(fù)雜度和性能方面有很大優(yōu)勢。

參考文獻(xiàn):

[1] R J Anderson, F A P Petiteolas. On the limits of steganography[J]. IEEE Journal Selected Areas in Communication, 1998,16(4): 474-481.

[2] Fridrich J, Soukal D. Matrix embedding for large payloads[J]. IEEE Transactions on Information Forensics and Security, 2006(3): 390-394.

[3] Crandall R. Some notes on steganography, Posted on steganography mailing list[EB/OL]. [2018-01-28]. http://os.inf.tu-dresden.de/westfeld/Crandall.pdf.

[4] Zhang W, Wang S, Zhang X. Improving embedding efficiency of covering codes for applications in stegmography[J]. IEEE Communications Letters, 2007,11(8): 680-682.

[5] 朱雪秀,劉九芬,張衛(wèi)明. 一種基于漢明碼和濕紙碼的隱寫算法[J]. 電子與信息學(xué)報(bào), 2010,32(1): 162-165.

[6] 佘芳,張國平,葛鏡,等. 漢明碼在數(shù)字音頻水印嵌入中的應(yīng)用[J]. 信息技術(shù), 2016(2): 64-67.

[7] 任克強(qiáng),張丹丹,吳帆. 融合DCT和漢明碼的自適應(yīng)魯棒圖像水印[J]. 光電工程, 2016,43(11): 54-61.

[8] Fridrich J. 數(shù)字媒體中的隱寫術(shù)-原理、算法和應(yīng)用[M]. 北京: 國防工業(yè)出版社, 2009.

[9] F J M Williams, N J Sloane. The Theory of Error-Correcting Codes North-Houard[Z]. Amsterdam, 1977.

[10] Wang Xing Yuan, Zhang Ji Ming. A novel image authentication and recovery algorithm based on chaos and Hamming code[J]. Acta Phys, 2014(2).

[11] Wanqi Li, Che Nian, Ren Jinlin, et al. Histogram-preserving stegnography using maximum flow algorithms[C]//2011 Second International Conference on Digital Manufacturing &Automation;, 2011: 590-593.

[12] G Nasif, R M Barron, R Balachandar, et al. DES evaluation of near-wake characteristics in a shallow flow[J]. Journal of Fluids and Structures, 2014,45(2): 153-163.

[13] Ren Keqiang, Zhang Dandan,Wu Fan. Adaptive Robust Image Watermarking Based on DCT and Hamming Code[J]. Opto-Electronic Engineering, 2016,43(11).

[14] J Fridrich, J Kodovsky. Rich models for steganalysis of digital images[J]. IEEE Transactions on Information Forensics and Security, 2012,7(3): 868-882.

猜你喜歡
圖像
改進(jìn)的LapSRN遙感圖像超分辨重建
基于生成對抗網(wǎng)絡(luò)的CT圖像生成
基于FPGA的實(shí)時(shí)圖像去霧系統(tǒng)
淺析p-V圖像中的兩個(gè)疑難問題
巧用圖像中的點(diǎn)、線、面解題
有趣的圖像詩
高分三號星載合成孔徑雷達(dá)圖像
基于FCNN和ICAE的SAR圖像目標(biāo)識別方法
遙感圖像幾何糾正中GCP選取
趣味數(shù)獨(dú)等4則