peterbraden/node-opencv — pull request #163 by oskardahlberg (2014-09-11 15:25:27+00:00)
Title: Template matches

This adds a method called TemplateMatches(maybe there is a better name?) that performs some actions with the matrix returned by MatchTemplate. For one it sorts it by asc/desc probability and creates a array with { x, y, probability }-objects so that you can easily iterate over it on the JS side. But due to the nature of MatchTemplate that array can get super big so I added a min/max probability filter and a neighbour filter.

The neighbour filter works by creating a new 1 ch matrix filled with 0s the size of the match matrix. For every match it draws a rectangle centered on the position with the size of (min_x_distance * 2, min_y_distance * 2). New matches are only added if its corresponding rectangle is to occupy a space with 0s. I.e., it is a hit mask. Since the matches are already sorted in order of of most probable only the best match in area will be returned.

I dont know how this fits into this framework, but it sure helped me alot so i thought i would at least send it in :)

Gr8 work btw! (again: _review_, rusty c++ skills)