基于DWT-DCT混合域的二值图像数字水印嵌入与提取系统
项目介绍
本项目实现了一种基于离散小波变换(DWT)与离散余弦变换(DCT)混合域的二值图像数字水印算法。系统通过Arnold变换对水印进行预处理,在DWT分解的低频子带进行分块DCT变换,将水印信息自适应嵌入到中低频系数中,有效平衡了水印的不可见性与鲁棒性。系统支持完整的水印嵌入、提取流程,并提供多种攻击下的性能评估功能。
功能特性
- 水印预处理:采用Arnold置乱变换打破二值水印图像的空间相关性,增强安全性
- 混合域变换:结合DWT的多分辨率特性和DCT的能量压缩特性,优化嵌入位置选择
- 自适应嵌入:根据载体图像特性动态调整水印嵌入强度,实现视觉质量与鲁棒性的平衡
- 完整提取:能够从可能遭受攻击的图像中准确提取水印信息
- 全面评估:提供PSNR、NC、BER等多指标评估体系,测试抗JPEG压缩、高斯噪声、剪切攻击能力
使用方法
水印嵌入
- 准备512×512灰度载体图像和64×64二值水印图像
- 设置嵌入强度参数(默认0.05)和Arnold变换密钥(1-50整数)
- 运行水印嵌入程序,生成含水印图像
水印提取
- 输入含水印图像(可能遭受攻击)
- 提供与嵌入阶段相同的Arnold密钥参数
- 运行提取程序,获得恢复的水印图像
性能测试
- 选择攻击类型(JPEG压缩/高斯噪声/剪切攻击)
- 设置攻击参数强度
- 系统自动计算PSNR、NC、BER等性能指标
系统要求
- MATLAB R2018a或更高版本
- Image Processing Toolbox
- 支持BMP/PNG格式图像处理
- 内存建议4GB以上
文件说明
主程序文件整合了水印处理的完整流程,包含载体图像读取与格式验证、二值水印图像的Arnold置乱与反置乱操作、基于二级小波分解与分块DCT变换的混合域系数计算、水印信息的自适应嵌入与提取核心算法、针对常见图像攻击的鲁棒性测试模块,以及嵌入质量与提取准确性的多维度评估指标计算功能。