如何在Sikuli中使用Python OpenCV函数

时间:2012-04-03 15:38:19

标签: python opencv jython sikuli

我想在Sikuli中使用OpenCV函数,如Hough变换和角点检测。

我在Sikuli上尝试了CPython的OpenCV安装说明,这是不行的。

我知道Sikuli是Jython,这可能是艰难的做事方式。有哪些更容易的选择?

我还是喜欢使用Sikuli& Python因为我编写的代码才有用;但也许我正在达到Sikuli的极限。

2 个答案:

答案 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解释器调用这些脚本。