一种对视频进行帧内信息隐藏的方法以及装置与流程

文档序号:17759255发布日期:2019-05-24 21:32阅读:326来源:国知局
一种对视频进行帧内信息隐藏的方法以及装置与流程

本发明涉及计算机网络技术领域,具体来说,涉及一种对视频进行帧内信息隐藏的方法以及装置。



背景技术:

帧内信息隐藏是视频隐写方法中最常用的方法,但由于嵌入操作带来的像素值的变化会通过帧内预测影响到相邻块产生误差,并且该误差通过帧内预测传递下去并逐步累积导致严重的视觉失真造成帧内失真漂移,破坏隐写的不可感知性。现有的h.264视频信息隐藏算法为了保证秘密信息在视觉上的不可感知性,一般选择较小的嵌入量,而甚少考虑控制帧内失真漂移问题。为了克服帧内失真漂移,现有技术利用耦合系数来控制帧内失真漂移,或者利用邻块帧内预测模式来筛选不会产生失真漂移的特殊块进行嵌入,上述两种方案都是针对4×4亮度块进行嵌入。

耦合系数控制的方法是通过一个系数嵌入另一个系数补偿的方式,使得嵌入块内特定的参考像素不产生失真,若能进一步研究找到匹配的预测模式来进行嵌入,则可以避免失真漂移。但是耦合系数依然会使块内其它像素产生失真,该失真与补偿系数的变动大小相关。数据表明,采用耦合系数控制的方法在h.265环境下的嵌入失真明显高于h.264。采用特殊块嵌入的方法对嵌入块的邻块帧内预测模式要求严格,会极大限制嵌入容量。而h.265视频编码标准与h.264视频编码标准的区别在于:对4×4亮度块使用的是离散正弦变换(discretesinetransform,dst),而对8×8及以上尺寸亮度块使用的是离散余弦变换(discretecosinetransform,dct),且帧内预测模式增加到35种,这使得基于dct变换的耦合系数控制方案不再能套用于h.265视频编码;针对h.265视频编码标准的控制帧内失真漂移的隐写方法还有待进一步研究。



技术实现要素:

针对相关技术中的上述问题,本发明提出一种对视频进行帧内信息隐藏的方法以及装置,能够解决采用现有技术进行h.265视频帧内信息嵌入引起失真漂移的技术问题。

本发明的技术方案是这样实现的:

根据本发明的一个方面,提供了一种对视频进行帧内信息隐藏的方法,视频为h.265视频,该方法包括:

s1,对帧内预测过程中发生嵌入误差传递的参考像素与预测模式的对应关系构建模型,以获得参考块对应不同预测模式的像素使用模型;

s2,根据预测模式的参考像素位置和像素使用模型来确定误差在块间传递的判断条件;

s3,根据判断条件确定嵌入块是否会发生误差块间传递,嵌入块为8×8嵌入块;

s4,对不会发生误差块间传递的嵌入块,直接进行信息隐藏;对会发生误差块间传递的嵌入块,利用具有离散余弦变换补偿效应的多元组进行嵌入和补偿,以阻断块内误差累积,控制帧内失真漂移。

根据本发明的实施例,多元组系数为(c1,c2,c3),其中,c1为多元组系数中的嵌入系数,c2、c3为多元组系数中的补偿系数;其中,当进行+c1的嵌入操作时,同时进行+c2和+c3的补偿操作,使嵌入误差矩阵及离散余弦变换系数矩阵的最后一行或最后一列值为零。

根据本发明的实施例,通过以下步骤获得多元组:基于8×8残差块边缘的关键像素值的嵌入误差与嵌入量化离散正弦变换系数位置的关系,建立嵌入误差与系数位置的关系;关键像素值是8×8残差块最右侧一列的像素和最下侧一行的像素;根据嵌入误差与系数位置的关系,通过对关键像素值进行归零假设获取对应的多元组。

根据本发明的实施例,对会发生误差块间传递的嵌入块,利用具有离散余弦变换补偿效应的多元组进行嵌入和补偿,具体包括:

对视频进行熵解码处理得到量化离散正弦变换系数;

根据离散正弦变换块的左上角系数值选择残差绝对值不小于5的亮度块作为备选嵌入块;

根据当前块的邻块的帧内预测模式判断当前块是否符合第一判断条件,若符合,则从水平方向选择多元组嵌入到当前块,以增强嵌入隐蔽性;

其中,第一判断条件包括right-mode∈{2-25},under-right-mode∈{11-25},top-right-mode∈{2-9};right-mode是备选嵌入块的右邻块的帧内预测模式;under-right-mode是备选嵌入块的右下邻块的帧内预测模式;top-right-mode是备选嵌入块的右上邻块的帧内预测模式;

根据当前块的邻块的帧内预测模式判断当前块是否符合第二判断条件,若符合,则从垂直方向选择多元组嵌入到当前块,以增强嵌入隐蔽性;

其中,第二判断条件包括under-left-mode∈{27-34},under-mode∈{11-34};under-mode是备选嵌入块的下邻块的帧内预测模式,under-left-mode是备选嵌入块的左下邻块的帧内预测模式;

根据选择的多元组获取嵌入系数和补偿系数;根据嵌入系数将加密的待嵌入信息嵌入到备选嵌入块;

调整补偿系数以对嵌入引起的块内嵌入误差进行补偿,以避免误差在块间的传递,并消除帧内失真漂移;

将h.265编码过程中所有的量化离散正弦变换系数进行熵编码以得到目标嵌入视频。

根据本发明的实施例,在嵌入过程中,根据嵌入系数的奇偶性对多元组进行调制以使得嵌入系数的奇偶性与待嵌入信息保持一致,并向着增大嵌入系数绝对值的方向对嵌入系数和补偿系数进行调制。

根据本发明的实施例,方法还包括:对嵌入视频中的信息进行提取;

其中,对嵌入视频中的信息进行提取具体包括:

根据直流系数的绝对值和自定义参数确定嵌入了信息的待提取块;其中,自定义参数不小于3;

判断待提取块的邻块是否满足第一判断条件;若满足,则从来自vs的多元组中的嵌入系数中根据奇偶性提取1比特信息;

判断待提取块的邻块是否满足第二判断条件;若满足,则从来自hs的多元组中的嵌入系数中根据奇偶性提取1比特信息;

根据解密密钥对提取出的信息进行解密。

根据本发明的另一方面,提供了一种对视频进行帧内信息隐藏的装置,视频为h.265视频,该装置包括:

建模模块,用于对帧内预测过程中发生嵌入误差传递的参考像素与预测模式的对应关系构建模型,以获得参考块对应不同预测模式的像素使用模型;

条件确定模块,用于根据预测模式的参考像素位置和像素使用模型来确定误差在块间传递的判断条件;

判断模块,用于根据判断条件确定嵌入块是否会发生误差块间传递,嵌入块为8×8嵌入块;

隐藏处理模块,用于对不会发生误差块间传递的嵌入块,直接进行信息隐藏;对会发生误差块间传递的嵌入块,利用具有离散余弦变换补偿效应的多元组进行嵌入和补偿,以阻断块内误差累积,控制帧内失真漂移。

根据本发明的实施例,装置还包括:获取模块,用于获得多元组:

获取模块基于8×8残差块边缘的关键像素值的嵌入误差与嵌入量化离散正弦变换系数位置的关系,建立嵌入误差与系数位置的关系;关键像素值是8×8残差块最右侧一列的像素和最下侧一行的像素;

获取模块进一步根据嵌入误差与系数位置的关系,通过对关键像素值进行归零假设获取对应的多元组。

本发明通过上述技术方案,提供了一种对h.265视频进行帧内信息隐藏的方法,该方法针对8×8亮度残差块dct系数进行信息嵌入,首先根据h.265视频帧内预测模式确定失真漂移的两种方向,然后根据失真漂移的具体方向选择对应格式的多元组进行信息嵌入;由于所采用的多元组具有dct系数补偿效应,可使得被嵌入的残差块dct系数在反变换时能够保持引发失真漂移的8×8亮度块像像素不发生改变,从而达到在帧内信息隐藏的同时控制失真漂移的目的;实验结果表明,本发明提供的这种对h.265视频进行帧内信息隐藏的方法可以有效控制帧内失真漂移,有较好的视觉隐蔽性和嵌入容量,视觉效果良好。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例的对视频进行帧内信息隐藏的方法的流程图;

图2是根据本发明实施例的方法的嵌入处理的流程示意图;

图3是根据本发明实施例的方法的提取处理的流程示意图;

图4a和图4b分别是根据本发明不同实施例的预测块与邻块的参考像素示意图;

图5是根据本发明实施例的33种帧内方向预测模式的示意图;

图6是根据本发明实施例的对邻块模式定义的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,根据本发明的实施例提供了一种对视频进行帧内信息隐藏的方法,其中,视频为h.265视频,该方法包括以下步骤:

s10,对帧内预测过程中发生嵌入误差传递的参考像素与预测模式的对应关系构建模型,以获得参考块对应不同预测模式的像素使用模型。

其中,对于向下方向的预测模式,参考块的最下行像素会被当前块使用;对于向右方向的预测模式,参考块的最右列像素会被当前块使用;若要控制失真漂移,参考块内被使用的像素就不能发生改变,因此需要建立参考块对应不同预测模式的像素使用模型。

s20,根据预测模式的参考像素位置和像素使用模型来确定误差在块间传递的判断条件。

s30,根据判断条件确定嵌入块是否会发生误差块间传递,嵌入块为8×8嵌入块。

s40,对不会发生误差块间传递的嵌入块,直接进行信息隐藏;对会发生误差块间传递的嵌入块,利用具有离散余弦变换补偿效应的多元组进行嵌入和补偿,以阻断块内误差累积,控制帧内失真漂移。

优选地,其中多元组系数为(c1,c2,c3);其中c1为多元组系数中的嵌入系数,c2、c3为多元组系数中的补偿系数;当进行+c1的嵌入操作时,同时进行+c2和+c3的补偿操作,可使嵌入误差矩阵及dct系数矩阵的最后一行或最后一列值为零,从而实现阻断块内误差积累,控制帧内失真漂移。

优选地,上述对h.265视频进行帧内信息隐藏的方法,对8×8亮度块进行信息隐藏时,其多元组根据以下步骤获得:

基于8×8残差块边缘的关键像素值的嵌入误差与嵌入量化离散正弦变换(quantizeddiscretecosinetransform,qdct)系数位置的关系,建立嵌入误差与系数位置关系;

其中,关键像素值是指残差块最右边一列的像索和最下面一行的像素;

8×8亮度块像素值由残差块系数值和预测块系数值相加得到,残差块由于dct系数被嵌入而产生误差,从而导致亮度块像素值发生改变若发生改变的亮度块像素值被其它块参考,就会产生失真漂移;

通过对关键像素值进行归零假设获取对应的多元组。

优选地,嵌入误差与qdct系数位置的关系具体为:对于含有向下方向的预测模式(模式11-34),嵌入误差会向下方的亮度块系数传递;对于含有向右方向的预测模式(模式2-25),嵌入误差会向右方的亮度块系数传递。

优选地,在步骤s40处,对会发生误差块间传递的嵌入块进行隐藏信息的方法,具体包括如下步骤:

s41,对原始视频进行熵解码处理得到量化的dct系数;

s42,根据dct块左上角系数值选择残差绝对值不小于5的8×8亮度块作为备选嵌入块;

s43,根据当前块的邻块的帧内预测模式判断当前块是否符合第一条件,若是,则从水平方向集(horizontalset,hs)中随机选择多元组嵌入到当前块,以增强嵌入隐蔽性;若否,则不进行嵌入;

其中,第一条件是指right-mode∈{2-25},under-right-mode∈{11-25},top-right-mode∈{2-9};right-mode是当前备选嵌入块的右邻块的帧内预测模式;under-right-mode是当前备选嵌入块的右下邻块的帧内预测模式;top-right-mode是当前备选嵌入块的右上邻块的帧内预测模式;

s44,根据当前块邻块的帧内预测模式判断当前块是否符合第二条件,若是,则从垂直方向集(verticalset,vs)中随机选择多元组嵌入到当前块,以增强嵌入隐蔽性;若否,则不进行嵌入;

其中,第二条件是指under-left-mode∈{27-34},under-mode∈{11-34};

under-mode是当前备选嵌入块的下邻块的帧内预测模式;under-left-mode是当前备选嵌入块的左下邻块的帧内预测模式;

s45,根据选定的多元组获取嵌入系数和补偿系数;根据嵌入系数将加密的待嵌入信息嵌入到备选嵌入块;

s46,调整补偿系数以对嵌入引起的块内嵌入误差进行补偿,以杜绝误差在块间的传递,达到消除帧内失真漂移的目的;

s47,将h.265编码过程中所有的量化dct系数进行熵编码得到目标嵌入视频。

优选地,对会发生误差块间传递的嵌入块进行隐藏信息的方法,在嵌入过程根据嵌入系数的奇偶性对多元组进行调制以使得嵌入系数的奇偶性与待嵌入信息保持一致,并向着增大嵌入系数绝对值的方向对嵌入系数和补偿系数进行调制。

优选地,还包括对嵌入视频进行信息提取,具体包括如下步骤:

s51,根据直流系数的绝对值和自定义参数来确定可能嵌入了信息的待提取块;其中,自定义参数t不小于3;

s52,判断待提取块的邻块是否满足第一条件;若是,则从来自vs的多元组中的嵌入系数中根据奇偶性提取1比特信息;若否,则不进行提取

其中,第一条件是指right-mode∈{2-25},under-right-mode∈{11-25},top-right-mode∈{2-9};

其中,第二条件是指under-left-mode∈{27-34},under-mode∈{11-34};

s53,判断待提取块的邻块是否满足第二条件;若是,则从来自hs的多元组中的嵌入系数中根据奇偶性提取1比特信息;若否,则不进行提取;

s54,根据解密密钥对提取出的信息解密。

为了进一步理解本发明,以下通过一个具体的实施例来对本发明的对视频进行帧内信息隐藏的方法进行说明。

在本发明的具体实施例中,在h.265视频流中隐藏信息,具体包括如下步骤:

对原始视频进行熵解码等处理得到量化后的dct系数;

选择残差绝对值较大的8×8亮度块内作为待嵌入块;

根据当前块邻块的帧内预测模式判断是否符合条件1或条件2;

根据判断结果,从hs或vs中选择合适的多元组进行嵌入;

向待嵌入块内的多元组中的嵌入系数进行信息嵌入,并调整补偿系数从而对嵌入引起的块内嵌入误差进行补偿,以杜绝误差在块间的传递,达到消除帧内失真漂移的目的;将所有的量化dct系数重新熵编码得到目标嵌入视频。

以下以hs中的多元组和vs中的多元组为例来具体阐述本发明提供的信息隐藏方法中的嵌入和提取方法。

本实施例中,嵌入信息为二值比特流m={m1,m2,…,mn},mi∈{0,1}。在嵌入之前,对嵌入信息m进行加密处理。嵌入位置为i帧内亮度残差绝对值较大的8×8亮度块。残差大小根据直流系数的绝对值和自定义参数t的值进行判断。每个直流系数绝对值大于t,且其邻块帧内预测模式满足条件1或条件2的8×8亮度块内嵌入1比特信息。

对h.265原始视频载体的8×8亮度块的嵌入方法的流程如图2所示,具体包括如下步骤:

根据直流系数的绝对值和自定义参数t选择备选嵌入块;实施例中,t不小于3;

判断备选嵌入块的邻块是否满足条件1或条件2;

如果满足条件1,则从vs中选择多元组进行嵌入与补偿;如果满足条件2,则从hs中选择多元组进行嵌入与补偿;

对拟嵌入的信息进行加密,嵌入过程根据嵌入系数的奇偶性进行调制,以使得嵌入系数的奇偶性与拟嵌入信息保持一致,并向着增大嵌入系数的绝对值的方向进行对嵌入系数和补偿系数进行微调。

本实施例中,条件1为right-mode∈{2-25},under-right-mode∈{11-25},top-right-mode∈{2-9};条件2为under-left-mode∈{27-34},under-mode∈{11-34}。

其中,right-mode是当前备选嵌入块的右邻块的帧内预测模式,under-right-mode是当前备选嵌入块4的右下邻块的帧内预测模式,top-right-mode是当前备选嵌入块的右上邻块的帧内预测模式,under-mode是当前备选嵌入块的下邻块的帧内预测模式,under-left-mode是当前备选嵌入块的左下邻块的帧内预测模式。

本实施例中,当备选嵌入块符合条件1时,利用vs(verticalset)中的多元组避免失真漂移。当备选嵌入块符合条件2时,利用hs(horizontalset)中的多元组避免失真漂移;

vs(verticalset)中的多元组如下:

vs(verticalset)=(y00,2y05,-2y07),(y10,2y15,-2y17),(y20,2y25,-2y27),(y30,2y35,-2y37),(y40,2y45,-2y47),(y50,2y55,-2y57),(y60,2y65,-2y67),(y70,2y75,-2y77)。

hs(horizontalset)中的多元组如下:

hs(horizontalset)=(y00,2y50,-2y70),(y01,2y51,-2y71),(y02,2y52,-2y72),(y03,2y53,-2y73),(y04,2y54,-2y74),(y05,2y55,-2y75),(y06,2y56,-2y76),(y07,2y57,-2y77)。

实施例中,当要从h.265嵌入视频流中提取信息,首先对原始视频进行熵解码等处理得到i帧的帧内预测模式与量化dct系数;根据自定义参数t选择残差绝对值较大的8×8亮度块作为备选可提取块;根据邻块的帧内预测模式是否满足条件1或条件2,判断是否从备选可提取块中提取信息以及从哪一个多元组的嵌入系数中提取。

对提取信息m″解密后得到m'={m1',m2',…,mn'},mi'∈{0,1}.发送方和接收方共享多元组、参数t和密钥;所以对应于嵌入位置,提取块为i帧内直流系数绝对值大于t且邻块的帧内预测模式满足条件1或条件2的8×8亮度块。提取系数位置为多元组中的嵌入系数中的嵌入系数每个符合提取条件的8×8亮度块可以提取出1比特信息。

对h.265嵌入视频载体的每个8×8亮度块的提取方法的流程如图3所示,具体包括如下步骤:

选择根据直流系数的绝对值和自定义参数t选择可能嵌入了信息的待提取块;

判断待提取块的邻块是否满足条件1或条件2;

如果满足条件1,则从来自vs的多元组中的嵌入系数中根据奇偶性提取1比特信息;满足条件2,则从来自hs的多元组中的嵌入系数中根据奇偶性提取1比特信息;

将提取出的信息解密。

本发明实施例提供的这种信息隐写方法针对8×8亮度残差块dct系数进行信息嵌入,首先根据h.265视频帧内预测模式确定失真漂移的两种方向,然后根据失真漂移的具体方向选择对应格式的多元组进行信息嵌入;由于所采用的多元组具有系数补偿效应,可使得被嵌入的残差块dct系数在反变换时能够保持引发失真漂移的8×8亮度块像像素(最下行或最后列)不发生改变,从而达到在帧内信息隐藏的同时控制失真漂移的目的。

如图4所示,是实施例中的当前预测块(currentpredictionunit)与邻块参考像素的位置关系示意图;从该图可以看出,邻块的预测模式需要使用嵌入块的像素作为参考像素,则嵌入带来的误差(s0,0……s0,2n)就会传递到邻块,造成失真漂移。

如图5所示,是本发明实施例中35种帧内预测模式中的33种方向预测模式的示意图,从该中可以看到预测模式具有各种方向,从而导致失真漂移也具有方向性。

如图6所示,是当前待嵌入块(currentpu)的邻块的位置示意图;通过对待嵌入块的各种可能引发失真漂移的邻块进行了定义,以方便划分条件;相应地,right-mode是当前备选嵌入块(待嵌入块)的右邻块的帧内预测模式;under-right-mode是当前备选嵌入块的右下邻块的帧内预测模式;top-right-mode是当前备选嵌入块的右上邻块的帧内预测模式;under-mode是当前备选嵌入块的下邻块的帧内预测模式;under-left-mode是当前备选嵌入块的左下邻块的帧内预测模式。

综上所述,借助于本发明的上述技术方案,在h.265视频帧内预测编码环境下,嵌入块是否引发帧内失真漂移与其邻块的预测模式直接相关,如果邻块的预测模式需要使用嵌入块的像素作为参考像素,则嵌入带来的误差就会传递到邻块,造成失真漂移;失真漂移问题会极大的加剧嵌入导致的失真,针对这一问题,本发明首先对帧内预测过程中发生嵌入误差传递的参考像素与预测模式间的对应关系进行建模,对35种帧内预测模式涉及到的参考像素位置进行归纳和分类,由此确定误差在块间传递的具体判断条件,对于不会发生误差块间传递的嵌入块,直接进行信息隐藏,对于会发生误差块间传递的嵌入块,利用具有补偿效应的多元组进行嵌入和补偿,使得dct系数矩阵的最后一列或最后一行不发生变化,达到避免失真漂移的目的。

根据本发明的另一方面,提供了一种对视频进行帧内信息隐藏的装置,视频为h.265视频,该装置包括:

建模模块,用于对帧内预测过程中发生嵌入误差传递的参考像素与预测模式的对应关系构建模型,以获得参考块对应不同预测模式的像素使用模型;

条件确定模块,用于根据预测模式的参考像素位置和像素使用模型来确定误差在块间传递的判断条件;

判断模块,用于根据判断条件确定嵌入块是否会发生误差块间传递,嵌入块为8×8嵌入块;

隐藏处理模块,用于对不会发生误差块间传递的嵌入块,直接进行信息隐藏;对会发生误差块间传递的嵌入块,利用具有离散余弦变换补偿效应的多元组进行嵌入和补偿,以阻断块内误差累积,控制帧内失真漂移。

根据本发明的实施例,装置还包括:获取模块,用于获得多元组:

获取模块基于8×8残差块边缘的关键像素值的嵌入误差与嵌入量化离散正弦变换系数位置的关系,建立嵌入误差与系数位置的关系;关键像素值是8×8残差块最右侧一列的像素和最下侧一行的像素;

获取模块进一步根据嵌入误差与系数位置的关系,通过对关键像素值进行归零假设获取对应的多元组。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1