我正在写一个需要调整大量图像大小的应用程序...以下是我的要求:
least
上的
到目前为止,我的选择是:
所有这些都可以完成工作,但我在这里寻找的是最快的,我找不到任何关于它们性能的基准。
发布于 2009-05-17 06:59:36
看看Intel IPP (Integrated Performance Primitives) (维基链接比英特尔链接更好...)它也适用于AMD,并具有调整图像大小(双线性,最近邻等)的功能,并可在Linux和Windows上运行。
它不是免费的(但它不会让你破产),但它是你能找到的最快的。
发布于 2009-07-13 07:59:53
看看VIPS吧。这是我到目前为止发现的最快的一个,并且可以免费用于商业用途。
https://github.com/libvips/libvips/wiki/Speed-and-memory-use
在这个基准上,它比Pillow-SIMD快2倍,比imagemagick快5倍,比opencv快6倍,比freeimage快8倍,等等。它的内存使用量也大大降低:例如,比imagemagick少10倍以上。
发布于 2009-05-17 13:55:44
@Chris Becke的评论:
“考虑一下这句话。在一个(复杂的)步骤中做什么会让它变得更快?图像解码例程仍然需要解码每个像素,以便过滤器例程过滤它们。”
情况并不总是这样。例如,在解码JPEG时,您可以要求JPEG库为您提供1/2、1/4、1/8大小的图像(或者类似的大小,因为我已经详细介绍过一段时间),由于JPEG的工作方式,它可以在根本不解码额外细节的情况下做到这一点。它可以比完全解码+缩放快得多。
(显然,如果较小的图像不是您想要的大小,您可能需要稍后进行缩放。)
(很抱歉,由于没有声誉,我只能将此回复作为评论。这是我第一次尝试在这里发布任何东西。如果有人想转载这篇文章或类似的评论,并删除我的答案,请随意!)
https://stackoverflow.com/questions/873976
复制相似问题