【发布时间】:2010-09-09 20:41:20
【问题描述】:
如果可能,使用 libjpeg,我想从 JPEG 图像的中间读取一行,而不读取前面的所有行。这个可以吗?
【问题讨论】:
-
如果你的意思是直接从文件中获取,没办法。 JPEG 格式被高度压缩,因此您不能只拉出一行而不需要解压缩整个文件。
-
我担心可能是这种情况,尽管我曾希望 JPEG 压缩可能偶尔会重置,从而允许乱序读取。查看 libpng,它似乎也只允许顺序访问。那么,我假设 PNG 也不能随机读取?
-
PNG 可能更适合随机访问,但前提是不使用其无损压缩模式。大多数图像处理库都认为文件 I/O 是作为填充和存储帧缓冲区的一种方式完成的,并且所有实际处理都是在 RAM 中包含整个图像的未压缩缓冲区上完成的。问题在于缓冲区的组织细节。