APP下载

基于不同扫描顺序差值的可逆信息隐藏算法

2015-02-20杨任尔万旭东

计算机工程 2015年3期
关键词:零值分块差值

刘 俊,杨任尔,万旭东

(1.宁波大学a.信息科学与工程学院;b.通信技术研究所,浙江宁波315211;

2.浙江省移动网应用技术重点实验室,浙江宁波315211)

基于不同扫描顺序差值的可逆信息隐藏算法

刘 俊1a,2,杨任尔1a,1b,万旭东1a

(1.宁波大学a.信息科学与工程学院;b.通信技术研究所,浙江宁波315211;

2.浙江省移动网应用技术重点实验室,浙江宁波315211)

为实现敏感图像的大容量可逆信息隐藏,提出一种基于图像相邻像素差值的大容量无损隐藏算法。通过将图像分块,对每个分块按照不同的扫描顺序计算差值,对差值序列进行比较,选取最优扫描顺序生成的差值直方图。从差值直方图中选取2个最大峰值点,每个峰值点选取最近的多个零值点,在峰值像素点插入多位秘密信息,从而实现图像大容量的可逆信息隐藏。仿真结果表明,该算法能根据不同分块图像的像素分布动态选择最优扫描顺序,且利用双峰值多零点嵌入,在嵌入隐秘信息后的峰值信噪比相差不大的情况下,可大幅提高隐写容量。

分块图像;双峰值和多零值;扫描顺序选择;相邻像素差;直方图修改;可逆信息隐藏

1 概述

信息隐藏是将需要保护的信息嵌入到载体中,通过载体的传输达到将秘密信息传送出去的目的。通常情况下,嵌入了秘密信息的载体都不可避免地出现一定程度的失真。但是对于某些特殊的载体,如生物医学图像,需要将图像相关信息隐藏于图像之中,但生物医学图像对于完整性具有极高的要求,因而对于

这些载体的处理就需要引入可逆信息隐藏技术[1-2]。

当前,可逆信息隐藏技术的典型算法主要有基于无损压缩的可逆信息隐藏算法[3]、基于像素差值的可逆信息隐藏算法[4]和基于图像直方图的可逆信息隐藏算法[5-8]。同时作为信息隐藏重要评价指标——隐藏容量和隐藏后图像质量是信息隐藏算法需要面对的问题。而利用图像直方图特性修改部分图像像素的可逆信息隐藏算法得到了许多学者的关注。其中,文献[1]提出了图像直方图修改算法,通过直方图峰值和零值点对实现隐秘信息嵌入,后来一系列基于直方图修改算法的改进算法被提出,文献[9-10]提出了直方图最大点进行多位隐藏的方式,也实现了信息隐藏容量的提升,文献[11]提出了基于预测误差值直方图修改算法,文献[12-15]提出了相邻像素差值的直方图修改算法,这些改进算法的目的都是为了增加直方图的峰值点个数,从而增加隐写容量。

本文在文献[15]的基础上,通过对载体图像分块并通过分析分块图像像素分布选择最佳的扫描顺序,计算扫描过程中的相邻像素差值并绘制直方图,选取直方图的2个最大峰值及多个零值进行隐秘信息嵌入。

2 算法描述

由于图像相邻像素之间具有相关性,图像平滑区域的相邻像素间的差值会比较小,将相邻像素进行差值运算得到的差值直方图会集中分布在差值0附近,选取差值直方图中频率最高的2个差值嵌入数据。但是不同载体图像、不同分块图像的像素分布均有很大的差别,如果用一种固定的扫描方式计算差值,必定会产生分散的差值分布,从而获得的差值直方图差值峰值点较低、差值分散,这样将影响隐写容量及嵌入隐秘信息后的图像质量。

本文通过分析每一块分块图像像素分布选择最优扫描顺序,然后计算最优扫描过程中相邻像素的差值并构造差值直方图,通过改变差值直方图的峰值点的像素进行信息嵌入。因为直方图峰值点的个数直接影响图像的隐写容量,所以选择最合适的扫描顺序可以一定程度上提高隐写容量。除此之外,本文还使用双峰值-多零值点嵌入,这样可以进一步成倍地增加图像的隐写容量。

2.1 扫描方式的确定

将载体图像I分成等大、不重叠的大小为N×N像素的正方形分块图像,对每个N×N分块图像采用如图1所示的3种扫描方式得到3个长度为L=N×N像素序列。

(1)行Z型扫描:从上到下依次扫描每行像素。若行数为奇数,则采用从左到右的扫描顺序,若行数为偶数,则采用从右到左的扫描顺序。

(2)列Z型扫描:从左到右依次扫描每列像素。若列数为奇数,则采用从上到下的扫描顺序,若列数为偶数,则采用从下到上的扫描顺序。

(3)对角线直角扫描:从左上角到右下角扫描图像像素。第一次扫描第一行第一列的像素,接下来的直角扫描按照以下规则:每次扫描的直角转折点像素分布在分块图像的对角线上,设其坐标为(j,k)。则每次完整的扫描路线为(1,k),(j,k),(j,1) 3点连线的直角轨迹,扫描方向按照扫描次数的奇偶数进行确定。当扫描次数为偶数次时,扫描路线为第j行第1列到第j行第k列,然后从第j行第k列~第1行第k列(虚线箭头部分);当扫描次数为奇数次时扫描路线为第1行第k列~第j行第k列,然后从第j行第k列到第j行第1列(实线箭头部分)。相邻2次扫描之间的相邻2个像素点按照先后顺序依次扫描(细实线部分)。

图1 扫描方式

设扫描序列L={x1,x2,…,xL},差值序列D= {x′1,x′2,…,x′L},将以上3种扫描方式得到的扫描序列分别定义为L1,L2,L3,对3种扫描顺序得到的每个像素序列的相邻元素做差值运算后得到3个差值序列D1,D2,D3,其中:

统计每个差值序列中出现频率最高的2个差值作为峰值点,将2个峰值点出现的次数相加分别计为S1,S2,S3。取3个次数和中最大的值Sm对应的差值序列嵌入隐秘信息。即Sm=max(S1,S2,S3)。

若Sm=S1,则选取行Z型扫描方式T1;

若Sm=S2,则选取列Z型扫描方式T2;

若Sm=S3,则选取对角线直角扫描方式T3。

设选取的最优扫描方式为T(T=T1,T2,T3)。

以Lena图像分割成4×4小块后的第1块图像块为例进行说明。图2~图4分别表示第1块分块图像行Z型扫描方式、列Z型扫描方式、对角线直角扫描方式得到的差值直方图。

图2 行Z型扫描方式

图3 列Z型扫描方式

图4 对角线直角扫描方式

p1,p2分别代表每块图像差值直方图的最大、次大峰值点,以上3种扫描方式得到的差值直方图2个峰值和分别为1 802,2 953,2 063,因此第1块分块图像采用第2种扫描方式,即列Z型扫描方式以获得更多的峰值点。其他图像块采用相同的方法依次选取最合适的扫描方式进行扫描,从而使得每个分块图像的差值直方图能获得更多的峰值点个数。

2.2 嵌入过程

嵌入过程如下:

输入载体图像I,隐秘信息s

输出隐秘图像S,分块图像扫描方式Ti,2个峰值零值组{L1,L2,…,Lm,P1}、{P2,R1,R2,…,Rm}

嵌入步骤:

(1)将分块图像C按照扫描方式Ti进行扫描,得到像素序列L={x1,x2,…,xL}。

(2)将像素序列做差值运算得到差值序列D= {d1,d2,…,dL}。

(3)统计差值序列得到差值序列直方图,寻找直方图上最大的2个峰值点记为P1,P2(P1<P2),寻找与2个峰值距离最近的m个连续零值点组成对应的峰值-零值组{L1,L2,…,Lm,P1},{P2,R1,R2,…,Rm}。

(4)按照扫描方式Ti重新扫描分块图像C(像素Ci,加密后图像像素Si),计算每个像素点的差值di,隐秘信息为s,初始化S1=C1,Ti(3种方式)。

如果di≠P1且di≠P2,Ci按照如下操作:

如果di=P1或者d1=P2,设k为m位连续二进制s转换为十进制,Ci按照如下操作:

(5)重复步骤(4)直到完成所有像素处理,并将分块图像扫描方式Ti、峰值零值组作为头信息嵌入图像。

2.3 提取与恢复过程

提取与恢复过程如下:

输入隐秘图像S,分块图像扫描方式Ti,峰值零值组{L1,L2,…,Lm,P1},{P2,R1,R2,…,Rm}

输出载体图像I,隐秘信息s

提取隐秘信息与恢复载体图像为嵌入过程的逆过程,具体过程如下:

(1)将隐秘图像S分割成大小为N×N的不重叠图像块。

(2)对图像块按照扫描方式Ti进行扫描得到像素序列L′,初始化第一行第一列恢复像素C1为L′第一个元素S1。

(3)隐秘信息提取过程如下:

(4)载体图像恢复过程如下:

(5)重复步骤(3)和步骤(4)至最后一位像素完成提取和恢复。

2.4 防止溢出的解决方案

对于256灰度图像像素分布于[0,255],本文算

法像素的最大修改量为m。为了防止像素溢出,对于像素小于m和像素大于255-m的像素点分别加上m和减去m像素。设置定位图记录各像素点的溢出的情况,对属于[m,255-m]的像素定位图赋值0,对于其他像素定位图赋值1。由于图像像素分布于小于m或者大于255–m的较少,因此采用游程编码对定位图进行压缩,并将压缩后的定位图与隐秘信息一起嵌入载体图像中。

3 实验仿真与结果分析

本文算法在基于VC++6.0的平台下进行仿真,对大量图像进行了实验,结果表明本文算法能大大提高图像的隐写容量,同时可以获得比较理想的峰值信噪比。

以图5中Lena,Boats,Jetp,GoldHill 4幅图像作为载体图像为例进行实验,对该4幅图像进行4×4分块,对分块图像分别进行单零值嵌入、连续3位零值多位嵌入。单零值嵌入后的图像结果如图6所示。

图5 嵌入前图像

图6 嵌入后图像

本文实验结果与文献[15]实验结果进行比较,比较后的数据对照如表1所示,4幅图像的嵌入率与峰值信噪比关系如图7所示。

表1 3种算法的性能比较

图7 嵌入率与峰值信噪比关系

实验数据表明,在取m=1的情况下对分块图像进行单零值嵌入获得的隐写容量比文献[15]算法有较大提升,而峰值信噪比两者相差不大。当m=3时,虽然峰值信噪比有所下降,但是隐藏容量相对于m=0时有了成倍提升。

4 结束语

本文提出了一种基于分块图像直方图修改的大容量可逆信息隐藏算法。将大图像分块为多个不重叠小分块后,利用不同扫描方式扫描分块图像,计算扫描过程中相邻像素的差值得到灰度差值直方图。根据分块图像差值直方图最大、次大峰值点个数情况动态选择每块分块图像的扫描方式,从而获得最大数量的峰值点个数。除此之外,对每一个峰值选取相邻最近的多位零值进行多位信息嵌入。大量实验结果表明,该算法实现了根据图像质量分布动态调节扫描方式的差值直方图算法,提高了隐写容量与隐写质量,并且在信息提取后能无损地恢复载体图像。

[1]Ni Zhicheng,Shi Yunqing,Ansari N,et al.Reversible Data Hiding[J].IEEE Transactions on Circuits and Systems for Video Technology,2006,16(3):354-362.

[2]Shih F Y,Wu Yita.Robust Watermarking and Compression for Medical Images Based on Genetic Algorithms[J].Information Sciences,2005,175(3):200-216.

[3]Ni Zhicheng,Celik M U,Sharma G,et al.Reversible Data Hiding[C]//Proceedings of IEEE International Conference on Image Processing.New York,USA:IEEE Press,2002:127-160.[4]Tian J.Reversible Data Embedding Using a Difference Expansion[J].IEEE Transactions on Circuits and Systems for Video Technology,2003,13(8):890-896.

[5]Tsai P,Hu Yuchen,Yeh Hsiu-Lien.Reversible Image Data Hiding Scheme Using Predictive Coding and Histogram Shifting[J].Signal Process,2009,89(6):1129-1143.

[6]Lin Chia-Chen,Tai Weiliang,Chang Chin-Chen,et al.Multilevel Reversible Data Hiding Based on Histogram Modification of Difference Images[J].The Journal of Pattern Recognition Society,2008,41(12):3582-3591.

[7]Chang Chin-Chen,Tai Weiliang,Lin Minhui.A Reversible Data Hiding Scheme with Modified Side Match Vector Quantization[C]//Proceedings of the 19th International Conference on Advanced Information Networking and Applications.Berlin,Germany:Springer,2005:947-952.

[8]Zhao Yantao,Li Zhiquan,Dong Yuqing.Reversible Data Hiding Based on Sorting and Histogram Modification[J].Journal of Optoelectronics,2010,21(1):102-106.

[9]高铁杠,顾巧论.一种大容量的图像可逆信息隐藏算法[J].光电子·激光,2008,19(5):663-666.

[10]顾巧论,高铁杠.基于直方图修改的图像可逆信息隐藏算法[J].计算机工程与设计,2008,29(15):4083-4085.

[11]Hong Wien,ChenTung-Shou,ChiuChih-Wei.Reversible Data Hiding for High Quality Images Using Modification of Prediction Errors[J].Journal of Systems and Software,2009,82(11):1833-1842.

[12]Li Yu-Chiang,Yeh Chia-Ming,Chang Chin-Chen.Data Hiding Based on the Similarity Between Neighboring Pixels with Reversibility[J].Digital Signal Processing, 2010,20(4):1116-1128.

[13]Zhao Zhenfei,Luo Hao,Lu Zheming,et al.Reversible Data Hiding Based on Multilevel Histogram Modification and SequentialRecovery[J].InternationalJournalof Electronics and Communications,2011,65(10):814-826.

[14]李晓博,周 诠.基于图像块像素差的大容量无损信息隐藏算法[J].计算机工程,2012,38(17):102-105.

[15]Tai Weiliang,YehChia-Ming,ChangChin-Chen.Reversible Data Hiding Based on Histogram Modification of Pixel Differences[J].IEEE Transactions on Circuits and Systems for Video Technology,2009,19(6):906-909.

编辑 顾逸斐

Reversible Information Hiding Algorithm Based on Difference Value of Different Scanning Order

LIU Jun1a,2,YANG Ren’er1a,1b,WAN Xudong1a
(1a.College of Information Science and Engineering;1b.Institute of Communication Technology,Ningbo University, Ningbo 315211,China;2.Key Laboratory of Mobile Internet Application Technology of Zhejiang Province,Ningbo 315211,China)

In order to achieve high capacity reversible sensitive image information hiding,this paper presents a lossless hiding algorithm of high capacity based on the difference between adjacent pixels for image.By the image block,and difference value of each block is calculated by different scanning order,choosing the difference value histogram of best scan order by comparing difference value sequence.Select the two largest peak points from the differerce histogram,and the nearest multiple zero points in each peak point,and insert several bit secret information in pixel of peak point,which achieves high capacity reversible image lnformation hiding.The results of simulation experiment show that the algorithm can select the best scan order by pixels distribution of each block image dynamically and using two peaks and multiple zero to embed secrets.It improves capacity of embedding secret information greatly,besides PSNR is ideal after embedding secret information.

block image;double peak and multi-zero value;scan order selection;adjacent pixel difference;histogram modification;reversible information hiding

刘 俊,杨任尔,万旭东.基于不同扫描顺序差值的可逆信息隐藏算法[J].计算机工程,2015, 41(3):269-272,277.

英文引用格式:Liu Jun,Yang Ren’er,Wan Xudong.Reversible Information Hiding Algorithm Based on Difference Value of Different Scanning Order[J].Computer Engineering,2015,41(3):269-272,277

1000-3428(2015)03-0269-04

:A

:TP301.6

10.3969/j.issn.1000-3428.2015.03.050

国家科技重大专项基金资助项目(2011ZX03002-004-02);浙江省重点科技创新团队基金资助项目(2012R10009-04);浙江省杰出青年科学基金资助项目(R1110416);教育部高等学校博士学科点专项科研基金资助项目(20113305110002);浙江省信息与通信工程重中之重学科开放基金资助项目(XKXL1302);宁波市科技创新团队基金资助项目(2011B81002)。

刘 俊(1991-),男,硕士研究生,主研方向:信息隐藏算法;杨任尔,副教授;万旭东,学士。

2014-04-17

:2014-05-14E-mail:422145402@qq.com

猜你喜欢

零值分块差值
差值法巧求刚体转动惯量
一种时间比对设备零值的校准方法
分块矩阵在线性代数中的应用
Excel巧设置 拒绝零显示
枳壳及其炮制品色差值与化学成分的相关性
反三角分块矩阵Drazin逆新的表示
基于自适应中值滤波的分块压缩感知人脸识别
基于多分辨率半边的分块LOD模型无缝表达
基于区域最大值与平均值差值的动态背光调整
500kV绝缘子串含零值绝缘子时的电晕放电分析