【图像隐写】小波变换和SVD分解数字水印嵌入+攻击+提取【含Matlab源码 3719期】

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信。
🍎个人主页:海神之光
🏆代码获取方式:
海神之光Matlab王者学习之路—代码获取方式
⛳️座右铭:行百里者,半于九十。

更多Matlab仿真内容点击👇
Matlab图像处理(进阶版)
路径规划(Matlab)
神经网络预测与分类(Matlab)
优化求解(Matlab)
语音处理(Matlab)
信号处理(Matlab)
车间调度(Matlab)

⛄一、混合DWT-HD-SVD数字图像水印攻击

1 水印嵌入算法
水印W和载体图像C是水印嵌入算法的输入,含水印图像C是输出。C、W、C的尺寸分别为M×M、N×N和M×M。此外,该水印方法可以容纳多个尺寸不同的水印,并对宿主图像进行r级DWT分解。水印嵌入的过程如图1所示,具体的嵌入步骤为:

(1)基于R级DWT,将C分解为LL、LH、HL、HH的分量,其中R=log2(M/N)。

(2)HD在LL上执行,显示为:
PHPT=HD(LL) (9)

(3)将SVD应用于H:
HUwHSwHVwT=SVD(H) (10)

(4)W与SVD结合使用:
UwSwVwT=SVD(W) (11)

接着使用Logistic映射产生的混沌系统对Uw、VwT的运算加密,加密后的两个组件标记为Uw1和VTw1。

(5)通过将HSw和Sw与缩放因子α的乘积相加,计算嵌入的奇异值HSw:
HS
w=HSw+αSw (12)

(6)带水印的子带H是通过逆奇异值分解生成的,即:
H
=HUwHSw*HVwT (13)

(7)基于给出的逆HD,重建一个新的低频近似子带LL*:
LL*=PH*PT(14)

(8)水印图像C*是通过执行逆r级小波变换获得的,水印嵌入流程图如图2所示。
在这里插入图片描述
图2 水印嵌入流程图

2 水印提取算法
在水印提取算法中,加水印的宿主图像C是输入,提取的水印W是输出。W*的大小为N×N。水印提取过程如图3所示,具体提取步骤为:

(1)经过水印的主图像C*通过r级DWT分解为四个子带,分别为LLw、LHw、HLw、HHw。

(2)对LLw执行HD
PwHwPwT=HD(LLw) (15)

(3)将SVD应用于Hw,
HUwHSbwHVw*T=SVD(Hw)(16)

(4)提取的奇异值Sw为:
Sw
=(HSbw*-HSw*)/α (17)

(5)Uw1和Vw1T由混沌系统解密,解密的两个组件被标记为Uw2和Vw2T。提取的水印W通过逆奇异值分解(SVD)进行重构,公式为:
W
=Uw2Sw*Vw2T(18)
水印提取流程图如图3所示。
在这里插入图片描述
图3 水印提取流程图

⛄二、部分源代码

clc; clear all; close all;
%% Load Image
I = im2double( imread(‘Lena.BMP’) ); [ M, N ] = size( I );
%% Load Watermark
w = im2double( imread(‘w.bmp’) ); [ Mw, Nw ] = size( w );
w=w(:,:,1);
%% Start Time 1
start_time1 = cputime;
%% Embed Watermark
%%R1 = I(:,:,1);
%%G1 = I(:,:,2);
%%B1 = I(:,:,3);
k = 0.5;
[ CA_2, H_2, V_2, D_2 ] = dwt2( I, ‘haar’ );
[ CA, H, V, D ] = dwt2( CA_2, ‘haar’ );
[ Uw, Sw, Vw] = svd( w );
[ Uc, Sc, Vc] = svd( CA );
Sc1 = Sc + k * Sw;
Ccw = Uc * Sc1 * Vc’;
Ccw_1 = idwt2( Ccw, H, V, D, ‘haar’ );
I_w = idwt2( Ccw_1, H_2, V_2, D_2, ‘haar’ );
%%I_w = cat( 3, R_w, G1, B1);
%% End Time 1
elapsed_time1 = cputime - start_time1;
ksy=0;
%% Attack Tpye
disp(‘攻击类型:1.旋转攻击  2.JP2压缩   3.JPEG压缩  4.均值滤波’);
disp(’     5.圆形均值  6.高斯低通  7.移动模糊  8.对比增强’);
disp(’     9.中值滤波  10.直方图均衡 11.对比度UP 12.高斯噪声’);
disp(’     13.椒盐噪声 14.斑纹噪声  15.泊松噪声 16.缩放攻击’);
attack = input(‘请输入攻击类型:’);
switch attack
case 1, % 旋转攻击
angle = input(‘请输入旋转角度:’);
if angle > 0
I_wa = imrotate( I_w, angle, ‘crop’, ‘nearest’ );
name = strcat( ‘图像旋转’, num2str(angle), ‘°_’, ‘.BMP’);
imwrite( I_wa, name, ‘BMP’ );
type = ‘图像旋转’;
flag = 1; ksy = 1;
else
disp(‘旋转失败’);
I_wa = I_w;
type = ‘旋转失败’;
flag = 0;
end

⛄三、运行结果

在这里插入图片描述
在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]宋俊辉,鲁骏.彩色图像数字水印嵌入和提取模型研究——基于DWT和DCT[J].现代商贸工业. 2011,23(17)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值