2013-03-22 97 views
0

我想了解JPEG压缩过程并执行以下步骤来验证一些事情。JPEG压缩

我把输入图像img1.jpg并使用IrfanView进行压缩,比如质量= 50(img1_compress.jpg)。

然后,我从输入图像img1.jpg(在X,Y = 16,16大小为8x8的block.jpg)剪下一个小块,并使用相同的质量参数值(50)对其进行压缩。我们称之为block_compress.jpg。

现在,当我比较此块的像素值与完全压缩图像中的像素值时,它们不匹配。

为了说明,block_compress.jpg中位置0,0处的像素值应与img1_compress.jpg中16,16位置处的像素值匹配。

我很困惑为什么像素值不匹配?有任何想法吗?

回答

2

我只是做这个实验,我的JPEG编解码器和像素值匹配Irfanview的可能。在压缩JPEG图像时应用某种噪声滤波器或其他修改在没有看到编解码器的源代码时,你无法知道它在做什么实验是有效的,但通过使用其他人的代码来测试你的理论,不知道他们的代码里面究竟发生了什么

+0

你知道我可以用于实验的任何工具吗? – pree 2013-03-22 18:53:48

+0

由于我使用自己的JPEG编解码器,我没有关于其他的信息。您可能想使用LIBJPEG,因为您可以看到它在源代码中的作用。 – BitBank 2013-03-22 18:58:09

+0

我明白了。我将用它来运行我的实验。感谢您的信息:) – pree 2013-03-22 18:59:18

1

JPEG是有损压缩算法。在不同的工具中使用相同的压缩设置压缩一个图像可能会产生不同的结果。如果您想要像素到像素的结果,则需要使用无损算法之一。即您可以使用PNG

+0

OP在问**为什么**这可以产生不同的结果...... – 2013-03-22 17:09:36

+0

即使在这种情况下,我使用一个工具和一个原始图像作为我的输入。 – pree 2013-03-22 17:50:40

-3

“每个8x8块的直流分量从先前块预言”:由奥利查尔斯沃思

+0

你为什么重新发布不正确的答案? – BitBank 2013-03-22 18:19:07

+0

哦,我明白了。然后,我需要使用其他工具再次执行此实验 – pree 2013-03-22 18:50:31

+0

由于mu结果不同,并且上述答案证明结果合理。所以认为它是正确的。 – pree 2013-03-22 18:52:02