基于帧内预测编码的视频隐写方法
技术领域
[0001] 本
发明属于视频信息隐藏技术,具体为基于帧内预测编码的视频隐写方法。
背景技术
[0002] 隐写术是保证消息传输隐秘性的重要手段。消息加密虽然可以保证消息的私 密性,但消息传递的行为会被攻击者知晓,且加密后的乱码形态的密文也会引起 攻击者的兴趣;相比之下,隐写术可以保证消息传输行为的不可见,攻击者无法 分辨这是一次普通传输还是含密传输,因此隐写术是加密技术的重要补充。隐写 术可以应用在各类安全级别高的消息传输领域,有效防止攻击者的攻击。
[0003] 视频隐写技术可以对
视频编码时
运动矢量、量化DCT系数、可变长度编码 和帧内预测模式(IPM)等不同编码环节进行
修改,实现秘密消息的隐藏。发送 方通过使用视频隐写技术把秘密消息隐藏到视频载体中,接收方可以顺利获得秘 密,同时第三方不会发现秘密的存在。
[0004] 如今基于帧内预测的视频隐写方案,一般都假设修改每个4x4预测
块所造成 影响是一样的,尽可能地减少修改次数,能有效减少视频失真;然而这种思路容 易导致对实际修改影响的描述不足。因此有必要结合新方案来更好地描述整体的 嵌入影响,从而实现最小扰动的秘密嵌入。
发明内容
[0005] 为了解决现有视频隐写技术所存在的问题,本发明提供了基于帧内预测编码 的视频隐写方法,该方法通过构造合适的失真函数后利用自适应隐写编码技术 (STC)进行实际嵌入,这样能确保修改预测模式造成的失真是接近最小的。
[0006] 本发明采用如下技术方案来实现:基于帧内预测编码的视频隐写方法,包括 以下步骤:
[0007] 发送方和接收方在隐写传输前,共同协商映射规则,映射规则将所有4x4 块可能使用的预测模式分为3组;
[0008] 发送方嵌入消息:
选定载体视频X,将其解码为原始
视频帧序列,获得其中 的关键帧I1,I2,…;
[0009] 从第一个关键帧I1开始嵌入,设I1嵌入的秘密消息为m1,1和m1,2;对I1使用帧 内预测编码得到所有将用帧内4x4块预测编码的
像素块,以及这些像素块使用帧 内预测编码得到的最优预测模式;进一步根据映射规则得到最优组集
[0010] 利用最优组集 计算出每个4x4块的绝对误差和预测偏差,和计算时所使用 的预测模式;
[0011] 将最优组集 作为载体向量,秘密消息序列m1,1和对应的4x4块嵌入扰动集 送入自适应编码的第一层嵌入器,得到含秘组集
[0012] 将含秘组集 作为载体向量,秘密消息序列m1,2和对应的4x4块嵌入扰动集 送入自适应编码的第二层嵌入器,得到含秘组集
[0013] 根据含秘组集 选用每个4x4块的最终预测模式,生成视频编码;
[0014] 对下一个关键帧嵌入消息,直到完成所有秘密消息的嵌入,或是使用完所有 的关键帧;利用标准
编码器完成视频编码的其余部分,最终生成含密编码视频X′;
[0015] 接收方提取消息:利用
解码器从含密编码视频X′中获取帧内预测编码后的关 键帧I′1,I'2,…;
[0016] 从第一个关键帧I'1开始消息提取,利用解码器得到I1中每个4x4块的预测模 式;进一步根据映射规则得到含密组集
[0017] 将含密组集 作为含密向量,送入自适应编码的第一层提取器,得到秘密消 息序列m1,1,送入自适应编码的第二层提取器,得到秘密消息序列m1,2;
[0018] 对下一个关键帧进行消息提取,直到完成所有秘密消息的提取,或是使用完 所有的关键帧。
[0019] 优选地,所述预测模式为 π(i)∈{0,1,…,8};所 述最优组集 第一层嵌入器 得到的含秘
组集 第二层嵌入器得到的 含秘组集
[0020] 优选地,第一层嵌入器中,每个4x4块的嵌入扰动为:
[0021]
[0022] 其中 为每个4x4块的绝对误差和预测偏差。
[0023] 优选地,第二层嵌入器中,每个4x4块的嵌入扰动为:
[0024]
[0025] 其中 为每个4x4块的绝对误差和预测偏差。
[0026] 与
现有技术相比,本发明具有如下优点和有益效果:
[0027] 1、本发明利用自适应隐写编码(STC)设计隐写方案,基于帧内预测模式 定义了失真函数;通过构造合适的失真函数后,利用自适应隐写编码技术(STC) 进行实际嵌入,这样能确保修改预测模式造成的失真是接近最小的。
[0028] 本发明作为基于内部预测模式的视频隐写技术,可以更好地保存视频
质量, 而现有基于IPM的方法仅对合适的4×4帧内预测模式进行信息嵌入,而且非最 优选择规则严重破坏了IPM的统计特性,使得基于IPM校准(IPMC)的隐写方 法很容易被隐写分析工具检测。
[0029] 2、引入映射规则来扩展每个块的可选模式的范围,以增加修改预测模式的 选择范围,进一步减少修改所造成的失真。这样可以确保在嵌入过程中以给定的 嵌入率最大限度地保持IPM的最优性,从而有效抵抗基于IPM校准(IPMC)的 隐写分析方法的检测。
[0030] 3、本方法将信息嵌入在帧内预测环节,因此嵌入容量较高,可以传输的信 息更多。本方法利用视频压缩质量设计嵌入
位置,同时结合主流隐写编码方法, 因此安全性更高。本方法可以提供高容量、高安全级别的视频隐写功能,应用在 伪装成视频应用的隐秘信息通信里,例如可以应用在
视频点播、视频录制、视频
云存储、视频推荐等环境,将重要信息嵌入视频数据,实现秘密信息的可靠、不 被察觉的传输,具有较好的实际应用价值。
附图说明
[0031] 图1是嵌入方案选用的9种帧内预测模式示意图;
[0033] 图3是消息提取流程图。
具体实施方式
[0034] 下面结合
实施例及附图对本发明作进一步详细的描述,但本发明的实施方式 不限于此。
[0035] 实施例
[0036] 本发明结合了自适应隐写编码(STC)和映射规则来设计隐写方案,通过构 造扰动函数来描述嵌入影响,采用自适应隐写编码技术(STC)来实现嵌入,同时 结合映射规则来进一步缩小扰动影响。由于增加绝对误差和(SAD)导致预测模 式复原现象更频繁的出现,所以我们在定义扰动函数时考虑了SAD预测偏差 (SPD)。利用预测模式的绝对误差和(SAD)作为关键因素来构造扰动函数,嵌入 方案应尽可能地遍历整个模式空间来找到适当的嵌入模式,因此,我们在此引入 了预测模式和模式组之间的映射规则,以完成遍历;最后采用STC来实现实际 的嵌入。此外,利用预测模式和预测组构建映射规则来扩展每个4x4块的可选模 式的范围。本发明能有效保持视频的预测最优特性,以防止被基于校准的隐写分 析方法发现秘密存在。
[0037] 本发明设有发送方和接收方,在隐写传输前,它们共同协商映射规则。映射 规则如下:H.264的帧内预测编码将关键帧分割成4x4和16x16的块,映射规则 将所有4x4块可能使用的预测模式分为3组,如下所示:
[0038] gp1={md0,md1,md4}
[0039] gp2={md3,md5,md8}
[0040] gp3={md2,md6,md7}
[0041] 其中mdi表示预测模式i,每个预测模式对应的预测扫描顺序如图1所示。该 映射规则是我们在大量视频帧序列分析
基础上得到的一个较好的分组方法。
[0042] 如图1所示,在9种预测模式中,灰色部分代表的是一个4x4的预测块,在 帧内预测过程中,4x4预测块根据其左邻及上邻的
亮度单元来进行预测取值,而 预测模式决定了预测块取值的方向,每种预测模式含义如表1所示。
[0043] 表1.方案所使用9种预测模式
[0044]
[0045]
[0046] 图1的0号图中,使用预测模式0(Vertical)进行取值时,4x4预测块里每 一列的亮度单元等于该列垂直方向上的邻边亮度值。而其中较特殊的预测模式为 2号图中的平均值预测(DC),预测块的值等于邻边(A+B+C+D+I+J+K+L+M)/7。
[0047] 如果在帧内预测期间,原本最优预测模式为mdi,我们却使用模式mdj,则 该模式替换所产生的SAD预测偏差(SPD)为:
[0048] SPDi,j=|SAD(mdi)-SAD(mdj)|
[0049] SAD(mdi)是使用模式mdi产生的预测SAD。
[0050] 我们选择若干视频序列作为实验序列,观察当最优预测模式替换成其他8种 模式时所产生的SPD。假设具有最佳模式md0的4x4预测模式总数为K,则每个 4x4预测模式的平均SPD为 实验结果如表2所示,该表显示了用不 同候选模式代替最优模式产生的SPD。
[0051] 由于隐写时不会用同一组内的模式互相替换,因此我们将SPD值较大的模 式分在同一组以降低整体嵌入扰动值。例如,从表2可以看出,把序列I帧里预 测模式md0分别替换成其余8种候选预测模式,造成的平均SPD如第一行所示, 其中把md0替换成md1产生的平均SPD值最大,因此把md0和md1分在同一组。 依次类推,最终gp1={md0,md1,md4}。
[0052] 表2.每个4x4预测模式平均SPD
[0053]
[0054] 发送方的消息嵌入流程如图2所示,具体流程如下:
[0055] 步骤1:选定载体视频X,将其解码为原始视频帧序列,获得其中的关键帧 I1,I2,...。
[0056] 步骤2:从第一个关键帧I1开始嵌入。假设I1嵌入的秘密消息为m1,1和m1,2。 对I1使用H.264的帧内预测编码,得到所有将用帧内4x4块(I4B)预测编码的 像素块 以及这些像素块使 用标准H .264的帧内预测编码得到的最优预 测模式进一步根据映射规则得到 最优组集
[0057] 步骤3:利用最优组集 计算出每个I4B块的绝对误差和预测偏差 和计算时所使用的预测模式
[0058]
[0059] subject tomdj∈gpk,k=g(i)+1mod3
[0060]
[0061] subject tomdj∈gpk,k=g(i)-1mod3
[0062]
[0063]
[0064] 其中SAD(mdi)表示用预测模式mdi时产生的绝对误差和。
[0065] 步骤4:设置每个I4B块的嵌入扰动为:
[0066]
[0067] 将最优组集 作为载体向量,秘密消息序列m1,1和对应的嵌入扰动集{ρi,,i=1,…,N1}送入自适应编码±1STC的第一层嵌入器,得到含秘组集
[0068] 步骤5:设置每个I4B块的嵌入扰动为:
[0069]
[0070] 将含秘组集 作为载体向量,秘密消息序列m1,2和对应的嵌入扰动集{ρi,,i=1,…,N1}送入自适应编码±1STC的第二层嵌入器,得到含秘组集
[0071] 步骤6:根据含秘组集 选用每个 I4B块的最终预测模式,生成H.264编码。选用规则为:
[0072]
[0073] 步骤7:重复步骤2-6,对下一个关键帧嵌入消息,直到完成所有秘密消息 的嵌入,或是使用完所有的关键帧。利用标准H.264编码器完成视频编码的其余 部分。最终生成含密H.264编码视频X′。
[0074] 接收方的消息提取流程如图3所示,详细步骤如下:
[0075] 步骤1:利用H.264解码器,从含密H.264编码视频X′中获取帧内预测编码 后的关键帧I′1,I′2,…。
[0076] 步骤2:从第一个关键帧I′1开始消息提取。利用H.264解码器得到I1中每个I4B块的预测模式 π)i(∈{0,1,…,8}。进一步根据映 射规则得到含密组集
[0077] 步骤3:将含密组集 作为含密向量,送入自适应编码±1STC的第一层提取 器,得到秘密消息序列m1,1,送入自适应编码±1STC的第二层提取器,得到秘 密消息序列m1,2。
[0078] 步骤4:重复步骤2-3,对下一个关键帧进行消息提取,直到完成所有秘密 消息的提取,或是使用完所有的关键帧。
[0079] 上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施 例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替 代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。