基于纹理特性的能量差调制视频水印算法

2020-10-31 11:55刘慧超王志君梁利平
湖南大学学报(自然科学版) 2020年10期
关键词:鲁棒性纹理编码

刘慧超,王志君,梁利平†

(1.中国科学院微电子研究所,北京 100029;2.中国科学院大学,北京 100049)

视频,作为一种内容直接、形式丰富的信息,被广泛应用于人们的日常生活中.据统计,人们每天接收的信息中有80%以上为视频信息.互联网技术的快速发展,使得人们获取、分享和传播视频资源的速度大大加快,但视频内容的篡改、伪造和非法传播现象频繁发生[1-3],因此,保护视频版权和内容真实性至关重要.数字水印技术作为一种有效的途径备受关注.然而,由于视频信息数据量庞大,其传播和存储过程通常伴随着视频压缩,因此,研究基于视频压缩编码的水印技术意义重大.

一个好的视频水印算法在满足水印不可见性的条件下,应该具有更高的鲁棒性、更低的计算复杂度,同时对视频压缩编码后的码率影响较小[4].为减小水印对视频质量和码率的影响,Zhang 等人[5]提出基于人眼视觉阈值(Just Noticeable Difference,JND)的视频水印算法,对满足条件的不同频率位置的DCT 系数采用不同的嵌入策略,降低视频质量损失的同时提高水印算法的鲁棒性.由于所提出的JND模型涉及Canny 边缘检测和水印位置信息提取,计算复杂度较高,Deng[6]和Li[7]等人将扩频技术和汉明编码应用到所提出的水印算法中,一定程度上提高了水印鲁棒性,但同时也增加了算法复杂度.

为降低水印算法复杂度,Qiu[8]、Fallahpour[9]、Abdi[10-11]和Dutta[12]等人通过简单地调制量化后残差DCT 系数的幅值大小或奇偶性实现水印嵌入,然而Kim 等人[13]通过实验证明DCT 系数的此类表征特性在重编码过程中较不稳定,所以基于该类方法的水印算法鲁棒性较差.

为提高算法鲁棒性,张维纬等人[14]利用基于DCT变换的近似Weber 定律对视频划分纹理区域,对不同纹理区域执行不同强度的水印嵌入策略,在保证视频质量的同时,大大提高了水印鲁棒性.但纹理划分过程需要对原视频进行DCT 变换,计算量大大增加.

针对以上问题,本文提出一种基于残差纹理的能量差调制视频水印算法.以应用广泛的H.264/AVC 视频编码标准[15]为验证实例,算法首先利用编码器得到的量化后的残差DCT 系数建立低运算复杂度的视频纹理强度判定模型;然后根据纹理强度对中高频位置的DCT 系数进行自适应能量差调制,实现鲁棒水印嵌入.整个水印与视频纹理分布一致,嵌入水印对视频质量影响较小;同时,水印嵌入过程无须保存水印位置信息,水印提取过程满足盲检测要求.

1 融合水印技术的视频编码器架构

自H.261 视频编码标准起,新的标准在引入先进技术的同时,一直沿用基于预测和变换的混合编码架构[16].如图1 所示,预测编码利用相邻像素的空间或时间相关性,根据已编码的像素对当前待编码像素进行线性预测,然后对预测值和真值的差进行编码传输,减小待编码数据量;变换编码则将统计上彼此密切相关的空域像素通过正交变换,转化为统计上相对独立的变换系数,减小有效数据量.之后的熵编码过程通常为变长编码,通过对出现概率大的字符分配短码字,而概率小的字符分配长码字,进一步提高混合编码的压缩效率.

图1 混合编码器框图Fig.1 Framework of the hybrid encoder

本文主要在DCT 域嵌入水印,结构上主要考虑以下几个问题:格式兼容性、算法一致性和水印鲁棒性.当水印算法设置在DCT 变换和量化之间时,由于量化过程是有损的,不可避免地会对水印信息造成破坏,影响水印鲁棒性;当水印模块设置在编码环路以外、熵编码之前时,由于水印算法会改变当前编码块信息,而变化后的值无法通过编码环路反馈到后续编码块的编码过程,导致编解码端的数据不一致.于是,最佳的方案是将水印模块设定在量化之后、熵编码之前的编码环路中,如图2 所示,为融合水印技术的视频编码器结构.

图2 嵌入水印的视频编码器结构框图Fig.2 Framework of watermark embedding on hybrid encoder

纹理判断模块将视频划分为纹理和非纹理区域,水印嵌入模块根据纹理划分结果实现强度自适应的水印嵌入过程.与已有文献不同,纹理判断和水印嵌入模块与整个编码过程紧密结合,纹理判断模块直接利用DCT 变换和量化后的系数,无需额外运算.同时,由于水印嵌入模块设定在编码环路内,当嵌入水印后,由水印引起的偏差经过变换和量化的逆过程反馈到重建帧中,用于后续编码过程的参考,从而避免帧内或帧间误差漂移现象的发生,保证了编解码端的数据一致性.

2 基于纹理特性的能量差调制水印算法

视频水印算法一般要满足水印的不可见性和鲁棒性.为保证良好的水印不可见性,通常选择降低水印嵌入强度,而水印鲁棒性往往与水印嵌入强度正相关,于是水印算法的关键就在于如何调和这一对互为矛盾的需求.根据人眼视觉特性[17],人眼系统对视频区域内所包含的高频分量分辨能力较弱,对视频纹理密集区域的变化敏感性差.本文正是利用该特性对待编码视频进行纹理区域划分,基于能量差法,对视频亮度分量的纹理区域和非纹理区域采取不同强度的调制策略,从而在保证水印不可见性的同时,实现一种复杂度低、鲁棒性强的水印嵌入算法.

2.1 基于残差DCT 系数的纹理判定模型

以H.264/AVC 视频编码为例,混合编码架构中的预测编码分为帧内预测和帧间预测,对应的编码帧称作I 帧和P 帧(暂不考虑B 帧).对一个待编码视频序列,I 帧作为起始帧包含的信息量最大,可用于嵌入水印的空间也最大.于是,本文仅对I 帧嵌入水印.对于一个待编码帧,用X 表示原始像素集合,P表示最佳预测模式下的预测像素集合,R 表示预测残差集合,则有:

若将P 视为背景,则R 可视为X 相对于背景P所增加的细节信息.由于帧内预测技术主要利用相邻区域的边界信息对待编码区域进行线性估计,除平坦区域外,其余区域的线性预测通常情况下均会产生估计误差,即预测残差,且待编码区域的纹理越复杂,线性估计产生的残差越显著,对残差进行DCT变换后得到的非零系数越多.对于一个4 × 4 残差块,定义量化后的DCT 系数矩阵如下:

接着,定义C 的非零特征矩阵(Non-Zero Feature Matrix,NZFM)如下:

当假定C 中所有系数特性一致时,本文给出一种简洁的纹理判定模型,如式(4)所示:

其中,||NZFM||m1为NZFM 的m1-范数,此处表示非零元素的个数;T 为设定的阈值门限;TMax为T能取到的最大值.于是建立起NZFM 与视频纹理的一种映射模型,仅仅通过比较矩阵C 的NZFM 对应的m1-范数与T 的大小关系即可实现视频纹理区域的划分,相比于Zhang 等人[5]采用的基于Canny 算子的JND 模型判定算法及张维纬等人[14]采用的基于Weber 定律的判定算法,计算复杂度大大降低.

然而,C 中不同位置的系数频率不同,在空域表现出的纹理特性也不同,为分析C 中每一个变换系数对应到像素域的纹理复杂度,考虑如下的单位系数矩阵UC(系数幅值仅有0 和1 两种情况):

式中:a=1/2,b=(2/5)0.5.

为了测试不同位置系数在像素域的纹理复杂度,每次仅设置一个δmn有效,其余系数均置为零,可以得到16 个像素矩阵Y.为每个Y 定义水平方向纹理矩阵(Horizontal Direction Texture Matrix,HDTM)和垂直方向纹理矩阵(Vertical Direction Texture Matrix,VDTM),分别表示Y 在水平方向和垂直方向的变化特征.

接着,对HDTM 和VDMT 进行同向冗余消除,即去除同方向上相邻的同类项.对于HDTM,若同一行的相邻元素值相同,则表示相邻像素的纹理方向相同,于是去除多余项,仅保留一个有效值.VDMT 按照类似的方法去除垂直方向的冗余项,最终得到精简的HDTM 和VDMT.根据HDTM 和VDMT,本文定义单系数对应像素域的纹理度矩阵如下:

根据式(8),HDTM 和VDTM 中非零元素越多,像素变化越复杂,纹理度越高.

至此,本文定义加权的NZFM(Weighted NZFM,WNZFM),并沿用式(4),可以得到一个基于WNZFM 的纹理判定模型:

对于T 的取值,当T 值较小时,大部分视频区域均会被判定为纹理区域,嵌入水印后对视频质量影响较大;当T 值较大时,只有较少视频区域被判定为纹理区域,嵌入水印后对视频质量影响较小,但因为大部分视频区域被视为非纹理区域而嵌入低强度水印,导致水印算法鲁棒性降低.为了得到最佳的阈值门限T,可以建立如下的最优化模型:

式中:f()和fref()分别代表本文纹理模型和参考模型核函数;Tex和Texref分别表示利用本文模型和参考模型得到的视频纹理区域划分结果;SIM(T)表示Tex和Texref的相似度;QWm()表示基于纹理划分结果的水印算法的性能评价模型;ρ(T)表示水印算法的性能.本文以Zhang 等人[5]提出的纹理模型为参考,以Foreman 视频序列为测试实例,对T 值的大小与纹理判定模型精度的关系进行初步测试,如图3 所示.

图3 阈值门限T 对纹理判定模型精度的影响Fig.3 Accurate of proposed SIM with different threshold T

从图3 可以看出,以相似度作为模型精度的评价指标,本文提出的纹理判定模型与参考模型相比,相似度值随T 的增大呈现出先增加后逐渐减小的变化趋势,这为T 值的选择提供了一种依据.

除相似度外,本文纹理判定模型的结果对水印算法的性能如视频质量和水印鲁棒性的影响将在下文中给出分析结果.理论上,模型精度越高,纹理判定越符合实际情况,基于纹理的自适应水印算法对视频质量的影响就越低,而模型判定出的纹理区域越多,整体水印强度越强,水印鲁棒性就越高.

2.2 基于能量差调制的水印嵌入算法

正如Kim 等人[13]所述,即使采用同样的编码配置,重编码过程依然会导致预测模式发生变化,进而在残差DCT 系数上引入扰动,使得单纯依靠调制某个系数的奇偶性或零特性等嵌入水印的方法鲁棒性较低.Langelaar 等人[18]率先提出基于MPEG/JPEG 的差分能量水印算法,张维纬等人[14]将该思想引入到H.264/AVC 视频水印算法中,并考虑视频纹理特性,选择4×4 DCT 系数矩阵的一个低频系数和一个高频系数作为水印嵌入位置.该方法存在两个问题:其一,DCT 变换后信号能量主要集中在直流和低频位置,选择低频系数嵌入水印,对视频质量影响较大;其二,根据Zhang 等人[5]的理论分析与实验结果,当进行重量化编码时,DCT 变换的直流和低频系数易受影响,而中频和高频系数较稳定,因此,基于中高频系数嵌入的水印鲁棒性更强.

于是,本文选择式(2)中的中高频系数c22和c33作为目标对象,基于2.1 节提出的纹理判定模型,实现强度自适应的能量差调制水印算法.以光栅扫描下的顺序编码为例,水印算法的基本处理单元为水平方向相邻的两个待编码宏块A 和B,定义宏块的DCT 系数局部能量和为SLE,宏块内第k 个4×4 子块的局部能量为LEblk(k),则:

定义第k 个4 × 4 子块待调制的系数集合为CS(k),调制后的系数集合为CS′(k),水印嵌入过程如下:

首先,为降低嵌入水印对视频质量的影响,对于纹理块,选择调制系数集合{c22,c33};对于非纹理块,选择调制系数{c33}.假定待嵌入的水印信息是长度为L 的二进制序列W={wi},当水印比特wi为1 时,利用式(12)中的调制规则a)增加A 宏块内各个子块的局部能量,利用调制规则b)降低B 宏块内各个子块的局部能量,使得A 宏块的局部能量和大于B 宏块;相反地,当wi为0 时,使用规则b)调制A 宏块、规则a)调制B 宏块,使得最终结果满足A 宏块的局部能量和小于B 宏块.

2.3 基于能量差调制的水印提取算法

水印提取为水印嵌入的逆过程.首先对嵌入水印的压缩视频码流进行部分解析,得到量化的DCT变换系数;之后,按照公式(11)计算水平方向上相邻宏块A 和B 的局部能量和SLEA 与SLEB,通过比较二者的大小实现水印提取.具体提取规则如下:

3 实验结果与分析

为验证本文所提水印算法的有效性,以H.264/AVC 编码器为验证实例,采用JM8.6 软件编解码器参考模型为实现平台,对16 个不同场景、不同运动幅度的CIF(352×288)格式的标准序列进行测试,每个视频序列均按照帧率为30 fps、I 帧编码周期为15、I 帧量化参数QP=28 的配置进行编码,总编码帧数为150 帧,水印信息仅嵌入在I 帧中.同时,本文采用随机生成的水印信息进行测试,避免水印序列本身对实验结果的影响.

本文从峰值信噪比(Peak Signal Noise Ratio,PSNR)、结构相似度(Structure Similarity Image Measurement,SSIM)[19]、水印鲁棒性(Robustness,R)、编码比特率增加(Bitrate Increase Rate,BIR)4 个方面分析阈值门限T 对所提水印算法性能的影响.同时,为分析水印算法的普适特性,对不同视频序列的测试结果求取平均值.

式(14)中:M、N 表示视频分辨率;PSNR 和PSNR′分别表示嵌入水印前后视频的峰值信噪比;ΔPSNR 为嵌入水印后PSNR 的变化.式(15)中:μ 和σ 分别为视频帧的均值与标准差,σxy为x 和y 的协方差;C1、C2是为避免分母趋于0 导致测量值不稳定而定义的小常数.式(16)中:Nc和Nt分别表示正确提取的水印数量和嵌入的水印总数量.式(17)中:BR 和BR′分别为嵌入水印前后视频编码的码率.

3.1 纹理门限对视频水印性能的影响分析

如前文所述,基于WNZFM 的纹理判定模型的精度与阈值门限T 的大小直接相关.当T 值较小时,视频中较多的真实纹理区域被正确检测出来,同时,较多的非纹理区域被判定为纹理区域;反之,当T 值增大时,纹理密集度高的区域被正确检测,而纹理密集度较低的区域被判定为非纹理区域.根据2.1 节的分析,阈值门限T 的取值范围为0~48.本文首先分析了T 对嵌入水印后视频PSNR 和BIR 的影响,如图4 和图5 所示.

图4 阈值门限T 对PSNR 损失的影响Fig.4 Analysis on degradation of PSNR with different T

从图4 可以看出,本文算法与张维纬等人[14]所提水印算法均会对视频PSNR 造成轻微的损失.对于实验中采用的16 个不同的视频序列,在T=1 时,本文算法对视频PSNR 的影响最大,平均降低0.681 dB,相比之下,张维纬等人[14]所提算法中PSNR 平均降低0.595 dB.随着T 值的增大,本文算法造成的PSNR 损失逐渐减小并低于文献[14].

图5 阈值门限T 对BIR 的影响Fig 5 Analysis on BIR with different T

图5 给出了本文算法与张维纬等人[14]所提算法对视频编码比特率的影响.整体上,本文算法与张维纬等人[14]所提算法对视频编码比特率的影响量级相当,均可忽略不计.

此外,本文重点分析了所提水印算法的鲁棒性特征,以常见的4 种数字信号处理攻击算法为例:高斯滤波、循环均值滤波、高斯噪声和椒盐噪声.其中,高斯滤波器窗口大小为5 × 5,Sigma 参数为0.3;循环均值滤波器辐射范围Radius 为0.5;高斯噪声均值为0,方差为0.001;椒盐噪声密度为0.001.图6 给出了本文算法与张维纬等人[14]算法在4 种不同的数字信号处理攻击算法下的鲁棒性测试对比结果.

图6 不同攻击算法下水印鲁棒性测试结果Fig.6 Robustness of watermark against signal processing attacks

从图6 中可以看出,当阈值门限T 的取值不超过一定范围时,本文水印算法的鲁棒性均优于文献[14].对于4 种攻击算法,张维纬等人[14]所提算法的鲁棒性平均值分别为82.18、82.28、78.73 和79.11,本文算法在T=1 时的鲁棒性平均值分别为96.44、96.45、93.04 和92.76.不仅如此,测试过程中发现,对于不同的视频序列,本文水印算法的鲁棒性较稳定,而张维纬等人[14]所提算法的鲁棒性对不同测试序列表现出较大的差异性.

3.2 水印算法性能比较

除数字信号处理攻击外,重编码也是一种常见的攻击算法.重编码过程主要包括两步:1)正常解码;2)采用不同的QP 重新编码.本文水印算法与已有相关文献的性能比较结果见表1.

表1 各相关文献算法的性能比较Tab.1 Performance comparison with previous works

不难发现,相比于[5][7][12][14],本文提出的水印算法鲁棒性更强.这是因为本文在嵌入水印时选择了稳定性更强的中高频系数,重编码产生的影响较小;同时,本文采用基于局部能量和的能量差嵌入水印,具有较强的不变性.而文献[12]采用的嵌入对象为中低频系数,根据文献[5]的分析,中低频系数更易受重编码的影响,导致水印鲁棒性相对较差;文献[14]虽然也是基于差分能量嵌入水印,但与文献[12]类似,也涉及到低频系数,所以二者的鲁棒性相近.文献[5]和[7]本质上均采用调制系数奇偶性的方式嵌入水印,文献[13]已指出此类方法的稳定性缺陷,尽管文献[5]和[7]分别引进了精确的JND 模型和扩频通信与汉明编码技术用来保证鲁棒性,但是,当采用较大的量化步长重新编码时,水印鲁棒性迅速降低,QP 为32 时,文献[5]中的水印鲁棒性已降低到50 以下,而本文算法鲁棒性仍在85 以上.

此外,对于水印提取过程,本文算法满足盲检测要求,而文献[5]和[12]中的算法需要在水印嵌入过程中保存水印位置信息用于水印提取过程,当位置信息丢失或局部出错时,会发生同步失真而导致水印提取失败,实用性较差.

对于水印算法的计算复杂度,本文算法只涉及判断WNZFM 的m1-范数大小以及DCT 系数的幅值运算,计算复杂度极低;而文献[14]的纹理判断模型需要额外引入大量的DCT 运算,文献[5]中基于Canny 算子的JND 模型更是涉及到高斯滤波、Sobel边缘检测和滞后边缘跟踪等复杂过程,计算复杂度大大提高.

4 结论

本文提出了一种基于纹理特性的能量差调制视频水印算法,在视频压缩编码的过程中,以量化后的残差DCT 系数的WNZFM 的m1-范数为纹理判定依据,通过调制两个相邻宏块的残差在DCT 域的中高频系数局部能量和的大小,实现自适应强度的水印嵌入,相比于已有的基于视频纹理的水印算法,计算复杂度大大降低.算法以H.264/AVC 视频编码为验证实例,实验结果表明,本文所提算法在保证视频质量和编码比特率的条件下,对重编码、滤波和噪声等攻击具有较强的鲁棒性;同时,本文算法无需保存水印位置信息,符合水印盲提取要求,具有较强的实用性.

猜你喜欢
鲁棒性纹理编码
生活中的编码
武汉轨道交通重点车站识别及网络鲁棒性研究
《全元诗》未编码疑难字考辨十五则
基于BM3D的复杂纹理区域图像去噪
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
子带编码在图像压缩编码中的应用
使用纹理叠加添加艺术画特效
Genome and healthcare
TEXTURE ON TEXTURE质地上的纹理
一种基于三维小波变换的鲁棒视频水印方案