基于内容自适应的实时视频水印算法研究
夏治平 郭晓强 王辉淇
(国家新闻出版广电总局广播科学研究院 北京邮电大学信息与通信工程学院)
摘要:本文设计了一种基于内容自适应的实时视频水印算法。该算法使用Arnold变换对原始水印图像进行置乱,能基于视频内容自适应地将水印图像嵌入到原始视频的每一帧中,且实现了水印图像的盲提取。实验结果表明,该算法具有实时性、不可感知性,对高斯噪声、Speckle及帧裁剪等常规攻击具有较好的稳健性,可以作为一种防插播、防篡改技术应用于数字广播电视领域中。关键词:视频水印 实时 自适应 Arnold变换 盲提取 随着互联网技术和多媒体技术的迅速发展,数字媒体作品可以方便地进行传播和复制,由此引发的版权保护等信息安全问题日益严重。视频水印技术作为视频版权保护及其内容真实性和完整性认证、监测的一种有效手段,近年来已经成为国内外的一个研究热点。关于数字视频水印的研究很多,Hartung等人[1]和Chung等人[2]分别提出了基于扩展频谱的视频水印算法。Kang等人[3]针对高分辨率视频序列提出了一种实时水印算法。Mobasseri等人[4]提出了一种基于可变长编码的视频水印算法。Vashistha等人[5]提出了一种基于视觉密码学的视频水印算法。由于计算复杂度等问题,这些算法并没有应用于实时传输的数字广播电视网络中。本文提出了一种视频水印算法,该算法在保证实时性的前提下,具有良好的视觉不可感知性和较强的鲁棒性,将其应用于数字广播电视系统的视频信号监测中,能够有效地防插播、防篡改。1 数字水印的技术要求
水印技术在应用中应遵循以下技术要求:?鲁棒性。鲁棒性对于水印极为重要,对于鲁棒水印而言,应该能抵抗各种不同的攻击。?不可感知性。对于不可见水印而言,视频中嵌入的水印应该是人眼视觉不可感知的,不能因为嵌入水印而降低视频的主观质量,从而降低或破坏视频数据的商业价值。?可靠性。水印检测结果应该是可靠的,虚警概率(在未嵌入水印的数字媒体中错误地检测到水印的概率)和漏检概率(在嵌入水印的数字媒体中错误地认为不存在水印的概率)应尽可能低。?安全性。要确保嵌入信息的保密性。为了能够在网络环境中对基于数字水印的数字媒体进行版权保护,系统的设计必须遵守Kerchoff准则,即:未授权用户在不知道水印密钥的情况下,即使知道水印的嵌入和提取算法,也依然无法检测出水印或者对水印进行修改、删除操作。?随机检测性。随机检测性是指可以短时间在视频的任何位置检测出水印。?实时处理性。水印嵌入和提取算法的复杂度应该尽可能的低,以确保能实时完成水印的嵌入和提取。对于实时的应用,水印算法应满足(1)式。(1)
仅通过一个算法满足上述的所有要求是非常困难的,只有在设计算法过程中折中考虑。2 实时视频水印算法
本文提出的视频水印嵌入算法是一种前置视频水印算法,它将水印图片直接嵌入到原始视频数据中。水印的提取过程不需要原视频参与,为盲提取过程。该算法可以应用于数字广播电视系统的视频信号监测中,能够有效地防插播、防篡改。基于视频水印技术的防插播、防篡改系统如图1所示。下面将详细给出水印算法的预处理、嵌入及提取过程。图1 基于视频水印技术的防插播、防篡改系统
1.水印的预处理:水印预处理是用于阻止未授权用户获得水印。为了提高水印算法的安全性,一般对水印采用的是置乱处理。常用的置乱的方法是Arnold变换、IFS模型、Gray代码、Hilbert曲线等,本文采用Arnold变换[6]的方法对水印图像进行置乱处理。我们采用二值图像作为水印,置乱前的水印可以表示为
(2)
我们对水印应用次Arnold变换以获得置乱后的水印。一次Arnold变换可以描述为(3)
然后将水印转化为一个线性数组(4)
是处理后的水印,它可以用于嵌入到视频中。图2展示了原始视频图像经置乱处理后成为水印。Arnold变换具有周期性,即水印图像经过若干次Arnold变换后,图像会回到最初状态。不同的水印图像尺寸会有不同的值,在本算法中采用的水印图像尺寸是32x32,值为8,Arnold变换周期为24。(a)原始水印图像 (b)置乱后水印图像
图2 原始水印图像和置乱后水印图像
2.水印的嵌入:水印技术的可靠性取决于水印的鲁棒性和不可感知性,这些要求都是在水印嵌入的阶段完成。对于原始YUV视频来讲,很难判断视频压缩过程中哪些帧将会被用作I帧、P帧、B帧。为此,我们将用下面的方法在视频的每一帧中都嵌入水印。
对于YUV视频而言,水印可以嵌入到任何色度分量(U或者V)中,在本算法中,我们将水印嵌入到U分量中。首先将U分量划分为一定尺寸的块,每一帧图像中块的总数为(5)
每一帧中的块可以表示为由于水印比特数远少于块的数目,因此必须从块中选出块作为嵌入水印的块。我们生成一个随机矩阵作为密钥。矩阵中的数值按升序排列,可以表示如下(6)
生成密钥后,对其进行加密保存。嵌入水印块的集合可以表示为(7)
在图像中,相邻像素之间具有较大相关性。因此,在一个块中,用统计函数(最大或最小值)改变一个像素值并不影响图像的整体质量。在本算法中,水印嵌入到块的位置,嵌入的方法如式(9)所示。在下式中,水印的嵌入强度由视频的内容自动调整,实现水印的自适应嵌入。(8)
当块中最大值和最小值相等的时候,提取水印会变得非常困难,为此,我们将最小值乘以一个衰减因子。水印嵌入完成后,将嵌入水印的U分量与Y、V分量结合到一起,形成嵌入水印的图像。衰减因子的值影响着水印的不可感知性和鲁棒性,因此需要选择一个合适的值。我们针对值进行了大量的实验,实验结果表明,当的时候,水印的鲁棒性和不可感知性表现的最好。3.水印的提取:本算法可以在没有原视频参与的情况下提取出水印。从接收到的YUV视频中提取出帧,将帧的U分量进行划分,划分出来的块总数为(9)
划分后的块可以表示为(10)
在水印嵌入的过程中,水印比特只嵌入到了一些随机块中,这些块的序号保存在密钥中,在收端需要知道密钥的值,在提取水印时需要先对密钥解密。利用集合中的值,找出嵌入水印的块,嵌入水印块的集合可表示为(11)
水印比特嵌在每个块的第一个像素中,为了提取水印,我们先将块的第一列像素值求平均,并且储存到一个一维数组,表示如下(12)
比较平均值与块的位置处像素值,依据下式恢复出水印比特(13)
根据重新组成二维水印(14)
对运用次Arnold变换(15)
可以从接收到的视频中的任意一帧提取水印图像。3 仿真结果
本文采用MATLAB 7.14对算法进行仿真实验。实验过程中,所采用计算机为Intel Core i5 2.80GHz,内存为2.99G。如图3所示为Tennis_1920x1080_24.yuv视频序列嵌入水印前后对比图,水印嵌入后视频帧的U分量平均PSNR值为66.1062dB。由文献[7]可知,两幅图像在峰值信噪比大于33dB时,具有良好的视觉不可感知性。因此,本文提出的水印算法较好地保证了水印嵌入后的视觉不可感知性。图4所示为原始水印图像和正常提取水印图像对比图,两幅图像的归一化相似度。a 原始视频第1帧 b 原始视频第100帧 c 原始视频第200帧
d 含水印视频第1帧 e 含水印视频第100帧 f 含水印视频第200帧
图3 水印嵌入前后对比图
a 原始水印图像 b 正常提取的水印图像
图4 原始水印和正常提取水印对比图
为了评估本文提出的水印算法的实时性,实验过程中采用了多个视频序列,分别测试嵌入水印所用时间。表1中列出了嵌入水印时间、提取水印时间及嵌入水印后视频序列U分量的平均PSNR值。由表1数据可知,水印嵌入到视频帧中所用的时间均维持在11ms以内,完全满足实时性的需求。表1 视频水印嵌入用时及U分量平均PSNR值
测试视频序列 | 视频总帧数 | 公式(1)计算时间(ms/frame) | 嵌入用时(ms/frame) | 提取用时(ms/frame) | U分量平均PSNR(dB) |
Tennis_1920x1080_24.yuv | 240 | 41.667 | 10.075 | 8.0583 | 66.1062 |
Old_Town_Cross_1920x1080_50.yuv | 500 | 20.000 | 10.296 | 8.8417 | 64.8014 |
Cactus_1920x1080_50.yuv | 500 | 20.000 | 10.937 | 8.1250 | 63.7913 |
BQTerrace_1920x1080_60.yuv | 600 | 16.667 | 10.262 | 8.7750 | 65.6051 |
Johnny_1280x720_60.yuv | 600 | 16.667 | 10.140 | 8.0583 | 62.1676 |
ChinaSpeed_1024x768_30.yuv | 300 | 16.667 | 9.6875 | 8.1250 | 62.2242 |
RaceHorses_832x480_30.yuv | 300 | 33.333 | 10.383 | 7.9292 | 56.1983 |
PartyScene_832x480_50.yuv | 501 | 20.000 | 10.567 | 7.9958 | 55.0308 |
BQMall_832x480_60.yuv | 600 | 16.667 | 10.123 | 8.0583 | 56.4856 |
(16)
表2所示为含水印视频分别经受各种攻击后提取的水印图像与原始水印图像相似度统计。根据表中实验结果可以看出,文中算法经过各种强度的不同攻击,提取出的水印图像与原始水印图像的NC值比较可观。即便是在较大的攻击强度下,依然可以有效地提取出水印内容。实验结果表明,文中所提水印算法对上述攻击具有较强的鲁棒性。在数字广播电视系统的视频信号监测中,虚警概率和漏检概率是衡量信号监测可靠性的两个重要指标。为了验证本文算法的可靠性,实验中还对未嵌入水印的视频序列进行提取水印测试。在未嵌入水印的视频序列中提取出的图像与原始水印图像的归一化相似度NC平均值为0.567416,其中仅有2.5%的NC值大于0.6。表2 水印攻击类型及NC值
攻击类型 | 攻击强度及值 | ||
高斯噪声 | 方差 | 方差 | 方差 |
椒盐噪声 | 噪声密度 | 噪声密度 | 噪声密度 |
Speckle | 噪声密度 | 噪声密度 | 噪声密度 |
帧裁剪 | 裁剪5.0% | 裁剪15.0% | 裁剪30% |
丢帧 |
4 结束语
本文提出了一种实时视频水印算法,该算法解决了水印实时嵌入的问题,应用于数字广播电视系统的视频信号监测中,能够有效地防插播、防篡改。实验结果表明,该算法满足实时嵌入和提取水印的要求,具有良好的视觉不可感知性,并且对于诸如高斯噪声、Speckle及帧裁剪等常规攻击具有较强稳健性。 参考文献[1]. Hartung F, Girod B. Watermarking of uncompressed and compressed video[J]. Signal processing, 1998, 66(3): 283-301.
[2]. Chung T Y, Hong M S, Oh Y N, et al. Digital watermarking for copyright protection of MPEG2 compressed video[J]. Consumer Electronics, IEEE Transactions on, 1998, 44(3): 895-901.
[3]. Kang I K, Im D H, Lee H K, et al. Implementation of real-time watermarking scheme for high-quality video[C]//Proceedings of the 8th workshop on Multimedia and security. ACM, 2006: 124-129.
[4]. Mobasseri B G, Marcinak M P. Watermarking of MPEG-2 video in compressed domain using VLC mapping[C]//Proceedings of the 7th workshop on Multimedia and security. ACM, 2005: 91-94.
[5]. Vashistha A, Nallusamy R, Paul S. Nomark: A novel method for copyright protection of digital videos without embedding data[C]//Multimedia (ISM), 2010 IEEE International Symposium on. IEEE, 2010: 167-174.
[6]. Arnold M, Baudry S, Baum P, et al. Multimedia security technologies for movie protection[C]//Proceedings of the international conference on Multimedia. ACM, 2010: 1515-1516.
[7]. 楼偶俊, 王钲旋. 基于特征点模板的Contourlet域抗几何攻击水印算法研究[J]. 计算机学报, 2009, 32(2): 308-317.
编辑:中国新闻技术工作者联合会
评论 点击评论