image steganography using RGB image in matlab
4 次查看(过去 30 天)
显示 更早的评论
I was working on image steganography of lsb substitution using RGB image.I couldn't able to figure out what's wrong in the code. It is not showing an error.But,the answer is different while retrieving and codes are :
Embbeding code:
clc
c = imread('pout.tif');
c=imresize(c,[64 64],'nearest');
message = 'image';
message = strtrim(message);
m = length(message) * 8;
AsciiCode = uint8(messag e);
binaryString = transpose(dec2bin(AsciiCode,8));
binaryString = binaryString(:);
N = length(binaryString);
b = zeros(N,1);
for k = 1:N
if(binaryString(k) == '1')
b(k) = 1;
else
b(k) = 0;
end
end
s = c;
height = size(c,1);
width = size(c,2);
k = 1;
for i = 1 : height
for j = 1 : width
LSB = mod(double(c(i,j)), 2);
if (k>m || LSB == b(k))
s(i,j) = c(i,j);
else
if(LSB == 1)
s(i,j) = (c(i,j) - 1);
else
s(i,j) = (c(i,j) + 1);
end
k = k + 1;
end
end
end
imwrite(s,'msgimage.tif');
imshow(c)
retrieving_code:
clc
s = imread('msgimage.bmp');
height = size(s,1);
width = size(s,2);
m = 64;
k = 1;
for i = 1 : height
for j = 1 : width
if (k <= m)
b(k) = mod(double(s(i,j)),2);
k = k + 1;
end
end
end
binaryVector = b;
binValues = [ 128 64 32 16 8 4 2 1 ];
binaryVector = binaryVector(:);
if mod(length(binaryVector),8) ~= 0
error('Length of binary vector must be a multiple of 8.');
end
binMatrix = reshape(binaryVector,8,8);
textString = char(binValues*binMatrix);
disp(textString);
help please.
3 个评论
回答(1 个)
riyaz nadaf
2019-1-26
i did this project. if you want matlab code contact
riyaznadaf034@gmail.com
1 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Encryption / Cryptography 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!