您好,欢迎来到尚车旅游网。
搜索
您的当前位置:首页一种基于MPEG2视频编码的隐写算法

一种基于MPEG2视频编码的隐写算法

来源:尚车旅游网
维普资讯 http://www.cqvip.com 第37卷增刊(I) 2007年9月 东南大学学报(自然科学版) JOURNAL OF SOUTHEAST UNIVERSITY(Natural Science Edition) V0L 37 Sup(I) Sept. 2007 一种基于MPEG2视频编码的隐写算法 孙怡峰 , 刘粉林 王国栋 刘 镔 李继光。 ( 信息工程大学信 皂、工程学院,郑州450002) ( 信息工程大学电子技术学院,郑州450004) ( 平原大学信息工程学院,新乡453000) 摘要:为了解决在压缩视频中大量隐藏信息容易造成视频流码长改变的问题,提出了一种新的基 于MPEG2视频编码的隐写算法.分析了MPEG2视频宏块单元的编码过程,利用帧内和非帧内宏 块中的AC系数以及非帧内宏块中的DC系数等没有经过差分编码的系数进行信息嵌入,采用“存 在例外的动态±1”嵌入、“舍弃高频系数”和“0比特填充”等三级机制来保证slice单元的码长不 变.实验结果表明算法在保证码长整体不变的前提下有效地提高了隐藏容量. 关键词:信息隐藏;隐写术;视频 中图分类号:TP391 文献标识码:A 文章编号:1001—0505(2007)增刊(I)-0177-05 New MPEG2 video stegan0graphy Sun Yifeng ・ Liu Fenlin Wang Guodong Liu Bin Li Jiguang ( Institute of Information Engineering,Information Engineering University,Zhengzhou 450002,China) ( Institute of Electronic Technology,Information Engineering University,Zhengzhou 450004,China) ( Institute of Information Engineering,Pingyuan University,Xingxiang 453000,China) Abstract:A new steganography algorithm of MPEG2 video is proposed to keep the size of compressed video bit stream unchanged.The macroblock unit coding iS analyzed.The coeficients withoutf differential coding.such as AC coefficients of intra.coded macroblock.inter.coded macroblock and DC coefficients of inter.coded macroblock.are modiied to embed data.Three strategifes are applied to control the size of slice units,i.e.,dynamic±1 mechanism with some exception,discarding high ̄equency coeficients,f and stufing zero bits.Experfimental results show that the algorithm can keep the original size of video bit stream and effectively improve the embedding capacity. Key words:information hiding;steganography;video 数字时代的隐写术(steganography)为人们进行秘密信息的安全传输提供了一种有效的方法,近年来, 网上已经出现了多种隐写软件,如S-Tools_1 J,JSteg ,EZ Stego_3 等,但基本都是以图像为载体的.基于视 频的隐写技术由于受到计算复杂度等因素的制约发展相对落后于图像,但视频隐写比图像隐写具有更大 的秘密信息携带能力,无疑将是更为实用的. 数字视频有未压缩和压缩2种存在形式.文献[4—6]等探讨了基于未压缩视频的隐写,但由于在网 络应用中未压缩视频最终要转换成压缩视频,该类算法需要抵抗压缩编码.而基于压缩视频的隐写则不存 在该问题,但这类算法除了安全性、实时性等基本设计要求外,还要求隐写前后压缩视频的码长应保持不 变,即不改变压缩视频的比特率 .此外隐藏容量也是隐写算法的一个重要的指标.现有的基于压缩视频 的隐写和水印算法采用了多种方法来保证不变码长,但隐藏容量往往较小.Langelaar的比特域隐写法使 用lc—VLC隐写来保证隐写后不变码长,其隐藏容量取决于码流中出现的lc.VLC的个数 ].Hartung等基 于扩频的MPEG2隐写算法放弃了导致码长增长的嵌入调制来保证隐写后的码长不变,其隐藏容量由片 率cr决定 .Mobasseri等的VLC Map隐写法采用了和文献[7]比特域算法类似的策略来构造VLC pair, 隐藏容量是每块1比特 .IJiu等的A/S隐写法在块的最后一个AC系数上基于A/S树进行隐写使码长 收稿日期:20074)7-20. 基金项目:国家高技术研究发展计划(863计划)资助项目(2006AA01Z409)、河南省科技攻关资助项目(0623021500) 作者简介:孙怡峰(1976一),男,博士生,讲师;刘粉林(联系人),男,博士,教授,博士生导师,liufenlin@vip.sina.con. 维普资讯 http://www.cqvip.com

178 东南大学学报(自然科学版) 第37卷 从整体上保持不变,其隐藏容量是每2块1比特 .上述算法多利用了Ac系数来进行隐藏,另外还有文 献[10—13]利用了Dc系数和运动矢量来进行隐写,这类方法除了要控制码长变化外还需要进行误差补 偿. 本文设计了一种大容量不变码长隐写算法HCIS(high capacity and invariable size steganographv algo— rithm).算法以MPEG2压缩视频为载体,充分利用帧内和非帧内宏块中的AC系数以及非帧内宏块中的 DC系数进行隐写,有效提高了隐藏容量;使用“存在例外的动态±1”嵌人、“舍弃高频系数”和“0比特填 充”等三级机制保证隐写前后压缩视频的总码长不变. 1 HCIS算法框架 1.1基本思想 MPEG2是得到广泛应用的视频压缩编码标准,数字电视、DVD都采用了MPEG2标准,宏块是MPEG2 基本编码单元,分为帧内宏块和非帧内宏块两类,经过的编码过程如图1所示.从图中可见,根据是否采用 过差分编码可以将宏块中的数据分为两种类型:采用过差分编码的系数,如运动矢量、帧内宏块中的DC 系数;没有经过差分编码的系数,如帧内宏块中的AC系数以及非帧内宏块中的DC系数和AC系数. 帧内宏块 非帧内宏块 图1宏块编码 由于视频以每秒25帧(PAL制式)的速度进行回放,即使经过了MPEG2压缩,仍然存在冗余.对于采 用过差分编码的系数,隐写时往往需要采用补偿技术以避免误差的积累¨ ;而没有经过差分编码的系数 在压缩视频中大量存在,这些系数在进行变长解码后,均以(vein,leve1)对的形式出现,level是量化后的 DCT系数,可直接用于嵌人信息,充分利用这些系数进行信息嵌人可以有效地提高隐藏容量.但在以往算 法[卜9_中,为了达到隐写后码长不变的目的,使用特殊的系数进行隐写,导致了隐藏容量较小.HCIS算法 利用了所有的由密钥选定的没有经过差分编码的系数进行信息嵌人,同时采用三级码长控制机制来保证 隐写后的视频码长不变,最终有效地提高了隐藏容量(每个块都隐藏多个比特). 1.2算法框架 HCIS包括信息嵌入和信息提取2个过程,首先来看嵌人算法,其基本框架如图2所示,由二维混沌映 射G、秘密信息预处理E、MPEG2码流解析、块隐写 和0比特填充等模块组成.其中,二维混沌映射G在 密钥K的作用下产生2个二进制的伪随机序列P和Q.预处理模块E使用P对秘密信息 进行预处理 (如进行异或运算),得到序列S.MPEG2码流解析模块寻找8×8的块block ,调用块隐写模块 (block , △)对块block 进行隐写,使块中每个由Q(如根据其0或1取值)选定的没有差分编码系数都嵌入5中的 1比特信息s,当一个片的所有块都隐写完后,MPEG2码流解析模块将在片结尾处调用0比特填充模块填 充厶个减少的0比特,从而完成一个片的不变码长隐写.最终,MPEG2码流解析模块重复上述过程直至视 频码流结束.在嵌人算法中,G和£可以根据实际情况灵活选择,本文不再具体讨论;而MPEG2码流解析 模块、块隐写 模块和0比特填充模块实现了大容量不变码长隐写,是算法的关键. HICS的提取算法比较简单,只需使用相同的密钥K产生相同的伪随机序列P和Q,由Q确定MPEG2 视频码流中哪些是嵌人了秘密信息的没有差分编码的系数,顺次取出这些系数level值的LSB,组成5.然 后使用P对5进行反预处理 ~,得到 ,如图3所示. 2关键模块的实现 2.1 MPEG2码流解析模块 MPEG2码流解析模块在嵌人算法中起到总体调度作用,块隐写模块 和0比特填充模块在它的调度 维普资讯 http://www.cqvip.com 增刊(I) 孙怡峰,等:一种基于MPEG2视频编码的隐写算法 陋G2观频码流 MPEa2视频码流 179 密钝£ I一一一一一一一一一一一一一  lH 一一一一一一一一●S L一一一一一一一一 — ]一一一一一 竺::l .‘一一一一一一一一 秘硅 急M 秘密信息 图2嵌入算法框架 图3提取算法框架 下完成MPEG2视频中每个片的大容量不变码长隐写.MPEG2码流解析模块的具体步骤如下: ①设置全局变量△用于记录隐写对压缩视频的码长改变量,以比特为单位. ②在MPEG2视频流中找到片(slice),置A=0. ③在片中找到一个8 X 8块,记为block ,调用块隐写算法 (block ,A)对块内系数进行信息嵌入. ④将嵌入了秘密信息的block 和未作修改码流合并成载密MPEG2码流. ⑤重复步骤③,④直至本片结束,然后调用0比特填充模块填充△个0比特. ⑥重复②一⑤,直至码流中的所有片都隐写完毕,即序列S在视频流中反复嵌人. 在每次开始一个片隐写时,都需要将△重新置为0,这是因为算法使每个片的码长在隐写前后都保持 不变,所以每新开始一个片隐写时,码长改变量应为0. 2.2块隐写模块 块隐写模块进行块单元的隐写和码长控制,它充分利用8 X 8块中存在的多个没有差分编码的系数进 行隐写,使一个块隐藏多个比特.它需要解决的问题是如何使每个由伪随机序列Q选定的系数都嵌入‘s 中的1比特信息s,且使码长改变尽可能的小.一般来说,在没有经过差分编码的单个系数上嵌入信息将造 成码长变换,例如图4中(0,2)使用LSB替换算法嵌入了比特1后变为(0,3),码长增加了1比特. 图4隐写前后VLC的变换 给出如下符号规定和定义.块隐写算法记为 (block ,A),△为本块隐写前已经造成的码长改变量, block 代表当前要隐写的块,这2个参数值均由MPEG2码流解析模块在调用时确定.定义8 X 8块的原块 长为该块在隐写前从第一个系数到块结束符前的编码长度,而在隐写过程中,每遇到一个系数,都可计算 块第一个系数到该系数的编码长度,该长度定义为块在隐写过程中的临时长度,记为 .设block 的原块 长为 ,原块有 个没有经过差分编码的系数,变长解码后按码流顺序记为(run ,level ),k=1,2,…, ,其 中系数(run ,level )在嵌人信息前VLC码长为d ,在嵌入信息后变为(run ,level ),VLC码长为d ,均以 比特为单位. 块隐写算法 流程如图5所示,算法依次对 个系数进行处理,当秘密信息比特s与Q选定的level 的LSB相等时,嵌入信息不用修改level ,码长也不变;当s与level 的LSB不等时,level 加1或减1都能 使其LSB等于s.通过观察MPEG2变长编码表,对大多数的(run,leve1)而言(1c.VLC 除外),当其run保 持不变而level加1时,对应VLC码长将增加,当run保持不变而level减1时,对应VLC码长将减小.因 此,若△<0,选择加1操作来增加总码长;若△i>0,则选择减1操作来减少总码长,把这种方法称为动态± 1嵌入法.显然动态±1嵌入法会使隐写后视频的总码长变化减小.但MPEG2视频中存在许多level 等于 1的情况.此时,无论△取值如何都不能采用level 减1,而只能采用level 加1,因为level 减1将导致出 现(run,0),无对应的VLC编码.把存在上述情况的动态±1嵌入法称为存在例外的动态±1嵌入法.容易 看出该嵌入法仍然存在隐写后码长增长的可能.为此,本文采用了舍弃高频系数策略:若从某个系数开始 L >L,就舍去从该系数开始的后续系数,使隐写后的块编码长度小于或等于原编码长度,若有减少,数值 为△个比特.由于这些系数处于高频位置,因此不会造成明显的图像质量下降. 维普资讯 http://www.cqvip.com

180 东南大学学报(自然科学版) 第37卷 ( 开始) k=1。L =A 一I L—L.1 l I L—L.1 l 一I ::: 一二-J—=.一 l::::: l一 否 _< 三 一 否 是 — ’否 f 1 『 作修改 芦 是。 leve ̄=r■●、、evel,+1 l ‘  / I如懈 =l● evelk一1 I ! ・是 童 否否 将(将此v凡口 并置 = +, Lc’ )码并入载密码绩码成V Lc流,码, 的 舍并置△ 上 一上 所有高频弃从j咖 系数,开始 I ll 并置L = + ,L穗 c码并入载密码流,A=A+( 一 】 l  否— 一一_ 足 ~l  I是— — ■ 否 图5块隐写算法 流程图 2.3填充0比特与片不变码长 在使用了块隐写算法 后,视频的码长仅减少了△个比特,为补齐这个△比特,可以在视频码流的合 适位置填充对应个数的0比特.在MPEG2压缩视频中,为了标识和区分各个编码单元,如图像组、帧、片 等,采用了整字节对齐的32比特的开始码.当视频数据不能整字节对齐时,采用填充0比特来达到此目 的,本文可以采用类似的方法补齐减少的△个比特.由于片是MPEG2标准中具有32比特开始码的最小 单元,MPEG2码流解析模块就在解析到本片结束时(即下一个片开始码前),调用0比特填充模块填充减 少的0比特,即根据△数值在载密视频码流的片尾处补相应个数的0比特,片成为不变码长的基本单元. 总之,HClS算法采用了三级码长控制机制.首先“存在例外的动态±1”嵌入完成了单个系数级的隐 写码长控制,而“舍弃高频系数”策略完成了8×8块一级的隐写码长控制,而“0比特填充”实现了以片为 单元的隐写前后码长不变. 3 实验结果 利用Mobile(32帧)和Football(99帧)等标准视频测试序列来进行实验,图像大小为720×486,色度 格式为YCrCb 4:2:2.采用TM5将上述序列压缩为每秒25帧、10Mbps码率的MPEG2视频文件,以这些 MPEG2视频为载体进行隐写实验.嵌入的信息为任意格式的数据,在隐秘MPEG2视频未受攻击的情况下 嵌入信息可以被完整提取.在实验中重点测试了算法的隐藏容量以及隐写前后MPEG2视频的峰值信噪 比(PSNR). 表1比较了HCIS算法、VLC Map算法、A/S算法的隐藏容量,HCIS算法的隐藏容量约是VLC Map隐 写法 。 的7倍,约是A/S隐写法 的15倍,算法在隐藏容量上有了显著提高.从表2可以看出隐写前后 视频文件尺寸没有任何改变.图6给出了MPEG2视频隐写前后各帧的PSNR,PSNR在隐写后比隐写前平 均下降了4.21dB,这说明较大的隐藏容量也导致了对视频数据的较大修改,表现在纹理细密区域有一些 细微差别,但这种差别在视频播放时并不易被人眼所觉察. 表1 HICS算法隐藏容量与VLC Map隐写法、A/S隐写法的比较 维普资讯 http://www.cqvip.com 增刊(I) 孙怡峰,等:一种基于MPEG2视频编码的隐写算法 表2隐写前后MPEG2文件大小比较 181 l+一stem MPEG2‘ t—e-OngI怕IMPEG2 I  l. l 獭 一 堂 ‘ — 蹴 嘲 、 — +— 、 +一 :t: , 。 . 一 — \} H} 脚 曲 柏 _ H 札 ^ 帧编号 (a)Mobile 帧编号 (b)Football 图6 MPEG2视频隐写前后的PSNR对比 4 结语 本文通过充分利用MPEG2码流中没有差分编码的系数进行隐写,达到了提高隐藏容量的目的,并采 用“存在例外的动态4-1”嵌入、舍去高频系数、0比特填充等三级机制保证了隐写后码长的不变.算法对隐 蔽通信比较实用,若还需要增大隐藏容量,可以进一步使用经过差分编码的DC系数和运动矢量进行隐 写,并可使用自适应嵌入技术在纹理丰富的区域中减少嵌入量,从而提高纹理细密区的图像质量. 参考文献(References) [1]Brown A.S-Tools 4.0[EB/OL].[2007—11—20].http://soft.sofloogle.com/ap/s tools—download一126.shtm1. [2]Upham D.jpeg-jsteg—v4[EB/OL].[2007—11—20].ftp://ftp.funet.fi/pub/crypt/steganography/. [3]Machado R.EZStego[EB/OL].[2007—11-20].http://w ̄.jjtc.com/Security/stegtoos1.htm. [4]Hartung F,Girod B.Watermarking of uncompressed and compressed video[J].Signal Processing,1998,66(3):283—301. [5]Chen Tianhang,Liu Shaohui,Yao Hongxun,et a1.Spatial video watermarking based on stability of DC coeficifents[C]//Lee— ture Notes in Computer Science,3930.Heidlberg,Germany:Springer—Verlag2006:l033一l042. .[6]Hsu C T,Wu J L.DCT—based watermarking for video[J].IEEE Transaction on Consumer Electronics,1998.44(1):206— 216. [7]Langelaar G C,Lagendijk R L,Biemond J.Real—time labelling of MPEG一2 compressed video[J].Journal of V ̄nal Commu— nication and Image Representation,1998,9(4):256—270. [8]Mobasseri B G,Marcinak M P.Watermarking of MPEG-2 video in compressed domain using VLC mapping[C]//ACM Multi— edima and Security Workshop 05.New YorkNY,USA,2006:91—94. ,19]Liu B,Liu F L,Luo X Y.Real—time steganography in compressed video[C]//Lecture Notes in Computer Science.4105.Hei— dlberg,Germany:Springer—Verlag,2006:43—48. [10]Liu H M,Shao F L,Huang J W.A MPEG一2 video watermarking algorithm with compensation in bit stream f C]// ct Notes in Computer Science,3919.HeidlbergGerntany:Springer—Verlag,2006:123—134. ,[1 1] Zhang J,Li J G,Zhang L. Video watermarking technique in motion vector[C]//XIV Brazili0 5mp0si ,n 0 c0,np £er Graphics and Image Processing.Brazic,2001:179—1 82. [12]Dai Yunjun,Zhang Lihe,Yang Yixian.A new method of MPEG video watermarking technology[C]// 0cee , of Inter- national Conference on Communication Technology.Beijing,China,2003:1845—1847. [13]Zhu Zhongjie,Jiang Gangyi,Yu Mei,et a1.New adaptive algorithm for video watemarrking[C]//IEEE Region 10 Co r- ence on Computers,Communications,Control and Power Engineering.Beijing,China.2002:152—155. 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务