基于加权矩阵的HEVC信息隐藏算法
2018-01-10石方夏任帅张弢索丽
石方夏+任帅+张弢+索丽
摘 要:针对信息隐藏容量小及隐藏秘密信息后造成视频比特率过快增长的问题,文中提出了一种基于加权矩阵的高效视频编码信息隐藏算法。将HEVC视频图像按照四叉树结构划分成块,选取其中纹理复杂度较高的3个4×4亮度块做lαβ分解得到3个灰度分量子图,对α分量子图做DCT变换,选取3个中频系数的LSB位按块的顺序组合成1个3×3大小的矩阵作为信息隐藏区域,利用加权矩阵实现秘密信息的嵌入。实验表明,最多修改2个DCT系数就可以实现5 bit秘密信息的隐藏且避免了视频比特率的过快增长。
关键词:HEVC;加权矩阵;信息隐藏;DCT
中图分类号:TP309.2;TP301.6 文献标识码:A 文章编号:2095-1302(2017)12-00-03
0 引 言
信息隐藏技术以秘密信息传输的“存在级”安全成为网络与信息安全领域的应用热点,其中载体的选择至关重要。现阶段,多媒体信息自身的冗余性为信息隐藏提供了较大空间,而视频尤其突出,不仅数据量巨大,还存在很大的冗余空间。目前,HEVC(High Efficiency Video Coding,HEVC)是最新一代视频压缩编码标准。与其他视频压缩标准相比,HEVC压缩性更好,在高清和超清等视频应用领域发挥着重要作用,因此HEVC视频图像成为信息隐藏的首選载体[1,2]。
文献[3]在HEVC标准下提出了一种消除帧内失真漂移算法,利用归零假设对DCT/DST系数采用不同的嵌入和提取算法,消除了帧内失真漂移,但嵌入容量较小;文献[4]利用帧内4×4亮度块预测编码过程中的35种预测模式,依据预测模式和角度值的映射表,将预测模式映射成角度值,并通过秘密信息和预测模式角度差的映射关系,调制模式之间的角度差,完成秘密信息的嵌入,但修改预测模式极易引起视频失真;文献[5]通过建立(4,3)码标准阵列译表,根据阵列译表与预测模式的关系,调制帧内4×4亮度块的预测模式,实现秘密信息的嵌入,但在重新编码时,修改预测模式的编码较容易引起视频失真。
本文提出了一种加权矩阵的HEVC信息隐藏算法。首先将HEVC视频图像按照四叉树结构划分成块,选取其中纹理复杂度较高的3个4×4亮度块进行lαβ分解;然后选取α分量进行DCT变换,将DCT中频系数作为信息隐藏区域;最后把秘密信息做混沌置乱后利用加权矩阵算法进行嵌入。算法充分利用α分量的弱能量性,使算法具有很好的不可见性,利用置乱和冗余策略使算法具有较好的鲁棒性。
1 HEVC和加权矩阵的应用
1.1 HEVC编码单元
HEVC支持将编码视频划分为若干个编码树单元(Coding Tree Units,CTU)。而CTU的概念从H.264视频标准中的宏块发展而来。将CTU按照四叉树结构进行划分得到编码单元(Coding Units,CU),同一层次上4个CU的尺寸必须相等(尺寸从8×8到64×64不等)。其中,CU越大说明图像越平缓,反之则说明图像纹理较复杂。一个CU可以包含一个或多个预测单元(Predict Unit,PU),PU是进行预测的基本单元。但CU到PU的划分只能进行一次,PU的尺寸从4×4到64×64不等。
1.2 信息隐藏算法设计
设秘密信息l是长度为m的二进制串,w=[lb((n2+6n-3)/4)],X为一个含有n(n为奇数)个元素的块,Xi为块中像素的LSB位,K是长度为n的行向量,行向量K的构造过程为K=[k1,k2,k3,...,kn]=[1,2,3,...,r-1,r,2r,3r+1,4r+2,5r+3,..,2r+(n-r-1)· (r+1)],其中r=(n+1)/2。算法的嵌入过程为:
(1)计算,其中Ki· Xi是两个矩阵的点乘;
(2)将长度为m的二进制串转换成十进制数p;
(3)计算S=p-f,若S=0,不做任何修改,若S<0,则S=S+2w;
(4)从加权矩阵K中最多寻找2个点,使这2个点之和等于S;
(5)将X中与这2个点对应位置的像素值加1。
秘密信息提取过程为,然后将p转换成二进制数。
2 基于加权矩阵的HEVC信息隐藏算法
2.1 载体预处理
由于人眼对图像平滑区噪声敏感而对纹理复杂区噪声不敏感,所以纹理复杂的区域较容易隐藏更多的信息,也更容易实现不可见性。文中采用HM12.0对图像进行分块,选择纹理复杂度较高的4×4亮度块作为秘密信息隐藏区域。
首先把4×4亮度块转换成二值图像,然后按式(1)进行计算:
其中,μ,η∈{1,2,…,k},k=(n-1)/2,f(i,j)为n×n像素块(0/1数据)中相对坐标为(i,j)处的像素值,μ和η为纹理密度解析参数,μ和η的取值与纹理解析密度成反比,通常μ=1、η=1。R越大表示图像纹理复杂度越高,所以选取3个R值比较大的4×4亮度块。
2.2 信息隐藏与提取
2.2.1 信息隐藏
(1)采用Logistic混沌序列对秘密信息加密,读取5 bit秘密信息mT(m1,m2,m3,m4,m5);
(2)将秘密信息转换成十进制数m;
(3)选取3个4×4亮度块Gi(i=1,2,3),对Gi做lαβ分解,分解出载体图像的3个分量子图,分别记为lh、 αh、 βh(h=1,2,3);对αh做DCT变换得到系数矩阵αij,对αij做Zig-Zag排序生成矩阵B1×16,取3个中频系数(B9至B11);
(4)将Gi的中频系数的LSB位按块的序列号顺序形成一个3×3的矩阵X;
(5)计算(其中Ki· Xi是两个矩阵的点乘);endprint
(6)计算S=m-f,若S=0,无需修改任何像素,若S<0,则S=S+32;
(7)在矩阵K中最多寻找2个值,使这2个值的和等于S;
(8)将矩阵X中与这2个值对应位置的值加1。
例如,3个4×4亮度块的DCT系数为{0.4,0.5,0.6},取其LSB位数构成矩阵X,秘密m=(11111)2=(31)10。
31-27=4,在矩阵K中第2行第1列的數为4,将矩阵X第2行第1列的数加1变成5。修改后的DCT系数就变成了{0.4,0.5,0.6}、{0.5,0.5,0.6}、{0.4,0.5,0.6},仅仅修改了一个DCT系数,便实现了5 bit秘密信息的隐藏。
秘密信息获取时,取DCT系数的LSB位构成系数矩阵X。
2.2.2 信息提取
(1)选取3个4×4亮度块(i=1,2,3),对其做DCT变换得到系数矩阵αij,对αij做Zig-Zag排序生成矩阵B1×16,取3个中频系数(B9至B11);
(2)将中频系数的LSB位按块的序列号顺序排成一个3×3的矩阵X;
(3),将p转换成二进制数;
(4)将置乱的含密信息做混沌系列变化,得到含密图像。
3 性能分析及实验仿真
3.1 不可见性实验
本文算法在HEVC的参考软件HM12.0上进行了算法仿真。参考软件的主要编码配置参数见表1所列,其余参数均采用默认参数。图1分别给出了秘密信息嵌入前后的视频图像。通过图像,我们可发现此算法对视频的质量几乎没有影响。
图2所示为隐秘信息嵌入前后PSNR值的曲线图。从图中可以看出,嵌入前后PSNR值变化微小,人的肉眼看不出明显差别。
图3所示为本算法与文献[6]的PSNR差值图。文献[6]是在4个连续4×4亮度块中通过修改一个预测模式编码实现的3 bit秘密信息嵌入。由于修改预测模式编码会对图像纹理造成一定的影响,从而影响视频的客观质量,而本文最多只修改2位DCT系数,所以引起的PSNR变化并不大。
3.2 性能对比
表2所列为QP=26时测试序列的性能结果。为了进行试验对比,文中选择了与文献[6]相同的5个不同分辨率的测试序列。
表2中BRI为编码比特率,DPSNR为视频的客观质量,HBQ为嵌入容量。“-”表示嵌入秘密信息后,相对于原始图像性能降低。通过对比可发现两个算法的编码比特率相近,但本算法的DPSNR相对更低,原因在于文献[6]修改的是预测模式编码,因此视频的客观质量相对于本算法修改DCT系数后的质量要差。在HBQ方面,本算法的容量高于文献[6],文献[6]在4个4×4亮度块中嵌入了3 bit信息,而本文是在3个4×4亮度块中嵌入了5 bit信息。通过以上分析可得出结论,即本文算法在嵌入秘密信息后对视频的影响小,且嵌入容量大。
4 结 语
本文利用HEVC视频作为信息隐藏的载体,提出了基于加权矩阵的HEVC视频信息隐藏算法,本算法的加权矩阵系数分散在3个块中,不易被截获,具有较高的鲁棒性;除此之外,本算法还拥有较高容量:最多修改2个DCT系数就可实现5 bit秘密信息的隐藏,同时还避免了视频比特率的过快增长。嵌入与提取秘密信息操作简单,具有普遍适用性。
参考文献
[1] Wang R, Xu M K, Ping X J, et al. Steganalysis of spatial images based on segmentation[J]. Zidonghua Xuebao/acta Automatica Sinica, 2014,40(12):2936-2943.
[2]黄凯奇, 陈晓棠,康运锋,等.智能视频监控技术综述[J].计算机学报,2015,38(6):1093-1118.
[3] CHANG P C, CHUNG K L, CHEN J J, et al. A DCT/DST-based error propagation-free data hiding algorithm for HEVC intra-coded frames[J].Journal of Visual Communication and image Representation,2014,25(2):239-253.
[4] WANG jia-ji, WANG Rang-ding,Li Wei, et al.A high-ca- pacity information hiding algorithm for hevc based on in- tra prediction mode[J].Journal of Computational Information Systems,2014,10(20):8933-8943.
[5]杨洁,李松斌,邓浩江,等.基于帧内预测模式调制的HEVC信息隐藏方法[J].网络与信息安全学报,2016,2(9):30-39.
[6]尹秋来,王宏霞,赵杨,等.一种新的基于预测模式的H.264视频信息隐藏算法[C]//中国密码学会2012年会论文集,2012:142-146.
[7]董晓慧,林其伟,许东旭.一种采用内预测模式的HEVC视频信息隐藏算法[J].华侨大学学报(自然科学版),2015,36(3):275-279.
[8]王家骥,王让定,李伟,等.HEVC帧内预测模式和分组码的视频信息隐藏[J].光电子·激光,2015(5):942-950.
[9]张英男,张敏情,罗鹏.结合改进矩阵编码的奇异值修改视频隐写算法[J].华中科技大学学报(自然科学版),2016,44(3):89-93.
[10]彭振龙,桂小林,安健,等.一种基于次优加权矩阵的灰度图像信息隐藏算法[J].四川大学学报(工程科学版),2015,47(6):139-143.
[11]左力文,骆挺,蒋刚毅,等.结合恰可察觉编码失真模型的HEVC大容量信息隐藏方法[J].中国图象图形学报,2017,22(4):443-451.
[12]盛琪,王让定,黄美玲,等.一种针对HEVC预测模式隐写的检测算法[J].光电子·激光,2017(4):433-440.
[13]苏亚娟.基于矩阵编码的空域信息隐藏算法[J]计算机工程与设计,2009,30(23):5344-5347.
[14]李海辉,王宏霞,吴汉舟.基于多分类的QDCT域大容量H.264/AVC视频信息隐藏算法[J].光电子·激光,2017(4):404-410.
[15]薛帅,戴青,冯东华,等.基于改进的LSB视频信息隐藏方法[J].计算机应用与软件,2015,32(1):157-160.endprint