// similarity = e.g. 0.99f static Rect rgbFindMostSimilarClip(RGBImage big, RGBImage pat, L clips, float similarity) { Rect found; int wp = pat.getWidth(), hp = pat.getHeight(); int w = big.getWidth(), h = big.getHeight(); float maxError = (1f-similarity)*wp*hp; for (Rect r : clips) { float diff = rgbImageSectionsSimilarity(big, pat, r.x, r.y, maxError); if (diff <= maxError) { float sim = 1-diff/(wp*hp); found = new Rect(x, y, wp, hp); maxError = diff; } } ret found; }