水印的嵌入与提取
fft()实现一维信号和二维信号的FFT(快速傅里叶变换),ifft()分别实现一维信号和二维信号的IFFT(逆向快速傅里叶变换)。下面以256×256 的灰度图像lena 为原始宿主图像、以32×32 的二值图像flag 为水印图像为例,给出利用MATLAB 实现数字水印的过程。
水印攻击实验
由于数字水印在实际应用中可能会遭到各种各样的攻击,因此对算法进行攻击测试是衡量一个水印算法优劣的重要手段。
JPEG 压缩实验
首先对嵌入水印后的图像进行JPEG(Quality=45),而后从压缩的图像中提取出水印,如图5 所示。从图中可以看到DCT 域的水印算法抵抗JPEG 压缩
1