基于压缩视频的隐写算法的设计分析
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2014)09-2037-02
随着高速宽带网络的飞速发展,音视频正在取代传统的文字和图片成为网络信息资源的主流,为以数字视频为载体进行隐蔽通信提供了基本的平台。基于视频的隐写[1]由于其更大的隐藏量,逐渐成为更为实用的隐蔽通信方法,在军事和商业秘密信息的传输上有着很好的应用前景。传统基于密码的安全通信与基于隐写的隐蔽通信相比,前者是通过加密算法将信息进行加扰置乱形成第三方无法理解的密文,而后者则是利用载体信息中人类感官不易察觉的冗余空间来传递秘密信息,使需要保护的信息由看不懂变为看不见。简言两者的不同,密码技术隐藏了信息的内容,隐写技术不但隐藏了信息的内容,更重要的是它隐藏了信息的存在。
1 视频隐写的原理
视频隐写主要利用了数字视频中存在的冗余数据来嵌入秘密信息,根据作为载体的视频是否经过压缩,可以分为原始视频隐写和压缩视频隐写两大类。前者将视频帧看作静态图像, 各个视频帧的原始YUV数据按时间顺序依次存放,这种视频常用于专业的视频编辑; 现实生活里如VCD、DVD中的视频是就以MPEG1和MPEG2标准压缩的视频流,在互联网中大量的音视频资源多是以压缩流媒体形式存在。压缩视频隐写技术通过修改压缩视频的变换域系数、运动矢量或VLC( variable-length code)码字进行数据嵌入[2]。
2 基于压缩视频的隐写算法
基于压缩视频的隐写算法是指以特定压缩格式的视频为载体的隐写算法。基于压缩视频隐写方法的原理如图1,算法先进行部分解码找到待隐写的编码单元,然后使用嵌入算法将需要隐藏的信息嵌入编码单元,最后将这些隐藏秘密信息的编码单元重新编码形成新的包含隐秘信息的压缩视频流。此种算法在接收端并不需要对所有信息进行解码,而只需要对包含隐藏信息的单元进行部分解码即可。由于仅仅需要部分解码,基于压缩视频的信息隐藏往往具有较高的算法效率。另外,针对压缩视频隐写还有一个特殊的要求是不变码长[3],这主要是因为压缩视频(如MPEG2)在压缩时各个编码单元最终采用可变长编码(VLC),在隐藏前后码长往往发生变换,如果这种变换过大,将会引起播放时音频视频的不同步、甚至发生缓冲溢出。不变码长正是与视频压缩编码标准相结合的具体体现。
压缩视频流一般具有DC系数、AC系数、运动矢量等多种编码单元,每一种编码单元都可以作为独立的隐写点进行隐写,因此每一种编码单元的隐写都是一类独立的隐写方法。
2.1 AC系数上的隐写方法
Langelaar2视频流找到每一个属于带标签的VLC码,若秘密信息比特和此VLC码对应level的LSB相同,则保持VLC码不变,若秘密信息比特和LSB不同,就用另一个Level的LSB等于该比特的VLC码代替原VLC码,这样隐写后视频码流中每一个属于带标签的VLC都隐藏了一比特数据,而不属于带标签的VLC没有隐藏数据。该算法可以保持隐写前后MPEG文件长度不变,但隐藏率取决于视频码流中出现的带标签的VLC码的个数。
2.2 DC系数上的隐写方法
由于DCT系数的直流系数DC是整个象素块的平均值且采用了差分编码,基于DC系数的隐写算法往往需要采用特殊的处理来避免直接修改DC系数可能带来的视觉影响或造成积累误差。一种基于DC系数的隐写法的思路为:通过修改DC系数在MPEG2压缩视频中嵌入水印。由于DC系数采用差分编码,修改一个块的DC的差分值(dc_dct_differential)会对下一块产生积累误差,所以为了避免对DC的差分值修改而造成的图像降质,采用了下列补偿措施:若比特替换dc_dct_differential 的LSB由0变为1(无论该数值是正还是负都是其值加1),在接下来的块中选择一个合适的,使其dc_dct_differential在二进制下减1;若比特替换dc_dct_differential 的LSB由1变为0(无论该数值是正还是负都是其值减1),在接下来的块中选择一个合适的,使其dc_dct_differentia在二进制下加1。 所谓合适的就是加1或减1时不会改变dc_dct_differential 的MSB。
2.1运动矢量上的隐写方法
基于运动矢量的视频隐写算法通常综合利用运动矢量的相位、幅值、方向、水平分量和垂直分量等元素作为载体来嵌入相关信息。Jordan[5]等首次提出了在运动矢量上嵌入信息的的方法,该方案在每帧帧间图像(P图、B图)仅中选取一个宏块的运动矢量作为嵌入对象。但此法的信息嵌入量较低。在此基础上,Zhang[6]提出在幅度大于阈值的运动矢量中嵌入信息,并由运动矢量的相位来具体决定是修改水平分量还是垂直分量。文献[23]将信息嵌入到值较大的运动矢量的残差(Motion Residual)中。文献[24]根据运动矢量的水平分量和垂直分量的组合关系来建立特征值,根据特征值自适应的嵌入信息,提高了秘密信息的鲁棒性。文献[7]对Zhang的方法进行了改进,对嵌入信息前后的运动矢量进行差值补偿,同时通过自适应的选取阈值来提高算法的性能。
3 提高隐藏率的基本思想
隐藏率是隐蔽通信性能的重要指标,反映了秘密信息的传输效率。从上述中可以看出,现有的压缩域隐写算法往往只利用了一种编码单元进行隐写,就是针对一种编码单元这些算法实际上也只利用了其中的一部分系数。因此为了提高隐藏率,可以从两个方面进行入手:1)同时利用多种编码单元进行隐写;2)进一步提高特定编码单元的系数利用率。
从此也可以看出,基于压缩视频的隐写往往具有更大的灵活性,它的隐藏率可以根据实际需求来进行调整,这在一定程度上也增加了隐写检测的难度。
4 结束语
从上述可以看出,基于原始视频的隐写可在空间域、二维变换域、三维变换域等多个角度进行嵌入,可供使用的理论和工具较多,在学术领域的研究十分活跃。基于压缩视频的隐写算法往往受到相应压缩编码技术的限制,可供使用的方法相对比较局限,但该类算法实时性较高,隐藏率可以根据应用需求进行调
整,如采用一种或多种编码单元的隐写法达到要求的隐藏率。
随着网络技术的发展和流媒体应用的不断增多,网络上视频的传输将越来越常见,基于视频的隐写技术逐渐成为新的研究热点。虽然目前视频隐写取得了一定的研究成果,但仍有大量的问题亟待解决,如在流媒体中秘密信息提取时的同步问题、隐写算法的抗检测性、同时抵抗多种几何攻击等等。
参考文献:
[1] 施昌林.视频隐写分析算法研究[D].上海交通大学,2009.
[2] 梁惠,郭立, 基于视觉感知模型的大容量视频隐写算法[J].中国科学院研究生院学报,2010(1).
[3] 张江.视频水印技术综述[J].计算机应用,2005,25(4):850-852.
[4] Langelaar G, Lagendijk R, Biemond J. Real-time labeling of MPEG-2 compressed video, Journal of Visual Communication and Image Representation,1998,9(4):256-270.
.Technical Report M2281,ISO/IEC Document,JTCI/SC29/WG11,Stockholm:MPEG24 Meeting,1997.
. In: XIV Brazilian Symposium on Computer Graphics and Image Processing,2001:179-182.
[7] 张桂东,茅耀斌,王执铨.一种基于运动矢量的视频水印方案[J].中山大学学报,2004(9):58-61.
热门论文
- 基于压缩视频的隐写算法的设计分析
- 基于VFW的AVI视频文件压缩与解压缩方法研究
- 基于小波变换的图像压缩算法设计
- 基于Directshow的视频缩放的技术措施
- 基于块分类的自适应视频水印算法在TMS320DM643x
- 低比特率远程监控视频压缩编码的技术分析
- 基于CORDIC算法数字下变频器设计
- 视频压缩编码的差错复原技术
- 基于CPLD/FPGA的半整数分频器的设计
- 基于DirectShow的网络视频点播系统的设计方法创新
- 基于DirectShow的网络视频点播系统设计方法创新
- 基于微视频的《电算化会计学》 课程答疑平台设
- 基于单片机的频率计设计
- 图像有损压缩与无损压缩的对比分析
- 关于压缩机设备的论文