📄 embed.m
字号:
function LSB
%LSB
%图像水印的LSB算法
clear all;
close all;
c=zeros(200*200/8,8);
%行为文本的字符数目,列为8,每个字符的ASCILL值。
A=zeros(256,256);
B=zeros(200,200);
C=zeros(200,200);
%初始化
subplot(2,2,1);
grid on
[A,map]=imread('lena.BMP','bmp');
imshow(A,[]);
title('原始图像');
%显示原始图象
for i=1:200
for j=1:200
temp=A(i,j);
B(i,j)=bitset(temp,1,0);
end
end
subplot(2,2,2);
imshow(B,[]);
title('预处理后的图象');
%显示LSB置位0后的图象
fid = fopen('temp.txt','r');
F = fread(fid,'uchar');
maxI=length(F);
for i=1:maxI
a=F(i);
for j=1:8
c(i,9-j)=bitget(a,j);
end
end
fclose(fid)
%读入并存储待隐藏文件
c=reshape(c,200,200);
for i=1:200
for j=1:200
temp=B(i,j);
C(i,j)=bitset(temp,1,c(i,j));
end
end
subplot(2,2,3);
imshow(C,[]);
title('嵌入文本后的图象');
%显示嵌入文本文件后的图象
S=C;
%含有文本信息的图象S
for i=1:200
for j=1:200
t(i,j)=bitget(c(i,j),8);
end
end
t=reshape(t,200*200/8,8);
T=setstr(F') %提取出来的文本放在T
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -