基于角点增强的抗打印扫描零水印算法
2013-10-08尚南南
李 黎,尚南南
(杭州电子科技大学计算机学院,浙江杭州310018)
0 引言
应用于多媒体的水印算法需要满足安全性、鲁棒性和不可见性这3个特性。通常情况下,不可见性和鲁棒性呈现的是反比关系。因此,有研究者提出了一种不需要修改原始载体的方法,即零水印算法[1-2]。零水印算法区别于嵌入式水印的是其嵌入水印的方式是获取原始载体独有的特征信息,平衡了嵌入式水印算法在鲁棒性和不可见性的关系。目前零水印算法的研究已经取得一定的成果,温泉等提出基于余弦变换的零水印算法[3],该算法对JPEG压缩、滤波攻击等具有较强的抵抗能力;继而温泉等又提出利用高阶累加量来构造零水印[4],该算法呈现出对旋转、缩放等攻击的鲁棒性;之后,向华等提出一种基于小波系数特征的小波域零水印算法[5],该算法对中值滤波、JPEG压缩、高斯噪声、剪切等攻击理有较强的抵抗能力。然而,这些算法提取的特征信息并不能完全体现作品的重要特征[6],不具有抗打印扫描鲁棒性。目前多数已有的抗打印扫描算法是非零水印,然而此类算法有计算量大、水印容量小、应用性差等问题,同时对原始载体引入的失真也相对较大。综合以上分析,本文采用在图像特征提取方面具有良好特性的Harris角点,对图像进行响应值增强处理,本处理不影响图像质量,可以将增强后的图像作为原始图像,用于构造零水印信息。
1 Harris角点响应值增强
根据Harris角点检测原理,对响应值R与角点象素值的关系进行分析,最终通过修改角点象素值来提高角点响应值R,以保证打印扫描前后检测到的角点具有更高的重复率。例如,Z(i,j)为对图像I进行Harris角点检测提取到的一个响应值较大的角点。角点Z的象素值用a表示,Ix、Iy表示其水平和垂直差分。将图像中Z点的象素值更改为q,q的范围为0~255,对图像进行角点检测得到Z点响应值,得到Z点响应值R与象素值的关系如图1所示。Harris角点的响应值R由矩阵M的两个特征值决定,其中的两个特征值决定,进而由A、C、B决定,具体分析如下。
1.1 象素值修改对A,C,B的影响
当a改变后,用 fA,fC,fB分别表示A、C、B,m1和m2为窗口函数参数值:
1.2 象素值修改对R值影响
令y=Q1x4+Q2x3+Q3x2+Q4,在象素值有意义范围内y的极小值点x=-45,得a+x=144,又图1中R极小值点对应的位置为140左右,近似等于a+x。由此可知,随着点Z象素值的改变,R呈现的是离散的抛物线。由于篇幅有限不再取更多的点进行分析。
1.3 图像增强实验结果
取20幅不同类型的图像进行增强前后打印扫描图的对比前20个角点的重复率,实验结果如图2所示。从图中可以看出,响应值增强从不同程度上提高了图像在打印扫描前后角点的重复率,而且增强后角点位置的精确度也有所提高。
图1 响应值随着象素值的化情况
图2 图像增强前后实验结果
2 特征点匹配
2.1 本文提出的局部特征描述子
本文采用圆环型结构构建局部特征描述子。首先以特征点为中心,将特征点周围的圆形邻域划分成n个圆形子区域,从而使得构造具有旋转,平移不变性的特征描述子。然后计算求得每个子区域的灰度差异均值,最后用灰度差异均值序列构造特征描述子。统计各个区域的灰度差异得到特征点的特征向量,相对于特征点该特征向量的正负表征该区域的亮暗性,其大小反映了亮暗程度,因此具有可区别性。
2.2 本文提出的特征点匹配算法
特征点匹配算法具体如下:
(1)对生成的局部特征向量进行相似性测评得到匹配的特征点。假设用Pm,Pn表示点M和点N的特征描述子,两点的绝对距离用dist(Pm,Pn)表示。匹配的具体步骤,首先对于原始图像中特征点M,在待检测图像中找出与其特征描述子距离最近的点N,若待检测图像中任意特征点C满足dist(Pm,Pc)>th1×dist(Pm,Pn),则认为点M和点C为错配点对并删除该点对,其中th1为阈值。对参考图像中所有的特征点,依次进行即可获得一组初始匹配点集E;
(2)使用聚类法[7]筛选点集E。首先用反正切函数计算E’中所有成对角点的弧度值,然后根据阈值th2,得到包含某弧度值最多的邻域,保留在邻域阈值内的特征点作为匹配点。最后,使用RANSAC算法进行精匹配得到最终匹配点。
2.3 匹配算法实验
对20个样本图像提取的角点分别进行sift特征点匹配和本文提出的匹配算法进行匹配,实验结果如图3所示。由图3可知,SIFT匹配算法的匹配率不稳定,存在匹配率为零的情况,而本文提出的匹配算法比较稳定,相对SIFT匹配有所提高。
图3 匹配率比较结果
3 抗打印扫描图像零水印算法
3.1 水印注册
(1)利用 Harris算法提取图像 I的角点,角点集合 F={Fi|Fi=(fi,Ri,pv,JR),i∈[0,K]},其中,fi=(xi,yi)为角点在图像中的位置,Ri为角点的响应值,K为提取的角点总数,pv、JR分别代表当前角点的象素值,R的极值点象素值。依次提取角点fi的局部特征向量Ti。
(2)对原图进行角点响应值增强得到图像Ie,将特征向量H用图像所有权用户的私钥Ku加密,密文w提交注册,即w=E(H)与私钥Ku对称的公钥Kp和Ie公开,方便其他用户验证版权。
3.2 水印检测
(1)对待检测的图像I'提取Harris角点进而获得特征向量H',用公钥Kp解密注册水印w,得到解密后的局部特征向量Ti'集合和特征点位置fi'集合以及特征点相关信息。按本文2.2节特征点匹配方法获得最终匹配点对F。
(2)对F中原图像和待检测图像的特征点分别进行遍历,进而得到对应的遍历向量。
(3)对遍历向量进行相似性检测p,当ρ>ρr1时待检测图像中含有水印信息。当满足条件时表示待检测图像的含有水印,当ρ>ρr2且ρ<ρr1时,不能确定是否含有水印信息,需要人眼判断,当ρ<ρr2时不含水印信息。
4 实验结果分析与讨论
实验在MATLAB环境中进行,测试图像为灰度图像,大小为512×512。打印机采用HP ink-jet printer K8600,扫描仪采用Epson V330,打印分辨率100,扫描分辨率100。打印扫描后的图像使用PHOTOSHOP裁剪出与原始图像大小相同的图。K=20,水印注册时,局部特征向量Ti长度n=10。水印检测时,特征点匹配中阈值 th1=0.09,th2=0.02,阈值 pr1=0.25,pr2=0.15。对 24 幅测试图像增强后进行打印扫描,并且对打印扫描后的图像进行旋转(1 degree)和平移(5,5)攻击,水印相似性检测结果如图4所示。不同类型的图像在打印扫描后都可以得到正确的结果,并且对打印扫描后小尺度旋转和平移具有一定的鲁棒性。
图4 攻击实验结果
5 结束语
本文给出一种基于Harris响应值增强的抗打印扫描零水印算法,相比于其它抗打印扫描基于频域的零水印算法,特征点更能有效的提出原图像作品的局部信息特征。通过对提取出的角点进行响应值增强,提高角点在打印扫描前后的重复率,运用新的特征点匹配方法保证特征点的匹配率,实验表明本文的零水印算法对打印扫描具有鲁棒性,并且可以抵抗一定程度打印扫描后小尺度的旋转、平移攻击。
[1]Chen Hui,Luo Ting,Yu Mei,etal.A Zero-watermark Method Based on Texture Characteristic of Image Blocks for Stereo Images[C].Xi'an:International Conference on Industrial Control and Electronics Engineering,2012:490 -493.
[2]Yang Weimin,Meng Lingmei.A zeros-watermarking algorithm based on chaotic system and DCT[C].Wuhan:Asia-Pacific Conference on Computational Intelligence and Industrial Applications,2009:71 -74.
[3]温泉,孙锬锋,王树勋.基于零水印的数字水印技术研究[C].西安:西安电子科技大学出版社,2001:102-109.
[4]温泉,孙锬锋,王树勋.零水印的概念与应用[J].电子学报,2003,31(2):214-216.
[5]向华,曹汉强,伍凯宁,等.一种基于混沌调制的零水印算法[J].中国图象图形学报,2006,11(5):720-724.
[6]赵星阳,孙继银.一种基于SIFT特征的数字图像零水印算法[J].计算机应用研究,2010,7(4):1 517-1 521.
[7]张勇,余建平,孙军伟,等.基于Harris的角点匹配算法研究[J].计算机与现代化,2011,1(11):78-81.