目录
文献总结--数字水印文献调研
数字水印方法
多级数字水印检测与恢复[1]
(a)基于块的水印嵌入方法
(b)基于块的分级篡改检测方法
(c)基于块的恢复方法
图像数据库
一些概念
VQ矢量量化(vector quantization)[1]:
文献总结--数字水印文献调研
- Lin, Phen Lan, Chung-Kai Hsieh, and Po-Whei Huang. "A hierarchical digital watermarking method for image tamper detection and recovery." Pattern recognition 38.12 (2005): 2519-2529. (引用308,中科院2区,IF= 3.962)
- Lee, Tien-You, and Shinfeng D. Lin. "Dual watermark for image tamper detection and recovery." Pattern recognition 41.11 (2008): 3497-3506.(引用246,中科院2区,IF= 3.962)
- Zhang, Xinpeng, et al. "Watermarking with flexible self-recovery quality based on compressive sensing and compositive reconstruction." IEEE Transactions on Information Forensics and Security 6.4 (2011): 1223-1232.(引用123,中科院2区,IF= 5.824)
- Korus, Paweł, and Andrzej Dziech. "Efficient method for content reconstruction with self-embedding." IEEE Transactions on Image Processing 22.3 (2012): 1134-1147. (引用69,中科院2区,计算机图形学A类,IF= 5.071)
- Qin, Chuan, et al. "Fragile image watermarking with pixel-wise recovery based on overlapping embedding strategy." Signal Processing 138 (2017): 280-293.(引用68,中科院2区,IF= 3.47)
- Sarreshtedari, Saeed, and Mohammad Ali Akhaee. "A source-channel coding approach to digital image protection and self-recovery." IEEE Transactions on Image Processing 24.7 (2015): 2266-2277. (引用34,中科院2区,计算机图形学A类,IF= 5.071)
- Dadkhah, Sajjad, et al. "An effective SVD-based image tampering detection and self-recovery using active watermarking." Signal Processing: Image Communication29.10 (2014): 1197-1210. (引用58,中科院2区,IF= 3.47)
- Yang, Chun-Wei, and Jau-Ji Shen. "Recover the tampered image based on VQ indexing." Signal Processing 90.1 (2010): 331-343.(引用111,中科院2区,IF= 3.47)
- He, Hong-Jie, Jia-Shu Zhang, and Fan Chen. "Adjacent-block based statistical detection method for self-embedding watermarking techniques." Signal Processing 89.8 (2009): 1557-1566. (引用87,中科院2区,IF= 3.47)
- Chang, Chin-Chen, Yi-Hsuan Fan, and Wei-Liang Tai. "Four-scanning attack on hierarchical digital watermarking method for image tamper detection and recovery." Pattern Recognition41.2 (2008): 654-661. (引用94,中科院2区,IF=3.962)
- Tong, Xiaojun, et al. "A novel chaos-based fragile watermarking for image tampering detection and self-recovery." Signal Processing: Image Communication 28.3 (2013): 301-308. (引用74,中科院2区,IF= 3.47)
- He, Hongjie, et al. "Performance analysis of a block-neighborhood-based self-recovery fragile watermarking scheme." IEEE Transactions on Information Forensics and Security 7.1 (2011): 185-196. (引用66,中科院2区,IF= 5.824)
- Khan, Asifullah, et al. "Intelligent reversible watermarking and authentication: Hiding depth map information for 3D cameras." Information Sciences 216 (2012): 155-175. (引用39,中科院2区,IF= 4.305)
- Barni, Mauro, et al. "A new decoder for the optimum recovery of nonadditive watermarks." IEEE transactions on image processing 10.5 (2001): 755-766. (引用243,中科院2区,计算机图形学A类,IF= 5.071)
- Barni, Mauro, et al. "Optimum decoding and detection of multiplicative watermarks." IEEE Transactions on Signal Processing 51.4 (2003): 1118-1123. (引用142,中科院2区,IF= 4.203)
- Khan, Asifullah, et al. "Machine learning based adaptive watermark decoding in view of anticipated attack." Pattern Recognition 41.8 (2008): 2594-2610. (引用96,中科院2区,IF= 3.962)
3. Lu, Wenhuan, et al. "Watermarking Based on Compressive Sensing for Digital Speech Detection and Recovery." Sensors18.7 (2018): 2390. (中科院3区,IF= 2.475)
注:下一级引用了最近上一级文章
数字水印方法
多级数字水印检测与恢复[1]
准备知识:Torus自同构映射(Torus automorphism):将一副给定的图像彻底打乱,从而产生一副完全混乱的图像。
水印流程:图A-->B-->C-->D-->…-->A依次根据Torus自同构映射提取信息嵌入,Torus自同构映射变换公式如下

其中N为图像块总数,块序号X`,X∈[1,N],私有密匙k∈[0,N-1]必须为素数才能保证1对1的映射。
(a)基于块的水印嵌入方法
块映射序列生成:将图分为不重叠的块,图大小为M*M pixels,块大小为4*4 pixels,块总数为N=(M/4)*(M/4);依次分配块序号X;随机选取素数k;通过Torus自同构映射变换公式获得映射块序号X`,记录所有X和X`序号对。
对每个4*4 pixels大小的块,继续分为2*2 pixels大小的子块,如下图所示

子块基于三元组(v,p,r)(认证水印v+奇偶校验位p+回转时间r),将其嵌入子块Bs的两位低有效位LSB(less significant bits)

其中avg_B、avg_Bs为块B和子块Bs将后两位置零后的块平均密度,num为avg_Bs的最高有效位(MSB)为1的总数。r为相应A子块的6位恢复水印,r与k、N和初始点(x_0,y_0)相关。

(b)基于块的分级篡改检测方法
对每个4*4 pixels大小的块B`,计算将块B`后两位置零后的平均密度avg_B`,进行三级检测。第一级以2*2大小的块为单位检查,第二级以4*4大小的块为单位检查,第三级扩大检查范围到3*3临近块(3×3 block-neighborhood)检查,第四级对VQ攻击(VQ-attack resiliency)检查。
第一级检测:
对每个4*4 pixels大小的块B`,继续分为2*2 pixels大小的子块B`s;
从B`s提取v、p,置B`s两位LSB为零并计算其平均密度avg_B`s;
从avg_B`s提取v`、p`;
比较p`与p,若不同,标记子块B`s为错误的,完成子块B`s的检测;
比较v`与v,若不同,标记子块B`s为错误的,完成子块B`s的检测,否则标记为有效的;
第二级检测:
对每个4*4 pixels大小的块,若其任意子块标记为错误则标记块为错误的,否则标记为有效的;
第三级检测:
对每个4*4 pixels大小的有效块,如果在3*3临近块中有5个及以上的块标记为错误则标记块为错误的,如下图所示,否则标记为有效的;

第四级检测(仅对VQ攻击检查):
对每个4*4 pixels大小的有效块B`,利用Torus自同构映射找到对应块C的块号并定位;如果C为错误的,则假定B`为正确的,完成B`的检测;
如果C为有效的,则:
通过最初提取的两位LSB获得B`s本来的密度,丢弃v、p,填充两位0获得8位avg_B1`s;
计算B`s平均密度avg_B`s,其中提前设置后两位LSB为0;
比较avg_B1`s和avg_B`s,如果不同,标记B`为错误的。
(c)基于块的恢复方法
利用密匙和Turous自同构映射,计算块C的块码,并定位;
如果块C是错误的,跳过该块的恢复;
如果块C是有效的,通过最初提取的与C对应的每个像素的两位LSB,丢弃v、p位,获取6位B子块的密度;
每个像素末端填补两个零位,将每个像素密度扩充为8位子块,直到所有的B块有效。
图像数据库
1. 多级数字水印检测与恢复[1]:

(a)房屋原始图 (b)损坏图 (c)检测篡改区域 (d)恢复图

(a)汽车原始图(b)损坏图 (c、e)检测篡改区域 (d、f)恢复图

(a)指纹原始图 (b)损坏图 (c、e)检测篡改区域 (d、f)恢复图

(a)沙滩原始图 (b)损坏图 (c、e、g)检测篡改区域 (d、f、h)恢复图

(左)单个篡改块 (右)分散篡改块
一些概念
VQ矢量量化(vector quantization)[1]:
VQ 是将一个向量空间中的点用其中的一个有限子集来进行编码的过程。模拟信号是连续的值,而计算机只能处理离散的数字信号,在将模拟信号转换为数字信号的时候,我们可以用区间内的某一个值去代替着一个区间,比如,[0, 1)上的所有值变为0,[1, 2)上的所有值变成1,如此类推。
实际做法是:将每个像素点当作一个数据,跑一下K-means,得到k个centroids,然后用这些centroids的像素值来代替对应的 cluster 里的所有点的像素值。VQ 2、VQ 10 和 VQ 100 三张图片分别显示聚类数目为2、10和100时得到的结果:
