求matlab 嵌入提取可见水印的程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求matlab 嵌入提取可见水印的程序相关的知识,希望对你有一定的参考价值。

邮箱 nidongde_zy0@163.com
基于图像的

参考技术A matlab 嵌入提取可见水印的程序完整程序如下
size=256; B=8; I_W=zeros(size);
P=imread('picture','jpg');
P=double(P)/256;
figure(1); imshow(P); title('原始公开图像');
W=imread('watermark','bmp');
figure(2); imshow(W); title('原始水印图像');
W=imresize(W,[32,32]);
W=im2double(W);
figure(3); imshow(W); title('调整后的水印图像');
%嵌入水印
for p=1:size/B
for q=1:size/B
x=(p-1)* B+1; y=(q-1)* B+1;
B_dct=P(x:x+B-1, y:y+B-1);
B_dct=dct2(B_dct);
if W(p,q)==0
a=-1;
else
a=1;
end
B_dct(1,1)=B_dct(1,1)*(1+a*0.01);
B_dct=idct2(B_dct);
I_W(x:x+B-1,y:y+B-1)=B_dct;
end
end
figure(4); imshow(I_W,[]); title('加入水印后的图像');
%提取水印
for p=1:size/B
for q=1:size/B
x=(p-1)*B+1; y=(q-1)*B+1;
if (I_W(x,y)-P(x,y))>0
F(p,q)=1;
else
F(p,q)=0;
end
end
end
figure(5); imshow(F,[]); title('提取出的水印');本回答被提问者采纳

以上是关于求matlab 嵌入提取可见水印的程序的主要内容,如果未能解决你的问题,请参考以下文章

数字水印基于matlab混沌的变换域图像数字水印嵌入提取攻击(含相关性)含Matlab源码 2323期

数字水印基于matlab混沌的变换域图像数字水印嵌入提取攻击(含相关性)含Matlab源码 2323期

matlab编程实现一种简单的数字水印嵌入与提取方法

双重抗干扰水印一种基于自适应盲水印嵌入和虚拟水印相结合的双重水印嵌入提取算法的研究和matlab仿真

水印攻击信息提取基于盲带矩阵DWT变换和DCT变换数字水印嵌入和水印攻击之后的图像信息提取解析matlab仿真(包括噪声攻击,旋转攻击以及压缩攻击)

Matlab系列基于DCT和置乱算法的视频水印Matlab实现