CN104602016A - 一种基于帧内预测模式差值的hevc视频的信息隐藏方法 - Google Patents
一种基于帧内预测模式差值的hevc视频的信息隐藏方法 Download PDFInfo
- Publication number
- CN104602016A CN104602016A CN201510014313.7A CN201510014313A CN104602016A CN 104602016 A CN104602016 A CN 104602016A CN 201510014313 A CN201510014313 A CN 201510014313A CN 104602016 A CN104602016 A CN 104602016A
- Authority
- CN
- China
- Prior art keywords
- predicting unit
- predictive mode
- make
- current
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种基于帧内预测模式差值的HEVC视频的信息隐藏方法,其通过分析HEVC编解码结构,针对4×4的预测单元,在帧内预测编码过程中调制预测模式嵌入隐秘信息,利用连续的两个4×4的预测单元的预测模式的差值,根据不同映射规则嵌入两位或三位比特隐秘信息,提高了隐藏容量;由于修改预测模式对嵌入隐秘信息后的视频的主客观质量影响很大,因此本发明方法对于预测模式都为0或1的两个预测单元,根据隐秘信息的奇偶性修改预测模式嵌入两位比特隐秘信息,对于预测模式都有方向性的两个预测单元,通过两个预测单元的预测模式的差值嵌入三位比特隐秘信息,其他情况不嵌入隐秘信息,这种方式降低了因嵌入隐秘信息造成的视频质量的下降。
Description
技术领域
本发明涉及一种信息隐藏技术,尤其是涉及一种基于帧内预测模式差值的HEVC(High Efficiency Video Coding)视频的信息隐藏方法。
背景技术
随着互联网技术的快速发展,数字化多媒体信息的应用和传播越来越普及,信息安全问题变得日益突出。信息隐藏技术迅速发展已成为隐秘通信和版权保护的有效手段,可以有效遏制数字化多媒体的非法使用。在数字化多媒体的信息隐藏技术研究中,数字视频的信息隐藏技术是极其重要的组成部分,应用非常广泛。由于数字视频本身数据量庞大,因此其通常是以压缩的形式进行存储和传输。
HEVC是最新一代视频压缩编码标准,其核心目标是在H.264/AVC的基础上,压缩效率提高一倍,在高清、超高清等视频应用领域发挥重要作用,研究HEVC标准下的视频信息隐藏算法具有较高的现实意义和理论价值。目前,针对H.264/AVC视频的信息隐藏算法的研究比较成熟,如基于修改DCT系数、调制运动矢量信息和调制预测模式的隐藏方案等。其中,基于调制预测模式的隐藏方案研究中,有人提出通过调制帧内预测模式,根据帧内4×4亮度块的预测模式和隐秘信息的映射关系完成嵌入,但是这种信息隐藏方案由于映射关系是根据多个视频测试序列的统计结果建立的,而不同的视频测试序列可能存在差异性,因此这种信息隐藏方案不具有普遍适用性;也有人提出通过引入矩阵编码,建立隐秘信息和预测模式的映射关系,在3个帧内4×4亮度块中嵌入两比特隐秘信息,只需修改一位预测模式;还有人通过引入嵌入/提取矩阵,在7个帧内4×4亮度块中嵌入三比特隐秘信息,只需修改一位预测模式,这种信息隐藏方案有效地避免了比特率的过快增长,但是隐秘信息嵌入容量不高。
针对HEVC视频的信息隐藏算法还处在起步阶段,且由于HEVC在编码结构上与H.264/AVC存在差异性,因此针对H.264/AVC视频的信息隐藏算法并不能直接应用于HEVC视频上。有人提出了一种基于HEVC的视频信息隐藏算法,其利用拉格朗日率失真模型自适应的选取帧内编码模式以决定是否嵌入隐秘信息,调制预测模式变为与隐秘信息奇偶性相匹配的模式中率失真开销最小的预测模式,并采用纹理复杂度算子LBP对帧内亮度块进行筛选,选取纹理复杂度高的区域作为嵌入区域,但由于视频是有损压缩,解码端的重建像素值与编码端的原始像素值存在差异性,在解码端提取隐秘信息时会存在差异性,造成提取的隐秘信息不一致,因此为解决该技术问题,其需要在编码端记录嵌入块的起点作为密钥传送给解码端,然而这样增加了信息的不安全性。也有人提出根据统计的最优预测模式和次优预测模式的概率分布情况,建立预测模式和隐秘信息的分组映射关系,基于映射关系调制预测模式嵌入隐秘信息,修改一比特载体信息嵌入两比特隐秘信息,替换的预测模式选取临近的预测效果相近的模式,嵌入容量大幅提高,但是嵌入后视频的主客观质量和嵌入容量与统计的分组映射表密切相关,由于统计存在局限性,分组的理由不是很充分,且不具有普遍适应性,视频的码率增长2%以上,PSNR值下降0.05dB以上,因此对嵌入后的视频影响较大。综上,现有的针对HEVC视频的信息隐藏算法在隐藏容量、嵌入隐秘信息后的视频的重建质量和信息安全性上仍有改善的空间。
发明内容
本发明所要解决的技术问题是提供一种基于帧内预测模式差值的HEVC视频的信息隐藏方法,其能够很好地保证嵌入隐秘信息后的视频的主客观质量,且隐藏容量大、信息安全性高。
本发明解决上述技术问题所采用的技术方案为:一种基于帧内预测模式差值的HEVC视频的信息隐藏方法,包括隐秘信息嵌入和隐秘信息提取两部分,其特征在于:
所述的隐秘信息嵌入部分具体包括以下步骤:
①-1、在隐秘信息嵌入端,将待嵌入隐秘信息的原始的HEVC视频中当前待编码的帧定义为当前编码帧;
①-2、判断当前编码帧是否为I帧,如果是,则将当前编码帧中当前待处理的第i个预测单元定义为当前预测单元,然后执行步骤①-3;否则,对当前编码帧不处理,然后执行步骤①-11;其中,1≤i≤I,i的初始值为1,I表示当前编码帧中包含的预测单元的总个数;
①-3、判断当前预测单元的尺寸大小是否为4×4,如果是,则执行步骤①-4;否则,对当前预测单元不处理,然后令i=i+1,再执行步骤①-10;其中,i=i+1中的“=”为赋值符号;
①-4、将以当前预测单元为开始的四个连续的尺寸大小为4×4的预测单元作为一个预测单元组合,然后按序将预测单元组合中的前两个预测单元分为第一组,将预测单元组合中的后两个预测单元分为第二组;接着将预测单元组合中的第一组定义为当前组;
①-5、对当前组中的两个预测单元进行帧内预测编码,在帧内预测编码过程中确定当前组中的两个预测单元各自的预测模式,如果当前组中的两个预测单元各自的预测模式的数字标识在区间[2,34]内,则取出待嵌入的隐秘信息中的第p位比特信息p1、第p+1位比特信息p2和第p+2位比特信息p3作为当前待嵌入的三位比特信息,然后将当前待嵌入的三位比特信息转换成一个十进制值,记为ti,ti=22×p1+2×p2+p3,接着计算当前组中的两个预测单元的预测模式的差值的绝对值的余值,记为Frem,Frem=|M1-M2|mod23,之后计算ti与Frem的差值的绝对值,记为m,m=|Frem-ti|,再执行步骤①-6;
如果当前组中的一个预测单元的预测模式的数字标识在区间[2,34]内,而另一个预测单元的预测模式的数字标识为0或1,则对当前组中的两个预测单元各自的预测模式不进行修改,当前组中的两个预测单元没有嵌入隐秘信息,然后执行步骤①-8;
如果当前组中的两个预测单元各自的预测模式的数字标识为0或1,则取出待嵌入的隐秘信息中的第p位比特信息和第p+1位比特信息作为当前待嵌入的两位比特信息,然后执行步骤①-7;
其中,p的初始值为1,符号“||”为取绝对值符号,M1和M2对应表示当前组中的第1个预测单元的预测模式和第2个预测单元的预测模式的数字标识,mod为求余运算符号;
①-6、根据ti、Frem和m,对当前组中的两个预测单元各自的预测模式进行修改,具体过程如下:1)若Frem>ti、m≤22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,符号为向上取整符号,符号为向下取整符号,和及M1=M1'和M2=M2'中的“=”为赋值符号;2)若Frem>ti、m≤22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;3)若Frem>ti、m>22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,m1=23-|Frem-ti|,符号“||”为取绝对值符号,和中的“=”为赋值符号;4)若Frem>ti、m>22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;5)若Frem≤ti、m≤22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;6)若Frem≤ti、m≤22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;7)若Frem≤ti、m>22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;8)若Frem≤ti、m>22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;
然后对修改后的预测模式作如下处理:a、若M1和M2均在区间[2,34]内,则对修改后的预测模式不作处理,对当前组中的两个预测单元采用修改后的预测模式重新进行帧内预测编码,再令p=p+3,之后执行步骤①-8,其中,p=p+3中的“=”为赋值符号;b、若M1和M2中有一个不在区间[2,34]内,则对修改后的预测模式进行再次修改,具体过程如下:1)若M1<2或者M2<2,并且M1<4、M2<4,则令M1″=M1+4,并令M2″=M2+4,然后令M1=M1″,M2=M2″,其中,M1″=M1+4和M2″=M2+4及M1=M1″和M2=M2″中的“=”为赋值符号;2)若M1>34或者M2>34,并且M1>32、M2>32,则令M1″=M1-4,并令M2″=M2-4,然后令M1=M1″,M2=M2″,其中,M1″=M1-4和M2″=M2-4中的“=”为赋值符号;3)若M1<2、M2≥2,则令M1″=2,并令M2″=M2+M1-2,然后令M1=M1″,M2=M2″,其中,M2″=M2+M1-2中的“=”为赋值符号;4)若M1≥2、M2<2,则令M1″=M1+M2-2,并令M2″=2,然后令M1=M1″,M2=M2″,其中,M1″=M1+M2-2中的“=”为赋值符号;5)若M1>34、M2≥2,则令M1″=34,并令M2″=M2+M1-36,然后令M1=M1″,M2=M2″,其中,M2″=M2+M1-36中的“=”为赋值符号;6)若M1≥2、M2>34,则令M1″=M1+M2-36,并令M2″=34,然后令M1=M1″,M2=M2″,其中,M1″=M1+M2-36中的“=”为赋值符号;在再次修改后,对当前组中的两个预测单元采用再次修改后的预测模式重新进行帧内预测编码,再令p=p+3,之后执行步骤①-8,其中,p=p+3中的“=”为赋值符号;
①-7、根据当前待嵌入的两位比特信息,修改当前组中的两个预测单元各自的预测模式,对于当前组中的第1个预测单元,如果当前待嵌入的两比特信息的第一位信息为0,则当当前组中的第1个预测单元的预测模式的数字标识为0时,对当前组中的第1个预测单元的预测模式不进行修改,当当前组中的第1个预测单元的预测模式的数字标识为1时,对当前组中的第1个预测单元的预测模式进行修改,使其数字标识为0,然后采用修改后的预测模式对当前组中的第1个预测单元重新进行帧内预测编码;如果当前待嵌入的两比特信息的第一位信息为1,则当当前组中的第1个预测单元的预测模式的数字标识为0时,对当前组中的第1个预测单元的预测模式进行修改,使其数字标识为1,然后采用修改后的预测模式对当前组中的第1个预测单元重新进行帧内预测编码,当当前组中的第1个预测单元的预测模式的数字标识为1时,对当前组中的第1个预测单元的预测模式不进行修改;
对于当前组中的第2个预测单元,如果当前待嵌入的两比特信息的第二位信息为0,则当当前组中的第2个预测单元的预测模式的数字标识为0时,对当前组中的第2个预测单元的预测模式不进行修改,当当前组中的第2个预测单元的预测模式的数字标识为1时,对当前组中的第2个预测单元的预测模式进行修改,使其数字标识为0,然后采用修改后的预测模式对当前组中的第2个预测单元重新进行帧内预测编码;如果当前待嵌入的两比特信息的第二位信息为1,则当当前组中的第2个预测单元的预测模式的数字标识为0时,对当前组中的第2个预测单元的预测模式进行修改,使其数字标识为1,然后采用修改后的预测模式对当前组中的第2个预测单元重新进行帧内预测编码,当当前组中的第2个预测单元的预测模式的数字标识为1时,对当前组中的第2个预测单元的预测模式不进行修改;
在当前组中的两个预测单元各自的预测模式处理完毕后,当前组中的两个预测单元已嵌入隐秘信息,然后令p=p+2,再执行步骤①-8,其中,p=p+2中的“=”为赋值符号;
①-8、将预测单元组合中的第二组作为当前组,然后返回步骤①-5继续执行,当预测单元组合中的两组处理完毕后,执行步骤①-9;
①-9、如果预测单元组合中的两组中各自的两个预测单元满足:其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,另一个预测单元的原始预测模式的数字标识为0或1,则确定预测单元组合中的所有预测单元均没有嵌入隐秘信息,然后令i=i+4,再执行步骤①-10,其中,i=i+4中的“=”为赋值符号;
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识在区间[2,34]内,另一组中的两个预测单元各自的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-5,再执行步骤①-10,其中,i=i+4和p=p-5中的“=”为赋值符号;
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识在区间[2,34]内,另一组中的其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,而另一个预测单元的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-3,再执行步骤①-10,其中,i=i+4和p=p-3中的“=”为赋值符号;
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识为0或1,另一组中的其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,而另一个预测单元的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-2,再执行步骤①-10,其中,i=i+4和p=p-2中的“=”为赋值符号;
如果预测单元组合中的两组满足:两组中共四个预测单元各自的原始预测模式的数字标识在区间[2,34]内,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-6,再执行步骤①-10,其中,i=i+4和p=p-6中的“=”为赋值符号;
如果预测单元组合中的两组满足:两组中共四个预测单元各自的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-4,再执行步骤①-10,其中,i=i+4和p=p-4中的“=”为赋值符号;
①-10、将当前编码帧中待处理的第i个预测单元作为当前预测单元,然后返回步骤①-3继续执行,直至当前编码帧中的所有预测单元处理完毕;
①-11、将原始的HEVC视频中的下一帧待编码的帧作为当前编码帧,然后返回步骤①-2继续执行,直至隐秘信息全部嵌入完毕或原始的HEVC视频中的所有帧处理完毕;
所述的隐秘信息提取部分具体包括以下步骤:
②-1、在隐秘信息提取端,利用HEVC标准解码器对其接收到的含隐秘信息的HEVC视频码流进行解码;
②-2、将含隐秘信息的HEVC视频码流中当前解码得到的第i'个预测单元定义为当前预测单元,其中,1≤i'≤I',i'的初始值为1,I'表示含隐秘信息的HEVC视频码流中包含的预测单元的总个数;
②-3、判断当前预测单元是否属于I帧,如果是,则执行步骤②-4;否则,不对当前预测单元进行隐秘信息提取,然后令i'=i'+1,再执行步骤②-6;其中,i'=i'+1中的“=”为赋值符号;
②-4、判断当前预测单元的尺寸大小是否为4×4,如果是,则解码当前预测单元的下一个尺寸大小为4×4的预测单元,并将当前预测单元及已解码的下一个尺寸大小为4×4的预测单元作为一个组合,然后执行步骤②-5;否则,不对当前预测单元进行隐秘信息提取,然后令i'=i'+1,再执行步骤②-6;其中,i'=i'+1中的“=”为赋值符号;
②-5、如果组合中的两个预测单元各自的预测模式的数字标识在区间[2,34]内,则计算组合中的两个预测单元的预测模式的和值的余值,记为ti',ti'=(D1+D2)mod23,然后将ti'转换成三位二进制序列,接着将三位二进制序列作为提取出的三位隐秘的比特信息,再令i'=i'+2,之后执行步骤②-6;其中,D1表示组合中的第1个预测单元的预测模式的数字标识,D2表示组合中的第2个预测单元的预测模式的数字标识,D1∈[2,34],D2∈[2,34],mod为求余运算符号,i'=i'+2中的“=”为赋值符号;
如果组合中的其中一个预测单元的预测模式的数字标识在区间[2,34]内,而另一个预测单元的预测模式的数字标识为0或1,则不对组合中的两个预测单元进行隐秘信息提取;然后令i'=i'+2,再执行步骤②-6,其中,i'=i'+2中的“=”为赋值符号;
如果组合中的两个预测单元各自的预测模式的数字标识为0或1,则当预测模式的数字标识为0时,从该预测模式对应的预测单元中提取出一位隐秘的比特信息为0,当预测模式的数字标识为1时,从该预测模式对应的预测单元中提取得出一位隐秘的比特信息为1;然后令i'=i'+2,再执行步骤②-6,其中,i'=i'+2中的“=”为赋值符号;
②-6、将含隐秘信息的HEVC视频码流中解码得到的第i'个预测单元作为当前预测单元,然后返回步骤②-3继续执行,直至提取出含隐秘信息的HEVC视频码流中的隐秘信息或含隐秘信息的HEVC视频码流解码完毕。
与现有技术相比,本发明的优点在于:
1)通过分析HEVC编解码结构,针对尺寸大小为4×4的预测单元,在帧内预测编码过程中调制预测模式嵌入隐秘信息,利用连续的两个尺寸大小为4×4的预测单元的预测模式的差值,根据不同映射规则嵌入两位或三位比特隐秘信息,较常见的基于帧内预测模式的视频信息隐藏方法相比,提高了隐藏容量。
2)由于修改预测模式对嵌入隐秘信息后的视频的主客观质量影响很大,因此本发明方法考虑到预测模式0和1没有方向性,其余预测模式具有方向性,分别处理,对于预测模式都为0或1的两个预测单元,根据隐秘信息的奇偶性修改预测模式嵌入两位比特隐秘信息,对于预测模式都有方向性的两个预测单元,通过两个预测单元的预测模式的差值嵌入三位比特隐秘信息,其他情况不嵌入隐秘信息,这种方式降低了因嵌入隐秘信息造成的视频质量的下降,对视频编码比特率和PSNR值影响很小。
附图说明
图1为本发明方法的隐秘信息嵌入部分的实现流程框图;
图2为一个LCU的划分过程示意图;
图3为HEVC中帧内35种预测模式的示意图;
图4a为Keiba视频的第1帧未嵌隐秘信息的重建图像帧;
图4b为BasketballPass视频的第1帧未嵌隐秘信息的重建图像帧;
图5a为Keiba视频的第1帧利用本发明方法嵌入隐秘信息后的重建图像帧;
图5b为BasketballPass视频的第1帧利用本发明方法嵌入隐秘信息后的重建图像帧;
图6a为BasketballPass视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图;
图6b为Keiba视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图;
图6c为BasketballDrill视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图;
图6d为Vidyo_1视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图;
图6e为Vidyo_3视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
在HEVC视频中引入了三种基本单元,即编码单元(CU)、预测单元(PU)和变换单元(TU)。编码单元的尺寸有四种,分别为64×64、32×32、16×16、8×8,如图2所示采用四叉树结构一个尺寸为64×64的编码单元可以分为4个尺寸为32×32的编码单元,一个尺寸为32×32的编码单元可以分为4个尺寸为16×16的编码单元,一个尺寸为16×16的编码单元可以分为4个尺寸为8×8的编码单元,在四叉树结构中尺寸为64×64的编码单元的深度为0,尺寸为32×32的编码单元的深度为1,尺寸为16×16的编码单元的深度为2,尺寸为8×8的编码单元的深度为3;预测单元是编码单元中传递预测模式的单元,每个预测单元含有一组预测信息,即帧内预测过程中的预测模式和帧间预测过程的运动信息,尺寸为64×64的编码单元对应的预测单元的尺寸也为64×64,尺寸为32×32的编码单元对应的预测单元的尺寸也为32×32,尺寸为16×16的编码单元对应的预测单元的尺寸也为16×16,尺寸为8×8的编码单元对应的预测单元可以分成4个尺寸为4×4的预测单元,每种不同尺寸的预测单元都有35种预测模式,如图3所示,包括33种具有方向性的预测模式、Planar模式和DC模式,DC模式用数字0标识,Planar模式用数字1标识,33种具有方向性的预测模式分别用数字2到34标识。
HEVC采用了基于编码单元的四叉树划分结构,一个最大编码单元LCU(即尺寸为64×64的编码单元)的划分过程为:首先进行LCU的分割过程,当LCU不划分时,其深度为0,尺寸为64×64,利用相同尺寸的预测单元对该编码单元进行预测编码,得到该编码单元的率失真代价;然后进一步将尺寸为64×64的编码单元划分为4个尺寸为32×32的编码单元,尺寸为32×32的编码单元的深度为1,同理可以得到每个尺寸为32×32的编码单元的率失真代价,如此递归的划分下去,当划分到尺寸为8×8的编码单元时,编码单元的尺寸达到最小,此时进行预测编码时,相同尺寸的预测单元可以进一步划分为4个尺寸为4×4的预测单元,至此LCU的递归遍历过程结束,开始进行反向裁剪,在深度为3时,首先需要比较4个尺寸为4×4的预测单元的率失真代价之和与一个尺寸为8×8的预测单元的率失真代价的大小,如果4个尺寸为4×4的预测单元的率失真代价之和小于尺寸为8×8的预测单元的率失真代价,则选择尺寸为4×4的预测单元,否则,选择尺寸为8×8的预测单元,依次类推,直到深度为0,完成编码单元尺寸的选择。
本发明提出了一种基于帧内预测模式差值的HEVC视频的信息隐藏方法,其包括隐秘信息嵌入和隐秘信息提取两部分。其中,隐秘信息嵌入部分的实现流程框图如图1所示,其具体包括以下步骤:
①-1、在隐秘信息嵌入端,将待嵌入隐秘信息的原始的HEVC视频中当前待编码的帧定义为当前编码帧。
①-2、判断当前编码帧是否为I帧,如果是,则将当前编码帧中当前待处理的第i个预测单元定义为当前预测单元,然后执行步骤①-3;否则,对当前编码帧不处理,然后执行步骤①-11;其中,1≤i≤I,i的初始值为1,I表示当前编码帧中包含的预测单元的总个数。
①-3、判断当前预测单元的尺寸大小是否为4×4,如果是,则执行步骤①-4;否则,对当前预测单元不处理,然后令i=i+1,再执行步骤①-10;其中,i=i+1中的“=”为赋值符号。
①-4、将以当前预测单元为开始的四个连续的尺寸大小为4×4的预测单元作为一个预测单元组合,然后按序将预测单元组合中的前两个预测单元分为第一组,将预测单元组合中的后两个预测单元分为第二组;接着将预测单元组合中的第一组定义为当前组。
①-5、对当前组中的两个预测单元进行帧内预测编码,在帧内预测编码过程中确定当前组中的两个预测单元各自的预测模式,如果当前组中的两个预测单元各自的预测模式的数字标识在区间[2,34]内,则取出待嵌入的隐秘信息中的第p位比特信息p1、第p+1位比特信息p2和第p+2位比特信息p3作为当前待嵌入的三位比特信息,然后将当前待嵌入的三位比特信息转换成一个十进制值,记为ti,ti=22×p1+2×p2+p3,接着计算当前组中的两个预测单元的预测模式的差值的绝对值的余值,记为Frem,Frem=|M1-M2|mod23,之后计算ti与Frem的差值的绝对值,记为m,m=|Frem-ti|,再执行步骤①-6。
如果当前组中的一个预测单元的预测模式的数字标识在区间[2,34]内,而另一个预测单元的预测模式的数字标识为0或1,则对当前组中的两个预测单元各自的预测模式不进行修改,当前组中的两个预测单元没有嵌入隐秘信息,然后执行步骤①-8。
如果当前组中的两个预测单元各自的预测模式的数字标识为0或1,则取出待嵌入的隐秘信息中的第p位比特信息和第p+1位比特信息作为当前待嵌入的两位比特信息,然后执行步骤①-7。
其中,1≤p<P,p的初始值为1,P表示隐秘信息的总长度,符号“||”为取绝对值符号,M1和M2对应表示当前组中的第1个预测单元的预测模式和第2个预测单元的预测模式的数字标识,mod为求余运算符号。
①-6、根据ti、Frem和m,对当前组中的两个预测单元各自的预测模式进行修改,具体过程如下:1)若Frem>ti、m≤22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,符号为向上取整符号,符号为向下取整符号,和及M1=M1'和M2=M2'中的“=”为赋值符号;2)若Frem>ti、m≤22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;3)若Frem>ti、m>22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,m1=23-|Frem-ti|,符号“||”为取绝对值符号,和中的“=”为赋值符号;4)若Frem>ti、m>22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;5)若Frem≤ti、m≤22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;6)若Frem≤ti、m≤22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;7)若Frem≤ti、m>22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;8)若Frem≤ti、m>22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号。
然后为了保证载密视频的主客观质量和隐秘信息提取的正确性,对修改后的预测模式作如下处理:a、若M1和M2均在区间[2,34]内,则对修改后的预测模式不作处理,对当前组中的两个预测单元采用修改后的预测模式重新进行帧内预测编码,再令p=p+3,之后执行步骤①-8,其中,p=p+3中的“=”为赋值符号;b、若M1和M2中有一个不在区间[2,34]内,则对修改后的预测模式进行再次修改,具体过程如下:1)若M1<2或者M2<2,并且M1<4、M2<4,则令M1″=M1+4,并令M2″=M2+4,然后令M1=M1″,M2=M2″,其中,M1″=M1+4和M2″=M2+4及M1=M1″和M2=M2″中的“=”为赋值符号;2)若M1>34或者M2>34,并且M1>32、M2>32,则令M1″=M1-4,并令M2″=M2-4,然后令M1=M1″,M2=M2″,其中,M1″=M1-4和M2″=M2-4中的“=”为赋值符号;3)若M1<2、M2≥2,则令M1″=2,并令M2″=M2+M1-2,然后令M1=M1″,M2=M2″,其中,M2″=M2+M1-2中的“=”为赋值符号;4)若M1≥2、M2<2,则令M1″=M1+M2-2,并令M2″=2,然后令M1=M1″,M2=M2″,其中,M1″=M1+M2-2中的“=”为赋值符号;5)若M1>34、M2≥2,则令M1″=34,并令M2″=M2+M1-36,然后令M1=M1″,M2=M2″,其中,M2″=M2+M1-36中的“=”为赋值符号;6)若M1≥2、M2>34,则令M1″=M1+M2-36,并令M2″=34,然后令M1=M1″,M2=M2″,其中,M1″=M1+M2-36中的“=”为赋值符号;在再次修改后,对当前组中的两个预测单元采用再次修改后的预测模式重新进行帧内预测编码,再令p=p+3,之后执行步骤①-8,其中,p=p+3中的“=”为赋值符号。
①-7、根据当前待嵌入的两位比特信息,修改当前组中的两个预测单元各自的预测模式,对于当前组中的第1个预测单元,如果当前待嵌入的两比特信息的第一位信息为0,则当当前组中的第1个预测单元的预测模式的数字标识为0时,对当前组中的第1个预测单元的预测模式不进行修改,当当前组中的第1个预测单元的预测模式的数字标识为1时,对当前组中的第1个预测单元的预测模式进行修改,使其数字标识为0,然后采用修改后的预测模式对当前组中的第1个预测单元重新进行帧内预测编码;如果当前待嵌入的两比特信息的第一位信息为1,则当当前组中的第1个预测单元的预测模式的数字标识为0时,对当前组中的第1个预测单元的预测模式进行修改,使其数字标识为1,然后采用修改后的预测模式对当前组中的第1个预测单元重新进行帧内预测编码,当当前组中的第1个预测单元的预测模式的数字标识为1时,对当前组中的第1个预测单元的预测模式不进行修改。
对于当前组中的第2个预测单元,如果当前待嵌入的两比特信息的第二位信息为0,则当当前组中的第2个预测单元的预测模式的数字标识为0时,对当前组中的第2个预测单元的预测模式不进行修改,当当前组中的第2个预测单元的预测模式的数字标识为1时,对当前组中的第2个预测单元的预测模式进行修改,使其数字标识为0,然后采用修改后的预测模式对当前组中的第2个预测单元重新进行帧内预测编码;如果当前待嵌入的两比特信息的第二位信息为1,则当当前组中的第2个预测单元的预测模式的数字标识为0时,对当前组中的第2个预测单元的预测模式进行修改,使其数字标识为1,然后采用修改后的预测模式对当前组中的第2个预测单元重新进行帧内预测编码,当当前组中的第2个预测单元的预测模式的数字标识为1时,对当前组中的第2个预测单元的预测模式不进行修改。
在当前组中的两个预测单元各自的预测模式处理完毕后,当前组中的两个预测单元已嵌入隐秘信息,然后令p=p+2,再执行步骤①-8,其中,p=p+2中的“=”为赋值符号。
①-8、将预测单元组合中的第二组作为当前组,然后返回步骤①-5继续执行,当预测单元组合中的两组处理完毕后,执行步骤①-9。
①-9、如果预测单元组合中的两组中各自的两个预测单元满足:其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,另一个预测单元的原始预测模式的数字标识为0或1,则确定预测单元组合中的所有预测单元均没有嵌入隐秘信息,然后令i=i+4,再执行步骤①-10,其中,i=i+4中的“=”为赋值符号。
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识在区间[2,34]内,另一组中的两个预测单元各自的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-5,再执行步骤①-10,其中,i=i+4和p=p-5中的“=”为赋值符号。
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识在区间[2,34]内,另一组中的其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,而另一个预测单元的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-3,再执行步骤①-10,其中,i=i+4和p=p-3中的“=”为赋值符号。
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识为0或1,另一组中的其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,而另一个预测单元的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-2,再执行步骤①-10,其中,i=i+4和p=p-2中的“=”为赋值符号。
如果预测单元组合中的两组满足:两组中共四个预测单元各自的原始预测模式的数字标识在区间[2,34]内,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-6,再执行步骤①-10,其中,i=i+4和p=p-6中的“=”为赋值符号。
如果预测单元组合中的两组满足:两组中共四个预测单元各自的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-4,再执行步骤①-10,其中,i=i+4和p=p-4中的“=”为赋值符号。
①-10、将当前编码帧中待处理的第i个预测单元作为当前预测单元,然后返回步骤①-3继续执行,直至当前编码帧中的所有预测单元处理完毕。
①-11、将原始的HEVC视频中的下一帧待编码的帧作为当前编码帧,然后返回步骤①-2继续执行,直至隐秘信息全部嵌入完毕或原始的HEVC视频中的所有帧处理完毕。
隐秘信息提取部分具体包括以下步骤:
②-1、在隐秘信息提取端,利用HEVC标准解码器对其接收到的含隐秘信息的HEVC视频码流进行解码。
②-2、将含隐秘信息的HEVC视频码流中当前解码得到的第i'个预测单元定义为当前预测单元,其中,1≤i'≤I',i'的初始值为1,I'表示含隐秘信息的HEVC视频码流中包含的预测单元的总个数。
②-3、判断当前预测单元是否属于I帧,如果是,则执行步骤②-4;否则,不对当前预测单元进行隐秘信息提取,然后令i'=i'+1,再执行步骤②-6;其中,i'=i'+1中的“=”为赋值符号。
②-4、判断当前预测单元的尺寸大小是否为4×4,如果是,则解码当前预测单元的下一个尺寸大小为4×4的预测单元,并将当前预测单元及已解码的下一个尺寸大小为4×4的预测单元作为一个组合,然后执行步骤②-5;否则,不对当前预测单元进行隐秘信息提取,然后令i'=i'+1,再执行步骤②-6;其中,i'=i'+1中的“=”为赋值符号。
②-5、如果组合中的两个预测单元各自的预测模式的数字标识在区间[2,34]内,则计算组合中的两个预测单元的预测模式的和值的余值,记为ti',ti'=(D1+D2)mod23,然后将ti'转换成三位二进制序列,接着将三位二进制序列作为提取出的三位隐秘的比特信息,再令i'=i'+2,之后执行步骤②-6;其中,D1表示组合中的第1个预测单元的预测模式的数字标识,D2表示组合中的第2个预测单元的预测模式的数字标识,D1∈[2,34],D2∈[2,34],mod为求余运算符号,i'=i'+2中的“=”为赋值符号。
如果组合中的其中一个预测单元的预测模式的数字标识在区间[2,34]内,而另一个预测单元的预测模式的数字标识为0或1,则不对组合中的两个预测单元进行隐秘信息提取;然后令i'=i'+2,再执行步骤②-6,其中,i'=i'+2中的“=”为赋值符号。
如果组合中的两个预测单元各自的预测模式的数字标识为0或1,则当预测模式的数字标识为0时,从该预测模式对应的预测单元中提取出一位隐秘的比特信息为0,当预测模式的数字标识为1时,从该预测模式对应的预测单元中提取得出一位隐秘的比特信息为1;然后令i'=i'+2,再执行步骤②-6,其中,i'=i'+2中的“=”为赋值符号。
②-6、将含隐秘信息的HEVC视频码流中解码得到的第i'个预测单元作为当前预测单元,然后返回步骤②-3继续执行,直至提取出含隐秘信息的HEVC视频码流中的隐秘信息或含隐秘信息的HEVC视频码流解码完毕。
以下为对本发明方法进行测试,以说明本发明方法的有效性和可行性。
本发明方法测试主要在HEVC测试模型HM12.0上进行。测试平台的硬件配置为:Intel(R)Core(TM)i5-2450CPU,主频2.50GHz,内存4.0GB;操作系统为Windows 7,64位;开发工具为Microsoft Visual Studio 2010。HEVC测试模型HM12.0的主要编码参数为:高效率配置,随机访问模式,编码帧数为96帧,I帧的图像组GOP(Group ofPictures)的长度为8,I帧的周期长度Intra Period(Period of I-Frame)为16。
图4a给出了Keiba视频的第1帧未嵌隐秘信息的重建图像帧,图4b给出了BasketballPass视频的第1帧未嵌隐秘信息的重建图像帧,图5a给出了Keiba视频的第1帧利用本发明方法嵌入隐秘信息后的重建图像帧,图5b给出了BasketballPass视频的第1帧利用本发明方法嵌入隐秘信息后的重建图像帧。从图4a至图5b中可以看出,利用本发明方法进行隐秘信息隐藏并没有对视频质量造成感知影响。
图6a给出了BasketballPass视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图;图6b给出了Keiba视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图;图6c给出了BasketballDrill视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图;图6d给出了Vidyo_1视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图;图6e给出了Vidyo_3视频未嵌隐秘信息的PSNR曲线与利用本发明方法嵌入隐秘信息后的PSNR曲线对比图。从图6a至图6e中可以看出,利用本发明方法嵌入隐秘信息后的视频的PSNR值略有降低,但嵌入隐秘信息后的视频与原始视频的PSNR差值都在0.05dB以内,对视频的画质质量没有造成影响。
计算平均峰值信噪比PSNR和编码比特率的变化幅度,对应记为ΔPSNR和BRI,ΔPSNR=PSNRY'-PSNRY,其中,PSNRY'表示利用本发明方法嵌入隐秘信息后的I帧的亮度值的平均峰值信噪比,PSNRY表示未嵌隐秘信息前的I帧的亮度值的平均峰值信噪比,R'表示利用本发明方法嵌入隐秘信息后的I帧的比特率,R表示未嵌隐秘信息前的I帧的比特率。表1列出了QP=26时BasketballPass、Keiba、BasketballDrill、Vidyo_1和Vidyo_3视频测试序列的性能测试结果,通过对表1中的数据分析,发现:对于不同的视频测试序列,帧内4×4块的数目不同,导致视频隐藏容量的差异;嵌入信息前后的峰值信噪比PSNR值和编码比特率变化不大,对视频质量影响很小,满足了信息隐藏中的视觉隐蔽性。
表1各视频测试序列的性能测试结果(QP=26)
Claims (1)
1.一种基于帧内预测模式差值的HEVC视频的信息隐藏方法,包括隐秘信息嵌入和隐秘信息提取两部分,其特征在于:
所述的隐秘信息嵌入部分具体包括以下步骤:
①-1、在隐秘信息嵌入端,将待嵌入隐秘信息的原始的HEVC视频中当前待编码的帧定义为当前编码帧;
①-2、判断当前编码帧是否为I帧,如果是,则将当前编码帧中当前待处理的第i个预测单元定义为当前预测单元,然后执行步骤①-3;否则,对当前编码帧不处理,然后执行步骤①-11;其中,1≤i≤I,i的初始值为1,I表示当前编码帧中包含的预测单元的总个数;
①-3、判断当前预测单元的尺寸大小是否为4×4,如果是,则执行步骤①-4;否则,对当前预测单元不处理,然后令i=i+1,再执行步骤①-10;其中,i=i+1中的“=”为赋值符号;
①-4、将以当前预测单元为开始的四个连续的尺寸大小为4×4的预测单元作为一个预测单元组合,然后按序将预测单元组合中的前两个预测单元分为第一组,将预测单元组合中的后两个预测单元分为第二组;接着将预测单元组合中的第一组定义为当前组;
①-5、对当前组中的两个预测单元进行帧内预测编码,在帧内预测编码过程中确定当前组中的两个预测单元各自的预测模式,如果当前组中的两个预测单元各自的预测模式的数字标识在区间[2,34]内,则取出待嵌入的隐秘信息中的第p位比特信息p1、第p+1位比特信息p2和第p+2位比特信息p3作为当前待嵌入的三位比特信息,然后将当前待嵌入的三位比特信息转换成一个十进制值,记为ti,ti=22×p1+2×p2+p3,接着计算当前组中的两个预测单元的预测模式的差值的绝对值的余值,记为Frem,Frem=|M1-M2|mod23,之后计算ti与Frem的差值的绝对值,记为m,m=|Frem-ti|,再执行步骤①-6;
如果当前组中的一个预测单元的预测模式的数字标识在区间[2,34]内,而另一个预测单元的预测模式的数字标识为0或1,则对当前组中的两个预测单元各自的预测模式不进行修改,当前组中的两个预测单元没有嵌入隐秘信息,然后执行步骤①-8;
如果当前组中的两个预测单元各自的预测模式的数字标识为0或1,则取出待嵌入的隐秘信息中的第p位比特信息和第p+1位比特信息作为当前待嵌入的两位比特信息,然后执行步骤①-7;
其中,p的初始值为1,符号“| |”为取绝对值符号,M1和M2对应表示当前组中的第1个预测单元的预测模式和第2个预测单元的预测模式的数字标识,mod为求余运算符号;
①-6、根据ti、Frem和m,对当前组中的两个预测单元各自的预测模式进行修改,具体过程如下:1)若Frem>ti、m≤22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,符号为向上取整符号,符号为向下取整符号,和及M1=M1'和M2=M2'中的“=”为赋值符号;2)若Frem>ti、m≤22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;3)若Frem>ti、m>22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,m1=23-|Frem-ti|,符号“||”为取绝对值符号,和中的“=”为赋值符号;4)若Frem>ti、m>22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;5)若Frem≤ti、m≤22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;6)若Frem≤ti、m≤22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;7)若Frem≤ti、m>22且M1≥M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;8)若Frem≤ti、m>22且M1<M2,则令并令然后令M1=M1',M2=M2',其中,和中的“=”为赋值符号;
然后对修改后的预测模式作如下处理:a、若M1和M2均在区间[2,34]内,则对修改后的预测模式不作处理,对当前组中的两个预测单元采用修改后的预测模式重新进行帧内预测编码,再令p=p+3,之后执行步骤①-8,其中,p=p+3中的“=”为赋值符号;b、若M1和M2中有一个不在区间[2,34]内,则对修改后的预测模式进行再次修改,具体过程如下:1)若M1<2或者M2<2,并且M1<4、M2<4,则令M1″=M1+4,并令M2″=M2+4,然后令M1=M1″,M2=M2″,其中,M1″=M1+4和M2″=M2+4及M1=M1″和M2=M2″中的“=”为赋值符号;2)若M1>34或者M2>34,并且M1>32、M2>32,则令M1″=M1-4,并令M2″=M2-4,然后令M1=M1″,M2=M2″,其中,M1″=M1-4和M2″=M2-4中的“=”为赋值符号;3)若M1<2、M2≥2,则令M1″=2,并令M2″=M2+M1-2,然后令M1=M1″,M2=M2″,其中,M2″=M2+M1-2中的“=”为赋值符号;4)若M1≥2、M2<2,则令M1″=M1+M2-2,并令M2″=2,然后令M1=M1″,M2=M2″,其中,M1″=M1+M2-2中的“=”为赋值符号;5)若M1>34、M2≥2,则令M1″=34,并令M2″=M2+M1-36,然后令M1=M1″,M2=M2″,其中,M2″=M2+M1-36中的“=”为赋值符号;6)若M1≥2、M2>34,则令M1″=M1+M2-36,并令M2″=34,然后令M1=M1″,M2=M2″,其中,M1″=M1+M2-36中的“=”为赋值符号;在再次修改后,对当前组中的两个预测单元采用再次修改后的预测模式重新进行帧内预测编码,再令p=p+3,之后执行步骤①-8,其中,p=p+3中的“=”为赋值符号;
①-7、根据当前待嵌入的两位比特信息,修改当前组中的两个预测单元各自的预测模式,对于当前组中的第1个预测单元,如果当前待嵌入的两比特信息的第一位信息为0,则当当前组中的第1个预测单元的预测模式的数字标识为0时,对当前组中的第1个预测单元的预测模式不进行修改,当当前组中的第1个预测单元的预测模式的数字标识为1时,对当前组中的第1个预测单元的预测模式进行修改,使其数字标识为0,然后采用修改后的预测模式对当前组中的第1个预测单元重新进行帧内预测编码;如果当前待嵌入的两比特信息的第一位信息为1,则当当前组中的第1个预测单元的预测模式的数字标识为0时,对当前组中的第1个预测单元的预测模式进行修改,使其数字标识为1,然后采用修改后的预测模式对当前组中的第1个预测单元重新进行帧内预测编码,当当前组中的第1个预测单元的预测模式的数字标识为1时,对当前组中的第1个预测单元的预测模式不进行修改;
对于当前组中的第2个预测单元,如果当前待嵌入的两比特信息的第二位信息为0,则当当前组中的第2个预测单元的预测模式的数字标识为0时,对当前组中的第2个预测单元的预测模式不进行修改,当当前组中的第2个预测单元的预测模式的数字标识为1时,对当前组中的第2个预测单元的预测模式进行修改,使其数字标识为0,然后采用修改后的预测模式对当前组中的第2个预测单元重新进行帧内预测编码;如果当前待嵌入的两比特信息的第二位信息为1,则当当前组中的第2个预测单元的预测模式的数字标识为0时,对当前组中的第2个预测单元的预测模式进行修改,使其数字标识为1,然后采用修改后的预测模式对当前组中的第2个预测单元重新进行帧内预测编码,当当前组中的第2个预测单元的预测模式的数字标识为1时,对当前组中的第2个预测单元的预测模式不进行修改;
在当前组中的两个预测单元各自的预测模式处理完毕后,当前组中的两个预测单元已嵌入隐秘信息,然后令p=p+2,再执行步骤①-8,其中,p=p+2中的“=”为赋值符号;
①-8、将预测单元组合中的第二组作为当前组,然后返回步骤①-5继续执行,当预测单元组合中的两组处理完毕后,执行步骤①-9;
①-9、如果预测单元组合中的两组中各自的两个预测单元满足:其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,另一个预测单元的原始预测模式的数字标识为0或1,则确定预测单元组合中的所有预测单元均没有嵌入隐秘信息,然后令i=i+4,再执行步骤①-10,其中,i=i+4中的“=”为赋值符号;
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识在区间[2,34]内,另一组中的两个预测单元各自的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-5,再执行步骤①-10,其中,i=i+4和p=p-5中的“=”为赋值符号;
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识在区间[2,34]内,另一组中的其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,而另一个预测单元的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-3,再执行步骤①-10,其中,i=i+4和p=p-3中的“=”为赋值符号;
如果预测单元组合中的两组满足:其中一组中的两个预测单元各自的原始预测模式的数字标识为0或1,另一组中的其中一个预测单元的原始预测模式的数字标识在区间[2,34]内,而另一个预测单元的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-2,再执行步骤①-10,其中,i=i+4和p=p-2中的“=”为赋值符号;
如果预测单元组合中的两组满足:两组中共四个预测单元各自的原始预测模式的数字标识在区间[2,34]内,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-6,再执行步骤①-10,其中,i=i+4和p=p-6中的“=”为赋值符号;
如果预测单元组合中的两组满足:两组中共四个预测单元各自的原始预测模式的数字标识为0或1,则在预测模式修改后的前提下,比较预测单元组合中的所有预测单元的率失真代价之和与这四个尺寸大小为4×4的预测单元的上一级尺寸大小为8×8的预测单元的率失真代价,当前者小于后者时,选择尺寸大小为4×4的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型;当前者大于或等于后者时,选择尺寸大小为8×8的预测单元作为对应的尺寸大小为8×8的编码单元的预测单元类型,然后令i=i+4,并令p=p-4,再执行步骤①-10,其中,i=i+4和p=p-4中的“=”为赋值符号;
①-10、将当前编码帧中待处理的第i个预测单元作为当前预测单元,然后返回步骤①-3继续执行,直至当前编码帧中的所有预测单元处理完毕;
①-11、将原始的HEVC视频中的下一帧待编码的帧作为当前编码帧,然后返回步骤①-2继续执行,直至隐秘信息全部嵌入完毕或原始的HEVC视频中的所有帧处理完毕;
所述的隐秘信息提取部分具体包括以下步骤:
②-1、在隐秘信息提取端,利用HEVC标准解码器对其接收到的含隐秘信息的HEVC视频码流进行解码;
②-2、将含隐秘信息的HEVC视频码流中当前解码得到的第i'个预测单元定义为当前预测单元,其中,1≤i'≤I',i'的初始值为1,I'表示含隐秘信息的HEVC视频码流中包含的预测单元的总个数;
②-3、判断当前预测单元是否属于I帧,如果是,则执行步骤②-4;否则,不对当前预测单元进行隐秘信息提取,然后令i'=i'+1,再执行步骤②-6;其中,i'=i'+1中的“=”为赋值符号;
②-4、判断当前预测单元的尺寸大小是否为4×4,如果是,则解码当前预测单元的下一个尺寸大小为4×4的预测单元,并将当前预测单元及已解码的下一个尺寸大小为4×4的预测单元作为一个组合,然后执行步骤②-5;否则,不对当前预测单元进行隐秘信息提取,然后令i'=i'+1,再执行步骤②-6;其中,i'=i'+1中的“=”为赋值符号;
②-5、如果组合中的两个预测单元各自的预测模式的数字标识在区间[2,34]内,则计算组合中的两个预测单元的预测模式的和值的余值,记为ti',ti'=(D1+D2)mod23,然后将ti'转换成三位二进制序列,接着将三位二进制序列作为提取出的三位隐秘的比特信息,再令i'=i'+2,之后执行步骤②-6;其中,D1表示组合中的第1个预测单元的预测模式的数字标识,D2表示组合中的第2个预测单元的预测模式的数字标识,D1∈[2,34],D2∈[2,34],mod为求余运算符号,i'=i'+2中的“=”为赋值符号;
如果组合中的其中一个预测单元的预测模式的数字标识在区间[2,34]内,而另一个预测单元的预测模式的数字标识为0或1,则不对组合中的两个预测单元进行隐秘信息提取;然后令i'=i'+2,再执行步骤②-6,其中,i'=i'+2中的“=”为赋值符号;
如果组合中的两个预测单元各自的预测模式的数字标识为0或1,则当预测模式的数字标识为0时,从该预测模式对应的预测单元中提取出一位隐秘的比特信息为0,当预测模式的数字标识为1时,从该预测模式对应的预测单元中提取得出一位隐秘的比特信息为1;然后令i'=i'+2,再执行步骤②-6,其中,i'=i'+2中的“=”为赋值符号;
②-6、将含隐秘信息的HEVC视频码流中解码得到的第i'个预测单元作为当前预测单元,然后返回步骤②-3继续执行,直至提取出含隐秘信息的HEVC视频码流中的隐秘信息或含隐秘信息的HEVC视频码流解码完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510014313.7A CN104602016A (zh) | 2015-01-12 | 2015-01-12 | 一种基于帧内预测模式差值的hevc视频的信息隐藏方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510014313.7A CN104602016A (zh) | 2015-01-12 | 2015-01-12 | 一种基于帧内预测模式差值的hevc视频的信息隐藏方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104602016A true CN104602016A (zh) | 2015-05-06 |
Family
ID=53127455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510014313.7A Pending CN104602016A (zh) | 2015-01-12 | 2015-01-12 | 一种基于帧内预测模式差值的hevc视频的信息隐藏方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104602016A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104902281A (zh) * | 2015-05-25 | 2015-09-09 | 宁波大学 | 一种基于汉明码+1的hevc视频的信息隐藏方法 |
CN105049871A (zh) * | 2015-07-13 | 2015-11-11 | 宁波大学 | 一种基于hevc的音频信息嵌入方法及提取和重构方法 |
CN105141948A (zh) * | 2015-09-22 | 2015-12-09 | 天津师范大学 | 一种改进的hevc样点自适应补偿方法 |
CN106998471A (zh) * | 2017-03-16 | 2017-08-01 | 中国人民武装警察部队工程大学 | 一种修改预测模式的视频隐藏方法及视频提取方法 |
CN109167999A (zh) * | 2018-09-04 | 2019-01-08 | 宁波工程学院 | 一种hevc视频加密与解密方法 |
CN111614958A (zh) * | 2020-05-26 | 2020-09-01 | 郑州师范学院 | 一种基于半像素运动补偿的视频隐写方法 |
CN112291564A (zh) * | 2020-11-20 | 2021-01-29 | 西安邮电大学 | 优化监控视频感知质量的hevc帧内码率控制方法 |
CN112565779A (zh) * | 2020-12-12 | 2021-03-26 | 四川大学 | 一种基于失真漂移的视频隐写方法 |
CN113840146A (zh) * | 2021-09-30 | 2021-12-24 | 中南大学 | 一种视频信息隐藏方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090010483A1 (en) * | 2007-07-02 | 2009-01-08 | The Hong Kong University Of Science And Technology | Block-based lossless data hiding in the delta domain |
CN101621692A (zh) * | 2009-07-27 | 2010-01-06 | 宁波大学 | 一种基于预测模式的h.264/avc视频信息隐藏方法 |
US20130335784A1 (en) * | 2012-06-19 | 2013-12-19 | Andrew F. Kurtz | Spectral edge marking for steganography or watermarking |
CN104159117A (zh) * | 2014-07-22 | 2014-11-19 | 宁波大学 | 一种hevc视频的信息隐藏方法 |
-
2015
- 2015-01-12 CN CN201510014313.7A patent/CN104602016A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090010483A1 (en) * | 2007-07-02 | 2009-01-08 | The Hong Kong University Of Science And Technology | Block-based lossless data hiding in the delta domain |
CN101621692A (zh) * | 2009-07-27 | 2010-01-06 | 宁波大学 | 一种基于预测模式的h.264/avc视频信息隐藏方法 |
US20130335784A1 (en) * | 2012-06-19 | 2013-12-19 | Andrew F. Kurtz | Spectral edge marking for steganography or watermarking |
CN104159117A (zh) * | 2014-07-22 | 2014-11-19 | 宁波大学 | 一种hevc视频的信息隐藏方法 |
Non-Patent Citations (1)
Title |
---|
CHUNG-MING WANG,ET AL.: "A high quality steganographic method with pixel-value differencing and modulus function", 《THE JOURNAL OF SYSTEMS AND SOFTWARE》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104902281B (zh) * | 2015-05-25 | 2017-12-26 | 宁波大学 | 一种基于汉明码+1的hevc视频的信息隐藏方法 |
CN104902281A (zh) * | 2015-05-25 | 2015-09-09 | 宁波大学 | 一种基于汉明码+1的hevc视频的信息隐藏方法 |
CN105049871A (zh) * | 2015-07-13 | 2015-11-11 | 宁波大学 | 一种基于hevc的音频信息嵌入方法及提取和重构方法 |
CN105049871B (zh) * | 2015-07-13 | 2018-03-09 | 宁波大学 | 一种基于hevc的音频信息嵌入方法及提取和重构方法 |
CN105141948A (zh) * | 2015-09-22 | 2015-12-09 | 天津师范大学 | 一种改进的hevc样点自适应补偿方法 |
CN106998471B (zh) * | 2017-03-16 | 2020-03-17 | 中国人民武装警察部队工程大学 | 一种修改预测模式的视频隐藏方法及视频提取方法 |
CN106998471A (zh) * | 2017-03-16 | 2017-08-01 | 中国人民武装警察部队工程大学 | 一种修改预测模式的视频隐藏方法及视频提取方法 |
CN109167999A (zh) * | 2018-09-04 | 2019-01-08 | 宁波工程学院 | 一种hevc视频加密与解密方法 |
CN111614958A (zh) * | 2020-05-26 | 2020-09-01 | 郑州师范学院 | 一种基于半像素运动补偿的视频隐写方法 |
CN112291564A (zh) * | 2020-11-20 | 2021-01-29 | 西安邮电大学 | 优化监控视频感知质量的hevc帧内码率控制方法 |
CN112291564B (zh) * | 2020-11-20 | 2021-09-14 | 西安邮电大学 | 优化监控视频感知质量的hevc帧内码率控制方法 |
CN112565779A (zh) * | 2020-12-12 | 2021-03-26 | 四川大学 | 一种基于失真漂移的视频隐写方法 |
CN112565779B (zh) * | 2020-12-12 | 2021-10-29 | 四川大学 | 一种基于失真漂移的视频隐写方法 |
CN113840146A (zh) * | 2021-09-30 | 2021-12-24 | 中南大学 | 一种视频信息隐藏方法及系统 |
CN113840146B (zh) * | 2021-09-30 | 2022-10-21 | 中南大学 | 一种视频信息隐藏方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104602016A (zh) | 一种基于帧内预测模式差值的hevc视频的信息隐藏方法 | |
US10368051B2 (en) | 3D-HEVC inter-frame information hiding method based on visual perception | |
CN104159117B (zh) | 一种hevc视频的信息隐藏方法 | |
US10237576B2 (en) | 3D-HEVC depth video information hiding method based on single-depth intra mode | |
CN108322747B (zh) | 一种面向超高清视频的编码单元划分优化方法 | |
CN103338376B (zh) | 一种基于运动矢量的视频隐写方法 | |
KR20090052849A (ko) | 비디오 색 인핸스먼트 데이터를 인코딩하기 위한 방법 및 장치, 그리고 비디오 색 인핸스먼트 데이터를 디코딩하기 위한 방법 및 장치 | |
CN102484699B (zh) | 对图像进行编码和解码的方法、用于编码和解码的对应装置 | |
US9503751B2 (en) | Method and apparatus for simplified depth coding with extended prediction modes | |
CN102685500B (zh) | 基于信息变长分组结构的h.264大容量信息隐藏方法 | |
CN107318022B (zh) | 一种基于h.265标准无失真漂移的视频隐写方法 | |
CN109819260B (zh) | 基于多嵌入域融合的视频隐写方法和装置 | |
CN114786019A (zh) | 图像预测方法、编码器、解码器以及存储介质 | |
KR20130070619A (ko) | 참조 블록 파형 정보에 기반하여 인트라 영상을 부호화 하는 장치 및 복호화 하는 장치 | |
CN105681803A (zh) | 一种大容量的hevc视频信息隐藏方法 | |
CN104902281B (zh) | 一种基于汉明码+1的hevc视频的信息隐藏方法 | |
Ramanathan et al. | Random access for compressed light fields using multiple representations | |
CN110113605A (zh) | 一种基于直方图平移可逆信息隐藏的视频差错掩盖方法 | |
CN113329229A (zh) | 高效保真的h·265视频信息高容量隐藏法 | |
Xing et al. | A multi-embedding domain video steganography algorithm based on TU partitioning and intra prediction mode | |
CN109361926B (zh) | H.264/avc视频视觉质量无损可逆信息隐藏方法 | |
CN101986713B (zh) | 基于视点合成的多视点容错编码框架 | |
CN108024114B (zh) | 一种基于标志位参数修改的大容量无损hevc信息隐藏方法 | |
Jiaji et al. | An information hiding algorithm for HEVC based on intra prediction mode and block code | |
CN105704497A (zh) | 面向3d-hevc的编码单元尺寸快速选择算法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150506 |