tradt / sikuli-api

Automatically exported from code.google.com/p/sikuli-api
0 stars 0 forks source link

Sikuli Java API: Why "match.getScore() is not equal to 1.00" when using same image #16

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Hi, Sikuli guys

I'm currently using some image search method from you library. The class name 
is "org.sikuli.core.search.ImageSearcher", and the method is "public List<T> 
search(Query query, Filter<T> filter, int n)".
I pasted some simple code below:
  BufferedImage target = new BufferedImage( ); // read some prepared image from computer disk
  ImageQuery query = new ColorImageQuery(target);
  ImageSearcher searcher = new ImageSearcher(target);
  List<RegionMatch> returned_list = searcher.search(query, filter, 2);
                for (RegionMatch s : returned_list) {
                                System.out.println(s.getScore()); // Here is the problem
                }

Problem: As you see, the searcher and query is using the same BufferedImage 
object. So the "s.getScore()" method should return "1.00". But when I tried 
some different BufferedImage, sometime the result is not equal to "1.00".
Is it a known issue in Sikuli? Or is there something I'm missing?
Please help me take a look at this bug, thanks in advance.

The attachment is one of the example image.

Original issue reported on code.google.com by reyzhang...@gmail.com on 15 Jan 2013 at 3:37

Attachments:

GoogleCodeExporter commented 9 years ago
Yes. This is indeed a bug. The perfect match will sometimes get 0.99999. We 
will look into this and put in a fix in the next release. Thank you!

Original comment by doubles...@gmail.com on 15 Jan 2013 at 3:42

GoogleCodeExporter commented 9 years ago
okay, thanks for your reply, I'm waiting the next release. :)

Original comment by reyzhang...@gmail.com on 16 Jan 2013 at 2:09

GoogleCodeExporter commented 9 years ago

Original comment by doubles...@gmail.com on 13 Jun 2013 at 8:03