Compression 为什么JPEG压缩按8x8块处理图像?

Compression 为什么JPEG压缩按8x8块处理图像?,compression,jpeg,dct,Compression,Jpeg,Dct,为什么JPEG压缩按8x8块处理图像,而不是对整个图像应用离散余弦变换?因为这将需要“永远”才能解码。我现在记不清了,但我想你需要的系数至少和块中的像素一样多。如果将整个图像编码为单个块,我认为需要对每个像素迭代所有DCT系数 我不太擅长大O计算,但我猜复杂性将是O(“永远”)。;-) 对于现代视频编解码器,我想他们已经开始使用16x16块了。8 X 8是在对其他尺寸进行了大量实验后选择的 实验结论如下: 1.任何大于8 X 8的矩阵都很难进行数学运算(如变换等),或者不受硬件支持,或者需要更长

为什么JPEG压缩按8x8块处理图像,而不是对整个图像应用离散余弦变换?

因为这将需要“永远”才能解码。我现在记不清了,但我想你需要的系数至少和块中的像素一样多。如果将整个图像编码为单个块,我认为需要对每个像素迭代所有DCT系数

我不太擅长大O计算,但我猜复杂性将是O(“永远”)。;-)


对于现代视频编解码器,我想他们已经开始使用16x16块了。

8 X 8是在对其他尺寸进行了大量实验后选择的

实验结论如下: 1.任何大于8 X 8的矩阵都很难进行数学运算(如变换等),或者不受硬件支持,或者需要更长的时间。
2.任何小于8 X 8的矩阵都没有足够的信息来继续管道。它会导致压缩图像的质量差。

考虑到DCT在压缩具有低频内容的相当平滑的区域方面很好,但在压缩高频内容区域方面却很差。相同问题:前面的相同问题:如果每次迭代都需要迭代所有内容,那么它是O(n^2),而不是“永远”,即O(n!)我不确定“永远”——我有一个叫做“FourierPainter”的程序,它能在瞬间完成傅里叶变换并返回图像。注意,整个画面。傅里叶变换和DCT并没有太大的区别,甚至可以进行稍微更多的计算(保持虚值为相位,而DCT则不是)。你可以自己下载傅里叶画师并检查它:链接已断开。还有其他来源吗?