不同JPEG类型对不同JPEG解码子流程的影响是什么?

时间:2015-06-22 16:19:56

标签: image jpeg decode decoding noise

众所周知,JPEG解码过程如下所示:

  • VLD - 可变长度解码,
  • ZZ - Zigzag scan,
  • DQ - Dequantization,
  • IDCT - 反向离散余弦变换,
  • 颜色转换(YUV到RGB)并重新排序。

我的问题是:对于不同JPEG图像的不同字符,上述哪个解码过程需要更多时间?

例如:

为了用噪声解码这种类型的图像,上述五个过程中哪一个需要相对更长的时间?

另一个例子:

对于两个质量不同的相同图像,在解码质量较高的图像时,上述五个过程中哪一个会花费更多时间?

1 个答案:

答案 0 :(得分:0)

JPEG倾向于随大小(时间)线性压缩。影响解码时间的主要因素是您是使用顺序扫描还是逐行扫描。顺序地,每个组件被处理一次。在渐进式中,每个组件至少有2个,可能多达500个(但这可能是荒谬的)。

针对您的具体问题:

  

VLD - 可变长度解码,

这取决于您是执行此操作一次(顺序)还是多次执行此操作(渐进式)

  

ZZ - Zigzag扫描

容易做到。数组索引。

  

DQ - Dequantization

取决于你做了多少次。一次连续。它可以多次进行渐进式(但不一定要在屏幕上进行连续更新)。

  

IDCT - 反向离散余弦变换,

这很大程度上取决于所使用的算法,无论是使用缩放整数还是浮动,以及是否多次使用(使用渐进式JPEG可能(或可能不))

  

颜色转换(YUV到RGB)并重新排序。

你只需要这样做一次。但是,如果有抽样,则会变得更复杂。

换句话说,无论图像是什么,解码时间都是相同的。但是,解码时间取决于图像的编码方式。

我认为,只是因为有时间读取磁盘,较小的文件比较大的文件解码速度更快。数据越随机,文件越大。由于文件大小的原因,读取和显示大型BMP文件通常需要花费更多时间,而不是同一图像的JPEG。