soft-nms icon indicating copy to clipboard operation
soft-nms copied to clipboard

soft-nms cannot improve mAP used SSD detection(one-stage)

Open ujsyehao opened this issue 5 years ago • 4 comments

I implement soft-nms in SSD(caffe), code link modify detection_output.cu, bbox_util.hpp, bbox_util.cpp, I ensure the custom implementation version is the same as author-provided python version(I have tested it use fake input) Below is my test results(PASCAL VOC 2007 test dataset):

Can you give me some advance?

ujsyehao avatar Mar 15 '19 12:03 ujsyehao

we mention in the the paper why it is not good for ssd/yolo. you can still get some improvement at 0.75 iou though

bharatsingh430 avatar Mar 15 '19 15:03 bharatsingh430

@bharatsingh430 , test results(PASCAL VOC 2007 test dataset) update:

Thank you for your reply, soft-nms can get 1-1.4 mAP improvement at 0.75 IOU to use nms thresh 0.45.

I have some problems:

  1. soft-nms paper say 'For detectors like SSD and YOLOv2 which are not proposal based, with the linear function, soft-nms only obtains an improvement of 0.5%.' ~~How do you get the result? What is the IOU threshold used? What is nms threshold used?~~ -> I check your answer under other issues, you use COCO metric
  2. paper say 'proposal-based detectors have higher recall and hence Soft-NMS has more potential to improve recall at higher Ot', How to understand it? Why soft-nms has more potential to improve recall at higher IOU thresh?

ujsyehao avatar Mar 17 '19 03:03 ujsyehao

If you don't do NMS for 2 stage detectors like faster-rcnn and 1 stage detectors like yolo/ssd, and compare recall, you would observe a gap in recall (2 stage > 1 stage), which will increase at higher IoU. Soft-NMS retains detections instead of discarding them. If detections are not generated at the first place (i.e recall is low) even before NMS , it is not possible to reduce the miss rate.

bharatsingh430 avatar Mar 19 '19 21:03 bharatsingh430

@bharatsingh430 Thank you!

ujsyehao avatar Mar 26 '19 09:03 ujsyehao