我正在研究二进制图像中的隐写术。但我在 matlab 中实现时遇到问题。我想知道,如何在二进制图像中隐藏消息?而且,我如何在 matlab 中使用 m 文件或模拟来做到这一点?
问问题
3124 次
3 回答
2
隐写术可以通过多种不同的方式完成,如果你想要特定的东西,你必须定义你到底需要什么。
同时,这里有一个例子:
编码:
- 拍摄图像并使每个像素仅使用 24 位中的 23 位颜色(例如,将红色值的最低位设置为 0)
- 这将为您的消息提供 W x H 位
- 将您的消息一点一点地放入清除的像素中
解码
- 按照放入的顺序从最低位的红色组件中提取位,然后……就是这样。
于 2010-06-16T08:02:00.203 回答
1
最近有一个关于 SO的类似问题, @Jacob的代码示例给出了很好的答案。
您还可以在 Advanced Matlab 网站上查看基于 LSB 的隐写术文章。
于 2010-06-16T15:07:23.740 回答
0
尝试使用 LSB 检查图像隐写术,然后您将知道如何实现。我已经为我的项目尝试过。
[fn, pn, FI] = uigetfile('*.jpg*','Select the Cover Image','multiselect','on');
coln=size(fn,2);
numberfile=coln;
for i=1:numberfile
fn(i);
entirefile=fullfile(pn,fn{i});
fid=fopen(entirefile);
fclose(fid);
end
I = imread([pn,fn{i}]);
fprintf('Cover Image Loaded ... \n\n')
[fn, pn] = uigetfile('*.txt','Select Text File')
这段代码只是举例如何实现,我用来选择多个帧,你根据需要使用。
于 2017-03-21T09:30:28.993 回答