dct2 数字水印matlab,图像数字水印+matlab程序

J=M(1:128,1:128); J(128:464,128:364)=0; J=rot90(J); J=rot90(J);

J(465:800,365:600)=0; J=rot90(J); J=rot90(J); N=N+Q*J; K=idct2(N); RGB(:,:,3)=K; imshow(RGB);

title('加入水印后图像'); subplot(3,3,8)

I=imcrop(RGB,[1 1 598 798]); imshow(I); subplot(3,3,9) %水印提取程序 subplot(3,3,6)

RGB1=imread('MM','jpg'); J=RGB1(:,:,3); X=J(1:799,1:599); N=dct2(I(:,:,3)); M=dct2(X); M=(N-M)/Q;

B=idct2(M(337:464,237:364)); Y=mat2gray(B); imshow(Y);

title('经放缩后提取的水印图像') 运行结果:

④水印全过程(经空域压缩检测水印)

程序源代码 %水印加入程序

Q=input('请输入放缩因子的值(建议小于1):Q=')

P=input('请输入您所希望的图像放缩系数值(建议取值不要小于0.5):P=') subplot(3,3,1)

RGB=imread('浙江台州学院','jpg'); imshow(RGB); title('原始图像'); subplot(3,3,2) imshow(RGB(:,:,3)); title('B分量'); subplot(3,3,3) N=dct2(RGB(:,:,3));

imshow(log(abs(N)),[]),colorbar; title('B分量能量分布'); subplot(3,3,4)

I=imread('lena1','bmp');

imshow(I);

title('灰度水印图像'); subplot(3,3,5) M=dct2(I);

imshow(log(abs(M)),[]),colorbar; title('水印能量分布'); subplot(3,3,7) J=M(1:128,1:128); J(128:364,128:400)=0; J=rot90(J); J=rot90(J);

J(365:600,401:750)=0; J=rot90(J); J=rot90(J); N=N+Q*J; K=idct2(N); RGB(:,:,3)=K; imshow(RGB);

title('加入水印后图像'); subplot(3,3,8)

I=imresize(RGB,P,'nearest'); imshow(I);

title('压缩P倍图像'); subplot(3,3,9)

J=imresize(I,1/P,'nearest'); imshow(J);

title('再放大P倍还原图像') %水印提取程序 subplot(3,3,6)

RGB1=imread('浙江台州学院','jpg'); N=dct2(J(:,:,3)); M=dct2(RGB1(:,:,3)); M=(N-M)/Q;

B=idct2(M(236:365,350:401)); Y=mat2gray(B);

imshow(Y);

title('经放缩后提取的水印图像'): 运行结果:

4.2 图像水印的dwt算法

%以下是水印提取算法 clear all; clc;

%保存时间

start_time=cputime; figure(1);

%读出原始图像 subplot(1,2,1); input=imread('2.jpg'); imshow(input); title('原始图像');

%读出水印图像 subplot(1,2,2);

watermarked_image=imread('watermarked.bmp'); imshow(watermarked_image,[]); title('水印图像');

%三色分离

input=double(input);

watermarked_image=double(watermarked_image); inputr=input(:,:,1);

watermarked_imager=watermarked_image(:,:,1); inputg=input(:,:,2);

watermarked_imageg=watermarked_image(:,:,2); inputb=input(:,:,3);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值