📄 wmtest.m
字号:
% main program to test the watermarking technique% See report A. Bultheel, % Digital watermarking of images in the fractional Fourier domain% Report TW497, Detp. Computer Science, K.U.Leuven, July 2007% Needs the routines% WMembed.m% WMdetect.m% addnoise.m% PSNR.m% nwcrop.m% centralcrop.m% frft2d.m -> Disfrft.m% and the image% lena.jpg% to run.%tic% Original imageimage = imread('lena.jpg');figure(1);imagesc(real(image));colormap(gray); axis('equal','tight','off');title('Original image');% embed watermark(s)L = [96000, 90000, 100000];M = [800, 800, 400];var = [50, 100, 30];powers = [0.8, 0.5];[wm_image,keys,ix] = WMembed(image,L,M,var,powers);figure(2); imagesc(real(wm_image));colormap(gray); axis('equal','tight','off');title('watermarked image')wm_image = (uint8(wm_image));imwrite(wm_image,'image.jpg','jpg');wm_image = imread('image.jpg');wm_image = uint8(wm_image);imwrite(wm_image,'lenawm.jpg','jpg');wm_image = imread('image.jpg');% detectiondisp(' ')disp('************************');disp('detect after compression');disp('************************');PSNR(ind2gray(uint8(image),gray)/256,ind2gray(uint8(wm_image),gray)/256)global fignumfignum=10;[d,threshold] = WMdetect(wm_image,keys,ix,L,M,var,powers);% attacksnoisy_wm_image = addnoise(wm_image,50);noisy_wm_image = uint8(real(noisy_wm_image));figure(3); imagesc(noisy_wm_image);colormap(gray); axis('equal','tight','off')title('noisy watermarked image')disp(' ')disp('*****************');disp('detect with noise');disp('*****************');PSNR(ind2gray(uint8(image),gray)/256,ind2gray(uint8(noisy_wm_image),gray)/256)fignum = 20;[d,threshold] = WMdetect(noisy_wm_image,keys,ix,L,M,var,powers);crop_noisy_wm_image = nwcrop(noisy_wm_image,100,512);%crop_noisy_wm_image = centralcrop(noisy_wm_image,150,150);crop_noisy_wm_image = uint8(real(crop_noisy_wm_image));figure(4); imagesc(crop_noisy_wm_image);colormap(gray); axis('equal','tight','off')title('cropped noisy watermarked image')disp(' ')disp('*************************');disp('detect cropped with noise');disp('*************************');PSNR(ind2gray(uint8(image),gray)/256,ind2gray(uint8(crop_noisy_wm_image),gray)/256)fignum=30;[d,threshold] = WMdetect(crop_noisy_wm_image,keys,ix,L,M,var,powers);toc
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -