基于DWT的数字水印嵌入与提取系统
项目介绍
本项目实现了一种基于离散小波变换(DWT)的数字水印算法,包含完整的水印嵌入和提取功能。系统采用量化调制技术,能够在载体图像的不同频率子带中嵌入二值水印信息,并支持从含水印图像中准确恢复水印。通过峰值信噪比(PSNR)和归一化相关系数(NC)等指标评估水印嵌入质量。
功能特性
- 水印嵌入:将二值水印图像嵌入到灰度载体图像中
- 水印提取:从含水印图像中恢复原始水印信息
- 质量评估:计算PSNR和NC值量化评估嵌入效果
- 多小波基支持:支持haar、db4等多种小波函数
- 可视化展示:显示DWT分解的各频率子带系数图
- 参数可调:允许用户自定义嵌入强度和水印尺寸
使用方法
- 准备输入文件:
- 载体图像:标准格式的灰度图像(JPG、PNG等)
- 水印图像:二值黑白图像(建议使用Logo或文字图像)
- 设置参数:
- 选择小波基函数(如haar、db4等)
- 调整水印嵌入强度参数
- 指定水印缩放尺寸(可选)
- 运行系统:
- 执行主程序启动水印处理流程
- 系统将自动完成嵌入和提取全过程
- 查看结果:
- 获取含水印图像和提取的水印图像
- 查看质量评估指标(PSNR、NC值)
- 观察DWT分解系数可视化结果
系统要求
- MATLAB R2018a或更高版本
- Image Processing Toolbox
- 至少4GB内存
- 支持常见图像格式读写
文件说明
主程序文件集成实现了系统的核心处理流程,包括图像读取与预处理、离散小波变换分解、水印信息量化嵌入、逆变换重构含水印图像、水印提取与恢复算法、质量指标计算分析以及结果可视化展示等功能模块。