All Projects → bharatsingh430 → Soft Nms

bharatsingh430 / Soft Nms

Object Detection

Projects that are alternatives of or similar to Soft Nms

Yolo Powered robot vision
Stars: ✭ 133 (-81.21%)
Mutual labels:  jupyter-notebook, detector
Repo 2018
Deep Learning Summer School + Tensorflow + OpenCV cascade training + YOLO + COCO + CycleGAN + AWS EC2 Setup + AWS IoT Project + AWS SageMaker + AWS API Gateway + Raspberry Pi3 Ubuntu Core
Stars: ✭ 163 (-76.98%)
Mutual labels:  jupyter-notebook, coco
Voc2coco
How to create custom COCO data set for object detection
Stars: ✭ 140 (-80.23%)
Mutual labels:  jupyter-notebook, pascal-voc
Image bbox slicer
This easy-to-use library splits images and its bounding box annotations into tiles, both into specific sizes and into any arbitrary number of equal parts. It can also resize them, both by specific sizes and by a resizing/scaling factor.
Stars: ✭ 41 (-94.21%)
Mutual labels:  jupyter-notebook, pascal-voc
datumaro
Dataset Management Framework, a Python library and a CLI tool to build, analyze and manage Computer Vision datasets.
Stars: ✭ 274 (-61.3%)
Mutual labels:  coco, pascal-voc
Fcos tensorflow
FCOS: Fully Convolutional One-Stage Object Detection.
Stars: ✭ 87 (-87.71%)
Mutual labels:  jupyter-notebook, coco
Faster Rcnn tensorflow
This is a tensorflow re-implementation of Faster R-CNN: Towards Real-Time ObjectDetection with Region Proposal Networks.
Stars: ✭ 142 (-79.94%)
Mutual labels:  jupyter-notebook, coco
Lacmus
Lacmus is a cross-platform application that helps to find people who are lost in the forest using computer vision and neural networks.
Stars: ✭ 142 (-79.94%)
Mutual labels:  jupyter-notebook, pascal-voc
DetectionMetrics
Tool to evaluate deep-learning detection and segmentation models, and to create datasets
Stars: ✭ 66 (-90.68%)
Mutual labels:  coco, pascal-voc
PyTorch-Spiking-YOLOv3
A PyTorch implementation of Spiking-YOLOv3. Two branches are provided, based on two common PyTorch implementation of YOLOv3(ultralytics/yolov3 & eriklindernoren/PyTorch-YOLOv3), with support for Spiking-YOLOv3-Tiny at present.
Stars: ✭ 144 (-79.66%)
Mutual labels:  coco, pascal-voc
Efficientdet.pytorch
Implementation EfficientDet: Scalable and Efficient Object Detection in PyTorch
Stars: ✭ 1,383 (+95.34%)
Mutual labels:  coco, pascal-voc
Toolbox
various cv tools, such as label tools, data augmentation, label conversion, etc.
Stars: ✭ 279 (-60.59%)
Mutual labels:  jupyter-notebook, coco
Imglab
To speedup and simplify image labeling/ annotation process with multiple supported formats.
Stars: ✭ 723 (+2.12%)
Mutual labels:  coco, pascal-voc
Robust Detection Benchmark
Code, data and benchmark from the paper "Benchmarking Robustness in Object Detection: Autonomous Driving when Winter is Coming" (NeurIPS 2019 ML4AD)
Stars: ✭ 128 (-81.92%)
Mutual labels:  jupyter-notebook, pascal-voc
Nas fpn tensorflow
NAS-FPN: Learning Scalable Feature Pyramid Architecture for Object Detection.
Stars: ✭ 198 (-72.03%)
Mutual labels:  jupyter-notebook, coco
RetinaNet Tensorflow
Focal Loss for Dense Object Detection.
Stars: ✭ 52 (-92.66%)
Mutual labels:  coco, pascal-voc
Trainyourownyolo
Train a state-of-the-art yolov3 object detector from scratch!
Stars: ✭ 399 (-43.64%)
Mutual labels:  jupyter-notebook, detector
Network Analysis Made Simple
An introduction to network analysis and applied graph theory using Python and NetworkX
Stars: ✭ 700 (-1.13%)
Mutual labels:  jupyter-notebook
Fewshot Face Translation Gan
Generative adversarial networks integrating modules from FUNIT and SPADE for face-swapping.
Stars: ✭ 705 (-0.42%)
Mutual labels:  jupyter-notebook
Caffenet Benchmark
Evaluation of the CNN design choices performance on ImageNet-2012.
Stars: ✭ 700 (-1.13%)
Mutual labels:  jupyter-notebook

Soft-NMS

This repository includes the code for Soft-NMS. Soft-NMS is integrated with two object detectors, R-FCN and Faster-RCNN. The Soft-NMS paper can be found here.

Soft-NMS is complementary to multi-scale testing and iterative bounding box regression. Check MSRA slides from the COCO 2017 challenge.

8 out of top 15 submissions used Soft-NMS in the COCO 2017 detection challenge!.

We are also making our ICCV reviews and our rebuttal public. This should help to clarify some concerns which you may have.

To test the models with soft-NMS, clone the project and test your models as in standard object detection pipelines. This repository supports Faster-RCNN and R-FCN where an additional flag can be used for soft-NMS.

The flags are as follows,

  1. Standard NMS. Use flag TEST.SOFT_NMS 0
  2. Soft-NMS with linear weighting. Use flag TEST.SOFT_NMS 1 (this is the default option)
  3. Soft-NMS with Gaussian weighting. Use flag TEST.SOFT_NMS 2

In addition, you can specify the sigma parameter for Gaussian weighting and the threshold parameter for linear weighting. Detections below 0.001 are discarded. For integrating soft-NMS in your code, refer to cpu_soft_nms function in lib/nms/cpu_nms.pyx and soft_nms wrapper function in lib/fast_rcnn/nms_wrapper.py. You can also implement your own weighting function in this file.

For testing a model on COCO or PASCAL, use the following script

./tools/test_net.py --gpu ${GPU_ID} \
  --def models/${PT_DIR}/${NET}/rfcn_end2end/test_agnostic.prototxt \
  --net ${NET_FINAL} \
  --imdb ${TEST_IMDB} \
  --cfg experiments/cfgs/rfcn_end2end_ohem_${PT_DIR}.yml \
  --set TEST.SOFT_NMS 1 # performs soft-NMS with linear weighting
  ${EXTRA_ARGS}

GPU_ID is the GPU you want to test on

NET_FINAL is the caffe-model to use

PT_DIR in {pascal_voc, coco} is the dataset directory

DATASET in {pascal_voc, coco} is the dataset to use

TEST_IMDB in {voc_0712_test,coco_2014_minival,coco_2014_test} is the test imdb

TEST.SOFT_NMS in {0,1,2} is flag for different NMS algorithms. 0 is standard NMS, 1 performs soft-NMS with linear weighting and 2 performs soft-NMS with gaussian weighting

Please refer to py-R-FCN-multiGPU for details about setting up object detection pipelines. The Soft-NMS repository also contains code for training these detectors on multiple GPUs. The position sensitive ROI Pooling layer is updated so that interpolation of bins is correct, like ROIAlign in Mask RCNN. The COCO detection model for R-FCN can be found here. All other detection models used in the paper are publicly available.

Results on MS-COCO

training data test data [email protected][0.5:0.95]
R-FCN, NMS COCO 2014 train+val -minival COCO 2015 minival 33.9%
R-FCN, Soft-NMS L COCO 2014 train+val -minival COCO 2015 minival 34.8%
R-FCN, Soft-NMS G COCO 2014 train+val -minival COCO 2015 minival 35.1%
F-RCNN, NMS COCO 2014 train+val -minival COCO 2015 test-dev 24.4%
F-RCNN, Soft-NMS L COCO 2014 train+val -minival COCO 2015 test-dev 25.5%
F-RCNN, Soft-NMS G COCO 2014 train+val -minival COCO 2015 test-dev 25.5%

R-FCN uses ResNet-101 as the backbone CNN architecture, while Faster-RCNN is based on VGG16.

Citing Soft-NMS

If you find this repository useful in your research, please consider citing:

@article{
  Author = {Navaneeth Bodla and Bharat Singh and Rama Chellappa and Larry S. Davis},
  Title = {Soft-NMS -- Improving Object Detection With One Line of Code},
  Booktitle = {Proceedings of the IEEE International Conference on Computer Vision},
  Year = {2017}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].