在文章最后附上了上述实验的源代码,以及 Harr 小波变换加水印的代码。
攻击实验区
下面进行抗攻击性测试
1.进行涂抹攻击,这是攻击后的图片,(在原加水印算法中,我调低了信噪比)
再进行水印提取
2.进行剪切攻击,就是网上经常用的截图截取一部分的情况
部分剪切的图像
进行循环补全:
提取水印:
5. 从 float32 量化到 uint8 的提取结果
6 JPEG 压缩后,(这个实验我好像是拿明码做的,能量主要加在了高频)
提取结果
7.PS 4 像素马赛克 / 均值滤波 等
攻击后图像:(这是我女朋友吗?丑死了)
提取水印后图像:
8.截屏:
截屏后我手动抠出要测试的图像区域,并且抽样或者插值到原图尺寸
测试结果:
9.对于背景纯色的图其实也是无所谓的
能量系数为 10 时加水印图片:觉得太显噪就把能量系数调低,不过水印的隐秘性和鲁棒性是互斥的
最终提取出的水印:
10.我用将 RGB>600 的像素设置成为(0,255,0)来模拟 PS 魔术手,
提取水印为:
11.屏摄,好吧,这个实验我做哭了
屏摄图:
实验结果:
我把水印能量系数调整到 2000 都没有用。
屏摄之后与原图信噪比为 4dB 左右,我用多抽样滤波的方式试过,滤不掉屏摄引入的噪声,屏摄不仅引入了椒盐噪声,乘性噪声,还有有规律的雪花纹理,求大神尝试一下。
我所用的这种方法针对屏摄不行,我试各种加放大器滤波器、还有多抽样滤波、谱增强等方法将近三个小时,没成功,哪位大神可以做一下或者讨论讨论。还有二值化不行,这是我想当然的,觉得肯定不行所以没做实验。其他的我试了试,用给出的方法调整一下能量系数都可以。
我想大家最关心的是什么最安全,不会被追踪。
不涉及图像的都安全,比如拿笔记下来。
涉及图像的屏摄最安全,截屏十分不安全。
以下是源代码:
%% 运行环境 Matlab2010a
clc;clear;close all;
alpha = 1;
%% read data
im = double(imread('gl1.jpg'))/255;
mark = double(imread('watermark.jpg'))/255;
figure, imshow(im),title('original image');
figure, imshow(mark),title('watermark');
……(阅读完整代码请去「查看知乎讨论」查看,原文标题:阿里巴巴公司根据截图查到泄露信息的具体员工的技术是什么?)
文章来源知乎网友:fuqiang liu,如有疑问,请联系删除。