信息隐藏的第一节实验课需要做LSB顺序和随机隐藏,手边有武大的实验教程,对着打了一遍,但出现了两个大问题,搞了半天才解决。
1. 教辅发的图片都是jpg格式的,但是发现将jpg图片读到内存中后再保存,图片就改变了。原来jpg每次保存的时候会自动有损压缩,即使设置很高的保存质量也避免不了,所以即便把信息隐藏成功了,保存图片后也会随着压缩而破坏。不得不使用bmp这种无损压缩的格式,可是在网上找了一大圈,竟然一张bmp图片都没有。其实,只有把jpg的后缀改成bmp就行了。jpg压缩的原理如下http://www.360doc.com/content/17/0901/18/41193811_683881904.shtml
2. 书上的lsbget函数,将提取的位写入文件时,采用的是'bit1',实际上应该用'ubit1',要不然会出错。出错原因可能是有符号数把0当作符号了吧。
代码以后再贴上来。