| find(Map) |   | 96% |   | 88% | 3 | 19 | 0 | 48 | 0 | 1 |
| handlePossibleCenter(int[], int, int, boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| FinderPatternFinder(BitMatrix) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| handlePossibleCenter(int[], int, int) |   | 96% |   | 92% | 1 | 8 | 1 | 21 | 0 | 1 |
| getImage() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPossibleCenters() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| clearCounts(int[]) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| shiftCounts2(int[]) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| crossCheckDiagonal(int, int) |   | 99% |   | 97% | 1 | 24 | 1 | 34 | 0 | 1 |
| foundPatternDiagonal(int[]) |   | 97% |   | 93% | 1 | 9 | 1 | 16 | 0 | 1 |
| crossCheckVertical(int, int, int, int) |  | 100% |  | 100% | 0 | 27 | 0 | 39 | 0 | 1 |
| crossCheckHorizontal(int, int, int, int) |  | 100% |  | 100% | 0 | 27 | 0 | 39 | 0 | 1 |
| selectBestPatterns() |  | 100% |  | 100% | 0 | 15 | 0 | 58 | 0 | 1 |
| foundPatternCross(int[]) |  | 100% |  | 100% | 0 | 9 | 0 | 16 | 0 | 1 |
| haveMultiplyConfirmedCenters() |  | 100% |  | 100% | 0 | 6 | 0 | 16 | 0 | 1 |
| findRowSkip() |  | 100% |  | 100% | 0 | 5 | 0 | 13 | 0 | 1 |
| doShiftCounts2(int[]) |  | 100% | | n/a | 0 | 1 | 0 | 6 | 0 | 1 |
| squaredDistance(FinderPattern, FinderPattern) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| FinderPatternFinder(BitMatrix, ResultPointCallback) |  | 100% | | n/a | 0 | 1 | 0 | 6 | 0 | 1 |
| centerFromEnd(int[], int) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getCrossCheckStateCount() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| doClearCounts(int[]) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |