【发布时间】:2016-08-18 01:40:33
【问题描述】:
在隐写术中,least significant bit (LSB) substitution 方法将秘密位嵌入覆盖介质中的位,例如图像像素。在一些方法中,获取图像的Discrete Wavelet Transform(DWT)并将秘密比特嵌入DWT系数中,然后使用逆变换重建隐秘图像。
但是,DWT 产生浮点系数,对于 LSB 替换方法,整数值是必需的。我读过的大多数论文都使用 2D Haar Wavelet,但是,他们并不清楚他们的方法。我已经看到变换是根据低通和高通滤波器(浮点变换)定义的,或者取对值的和和差,或者平均值和平均差等。
更明确地说,无论是在正向变换还是逆变换中(但不一定在两者中都取决于所使用的公式)最终会出现浮点数。我不能将它们用于系数,因为替换不起作用,我不能将它们用于重构像素,因为图像需要整数值进行存储。
例如,让我们将一对像素 A 和 B 视为一维数组。低频系数由和定义,即s = A + B,高频系数由差定义,即d = A - B。然后我们可以用B = (s - d) / 2 和A = s - B 重建原始像素。然而,在对系数进行任何一点操作之后,s - d 可能不再是甚至重建像素的浮点值。
对于 2D 情况,1D 变换分别应用于行和列,因此最终会在某处发生除以 4。这可能导致浮点余数为 0.00、0.25、0.50 和 0.75 的值。我只遇到过解决此问题的one paper。其余的在他们的方法上非常模糊,我很难复制它们。然而,DWT 已被广泛用于图像隐写术。
我的问题是,由于我读过的一些文献没有启发性,这怎么可能?如何使用引入浮点值的转换,而整个隐写方法需要整数?
【问题讨论】:
标签: steganography haar-wavelet dwt wavelet-transform