Non-Exceeding Suppression on Windows MATLAB Detection

I am currently detecting heads in the form of CCTV. I use a HOG + SVM detector and I use a sliding window method to detect heads. Of course, when I scale the image, I have several detection / limitation blocks of the same head. I know that I have to use non-maximum suppression to select the best one, and I tried to follow the following link: http://quantombone.blogspot.com/2011/08/blazing-fast-nmsm-from-exemplar-svm .html

However, I cannot figure out how to get an estimate for each sliding window. Can someone please explain to me? In other words, I have bounding rectangles, and I know that I need to set the overlap to 0.5, but I don’t have an estimate for each bounding box.

+5
source share
2 answers

In fact, for non-maximum suppression, you do not need an estimate associated with each bounding box. You can use the well-known NMS method for Viola and Jones (an extended cascade of simple functions):

  • group all bounding fields that overlap with each other more than 0.5
  • for each cluster, it calculates the middle bounding box and displays it (this calculates the midpoint between all the upper right corners and all lower right corners).

And you have no maximum suppression.

If you still want to use other routines that require an evaluation of the output, then simply assign the same score to each bounding box.

+4
source

You should be able to get a grade from SVM. For example, if you train SVM using the ClassificationECOC class in the statistics toolbar, its predict method can return a score.

You can then use the selectStrongestBbox function in the System Vision System Tool to prevent non-maximum value suppression.

+2
source

Source: https://habr.com/ru/post/1206016/


All Articles