gpt4 book ai didi

delphi - 不使用内存调整巨大的 jpeg 大小

转载 作者:行者123 更新时间:2023-12-02 05:31:40 26 4
gpt4 key购买 nike

我需要在不使用 RAM 的情况下调整巨大(高达 30000x30000)JPEG 文件的大小,速度并不重要,有什么办法可以做到这一点吗?我尝试了不同的库(nativejpg 和其他库),但它们使用所有可用 RAM,并因“内存不足”或“没有足够的存储空间来处理此命令”等错误而崩溃。我什至尝试了命令行实用程序 imagemagick,但它也使用了千兆字节的内存。

最佳答案

我建议您看看vips。据记录here .

我可以使用 ImageMagick 创建像这样的 10000x10000 噪声图像

convert -size 10000x10000! xc:gray50 +noise poisson image.jpg

并检查它的尺寸是否正确,如下所示:

identify image.jpg
image.jpg JPEG 10000x10000 10000x10000+0+0 8-bit sRGB 154.9MB 0.000u

我现在可以使用 vips 将 10000x10000 图像的大小调整为 2500x2500,如下所示

time vipsthumbnail image.jpg -s 2500 -o small.jpg --vips-leak
memory: high-water mark 20.48 MB

real 0m1.974s
user 0m2.158s
sys 0m0.096s

注意内存使用量峰值仅为 20MB

用 ImageMagick 检查这样的结果

identify result.jpg
result.jpg JPEG 2500x2500 2500x2500+0+0 8-bit sRGB 1.33MB 0.000u 0:00.000

也请查看有关性能和内存使用的技术说明 - here .

您还可以从 C 以及命令行调用它。

关于delphi - 不使用内存调整巨大的 jpeg 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30115047/

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