一种多功能立体图像数字水印方法
技术领域
本发明涉及一种数字水印技术,尤其是涉及一种多功能立体图像数字水印方法。
背景技术
随着数字媒体及网络技术的不断发展和日益普及,平面图像处理技术趋于成熟,并在人们的学习、生活和工作等各个方面得到了广泛的应用;然而随着人们生活品质的提高,平面图像已经不能满足人们的视觉享受,而立体图像提供了深度信息来增强图像的真实感,给用户以身临其境的感觉,增加了人们对事物的兴趣度和认知度。作为新兴的数字媒体,立体图像/视频被称为自音频、图像、视频之后的第四代媒体形式。因此,市场对立体图像处理系统开发与应用的需求也越来越迫切,然而在立体图像处理技术发展和应用的过程中面临了一些问题。立体图像易于复制、修改以及网络传输,数字化在给人类带来便利的同时,也出现了诸如侵权、拷贝和篡改等一系列问题,侵害了所有者的版权。
利用水印技术能够有效改善立体图像被侵权、拷贝和篡改等一系列问题,目前存在多种水印算法,单水印算法往往存在功能单一;鲁棒水印算法具有良好的鲁棒性,具备抵抗攻击的能力,可以实现版权保护功能,但对篡改操作不够敏感,篡改检测和定位能力差,很难实现内容认证;脆弱水印算法正好相反,它对篡改操作非常敏感,篡改检测和定位能力强,容易实现内容认证,但不具备抵抗攻击的能力。因此设计一种多功能立体图像数字水印技术,实现版权保护、内容认证和篡改定位功能成为该领域的一个热点课题。
发明内容
本发明所要解决的技术问题是提供一种多功能立体图像数字水印方法,其能够很好地实现立体图像版权保护、内容认证和篡改定位功能。
本发明解决上述技术问题所采用的技术方案为:一种多功能立体图像数字水印方法,其特征在于包括以下步骤:
①-1、令表示参考立体图像的左视点图像,令表示参考立体图像的右视点图像,其中,1≤i≤M,1≤j≤N,M表示参考立体图像的宽,N表示参考立体图像的高,表示中坐标位置为(i,j)的像素点的像素值,表示中坐标位置为(i,j)的像素点的像素值;
①-2、将中的每个像素点的以二进制形式表示的像素值的最低位置零,得到新的左视点图像,记为其中,表示中坐标位置为(i,j)的像素点的像素值;
同样,将中的每个像素点的以二进制形式表示的像素值的最低位置零,得到新的右视点图像,记为其中,表示中坐标位置为(i,j)的像素点的像素值;
①-3、将分割成个互不重叠的尺寸大小为4×4的图像块;然后对中的每个图像块进行离散余弦变换,得到中的每个图像块的维数为4×4的DCT系数矩阵;接着对中的每个图像块的DCT系数矩阵中左上角的2×2个DCT系数进行奇异值分解,得到中的每个图像块对应的维数为2×2的奇异值矩阵;再提取出中的所有图像块各自对应的奇异值矩阵中左上角的奇异值,构成对应的维数为的最大奇异值矩阵,记为{SL,max(m,n)},其中,SL,max(m,n)表示{SL,max(m,n)}中下标为(m,n)处的奇异值,亦表示中坐标位置为(m,n)的图像块对应的奇异值矩阵中左上角的奇异值;
同样,将分割成个互不重叠的尺寸大小为4×4的图像块;然后对中的每个图像块进行离散余弦变换,得到中的每个图像块的维数为4×4的DCT系数矩阵;接着对中的每个图像块的DCT系数矩阵中左上角的2×2个DCT系数进行奇异值分解,得到中的每个图像块对应的维数为2×2的奇异值矩阵;再提取出中的所有图像块各自对应的奇异值矩阵中左上角的奇异值,构成对应的维数为的最大奇异值矩阵,记为{SR,max(m,n)},其中,SR,max(m,n)表示{SR,max(m,n)}中下标为(m,n)处的奇异值,亦表示中坐标位置为(m,n)的图像块对应的奇异值矩阵中左上角的奇异值;
①-4、根据{SL,max(m,n)}中的每个奇异值的最高位的奇偶性,提取中的每个图像块的特征水印,将中坐标位置为(m,n)的图像块的特征水印记为WL,f(m,n),如果SL,max(m,n)的最高位为奇数,则令WL,f(m,n)=1;如果SL,max(m,n)的最高位为偶数,则令WL,f(m,n)=0;
同样,根据{SR,max(m,n)}中的每个奇异值的最高位的奇偶性,提取中的每个图像块的特征水印,将中坐标位置为(m,n)的图像块的特征水印记为WR,f(m,n),如果SR,max(m,n)的最高位为奇数,则令WR,f(m,n)=1;如果SR,max(m,n)的最高位为偶数,则令WR,f(m,n)=0;
①-5、获取中的每个图像块的视差,将中坐标位置为(m,n)的图像块的视差记为d(m,n),d(m,n)的值取满足条件(SL,max(m,n)-SR,max(m,n-d(m,n)))<T的最小值,其中,SR,max(m,n-d(m,n))表示{SR,max(m,n)}中下标为(m,n-d(m,n))处的奇异值,T表示设定的第一视差判定阈值;然后根据中的每个图像块的视差,确定和中的匹配块及中的非匹配块,对于中坐标位置为(m,n)的图像块的视差d(m,n),如果则令d(m,n)=β+1,并将中坐标位置为(m,n)的图像块确定为非匹配块;如果d(m,n)∈[-β,β],则确定中坐标位置为(m,n)的图像块与中坐标位置为(m,n-d(m,n))的图像块相匹配,并将中坐标位置为(m,n)的图像块确定为匹配块,将中坐标位置为(m,n-d(m,n))的图像块确定为匹配块;再将中除所有匹配块外的图像块确定为非匹配块,其中,β表示视差的最大取值;
①-6、向中的匹配块中嵌入脆弱水印:假设中坐标位置为(m,n)的图像块为匹配块,则将该匹配块中的每个像素点的以二进制形式表示的像素值的最低位用WL,f(m,n)的值替代,实现脆弱水印的嵌入;
同样,向中的匹配块中嵌入脆弱水印:假设中坐标位置为(m,n)的图像块为匹配块,则将该匹配块中的每个像素点的以二进制形式表示的像素值的最低位用WR,f(m,n)的值替代,实现脆弱水印的嵌入;
向中的非匹配块中嵌入鲁棒水印:假设中坐标位置为(m,n)的图像块为非匹配块,则首先从该非匹配块的DCT系数矩阵中任意选择两个下标不相同的中频DCT系数,假定任意选出的两个中频DCT系数的下标分别为(u1,v1)和(u2,v2),则将任意选出的两个中频DCT系数对应记为和然后根据WL,f(m,n)及和向该非匹配块中嵌入鲁棒水印:如果WL,f(m,n)=0且则令并令 再令如果WL,f(m,n)=0且则对和不作修改;如果WL,f(m,n)=1且则令 并令再令如果WL,f(m,n)=1且 则对和不作修改;其中,1≤u1≤4,1≤v1≤4,1≤u2≤4,1≤v2≤4,α表示调节参数,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(1,1)处的DCT系数,β表示视差的最大取值,和中的“=”为赋值符号;
同样,向中的非匹配块中嵌入鲁棒水印:假设中坐标位置为(m,n)的图像块为非匹配块,则首先从该非匹配块的DCT系数矩阵中任意选择两个下标不相同的中频DCT系数,假定任意选出的两个中频DCT系数的下标分别为(u1,v1)和(u2,v2),则将任意选出的两个中频DCT系数对应记为和然后根据WR,f(m,n)及和向该非匹配块中嵌入鲁棒水印:如果WR,f(m,n)=0且 则令并令 再令 如果WR,f(m,n)=0且则对和不作修改;如果WR,f(m,n)=1且则令 并令再令如果WR,f(m,n)=1且 则对和不作修改;其中,α表示调节参数,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(1,1)处的DCT系数,和中的“=”为赋值符号;
再向中的非匹配块中嵌入脆弱水印:假设中坐标位置为(m,n)的图像块为非匹配块,则首先从该非匹配块的DCT系数矩阵中任意选择六个下标不相同的高频DCT系数,假定任意选出的六个高频DCT系数的下标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x1',y1')、(x2',y2')和(x3',y3'),则将任意选出的六个高频DCT系数对应记为和然后通过修改和向该非匹配块中嵌入脆弱水印:令 再令 其中,1≤x1≤4,1≤y1≤4,1≤x2≤4,1≤y2≤4,1≤x3≤4,1≤y3≤4,1≤x1'≤4,1≤y1'≤4,1≤x2'≤4,1≤y2'≤4,1≤x3'≤4,1≤y3'≤4,μ和τ表示调节参数, 和中的“=”为赋值符号;
同样,再向中的非匹配块中嵌入脆弱水印:假设中坐标位置为(m,n)的图像块为非匹配块,则首先从该非匹配块的DCT系数矩阵中任意选择六个下标不相同的高频DCT系数,假定任意选出的六个高频DCT系数的下标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x1',y1')、(x2',y2')和(x3',y3'),则将任意选出的六个高频DCT系数对应记为 和然后通过修改和向该非匹配块中嵌入脆弱水印:令 再令 其中,和中的“=”为赋值符号;
②-1、令表示经过攻击后的水印立体图像的左视点图像,令表示经过攻击后的水印立体图像的右视点图像,其中,1≤i≤M',1≤j≤N',M'表示经过攻击后的水印立体图像的宽,且与参考立体图像的宽一致,N'表示经过攻击后的水印立体图像的高,且与参考立体图像的高一致,表示中坐标位置为(i,j)的像素点的像素值,表示中坐标位置为(i,j)的像素点的像素值;
②-2、将分割成个互不重叠的尺寸大小为4×4的图像块;然后对中的每个图像块进行离散余弦变换,得到中的每个图像块的维数为4×4的DCT系数矩阵;接着对中的每个图像块的DCT系数矩阵中左上角的2×2个DCT系数进行奇异值分解,得到中的每个图像块对应的维数为2×2的奇异值矩阵;再提取出中的所有图像块各自对应的奇异值矩阵中左上角的奇异值,构成对应的维数为的最大奇异值矩阵,记为其中, 表示中下标为(m,n)处的奇异值,亦表示中坐标位置为(m,n)的图像块对应的奇异值矩阵中左上角的奇异值;
同样,将分割成个互不重叠的尺寸大小为4×4的图像块;然后对中的每个图像块进行离散余弦变换,得到中的每个图像块的维数为4×4的DCT系数矩阵;接着对中的每个图像块的DCT系数矩阵中左上角的2×2个DCT系数进行奇异值分解,得到中的每个图像块对应的维数为2×2的奇异值矩阵;再提取出中的所有图像块各自对应的奇异值矩阵中左上角的奇异值,构成对应的维数为的最大奇异值矩阵,记为其中,表示中下标为(m,n)处的奇异值,亦表示中坐标位置为(m,n)的图像块对应的奇异值矩阵中左上角的奇异值;
②-3、根据中的每个奇异值的最高位的奇偶性,提取中的每个图像块的特征水印,将中坐标位置为(m,n)的图像块的特征水印记为如果的最高位为奇数,则令如果的最高位为偶数,则令
同样,根据中的每个奇异值的最高位的奇偶性,提取中的每个图像块的特征水印,将中坐标位置为(m,n)的图像块的特征水印记为如果的最高位为奇数,则令如果的最高位为偶数,则令
②-4、获取中的每个图像块的视差,将中坐标位置为(m,n)的图像块的视差记为d'(m,n),d'(m,n)的值取满足条件的最小值,其中,表示中下标为(m,n-d'(m,n))处的奇异值,T'表示设定的第二视差判定阈值;然后根据中的每个图像块的视差,确定和中的匹配块及中的非匹配块,对于中坐标位置为(m,n)的图像块的视差d'(m,n),如果则令d'(m,n)=β+1,并将中坐标位置为(m,n)的图像块确定为非匹配块;如果d'(m,n)∈[-β,β],则确定中坐标位置为(m,n)的图像块与中坐标位置为(m,n-d'(m,n))的图像块相匹配,并将中坐标位置为(m,n)的图像块确定为匹配块,将中坐标位置为(m,n-d'(m,n))的图像块确定为匹配块;再将中除所有匹配块外的图像块确定为非匹配块,其中,β表示视差的最大取值;
②-5、从中的匹配块中提取鲁棒水印:假设中坐标位置为(m,n)的图像块为匹配块,则将从该匹配块中提取出的鲁棒水印记为 其中,表示中坐标位置为(m,n+d'(m,n))的图像块的特征水印,中的“=”为赋值符号;
同样,从中的匹配块中提取鲁棒水印:假设中坐标位置为(m,n)的图像块为匹配块,则将从该匹配块中提取出的鲁棒水印记为 其中,表示中坐标位置为(m,n+d'(m,n))的图像块的特征水印,中的“=”为赋值符号;
从中的非匹配块中提取鲁棒水印:假设中坐标位置为(m,n)的图像块为非匹配块,则将从该非匹配块中提取出的鲁棒水印记为 其中,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(u1,v1)处的DCT系数,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(u2,v2)处的DCT系数;
同样,从中的非匹配块中提取鲁棒水印:假设中坐标位置为(m,n)的图像块为非匹配块,则将从该非匹配块中提取出的鲁棒水印记为 其中,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(u1,v1)处的DCT系数,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(u2,v2)处的DCT系数;
②-6、检测从中提取出的鲁棒水印的鲁棒性:定义从中提取出的鲁棒水印与特征水印之间的相似度为NCL,其中,WL,extract(m,n)由和相加得到;如果NCL的值越接近于1,则表明从中提取出的鲁棒水印的鲁棒性越好;
同样,检测从中提取出的鲁棒水印的鲁棒性:定义从中提取出的鲁棒水印与特征水印之间的相似度为NCR,其中,WR,extract(m,n)由和相加得到;如果NCR的值越接近于1,则表明从中提取出的鲁棒水印的鲁棒性越好;
③-1、从中的匹配块中提取脆弱水印,定位篡改块:假设中坐标位置为(m,n)的图像块为匹配块,则提取该匹配块中的每个像素点的以二进制形式表示的像素值的最低位,构成一个维数为4×4的矩阵,并将该矩阵作为从该匹配块中提取出的脆弱水印,记为如果则确定该匹配块为篡改块;
同样,从中的匹配块中提取脆弱水印,定位篡改块:假设中坐标位置为(m,n)的图像块为匹配块,则提取该匹配块中的每个像素点的以二进制形式表示的像素值的最低位,构成一个维数为4×4的矩阵,并将该矩阵作为从该匹配块中提取出的脆弱水印,记为如果则确定该匹配块为篡改块;
再通过判断中的非匹配块的DCT系数矩阵中的两个高频DCT系数的线性关系,从中的非匹配块中定位篡改块:假设中坐标位置为(m,n)的图像块为非匹配块,则从该非匹配块的DCT系数矩阵中选择六个下标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x1',y1')、(x2',y2')和(x3',y3')的高频DCT系数,对应记为 和如果 或或则确定该非匹配块为篡改块;
同样,再通过判断中的非匹配块的DCT系数矩阵中的两个高频DCT系数的线性关系,从中的非匹配块中定位篡改块:假设中坐标位置为(m,n)的图像块为非匹配块,则从该非匹配块的DCT系数矩阵中选择六个下标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x1',y1')、(x2',y2')和(x3',y3')的高频DCT系数,对应记为 和如果 或或则确定该非匹配块为篡改
所述的步骤①-5中取T=10,取β=30。
所述的步骤①-6中取u1=2,v1=3,u2=3,v2=2,取α=0.04,取β=30,取x1=3,y1=3,x2=2,y2=4,x3=4,y3=2,x1'=4,y1'=4,x2'=3,y2'=4,x3'=4,y3'=3,取τ=1,取μ=0.05。
所述的步骤②-4中取T'=10,取β=30。
所述的步骤②-5中取u1=2,v1=3,u2=3,v2=2。
所述的步骤③-1中取τ=1,取μ=0.05,取λ=0.000001,取x1=3,y1=3,x2=2,y2=4,x3=4,y3=2,x1'=4,y1'=4,x2'=3,y2'=4,x3'=4,y3'=3。
与现有技术相比,本发明的优点在于:
1)本发明方法将参考立体图像的左视点图像和右视点图像分割成不重叠的子块,然后对每个子块进行离散余弦变换,再对其中低频区域进行奇异值分解,得到左视点图像和右视点图像各自对应的最大奇异值矩阵,通过判断最大奇异值矩阵中的奇异值的最高位的奇偶性产生左视点图像和右视点图像的特征水印,由于通过离散余弦变换得到的DCT系数矩阵中的低频区域获得的最大奇异值矩阵具有较强的稳定性,因此提取的特性水印的稳定性较好。
2)本发明方法利用从经过攻击后的水印立体图像的左视点图像中提取的特征水印与鲁棒水印之间的相似度及从经过攻击后的水印立体图像的右视点图像中提取的特征水印与鲁棒水印之间的相似度作为评价的依据,实现了立体图像的版权保护。
3)本发明方法对于经过攻击后的水印立体图像的左视点图像和右视点图像中的篡改块的定位分为两步:对于非匹配块,通过判断每个非匹配块的DCT系数矩阵中的两个相应的高频DCT系数之间是否存在所设定的数值大小线性关系实现篡改检测;对于匹配块,利用从匹配块中提取的特征水印和提取的嵌入脆弱水印实现篡改检测,最终实现了立体图像的篡改定位功能。
4)本发明方法不仅在抵抗添加噪声、滤波、压缩和缩放等攻击方面表现出很强的鲁棒性,而且能够精确定位出篡改位置,因此本发明方法具有版权保护和内容认证双重功能。
附图说明
图1为本发明方法的总体实现框图;
图2a为嵌入水印后的“Doorflower”立体图像的左视点图像;
图2b为嵌入水印后的“Doorflower”立体图像的右视点图像;
图2c为嵌入水印后的“Bowling”立体图像的左视点图像;
图2d为嵌入水印后的“Bowling”立体图像的右视点图像;
图2e为嵌入水印后的“Dwarves”立体图像的左视点图像;
图2f为嵌入水印后的“Dwarves”立体图像的右视点图像;
图2g为嵌入水印后的“Art”立体图像的左视点图像;
图2h为嵌入水印后的“Art”立体图像的右视点图像;
图3a为对图2a进行拷贝和粘贴的篡改检测结果;
图3b为对图2b进行拷贝和粘贴的篡改检测结果;
图3c为对图2c进行文字添加的篡改检测结果;
图3d为对图2d进行文字添加的篡改检测结果;
图3e为对图2e进行内容移除的篡改检测结果;
图3f为对图2f进行内容移除的篡改检测结果;
图3g为对图2g进行拼接的篡改检测结果;
图3h为对图2h进行拼接的篡改检测结果;
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
本发明提出的一种多功能立体图像数字水印方法,其包括水印嵌入、水印提取和篡改定位三部分,其总体实现框图如图1所示,其包括以下步骤:
①-1、令表示参考立体图像的左视点图像,令表示参考立体图像的右视点图像,其中,1≤i≤M,1≤j≤N,M表示参考立体图像的宽,N表示参考立体图像的高,表示中坐标位置为(i,j)的像素点的像素值,表示中坐标位置为(i,j)的像素点的像素值。
①-2、将中的每个像素点的以二进制形式表示的像素值的最低位置零,得到新的左视点图像,记为其中,表示中坐标位置为(i,j)的像素点的像素值。
如:假设中坐标位置为(i,j)的像素点的像素值将十进制数51以二进制形式表示为00110011,则将00110011中的最低位置零后得到00110010,即00110010为中坐标位置为(i,j)的像素点的像素值的二进制表示形式,转换成十进制为50,即
同样,将中的每个像素点的以二进制形式表示的像素值的最低位置零,得到新的右视点图像,记为其中,表示中坐标位置为(i,j)的像素点的像素值。
①-3、将分割成个互不重叠的尺寸大小为4×4的图像块;然后对中的每个图像块进行离散余弦变换,得到中的每个图像块的维数为4×4的DCT系数矩阵;接着对中的每个图像块的DCT系数矩阵中左上角的2×2个DCT系数进行奇异值分解(即对中的每个图像块的DCT系数矩阵中下标为(1,1),(1,2),(2,1),(2,2)的4个DCT系数进行奇异值分解),得到中的每个图像块对应的维数为2×2的奇异值矩阵;再提取出中的所有图像块各自对应的奇异值矩阵中左上角的奇异值,构成对应的维数为的最大奇异值矩阵,记为{SL,max(m,n)},其中,SL,max(m,n)表示{SL,max(m,n)}中下标为(m,n)处的奇异值,亦表示中坐标位置为(m,n)的图像块对应的奇异值矩阵中左上角的奇异值。
同样,将分割成个互不重叠的尺寸大小为4×4的图像块;然后对中的每个图像块进行离散余弦变换,得到中的每个图像块的维数为4×4的DCT系数矩阵;接着对中的每个图像块的DCT系数矩阵中左上角的2×2个DCT系数进行奇异值分解(即对中的每个图像块的DCT系数矩阵中下标为(1,1),(1,2),(2,1),(2,2)的4个DCT系数进行奇异值分解),得到中的每个图像块对应的维数为2×2的奇异值矩阵;再提取出中的所有图像块各自对应的奇异值矩阵中左上角的奇异值,构成对应的维数为的最大奇异值矩阵,记为{SR,max(m,n)},其中,SR,max(m,n)表示{SR,max(m,n)}中下标为(m,n)处的奇异值,亦表示中坐标位置为(m,n)的图像块对应的奇异值矩阵中左上角的奇异值。
①-4、根据{SL,max(m,n)}中的每个奇异值的最高位的奇偶性,提取中的每个图像块的特征水印,将中坐标位置为(m,n)的图像块的特征水印记为WL,f(m,n),如果SL,max(m,n)的最高位为奇数,则令WL,f(m,n)=1;如果SL,max(m,n)的最高位为偶数,则令WL,f(m,n)=0。
如:假设SL,max(m,n)=81,其最高位为8,为偶数,则令WL,f(m,n)=0。
同样,根据{SR,max(m,n)}中的每个奇异值的最高位的奇偶性,提取中的每个图像块的特征水印,将中坐标位置为(m,n)的图像块的特征水印记为WR,f(m,n),如果SR,max(m,n)的最高位为奇数,则令WR,f(m,n)=1;如果SR,max(m,n)的最高位为偶数,则令WR,f(m,n)=0。
①-5、获取中的每个图像块的视差,将中坐标位置为(m,n)的图像块的视差记为d(m,n),d(m,n)的值取满足条件(SL,max(m,n)-SR,max(m,n-d(m,n)))<T的最小值,即d(m,n)的取值首先要满足条件:(SL,max(m,n)-SR,max(m,n-d(m,n)))<T,然而满足该条件有多个不同的d(m,n)值,取最小值作为d(m,n)的最终取值,其中,SR,max(m,n-d(m,n))表示{SR,max(m,n)}中下标为(m,n-d(m,n))处的奇异值,T表示设定的第一视差判定阈值,在本实施例中取T=10;然后根据中的每个图像块的视差,确定和中的匹配块及中的非匹配块,对于中坐标位置为(m,n)的图像块的视差d(m,n),如果则令d(m,n)=β+1,并将中坐标位置为(m,n)的图像块确定为非匹配块;如果d(m,n)∈[-β,β],则确定中坐标位置为(m,n)的图像块与中坐标位置为(m,n-d(m,n))的图像块相匹配,并将中坐标位置为(m,n)的图像块确定为匹配块,将中坐标位置为(m,n-d(m,n))的图像块确定为匹配块;再将中除所有匹配块外的图像块确定为非匹配块,其中,β表示视差的最大取值,在本实施例中取β=30。
①-6、向中的匹配块中嵌入脆弱水印:假设中坐标位置为(m,n)的图像块为匹配块,则将该匹配块中的每个像素点的以二进制形式表示的像素值的最低位用WL,f(m,n)的值替代,实现脆弱水印的嵌入。
同样,向中的匹配块中嵌入脆弱水印:假设中坐标位置为(m,n)的图像块为匹配块,则将该匹配块中的每个像素点的以二进制形式表示的像素值的最低位用WR,f(m,n)的值替代,实现脆弱水印的嵌入。
向中的非匹配块中嵌入鲁棒水印:假设中坐标位置为(m,n)的图像块为非匹配块,则首先从该非匹配块的DCT系数矩阵中任意选择两个下标不相同的中频DCT系数,假定任意选出的两个中频DCT系数的下标分别为(u1,v1)和(u2,v2),则将任意选出的两个中频DCT系数对应记为和然后根据WL,f(m,n)及和向该非匹配块中嵌入鲁棒水印:如果WL,f(m,n)=0且则令并令 再令如果WL,f(m,n)=0且则对和不作修改;如果WL,f(m,n)=1且则令 并令再令如果WL,f(m,n)=1且 则对和不作修改;其中,1≤u1≤4,1≤v1≤4,1≤u2≤4,1≤v2≤4,α表示调节参数,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(1,1)处的DCT系数,β表示视差的最大取值,和中的“=”为赋值符号。
同样,向中的非匹配块中嵌入鲁棒水印:假设中坐标位置为(m,n)的图像块为非匹配块,则首先从该非匹配块的DCT系数矩阵中任意选择两个下标不相同的中频DCT系数,假定任意选出的两个中频DCT系数的下标分别为(u1,v1)和(u2,v2),则将任意选出的两个中频DCT系数对应记为和然后根据WR,f(m,n)及和向该非匹配块中嵌入鲁棒水印:如果WR,f(m,n)=0且 则令并令 再令如果WR,f(m,n)=0且则对和不作修改;如果WR,f(m,n)=1且则令 并令再令如果WR,f(m,n)=1且 则对和不作修改;其中,α表示调节参数,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(1,1)处的DCT系数,和中的“=”为赋值符号。
再向中的非匹配块中嵌入脆弱水印:假设中坐标位置为(m,n)的图像块为非匹配块,则首先从该非匹配块的DCT系数矩阵中任意选择六个下标不相同的高频DCT系数,假定任意选出的六个高频DCT系数的下标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x1',y1')、(x2',y2')和(x3',y3'),则将任意选出的六个高频DCT系数对应记为 和然后通过修改和向该非匹配块中嵌入脆弱水印:令 再令 其中,1≤x1≤4,1≤y1≤4,1≤x2≤4,1≤y2≤4,1≤x3≤4,1≤y3≤4,1≤x1'≤4,1≤y1'≤4,1≤x2'≤4,1≤y2'≤4,1≤x3'≤4,1≤y3'≤4,μ和τ表示调节参数, 和中的“=”为赋值符号。
同样,再向中的非匹配块中嵌入脆弱水印:假设中坐标位置为(m,n)的图像块为非匹配块,则首先从该非匹配块的DCT系数矩阵中任意选择六个下标不相同的高频DCT系数,假定任意选出的六个高频DCT系数的下标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x1',y1')、(x2',y2')和(x3',y3'),则将任意选出的六个高频DCT系数对应记为和然后通过修改和向该非匹配块中嵌入脆弱水印:令 再令 其中,和中的“=”为赋值符号。
通过上述水印嵌入得到嵌入水印后的水印立体图像。
在本实施例中,取u1=2,v1=3,u2=3,v2=2,取α=0.04,取β=30,取x1=3,y1=3,x2=2,y2=4,x3=4,y3=2,x1'=4,y1'=4,x2'=3,y2'=4,x3'=4,y3'=3,取τ=1,取μ=0.05。
②-1、令表示经过攻击后的水印立体图像的左视点图像,令表示经过攻击后的水印立体图像的右视点图像,其中,1≤i≤M',1≤j≤N',M'表示经过攻击后的水印立体图像的宽,且与参考立体图像的宽一致,N'表示经过攻击后的水印立体图像的高,且与参考立体图像的高一致,表示中坐标位置为(i,j)的像素点的像素值,表示中坐标位置为(i,j)的像素点的像素值。
②-2、将分割成个互不重叠的尺寸大小为4×4的图像块;然后对中的每个图像块进行离散余弦变换,得到中的每个图像块的维数为4×4的DCT系数矩阵;接着对中的每个图像块的DCT系数矩阵中左上角的2×2个DCT系数进行奇异值分解,得到中的每个图像块对应的维数为2×2的奇异值矩阵;再提取出中的所有图像块各自对应的奇异值矩阵中左上角的奇异值,构成对应的维数为的最大奇异值矩阵,记为其中, 表示中下标为(m,n)处的奇异值,亦表示中坐标位置为(m,n)的图像块对应的奇异值矩阵中左上角的奇异值。
同样,将分割成个互不重叠的尺寸大小为4×4的图像块;然后对中的每个图像块进行离散余弦变换,得到中的每个图像块的维数为4×4的DCT系数矩阵;接着对中的每个图像块的DCT系数矩阵中左上角的2×2个DCT系数进行奇异值分解,得到中的每个图像块对应的维数为2×2的奇异值矩阵;再提取出中的所有图像块各自对应的奇异值矩阵中左上角的奇异值,构成对应的维数为的最大奇异值矩阵,记为其中,表示中下标为(m,n)处的奇异值,亦表示中坐标位置为(m,n)的图像块对应的奇异值矩阵中左上角的奇异值。
②-3、根据中的每个奇异值的最高位的奇偶性,提取中的每个图像块的特征水印,将中坐标位置为(m,n)的图像块的特征水印记为如果的最高位为奇数,则令如果的最高位为偶数,则令
同样,根据中的每个奇异值的最高位的奇偶性,提取中的每个图像块的特征水印,将中坐标位置为(m,n)的图像块的特征水印记为如果的最高位为奇数,则令如果的最高位为偶数,则令
②-4、获取中的每个图像块的视差,将中坐标位置为(m,n)的图像块的视差记为d'(m,n),d'(m,n)的值取满足条件的最小值,即d'(m,n)的取值首先要满足条件:然而满足该条件有多个不同的d'(m,n)值,取最小值作为d'(m,n)的最终取值,其中,表示中下标为(m,n-d'(m,n))处的奇异值,T'表示设定的第二视差判定阈值,在本实施例中取T'=10;然后根据中的每个图像块的视差,确定和中的匹配块及中的非匹配块,对于中坐标位置为(m,n)的图像块的视差d'(m,n),如果则令d'(m,n)=β+1,并将中坐标位置为(m,n)的图像块确定为非匹配块;如果d'(m,n)∈[-β,β],则确定中坐标位置为(m,n)的图像块与中坐标位置为(m,n-d'(m,n))的图像块相匹配,并将中坐标位置为(m,n)的图像块确定为匹配块,将中坐标位置为(m,n-d'(m,n))的图像块确定为匹配块;再将中除所有匹配块外的图像块确定为非匹配块,其中,β表示视差的最大取值,在本实施例中取β=30。
②-5、从中的匹配块中提取鲁棒水印:假设中坐标位置为(m,n)的图像块为匹配块,则将从该匹配块中提取出的鲁棒水印记为 其中,表示中坐标位置为(m,n+d'(m,n))的图像块的特征水印,中的“=”为赋值符号。
同样,从中的匹配块中提取鲁棒水印:假设中坐标位置为(m,n)的图像块为匹配块,则将从该匹配块中提取出的鲁棒水印记为 其中,表示中坐标位置为(m,n+d'(m,n))的图像块的特征水印,中的“=”为赋值符号。
从中的非匹配块中提取鲁棒水印:假设中坐标位置为(m,n)的图像块为非匹配块,则将从该非匹配块中提取出的鲁棒水印记为 其中,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(u1,v1)处的DCT系数,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(u2,v2)处的DCT系数。
同样,从中的非匹配块中提取鲁棒水印:假设中坐标位置为(m,n)的图像块为非匹配块,则将从该非匹配块中提取出的鲁棒水印记为 其中,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(u1,v1)处的DCT系数,表示中坐标位置为(m,n)的图像块的DCT系数矩阵中下标为(u2,v2)处的DCT系数。
在本实施例中,取u1=2,v1=3,u2=3,v2=2。
②-6、检测从中提取出的鲁棒水印的鲁棒性:定义从中提取出的鲁棒水印与特征水印之间的相似度为NCL,其中,WL,extract(m,n)由和相加得到;如果NCL的值越接近于1,则表明从中提取出的鲁棒水印的鲁棒性越好。
同样,检测从中提取出的鲁棒水印的鲁棒性:定义从中提取出的鲁棒水印与特征水印之间的相似度为NCR,其中,WR,extract(m,n)由和相加得到;如果NCR的值越接近于1,则表明从中提取出的鲁棒水印的鲁棒性越好。
③-1、从中的匹配块中提取脆弱水印,定位篡改块:假设中坐标位置为(m,n)的图像块为匹配块,则提取该匹配块中的每个像素点的以二进制形式表示的像素值的最低位,构成一个维数为4×4的矩阵,并将该矩阵作为从该匹配块中提取出的脆弱水印,记为如果则确定该匹配块为篡改块,如果则确定该匹配块为非篡改块。
同样,从中的匹配块中提取脆弱水印,定位篡改块:假设中坐标位置为(m,n)的图像块为匹配块,则提取该匹配块中的每个像素点的以二进制形式表示的像素值的最低位,构成一个维数为4×4的矩阵,并将该矩阵作为从该匹配块中提取出的脆弱水印,记为如果则确定该匹配块为篡改块,如果则确定该匹配块为非篡改块。
再通过判断中的非匹配块的DCT系数矩阵中的两个高频DCT系数的线性关系,从中的非匹配块中定位篡改块:假设中坐标位置为(m,n)的图像块为非匹配块,则从该非匹配块的DCT系数矩阵中选择六个下标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x1',y1')、(x2',y2')和(x3',y3')的高频DCT系数,对应记为 和如果 或或 则确定该非匹配块为篡改块。
同样,再通过判断中的非匹配块的DCT系数矩阵中的两个高频DCT系数的线性关系,从中的非匹配块中定位篡改块:假设中坐标位置为(m,n)的图像块为非匹配块,则从该非匹配块的DCT系数矩阵中选择六个下标分别为(x1,y1)、(x2,y2)、(x3,y3)、(x1',y1')、(x2',y2')和(x3',y3')的高频DCT系数,对应记为 和如果 或或则确定该非匹配块为篡改块。
在本实施例中,取τ=1,取μ=0.05,取λ=0.000001,取x1=3,y1=3,x2=2,y2=4,x3=4,y3=2,x1'=4,y1'=4,x2'=3,y2'=4,x3'=4,y3'=3。
为了验证本发明方法的有效性,对利用本发明方法嵌入水印后的立体图像进行抗攻击实验。
图2a和图2b给出了利用本发明方法嵌入水印后的“Doorflower”立体图像的左视点图像和右视点图像,图2c和图2d给出了利用本发明方法嵌入水印后的“Bowling”立体图像的左视点图像和右视点图像,图2e和图2f给出了利用本发明方法嵌入水印后的“Dwarves”立体图像的左视点图像和右视点图像,图2g和图2h给出了利用本发明方法嵌入水印后的“Art”立体图像的左视点图像和右视点图像。
对图2a至图2h所示的图像进行抗噪声攻击、抗滤波攻击和抗JPEG压缩测试实验,之后利用本发明方法提取出鲁棒水印。表1列出了抗噪声攻击测试实验的实验结果,表2列出了抗滤波攻击测试实验的实验结果,表3列出了抗JPEG压缩测试实验的实验结果。从表1至表3中,可以看出NCL和NCR都比较接近于1,充分说明了利用本发明方法提取出的鲁棒水印具有较好的鲁棒性。
对图2a和2b进行拷贝和粘贴的篡改操作,并利用本发明方法提取脆弱水印进行篡改块定位测试实验,结果如图3a和图3b所示;对图2c和2d进行文字添加的篡改操作,并利用本发明方法提取脆弱水印进行篡改块定位测试实验,检测结果如图3c和图3d所示;对图2e和2f进行内容移除的篡改操作,并利用本发明方法提取脆弱水印进行篡改块定位测试实验,检测结果如图3e和图3f;对图2g和2h进行拼接的篡改操作,并利用本发明方法提取脆弱水印进行篡改块定位测试实验,检测结果如图3g和图3h。从图3a至图3h中,可以看出本发明方法能够准确定位被篡改区域。
表1抗噪声攻击测试(NCL/NCR)
表2抗滤波攻击测试(NCL/NCR)
表3JPEG压缩测试(NCL/NCR)