TridentNet

Last updated on Feb 19, 2021

TridentNet (R101-C4, C5-128ROI, 3X)

Parameters 53 Million
FLOPs 888 Billion
File Size 202.02 MB
Training Data MS COCO
Training Resources 8 NVIDIA V100 GPUs
Training Time

Architecture ResNet, TridentNet Block, Soft-NMS
lr sched 3X
FLOPs Input No 100
SHOW MORE
SHOW LESS
TridentNet (R50-C4, C5-128ROI, 1X)

Parameters 34 Million
FLOPs 822 Billion
File Size 129.34 MB
Training Data MS COCO
Training Resources 8 NVIDIA V100 GPUs
Training Time

Architecture ResNet, TridentNet Block, Soft-NMS
lr sched 1X
FLOPs Input No 100
SHOW MORE
SHOW LESS
TridentNet (R50-C4, C5-128ROI, 3X)

Parameters 34 Million
FLOPs 822 Billion
File Size 129.34 MB
Training Data MS COCO
Training Resources 8 NVIDIA V100 GPUs
Training Time

Architecture ResNet, TridentNet Block, Soft-NMS, TridentNet
lr sched 3X
FLOPs Input No 100
SHOW MORE
SHOW LESS
Faster R-CNN (R101-C4, C5-512ROI, 3X)

lr sched 3X
FLOPs
File Size 202.02 MB
Training Data MS COCO
Training Resources 8 NVIDIA V100 GPUs
Training Time

Architecture Convolution, RoIPool, RPN, Softmax, ResNet
lr sched 3X
Faster R-CNN (R50-C4, C5-512ROI, 1X)

lr sched 1X
FLOPs
File Size 129.34 MB
Training Data MS COCO
Training Resources 8 NVIDIA V100 GPUs
Training Time

Architecture Convolution, RoIPool, RPN, Softmax, ResNet
lr sched 1X
Faster R-CNN (R50-C4, C5-512ROI, 3X)

lr sched 3X
FLOPs
File Size 129.34 MB
Training Data MS COCO
Training Resources 8 NVIDIA V100 GPUs
Training Time

Architecture Convolution, RoIPool, RPN, Softmax, ResNet
lr sched 3X
README.md

Summary

TridentNet is an object detection architecture that aims to generate scale-specific feature maps with a uniform representational power. A parallel multi-branch architecture is constructed in which each branch shares the same transformation parameters but with different receptive fields. A scale-aware training scheme is used to specialize each branch by sampling object instances of proper scales for training.

Training

To train a model, run

python /path/to/detectron2/projects/TridentNet/train_net.py --config-file <config.yaml>

For example, to launch end-to-end TridentNet training with ResNet-50 backbone on 8 GPUs, one should execute:

python /path/to/detectron2/projects/TridentNet/train_net.py --config-file configs/tridentnet_fast_R_50_C4_1x.yaml --num-gpus 8

Evaluation

Model evaluation can be done similarly:

python /path/to/detectron2/projects/TridentNet/train_net.py --config-file configs/tridentnet_fast_R_50_C4_1x.yaml --eval-only MODEL.WEIGHTS model.pth

Citation

@InProceedings{li2019scale,
  title={Scale-Aware Trident Networks for Object Detection},
  author={Li, Yanghao and Chen, Yuntao and Wang, Naiyan and Zhang, Zhaoxiang},
  journal={The International Conference on Computer Vision (ICCV)},
  year={2019}
}

Results

Object Detection on COCO minival

Object Detection on COCO minival
MODEL BOX AP AP50 AP75 APS APM APL
TridentNet (R101-C4, C5-128ROI, 3X) 43.6 63.4 47.0 24.3 47.8 60.0
Faster R-CNN (R101-C4, C5-512ROI, 3X) 41.1 61.4 44.0 22.2 45.5 55.9
TridentNet (R50-C4, C5-128ROI, 3X) 40.6 60.8 43.6 23.4 44.7 57.1
Faster R-CNN (R50-C4, C5-512ROI, 3X) 38.4 58.7 41.3 20.7 42.7 53.1
TridentNet (R50-C4, C5-128ROI, 1X) 38.0 58.1 40.8 19.5 42.2 54.6
Faster R-CNN (R50-C4, C5-512ROI, 1X) 35.7 56.1 38.0 19.2 40.9 48.7