Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Non-Maximum Suppression on Detected Windows MATLAB

I am currently detecting heads in a CCTV image. I am using a HOG detector + SVM and I am using the sliding window technique to detect the heads. Of course, when I am scaling the image, I am having multiple detection/bounding boxes of the same head. I know that I have to use non-maxima suppression to choose the best one of them, and I have tried to follow the following link: http://quantombone.blogspot.com/2011/08/blazing-fast-nmsm-from-exemplar-svm.html

However, I cannot understand how to get the score for each sliding window. Can someone explain to me please? In other words, I have the bounding boxes pts and I know that I have to set an overlap of 0.5, but I do not have the score for each bounding box.

like image 552
user2541516 Avatar asked Nov 01 '14 18:11

user2541516


People also ask

What is non maximum suppression in object detection?

Non Maximum Suppression is a computer vision method that selects a single entity out of many overlapping entities (for example bounding boxes in object detection). The criteria is usually discarding entities that are below a given probability bound.

How do you perform non Max suppression?

The non-max suppression will first select the bounding box with the highest objectiveness score. And then remove all the other boxes with high overlap. So here, in the above image, We will select the Green bounding box for the dog (since it has the highest objectiveness score of 98%)

Why do we need non maximum suppression?

Non max suppression is a technique used mainly in object detection that aims at selecting the best bounding box out of a set of overlapping boxes. In the following image, the aim of non max suppression would be to remove the yellow, and blue boxes, so that we are left with only the green box.


1 Answers

Actually for non-maximum suppression you don't need the score associated to each bounding box. You can use the well-known NMS method of Viola and Jones (Boosted cascade of simple features):

  • cluster all bounding box that have overlap with each other greater than 0.5
  • for each cluster calculate the mean bounding box and output it (that is calculate the mean point between all top right corners and all bottom-right corners)

And you have non-maximum suppression.

If you still want to use other routines that require output scores, then just assign to each bounding box the same score.

like image 121
dynamic Avatar answered Oct 29 '22 14:10

dynamic