Sikuli不能区分颜色

时间:2017-05-18 05:31:34

标签: java automation sikuli

我正在使用Java和Sikuli开发一个程序,我想点击一个位于屏幕上的特定形状的红色图像。 问题是在屏幕上有另一个图像具有相同的形状但颜色不同,蓝色。

import org.sikuli.script.Screen;

this.screen.type("C:\\Images\\TestImage.png", "a"); // this is what I'm using.

我的鼠标一直在两张图片之间移动,因为它无法区分颜色。

2 个答案:

答案 0 :(得分:1)

Sikuli无法为您做出正确的选择。它只能根据您的模式定位匹配(在这种情况下为颜色)。要解决此问题,您应该提供一些独特的参考点,并可用于“帮助”Sikuli找到正确的匹配。例如,如果您感兴趣的模式位于屏幕的左侧,则可以将搜索范围限制在屏幕左侧。或者如果你有一个感兴趣的独特视觉对象,你可以使用它作为一个支点,只看它周围。

除此之外,如果你有几个相似的项目以某种有序的方式出现(例如一个在另一个下面),你可以让Sikuli找到所有这些项目,计算它们的坐标并根据这些坐标选择你需要的对象。

答案 1 :(得分:0)

这可能会有所帮助。创建一个区域并尝试在该区域中查找图像,如链接中的示例所示 http://seleniumqg.blogspot.com/2017/06/findfailed-exception-in-sikuili-script.html?m=1