在解码期间调整JPEG图像的大小

Tho*_*mas 7 jpeg resize decode thumbnails

我正在开发一个程序,可以动态创建JPEG图像的缩略图.现在我在想:由于JPEG图像是由8x8像素的块构建的(维基百科有一个很好的解释),是否有可能跳过部分解码?

假设我的缩略图至少比原始图像小8倍.然后,我们可以通过仅包括离散余弦变换的常数项,将输入文件中的每个8x8块映射到解码输出中的1个像素.大多数图像数据可以立即丢弃,无需处理.此外,内存使用量减少了64倍.

我不想从头开始实现这个; 这将很快需要一个星期.有没有可以做到这一点的代码?

如果不是,这是因为这种方法不值得,或者仅仅因为没有人想到它?

rjm*_*nro 4

我认为djpeg 的音阶功能就是这样的。

它可以将 8x8 块缩放为 1 到 16 像素之间的任意大小。

“这很有趣,因为可以直接从 JPEG (DCT) 数据检索不同的空间大小输出,而无需单独的完全解码和空间重采样。”