彩色图像压缩,隐写分析和色彩间相关性

时间:2014-12-05 13:15:48

标签: algorithm image-processing compression

我正在尝试实施 LSB嵌入隐写分析算法。

图像数据库由24位bmp彩色图像(几千个)组成。 几乎所有LSB嵌入隐写术研究工作的隐写分析都集中在灰度图像上。 我想尝试在图像中使用色彩间相关性来隐藏消息存在检测。不仅仅是三次灰度。

我搜索了这个主题的作品,发现了一个非常简单的算法(我无法提供链接)。 它使用数据压缩来检测隐藏的消息。

简而言之:

它声明文件中隐藏的信息越多,其存档的大小就越大(对于数据压缩方法,如 rar,nanzip,png 等) ,因为数据压缩算法使用色彩间相关性

这些陈述没有证据链接。我不知道数据压缩算法是如何工作的,直觉上我同意这些陈述但我想知道它是否正确,例如,对于gzip或zip算法。


1 个答案:

答案 0 :(得分:0)

我不知道这些压缩算法是如何工作的,但我会对它进行一般性的尝试。

压缩通过去除冗余来工作,并且通常未压缩的图像具有很多,因为相邻像素是相关的。也就是说,图像区域中的颜色趋于相似,因为颜色变化缓慢而平滑。

但是,您嵌入的比特流往往没有模式,并且代表更多的随机分布1和0。随机/噪声数据具有较少的模式以利用压缩。因此,虽然图像可以很好地压缩,但是在隐藏信息之后压缩不会减少文件大小,即使像素更随机。

为了证明这一点,我们假设一个基本的,可能是天真的压缩算法,它检测你是否有一个像素值P,重复N次,并将其存储为N,P。例如:

200, 200, 200, 200, 200, 200, 200, 201, 201, 201, 201     # uncompressed
7, 200, 4, 201                                            # compressed

现在,在每个像素中嵌入1位。将位从0切换为1或反之的概率为50%,因此其中大约一半将发生变化。你最终会得到这样的东西:

200, 200, 201, 200, 201, 201, 200, 200, 201, 200, 201          # uncompressed
2, 200, 1, 201, 1, 200, 2, 201, 2, 200, 1, 201, 1, 200, 1, 201 # compressed

请注意压缩需要多少原始案例数据。为了比较,仅在前两个像素中嵌入1位。

201, 200, 200, 200, 200, 200, 200, 201, 201, 201, 201     # uncompressed
1, 201, 6, 200, 4, 201                                    # compressed