JPEG图像压缩中的量化

在JPEG压缩中,丢失发生在量化和DCT变换期间。

为什么在JPEG图像压缩的DCT变换后量化后会得到很多0。


我可能误解了你的问题。 获得“很多0”是整个量化的关键。 通过在Huffman编码中为每个符号加上前缀,直到下一个系数为零,隐式编码为零。

JPEG压缩的量化是通过对量化表中的对应值对每个系数进行整数除法来完成的。 如果系数小于量化表中的值,它将变为零。

在解码器中,系数与量化表中的值相乘,以便它们恢复到它们以前的值(或多或少),除非系数为零。


在DCT变换之后,压缩器将每个DCT输出值除以“量化系数”并将结果舍入为整数。 量化系数越大,数据丢失越多。 由于四舍五入,你可能会看到很多0。 所得到的系数包含大量的冗余数据。 下面的霍夫曼压缩将无损地消除冗余,导致更小的JPEG数据。

更多信息


What @ Dragon66所说的是正确的,DCT矩阵除以量化矩阵并四舍五入为整数,当系数足够高时导致0。

造成这种情况的原因是人的眼睛在较低的空间频率下对噪声更敏感,但忽略了较高频率的大部分噪声。

当用DCT处理像素矩阵并获得最终矩阵时,左上角的系数表示像素块的平均亮度。 向右移动系数表示增加的水平空间频率。 向下移动,系数代表增加的垂直空间频率。

因此,量化矩阵具有更高的分量移动到右下角。 当系数在这些位置上达到0时丢失的信息对图像本身来说不那么重要,因为它代表较高的频率成分。

完整说明:http://www.media-matters.net/docs/resources/Digital%20Files/MPEG/MPEG%20Encoding%20Basics.pdf

链接地址: http://www.djcxy.com/p/62885.html

上一篇: Quantization in JPEG Image Compression

下一篇: Resizing JPEG image during decoding