我想在Sikuli中使用OpenCV函数,如Hough变换和角点检测。
我在Sikuli上尝试了CPython的OpenCV安装说明,这是不行的。
我知道Sikuli是Jython,这可能是艰难的做事方式。有哪些更容易的选择?
我还是喜欢使用Sikuli& Python因为我编写的代码才有用;但也许我正在达到Sikuli的极限。
答案 0 :(得分:4)
您可以使用Automa替代Sikuli。它是一个纯Python库(所以你可以使用任何其他Python库),它的图像搜索算法是fully compatible with Sikuli。实际上,它本身使用OpenCV的Python绑定,因此附带它们。
免责声明:我是Automa的开发人员之一。
答案 1 :(得分:2)
一般来说:包含基于C语言代码的Python模块(Python OpenCV的情况)不能在Sikuli脚本(Jython)中使用。
使用Java-To-C接口(JNI)实现了Sikuli中一些OpenCV功能的集成,OpenCV功能本身的使用是用C ++编写的。
如果您想使用Sikuli不支持的OpenCV功能,那么您必须使用上面提到的JNI方法或使用Java implementation of OpenCV (javacv)(Java内容可以从Jython脚本中无缝使用)。
另一个选择当然是使用Python / OpenCV在纯Python脚本中实现其他功能,并在子流程中通过C-Python解释器调用这些脚本。