3

我正在开发一个使用 ImageMagick 处理图像处理的 Web 脚本。它采用相关参数,根据操作系统在命令行或 shell 执行 ImageMagick 命令,并将原始图像数据传回脚本。网络脚本的语言显然是不相关的。

简单的用例包括: convert -resize 750 H:/221136.png -将输入图像的大小调整为 750 宽度并将原始数据输出到控制台。更复杂的用例涉及旋转、调整大小、裁剪/平移和绘图。

该脚本运行良好,并且对于 PNG、GIF 和 JPEG 输入非常快,即使在相当大的情况下(4000x5000 分辨率)也是如此。不幸的是,我的输入数据还包括 JPEG-2000。ImageMagick 处理一个 10-15 兆字节的 JPEG2000 需要非常多的时间,大约需要 10-15 秒。它不适合现场直播转换。

我知道将 JPEG-2000 快速转换为 JPEG 以用于 Web 输出是可能的,因为我使用的一个企业软件可以快速转换。我不确定他们使用哪个库——他们使用的 DLL/so 是 DL80JP2KLib.dll/.so。查了一下,似乎是一家名为 DataLogic 的公司制作了这个,但他们的网站上似乎没有任何明显相关的程序。

理想情况下,我正在寻找一种解决方案(插件?),它可以让 ImageMagick 像使用 PNG、GIF 或 JPEG 一样即时转换这些高分辨率 JPEG-2000 图像......或者单独的命令我可以在 ImageMagick 之前运行以将 JPEG-2000 转换为 ImageMagick 可以快速处理的中间格式的实用程序。

将运行此脚本的服务器具有 32 GB 的 RAM 和强大的处理器。假设转换速度比资源使用效率更重要。还假设虽然我需要一些表面上的质量,但图像丢失并不是一件紧迫的事情。许可要求和/或价格并不重要,只是在购买之前我需要能够自己测试几个示例文件的速度。理想的解决方案也(相对)独立于操作系统

我尝试了来自 Kakadu Software 的应用程序,它相当快,大约 3-4 秒,但这仍然不够快。如果不可能低于,比如说一秒钟,我会提前看一下批量转换文件。

我已将代表文件(JPEG-2000,~8MB)上传到 MediaFire: http ://www.mediafire.com/?yxv0j6vdwx0k996

4

1 回答 1

1

我发现过去的精确图像要快得多。

http://www.exactcode.de/site/open_source/exactimage/

Mark Tyler(mtPaint 的原作者)曾经将优秀的图形处理部分拆分到一个单独的库中(mtpixel ...因为作为一个单独的项目被放弃,但包含在 mtcelledit @它的 Google 代码主页中)

于 2012-02-16T03:24:10.567 回答