将数据存储在8位图像的最低3位有效位上

时间:2012-11-06 18:09:59

标签: matlab image-processing

任何人都可以帮我存储姓名,城市和电话号码。在8位图像的至少3个有效位上。我想显示图像,然后提取商店数据并打印出来。

2 个答案:

答案 0 :(得分:1)

你想在这里做的所有事情都非常简单。而不是为你编写代码我建议你学习如何使用matlab。如果你被迫按时招人帮助你。

另外,我强烈建议您阅读这篇文章:http://blogs.mathworks.com/steve/2006/10/17/the-story-behind-the-matlab-default-image/

答案 1 :(得分:1)

我考虑了一些,我真的不认为你所要求的是元数据。设置元数据比您实际要求的更容易。

无论如何,如果你真正想做的就是设置元数据,可以通过使用imwrite重写图像,并使用'Comment'参数设置来完成。查看MATLAB的imwrite以获取更多相关信息。

如果您想要的是隐写术,那么您需要使用dec2bin将字符串转换为二进制数据。然后逐位检查这个位串,并将其与图像的最低有效位一起使用(也将dec2bin应用于它)。因为位串是字符,所以你需要将位串转换回uint8。此外,您无法以有损格式保存它,因此没有jpegs。

此解决方案相当复杂,需要仔细编码。不仅仅是我想写在这里。特别是当你试图将它全部读回时(请记住,图像的大小和要隐藏的字符串的长度因图像而异,并且你的解密器需要能够处理这个)