gpt4 book ai didi

我可以使用 libjpeg 读取特定的图像行吗?

转载 作者:行者123 更新时间:2023-12-04 10:22:27 27 4
gpt4 key购买 nike

如果可能的话,我想使用 libjpeg 从 JPEG 图像的中间读取一行而不读取前面的所有行。这能做到吗?

最佳答案

答案几乎肯定是“是的,你可以,但它需要比你想要的更多的努力”。

JPEG 图像是标记流,包含整个压缩图像的全局信息或与图像特定部分相关的信息。压缩的工作原理是将图像分解为颜色平面,可能会将颜色空间更改为可以对颜色信息进行下采样的颜色空间,并在每个平面内对 8x8 像素 block 进行操作。

例如,如果压缩图像的大小使其仅由整个 block 组成,则可以通过仅转置基本 block 和每个 block 内的系数,将压缩图像旋转 90 度;即不解压缩、旋转真实图像并重新压缩。

鉴于此,您的方法是在进入库的途中解析标记流,将所有全局标记传递给图像,修改与图像大小相关的任何标记,并删除包含裁剪之外的系数的标记长方形。

如果裁剪以完成基本 block 的限制太粗,您可能需要进一步裁剪结果。

我不清楚的是,是否有任何真正胜过替代方案,即在结果从图书馆出来时裁剪。该库是高度可配置的,因此您可以提供未压缩的数据消费者功能,该功能会丢弃裁剪矩形之外的所有像素,并仅保存您想要保留的像素。

关于我可以使用 libjpeg 读取特定的图像行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3680416/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com