资源简介

使用MATLAB运行文件中watermaked文件,就可以进行操作。可在窗口中自由添加噪声攻击等内容以验证算法安全性

资源截图

代码片段和文件信息

function  name_ex=extract(containcontain_markerSORT_INDnameselgausaltjpegfiltang)   %%3次嵌入


%%攻击
switch sel
      case 1    
        contain_marker=imnoise(uint8(contain_marker)‘gaussian‘0gau);       %高斯
      case 2
       contain_marker=imnoise(uint8(contain_marker)‘salt & pepper‘salt);      %椒盐
      case 3
       imwrite(uint8(contain_marker)‘temp.jpg‘‘jpg‘‘quality‘jpeg);  
       file_name=‘temp.jpg‘;
       contain_marker=imread(file_name);
      case 4
        figureimshow(uint8(contain_marker));                                   %剪切
        [XYcontain_marker1rect]=imcrop;
         for i=0:round(rect(4))
           for j=0:round(rect(3))
              contain_marker(round(rect(2))+iround(rect(1))+j)=0;
           end
         end
    case 5
        contain_marker=reimrotate(contain_markerang);      %旋转
end

%%没有攻击
if sel~=0 && filt==0
psnr=PSNR(containcontain_marker);
figureimshow(uint8(contain_marker));
title_string=strcat(‘处理过的图象 PNSR:‘num2str(psnr));
title(title_string);
end




%%滤波
switch filt
      case 1    
           %%中值滤波
          contain_marker=medfilt2(contain_marker[3 3]); 
      case 2
           %均值滤波
          filter_temp=fspecial(‘average‘3);contain_marker=filter2(filter_tempcontain_marker);
      case 3
          %%%%低通滤波
          contain_marker=double(contain_marker);   
          filter_temp=[1 1 1;1 2 1 ;1 1 1]/10;
          contain_marker=filter2(filter_tempcontain_marker);
      case 4
           %%%%高通滤波
           contain_marker=double(contain_marker);   
           filter_temp=[1 1 1;1 1 1 ;1 1 1]/9;
           contain_marker=filter2(filter_tempcontain_marker);

    case 5
       %%锐化滤波
            contain_marker=double(contain_marker);  
            filter_temp=[0 1 0
            1 -4 0
            0 1 0];
            contain_marker_temp=conv2(contain_markerfilter_temp‘same‘);
            contain_marker=contain_marker-contain_marker_temp;
end



%%没有滤波

if filt~=0 
psnr=PSNR(containcontain_marker);
figureimshow(uint8(contain_marker));
title_string=strcat(‘滤波后的图象 PNSR:‘num2str(psnr));
title(title_string);
end



[CA1_EXCH1_EXCV1_EXCD1_EX]=dwt2(contain_marker‘haar‘);
[CA2_EXCH2_EXCV2_EXCD2_EX]=dwt2(CA1_EX‘haar‘);      %二级变换
%%计算均值
[rownum_excolnum_ex]=size(CA2_EX);
[rownum_shuicolnum_shui]=size(name);

AVG_EX=1000*ones(rownum_excolnum_ex);
for(i=2:rownum_ex-1)
    
    if(mod(i2)==0)      %隔列
        colnum_sta=2;
    else
        colnum_sta=3;
    end
    
    for (j=colnum_sta:2:colnum_ex-1)    %隔列
        AVG_EX(ij)=1/4*(CA2_EX(i-1j)+CA2_EX(i+1j)+CA2_EX(ij-1)+CA2_EX(ij+1));   
    end
end

AVG_EX_ARR=reshape(AVG_EX1rownum_ex*colnum_ex);
length=rownum_shui*colnum_shui;    %水印长度
for times_ex=0:2
    for i=1:length
        if CA2_EX(SORT_IND(i+times_ex*length))>AVG_EX_ARR(SORT_IND(i+times_ex*length))
             name_temp(i+times_ex*length)=1;
        e

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-06-10 12:54  code2\
     文件         712  2015-06-05 14:29  code2\LSB.m
     文件        2528  2015-06-05 17:02  code2\LSBextract.asv
     文件        2499  2015-06-05 15:44  code2\LSBextract.m
     文件         405  2015-06-05 14:01  code2\PSNR.m
     文件        4061  2015-06-05 14:25  code2\extract.asv
     文件        4043  2015-06-05 15:45  code2\extract.m
     文件        3602  2015-06-05 14:30  code2\extract_name.asv
     文件        3588  2015-06-05 15:44  code2\extract_name.m
     文件         190  2015-06-05 13:57  code2\name32x32.bmp
     文件         945  2015-06-05 20:58  code2\name32x32.jpg
     文件        2572  2015-06-05 13:37  code2\name_imbed.asv
     文件        2666  2015-06-05 18:05  code2\name_imbed.m
     文件         428  2015-06-05 15:51  code2\nc.m
     文件       14987  2015-06-05 11:30  code2\nike.jpg
     文件       33859  2015-06-05 15:11  code2\nvlang512x512.jpg
     文件         719  2015-06-05 14:41  code2\reimrotate.m
     文件       12432  2015-06-05 19:15  code2\temp.jpg
     文件        3231  2015-06-05 13:41  code2\testname.m
     文件        4854  2015-06-05 20:59  code2\upt.bmp
     文件        7483  2015-06-05 20:57  code2\watermaked.fig
     文件       25432  2015-06-05 14:38  code2\watermaked.m

评论

共有 条评论