5

我正在尝试加载内存占用有限的大型 JPEG 文件(数百兆像素)的一部分。我只需要大约 20000 的 1000 条扫描线。似乎 libjpeg(以及它的 fork libjpeg-turbo)的当前实现并没有提供一种方法来跳过不需要的 19k 扫描线而不解码它们。是否有解决方法而不深入研究 libjpeg 内部?

4

2 回答 2

2

您无法避免对要跳过的扫描线进行解码,但可以避免将它们存储在任何地方。当您从 libjpeg 获取每一行的回调时,只需等待行号与您想要的扫描线部分匹配。

于 2012-08-18T22:30:51.393 回答
1

一年前在 jpeglib-turbo 中实现了部分 JPEG 解码。我没有尝试过,但我想它应该可以工作。

核实:

添加进一步的部分解码优化 #34

于 2017-05-29T08:27:39.520 回答