大小还是JPEG大小的其他好处是8px或16px的倍数?

JPEG压缩编码过程将给定图像分割成8x8像素块,在未来的有损和无损压缩中处理这些块。 [资源]

还提到,如果图像是多个1MCU块(定义为最小编码单元,通常是两个方向上的16个像素),可以执行JPEG的无损更改。 [资源]

我正在处理产品图像,并希望知道在最终图像尺寸中使用16的倍数(例如,使用尺寸为480像素×360像素的图像)与使用16像素的非倍数16(如484x362)。 在这个例子中,我对进一步改变,编辑或重新压缩最终图像不感兴趣。

为了更接近于我知道的特定答案,必须有很大的一般性:给定一个64x的480x360图像并以Photoshop的最高质量保存[示例]:

  • 我可以期望从484x362的图像中获得任何质量损失
  • 我可以期望额外的文件大小(对于这个示例,额外的空间将是白色像素)
  • 增长到8px网格还有什么其他的缺点吗?
  • 我知道使用这个特定的例子是任意的,但它仍然是有帮助的(对于我和其他任何人来说,思考一个图像大小)来理解我打破非8px网格时将要处理的级别的折中。

    这里的关键问题是我所面对的争论是8像素可分图像是否比不能被8像素整除的图像质量更高。


    8像素是截止点。 原因是因为JPEG图像只是一个8x8 DCT块的数组; 如果图像分辨率在两个方向都不是mod8,则编码器必须将两边填充到下一个mod8分辨率。 这在实践中并不是非常昂贵; 更糟糕的情况是当图像有黑色线条(如信箱图像)时,不在块边界上。 这在视频编码中尤其成问题。 造成这个问题的原因是锐线的频率变换是系数的高斯分布 - 导致编码的位数很大。

    对于那些好奇的人来说,内部压缩(例如JPEG图像)中填充边缘的最常见方法是在边缘之前镜像像素线。 例如,如果需要填充三条线并且线X是边,则线X + 1等于线X,线X + 2等于线X-1,并且线X + 3等于线X- 2。 这相当有效地将额外线路的变换系数的成本最小化。

    然而,在帧间编码中,填充算法通常简单地复制最后一行,因为镜像方法不适用于帧间压缩,例如在视频压缩中。


    由于子采样有时需要使用16个像素边界而不是8个; 在编码过程中每丢掉2个像素,那些8×8 DCT块就以16×16开始,并将解码回16×16。 这在最高质量的设置下不会成为问题。


    图像尺寸是8或16的倍数不会影响磁盘上的大小,但如果您可以将视觉内容与8x8像素网格对齐,例如重复模式或图像中的纹理。

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

    上一篇: size, or other benefit to JPEG sizes being multiples of 8px or 16px?

    下一篇: Why do image compression algorithms process the image by sub