现在我有一个图像处理算法,大约100 Python左右。使用numpy
,PIL
和scipy
大约需要500ms。我期望更快地获得它,而且由于实际的算法看起来非常优化,所以我想知道是否使用不同的方法(如Cython
)会改善时间。我相信,我有几个不同的事情,我可以这样做:Cython之间的区别,扩展C/C++与Python.h等
- 使用用Cython揭露C库到Python的相关部分。
- 使用ctypes的只是用C编写的一切,但仍然有它纯Python(不计入这在所有的倾斜)
- 在C/C创建一个扩展模块 ++,并将其导入并调用的函数。我不确定我是否能够以这种方式使用
numpy
。 - 创建一个DLL并让Python加载它。这没有得到使用
numpy
或这些模块,但仍然是非常有效的。
我只是在这里寻找速度,并不担心执行的难度。在这种情况下,有没有更好的选择,它们都是一样的,还是值得做的?