如何在 python 中使用 wand 禁用 OpenCL

How to disable OpenCL with wand in python

所以我在一个项目中使用 wand,它一直工作正常,除非我想使用一个已经 'OpenCL-accelerated' 的函数(函数列表 here),它停止工作,没有错误或任何错误,但我很确定 OpenCL 是导致它的原因。

所以我的问题是,我怎样才能在 wand 中禁用 OpenCL 以便我可以使用这些功能?我再次寻找解决方案,但遗憾的是我不能找到任何 python 具体的内容,api 模块和 python 模块本身似乎也没有提及任何相关内容。

非常感谢任何帮助,谢谢!

只需设置环境变量 MAGICK_OCL_DEVICE=off 以禁用 OpenCL。

在 运行 脚本之前。

export MAGICK_OCL_DEVICE=OFF
python myScript.py

或者在 python 脚本中 调用任何 Wand 代码之前。

 import os

 os.environ['MAGICK_OCL_DEVICE'] = 'OFF'

 # ... wand stuff ...

您的应用程序似乎停止 运行ning 的原因是 ImageMagick 需要第一次 运行 OpenCL 基准测试,这可能需要一段时间。基准测试的结果将被缓存并在下次执行“OpenCL 加速”方法时使用。