Я пытаюсь вставить изображение бабуина в изображение лены с помощью lsb embedding method. Когда я пытаюсь извлечь бабуина из изображения stego, он показывает только белое изображение.Извлеченное изображение с стеганографией белое
Может ли кто-нибудь сказать мне, что не так с моим кодом и как исправить проблему?
Вот мой образ бабуона.
Вот мой Лене изображение.
Мой вложение код
file_name='lena.bmp';
cover_image=imread(file_name);
[row,col]=size(cover_image);
%secret image
file_name='baboon.bmp';
secret_image=imread(file_name);
secret_image=imresize(secret_image,[row,col]);
stego_image=cover_image;
for ii=1:row
for jj=1:col
stego_image(ii,jj)=bitset(stego_image(ii,jj),1,secret_image(ii,jj));
end
end
imwrite(uint8(stego_image),'Stegoimage.bmp')
Мой код извлечения
file_name='Stegoimage.bmp';
stego_image=imread(file_name);
[row,col]=size(stego_image);
for ii=1:row
for jj=1:col
extracted_image(ii,jj)=bitget(stego_image(ii,jj),1);
end
end
extracted_image=uint8(255*extracted_image);
Вы извлекаете только LSB «зашифрованного» изображения, в то время как остальные пиксели равны нулю. Это означает, что в конечном результате есть только две возможные интенсивности, поэтому вы ничего не видите. У вас нет механизма для восстановления остальной части бит из другого изображения, поскольку вы выбрасываете эту информацию. – rayryeng
то как я должен исправить свой код? – kenreal
Вы не можете. Метод ошибочен. Сделайте что-нибудь еще. – rayryeng