用于隐写术的dct图像的量化

时间:2012-06-04 10:00:06

标签: compression jpeg steganography dct quantization

我有一张灰度图片。我做了8x8块并计算了每个DCT。我想量化DCT系数,然后用我的秘密消息位替换它们的LSB。我究竟如何量化系数?我应该使用JPEG使用的量化矩阵吗?如何确定这种量化矩阵的值?

1 个答案:

答案 0 :(得分:1)

您可能希望将质量等级设置为最高(量化矩阵中的最小值),以便每个系数的修改后的LSB最少地扰乱图像数据。

用于编码:
在量化之后和熵编码之前,您将需要访问DCT值。在那里你可以修改LSB。您应该只修改非零系数值,否则您将使压缩的图像文件更大,更扭曲。这样,您可能能够为每个DCT块编码20-30位。

用于解码:
在熵解码之后和反量化步骤之前,您需要反过来并立即访问DCT值。

要计算邮件可用的总位数,请使用以下示例:

对于VGA大小的图像(640x480),其编码为4:2:0(两个维度中的二次采样颜色),您将拥有40 x 30 = 1200个MCU。每个MCU有6个DCT模块(4Y,1Cr,1Cb)。这是总共7200个DCT块。如果每个块平均编码25个系数(合理的质量等级),那么您的消息总共可以是7200x25 = 180000位。