matlab 数字水印攻击 jpeg压缩,基于MATLAB的数字图像水印技术
《MATLAB应用与通信仿真》课程设计
4.4 攻击函数
进行算法攻击测试是评估水印鲁棒性的关键方法之一,在这一过程中, 一个优质的水印算法必须通过多种攻击测试来获得公正的评价. 在MATLAB中可用的许多函数可以直接用于执行相关攻击测试.
1.旋转操作:rotate函数能够实现任意角度的图像旋转。
2.裁剪操作:imcrop函数允许用户精确指定各点坐标来进行图像裁剪。
3.滤波处理:filter和filtter 2函数分别用于处理一维与二维信号的滤波。
4.调制过程:dithering算法通过调制消除视觉残留;dithering攻击是一种有效的测试水印鲁棒性的方法。
5.jpeg压缩:在imwrite( )函数中,jpg参数以及quality参数可用于实现对图像的可控jpg压缩。
6.加各种噪声:在imnoise( )函数中,施加不同类型的噪音可用于对图像进行去噪处理,包括常见的白噪声和椒盐型噪音,这种去噪操作常被视为对抗水印robustness的一种典型攻击手段。
7.对比度调节:通过调用imadjust( )函数可以在图像中实现对比度调节以达到攻击目标。
8.缩放操作:在执行缩放操作时,默认采用双线性插值方法;如果需要更高精度,则可选择其他插值算法。
4.5 本设计所用MATLAB函数
MATLAB集成有大量的库函数,在算法开发过程中起到了关键作用。这些库函数有效地实现了算法的实现过程,并在此部分中将具体阐述本设计所使用的几种典型MATLAB函数及其功能特点。
rand:产生随机序列。
randn:产生正态分布的随机序列。
从文件中读取图像数据时,请注意所支持的常见文件格式包括bitmap (BM)、PDF、JPEG、PCX、TIFF 和 XWD 等多种类型。将图像保存为文件形式时,请确保使用适当的分辨率设置以获得最佳效果。在查看或处理图片内容时,请使用imshow功能来观察其细节部分。通过size函数可以获取与给定数字相关的尺寸信息以辅助分析或处理相关数据集中的像素信息。在数字信号处理中常用到的im2col算法可以帮助将二维像素块转换为一维列向量以便于后续运算;而col2im算法则可实现这一过程的逆运算即将一维向量重新映射回二维空间以完成完整的数据处理流程。计算一组数值的标准方差通常用std函数来实现;而sum函数则用于对一组数值进行累加运算以获得总和值或其他统计参数
sort:对给定的向量或矩阵排序。 median:求向量元素的中位数。
13
《MATLAB应用与通信仿真》课程设计
reshape:重新排列矩阵。
sign: 符号函数用于确定数值的符号状态;mod: 该操作计算输入值的余数;floor: 该操作会将输入值向下取整至最接近的较小整数值;corr2: 该函数用于计算两个图像之间的相关性度量;max: 该算法能够确定输入数组中的最大值;fspecial: 该函数用于生成预先定义好的滤波器模板;filter2: 该过程能够对图像进行二维滤波处理以去除噪声或增强细节;histeq: 该方法通过直方图均衡技术来提高图像对比度水平
imnoise:给图像增加噪声(高斯白噪声、黑白像素点噪声、乘积性噪声)。
14
《MATLAB应用与通信仿真》课程设计
5 程序运行结果
在MATLAB环境中处理较为简单的计算任务时可以通过命令窗口直接输入相关指令完成计算这一过程非常便捷且高效然而当涉及的指令数量增多或者控制流结构变得更加复杂同时又需要满足重复计算需求时单纯依靠命令窗口操作将会显得不够高效而采用脚本文件(Script file)作为解决问题的核心工具则能够显著提升工作效率其中脚本文件揭示了一个关键点:它仅仅代表用户意图的简单排列组合即一系列由用户自主规划的MATLAB指令序列其结构较为简单其核心特征在于提供了一种按需执行的功能性工作流程当该脚本文件执行完毕后生成的所有变量将保留在MATLAB的工作空间中除非用户主动使用clear指令进行清除且环境窗口未被关闭这些变量将始终保持在当前的工作空间之中为了便于后续开发并遵循命名规范原则本次设计采用了shuiyin.m作为脚本文件名称并在Matlab2007a环境下对该脚本进行了测试并记录了实验结果及分析过程
5.1 嵌入水印
未经处理的原始图像与经过数字水印处理后的图像进行对比分析后发现,在视觉效果方面处理效果较为理想。仿真结果显示,在实际应用中发现嵌入的数字水印对原始图片的影响较小,在一定程度上保证了信息的安全性和不可察觉性。如图5.1所示
水印原始图像嵌入水印的图像
图5.1 水印的嵌入
15
《MATLAB应用与通信仿真》课程设计
5.2 JPEG压缩及水印提取
随后对该嵌入水印的图像应用JPEG编码(压缩比为30%),并从压缩后的图像中获取水印信息,如图5.2所示。
提取的水印受JPEG攻击压缩后的水印图像
图5.2 JPEG压缩和水印提取
5.3 攻击试验
数字水印技术在实际应用过程中可能遇到各种类型的攻击威胁,在经过JPEG压缩处理后获取的图像中仍然能够恢复出原始的水印信息;此外,在某些特定条件下进行攻击处理后所得到的水印图像也会呈现出不同的特征表现形式;如图5.3所示的部分案例进一步展示了其他几种常见攻击后的水印图像分布情况
高斯滤波直方图图像增亮图像变暗增加对比度降低对比度
图5.3 攻击试验
16
