0

I know the general idea of haar-like features and how a shape is computed using the integral image.

However my question is, after defining a shape and computing the integral image how to get the feature.

Meaning, do I apply the shape on every possible position (similar like a Gaussian filter)? Is the integral image tiled and the shape is computed on each tile? Or is the position of the shape in the image fixed and has to be predefined?

After that what exactly is the feature the classifier is trained on? E.g. if the image is tiled, would the new 'image' (combining all tiles to a vector) be the feature or would each tile be a feature on its own?

Everything I've found about it just said 'plug it into code library XY'.

1 Answers1

0

A feature for the haar-like feature algorithm is a single shape located in the selected window. So each feature is binary valued and includes both the 'shape' of the feature and its relative position in the detection window.

The image is processed by selecting many subwindows. The goal then is to discard any subwindows, not representing the desired object, as soon as possible. This is accomplished by applying above features to each subwindow. From this feature set a classifier is learned.

In case of the Viola-Jones detection framework a chain of classifiers is used, where the first classifiers use less features, therefore being faster to compute. If a classifier in the chain discards the subwindow further computation on this window is stopped.

The paper by Paul Viola and Michael Jones can be found here. Another useful paper on haar-like feature detection was published by Sri-Kaushik Pavani, David Delgadoand Alejandro F. Frangi under the name Haar-like features with optimally weighted rectangles for rapid object detection.