DWT数字水印算法具体步骤
时间: 2023-11-26 13:48:54 浏览: 116
基于DWT-SVD的数字水印算法
5星 · 资源好评率100%
DWT数字水印算法的具体步骤如下:
1. 对水印图像进行k次Arnold变换,将置乱后的水印记为W,并将系数与变换次数作为密钥key保存。
2. 对置乱后的水印Wa采用Haar小波进行一级小波分解,得到一级分辨率下的一个逼近子图cal和三个细节子图chl,cvl,cd1。
3. 将原始图像X采用Haar小波进行三级小波分解,得到不同分辨率级下的多个细节子图和一个逼近子图,具体分解子图为:cA3,cH3,cV3,cD3,cH2,cV2,cD2,cH1,cV1,cD1。
4. 将Wa一级小波分解后的各子图分别嵌入原始图像第三级小波分解后的对应子图中,不同的分组选取不同的系数,其中a1,a2,a3,a4是对应的加权因子。cA3',cH3',cV3',cD3'分别为原始图像三级小波分解嵌入水印后的相应子图。
5. 对嵌入水印后的小波系数进行三级小波重构,得到嵌入水印的图像XW。
6. 提取水印时,将嵌入水印的图像XW采用Haar小波进行三级小波分解,得到不同分辨率级下的多个细节子图和一个逼近子图,具体分解子图为:cA3'',cH3'',cV3'',cD3'',cH2'',cV2'',cD2'',cH1'',cV1'',cD1''。
7. 将cA3''与cA3进行比较,如果两者相同,则说明该图像没有被篡改,否则说明该图像被篡改。
阅读全文