我尝试使用Sikuli API for Java自动化视频游戏。游戏具有随机效果,通常模式匹配得分低于0.7
。即使小于0.7,还有办法获得分数吗?
我的代码是:
Screen screen = new Screen();
Pattern image1 = new Pattern("C:\\picture1.png");
Region reg = new Screen();
System.out.println(reg.find(image1).getScore());
答案 0 :(得分:1)
当然,您可以通过一般参数设置相似度得分:
Settings.MinSimilarity = 0.5;
如果您这样做,它将应用于一般图像搜索:
Screen s = new Screen();
s.find("pattern.png");
或者,您可以将特定的相似性分数应用于Pattern
,如下所示:
Pattern p = new Pattern("pattern.png").similar(0.5)
<强> P.S。强>
重读你的问题我看到你问你是否可以得到一个对象的相似性得分。所以答案是类似的,你需要首先减少你的相似度设置,找到你想要的模式。然后,如果您使用result.highlight(1)
突出显示它,则会打印所有Match
信息,您还会看到对象的实际相似度。然后,您可以相应地调整相似度分数,以避免它不必要地低。
P.P.S 您可以查看here,了解如何理解Match
对象数据。