⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 digitalencypt.asv

📁 给定一副图像和一段文字
💻 ASV
字号:
clear;
I=imread('Beidalou.bmp');
in = fix(double(I)/2)*2;

code = imread('code.bmp'); 
                                    
Code = (double(code))/255;                       %把uint8型强制转为double型,方便下面运算

[s1,s2,s3] = size(Code);
[t1,t2,t3] = size(I);
%嵌入过程
for i=1:s1
    for j=1:s2
        U(i,j,1)=in(i,j,1)+Code(i,j,1);
        %U(i,j,2)=in(i,j,2)+Code(i,j,2);
        %U(i,j,3)=in(i,j,3)+Code(i,j,3);
    end
end
for i=1:t1
    for j=1:t2
        if i<=s1&&j<=s2
            out(i,j,1)=U(i,j,1);
            %out(i,j,2)=U(i,j,2);
            %out(i,j,3)=U(i,j,3);
        else
            out(i,j,1)=I(i,j,1);
            %out(i,j,2)=I(i,j,2);
            %out(i,j,3)=I(i,j,3);
        end
    end
end
out=uint8(out);

                                                   
imwrite(out,'Encrypted_Beidalou','bmp');                          %把嵌入水印后的图读出到Encrypted_Beidalou中
toBeDecoded = imread('Encrypted_Beidalou');
%提取过程
toBeDecoded = double(toBeDecoded);
for i=1:s1
    for j=1:s2
        decode(i,j,1)=(toBeDecoded(i,j,1)-(fix(toBeDecoded(i,j,1)/2))*2)*255;
        %decode(i,j,2)=(toBeDecoded(i,j,2)-(fix(toBeDecoded(i,j,2)/2))*2)*255;
        %decode(i,j,3)=(toBeDecoded(i,j,3)-(fix(toBeDecoded(i,j,3)/2))*2)*255;
    end
end
                                                              
decode = uint8(decode);                                              %decode存放数字解出的水印
imshow(decode);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -