Matthew Note

主流数字图像信息隐藏软件的使用方法

硕士期间做过隐写分析,在生成训练图片时候费了很大周折去找F5,Outguess,MB,Jsteg等软件的程序,网上又没有很明确的说明,所以只能自己逐渐摸索,为了给后人铺路,这里我做一总结。
空域的LSB方法就不说了,这个自己用Matlab编起来也不是很麻烦,这里就说说变换域的:

F5

F5是Westfeld 2001年提出来的一个嵌入算法,本来在他个人的主页中是可以下载的,但是后来由于学校网页的变动,下载不到了,我前几天给westfeld发了邮件,他又重新把它放到网上了

这还有一个在google code上的

他们其实是一样的

这个是一个Java写的程序,有兴趣的人可以去看一下他的源代码,其实并不是非常复杂,他没有提供更改嵌入率的参数,这个问题我也问过westfeld本人,他的确没写这块,可以改写下Java程序,根据其capacity来控制嵌入文本的长度以实现。

Outguess

Outguess就非常恶心了,他是unix下的程序,所以你要到linux里去跑,还好有ubuntu,ubuntu的软件库里已经有了这个软件,可以ubuntu的新立得软件中心去搜索outguess,安装就可以了,他同样不能更改嵌入率,所以采用的方法和F5一样,根据其容量来控制嵌入文本的长度,在outguess.c的文件中,有一个mmap_file函数,这个函数便是打开文本的,在里面你可以把fs.st_size赋值为bitmap->bits/16,然后通过乘上一个ratio来实现

MB

MB1和MB2就非常善良了,有他的Matlab程序,这个就不用多说了,你只要改就可以了

RS分析

自己写过一个RS分析的Matlab程序,可以方便的画出RS分析的特性曲线,我把他放在了github上,有兴趣的同学可以下载使用: