1

我必须将大约十亿张图片从 jp2 转换为 jpg...

我创建了这样的 .bat

for /d %%d in (*) do (
  for %%f in ("%%~d\*.jp2") do (
    convert -limit memory 0 -limit map 0 "%%~ff" -quality 25 "%%~dpf\jpg\%%~nf.jpg"
  )
)

但是当它转换超过〜100 000个窗口时,我会抛出可用内存等错误......我该怎么做才能使用更多的内存?所以那个图像转换器?如果是,则释放该内存....也许有办法将它与其他东西连接起来?

现在我遇到了 concolse free memory 错误以及 window 的 throw 错误...

此外,如果我删除限制内存 0 -limit map 0 我有同样的问题......

4

1 回答 1

1

根据我们的聊天会话,解决方案是不使用 ImageMagickconvert进行转换。 IrfanView支持用于批处理的命令行开关,并且在源参数和目标参数中使用通配符都能很好地工作。您还需要jpeg2000 插件从 jp2 转换。

for /d %%d in (*) do (
    pushd "%%d"
    if not exist "jpg\" md jpg
    "c:\Program Files (x86)\IrfanView\i_view32.exe" *.jp2 /convert=jpg\*.jpg /jpgq=25
    popd
)
于 2013-03-02T16:12:24.760 回答