├── .circleci ├── config.yml ├── docker │ └── Dockerfile └── test.yml ├── .dev_scripts ├── batch_test_list.py ├── batch_train_list.txt ├── benchmark_filter.py ├── benchmark_full_models.txt ├── benchmark_inference_fps.py ├── benchmark_options.py ├── benchmark_test.py ├── benchmark_test_image.py ├── benchmark_train.py ├── benchmark_train_models.txt ├── benchmark_valid_flops.py ├── check_links.py ├── convert_test_benchmark_script.py ├── convert_train_benchmark_script.py ├── covignore.cfg ├── diff_coverage_test.sh ├── download_checkpoints.py ├── gather_models.py ├── gather_test_benchmark_metric.py ├── gather_train_benchmark_metric.py ├── linter.sh ├── test_benchmark.sh ├── test_init_backbone.py └── train_benchmark.sh ├── .github ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE │ ├── config.yml │ ├── error-report.md │ ├── feature_request.md │ ├── general_questions.md │ └── reimplementation_questions.md ├── pull_request_template.md └── workflows │ └── deploy.yml ├── .gitignore ├── .owners.yml ├── .pre-commit-config-zh-cn.yaml ├── .pre-commit-config.yaml ├── .readthedocs.yml ├── CITATION.cff ├── LICENSE ├── MANIFEST.in ├── README.md ├── README_zh-CN.md ├── configs ├── _base_ │ ├── datasets │ │ ├── ade20k_instance.py │ │ ├── ade20k_panoptic.py │ │ ├── ade20k_semantic.py │ │ ├── cityscapes_detection.py │ │ ├── cityscapes_instance.py │ │ ├── coco_caption.py │ │ ├── coco_detection.py │ │ ├── coco_instance.py │ │ ├── coco_instance_semantic.py │ │ ├── coco_panoptic.py │ │ ├── coco_semantic.py │ │ ├── deepfashion.py │ │ ├── dsdl.py │ │ ├── isaid_instance.py │ │ ├── lvis_v0.5_instance.py │ │ ├── lvis_v1_instance.py │ │ ├── mot_challenge.py │ │ ├── mot_challenge_det.py │ │ ├── mot_challenge_reid.py │ │ ├── objects365v1_detection.py │ │ ├── objects365v2_detection.py │ │ ├── openimages_detection.py │ │ ├── refcoco+.py │ │ ├── refcoco.py │ │ ├── refcocog.py │ │ ├── semi_coco_detection.py │ │ ├── v3det.py │ │ ├── voc0712.py │ │ ├── wider_face.py │ │ └── youtube_vis.py │ ├── default_runtime.py │ ├── models │ │ ├── cascade-mask-rcnn_r50_fpn.py │ │ ├── cascade-rcnn_r50_fpn.py │ │ ├── fast-rcnn_r50_fpn.py │ │ ├── faster-rcnn_r50-caffe-c4.py │ │ ├── faster-rcnn_r50-caffe-dc5.py │ │ ├── faster-rcnn_r50_fpn.py │ │ ├── mask-rcnn_r50-caffe-c4.py │ │ ├── mask-rcnn_r50_fpn.py │ │ ├── retinanet_r50_fpn.py │ │ ├── rpn_r50-caffe-c4.py │ │ ├── rpn_r50_fpn.py │ │ └── ssd300.py │ └── schedules │ │ ├── schedule_1x.py │ │ ├── schedule_20e.py │ │ └── schedule_2x.py ├── albu_example │ ├── README.md │ ├── mask-rcnn_r50_fpn_albu-1x_coco.py │ └── metafile.yml ├── atss │ ├── README.md │ ├── atss_r101_fpn_1x_coco.py │ ├── atss_r101_fpn_8xb8-amp-lsj-200e_coco.py │ ├── atss_r18_fpn_8xb8-amp-lsj-200e_coco.py │ ├── atss_r50_fpn_1x_coco.py │ ├── atss_r50_fpn_8xb8-amp-lsj-200e_coco.py │ └── metafile.yml ├── autoassign │ ├── README.md │ ├── autoassign_r50-caffe_fpn_1x_coco.py │ └── metafile.yml ├── boxinst │ ├── README.md │ ├── boxinst_r101_fpn_ms-90k_coco.py │ ├── boxinst_r50_fpn_ms-90k_coco.py │ └── metafile.yml ├── bytetrack │ ├── README.md │ ├── bytetrack_yolox_x_8xb4-80e_crowdhuman-mot17halftrain_test-mot17halfval.py │ ├── bytetrack_yolox_x_8xb4-80e_crowdhuman-mot20train_test-mot20test.py │ ├── bytetrack_yolox_x_8xb4-amp-80e_crowdhuman-mot17halftrain_test-mot17halfval.py │ ├── bytetrack_yolox_x_8xb4-amp-80e_crowdhuman-mot17halftrain_test-mot17test.py │ ├── bytetrack_yolox_x_8xb4-amp-80e_crowdhuman-mot20train_test-mot20test.py │ ├── metafile.yml │ └── yolox_x_8xb4-amp-80e_crowdhuman-mot17halftrain_test-mot17halfval.py ├── carafe │ ├── README.md │ ├── faster-rcnn_r50_fpn-carafe_1x_coco.py │ ├── mask-rcnn_r50_fpn-carafe_1x_coco.py │ └── metafile.yml ├── cascade_rcnn │ ├── README.md │ ├── cascade-mask-rcnn_r101-caffe_fpn_1x_coco.py │ ├── cascade-mask-rcnn_r101-caffe_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_r101_fpn_1x_coco.py │ ├── cascade-mask-rcnn_r101_fpn_20e_coco.py │ ├── cascade-mask-rcnn_r101_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_r50-caffe_fpn_1x_coco.py │ ├── cascade-mask-rcnn_r50-caffe_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_r50_fpn_1x_coco.py │ ├── cascade-mask-rcnn_r50_fpn_20e_coco.py │ ├── cascade-mask-rcnn_r50_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_x101-32x4d_fpn_1x_coco.py │ ├── cascade-mask-rcnn_x101-32x4d_fpn_20e_coco.py │ ├── cascade-mask-rcnn_x101-32x4d_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_x101-32x8d_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_x101-64x4d_fpn_1x_coco.py │ ├── cascade-mask-rcnn_x101-64x4d_fpn_20e_coco.py │ ├── cascade-mask-rcnn_x101-64x4d_fpn_ms-3x_coco.py │ ├── cascade-rcnn_r101-caffe_fpn_1x_coco.py │ ├── cascade-rcnn_r101_fpn_1x_coco.py │ ├── cascade-rcnn_r101_fpn_20e_coco.py │ ├── cascade-rcnn_r101_fpn_8xb8-amp-lsj-200e_coco.py │ ├── cascade-rcnn_r18_fpn_8xb8-amp-lsj-200e_coco.py │ ├── cascade-rcnn_r50-caffe_fpn_1x_coco.py │ ├── cascade-rcnn_r50_fpn_1x_coco.py │ ├── cascade-rcnn_r50_fpn_20e_coco.py │ ├── cascade-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py │ ├── cascade-rcnn_x101-32x4d_fpn_1x_coco.py │ ├── cascade-rcnn_x101-32x4d_fpn_20e_coco.py │ ├── cascade-rcnn_x101-64x4d_fpn_1x_coco.py │ ├── cascade-rcnn_x101_64x4d_fpn_20e_coco.py │ └── metafile.yml ├── cascade_rpn │ ├── README.md │ ├── cascade-rpn_fast-rcnn_r50-caffe_fpn_1x_coco.py │ ├── cascade-rpn_faster-rcnn_r50-caffe_fpn_1x_coco.py │ ├── cascade-rpn_r50-caffe_fpn_1x_coco.py │ └── metafile.yml ├── centernet │ ├── README.md │ ├── centernet-update_r101_fpn_8xb8-amp-lsj-200e_coco.py │ ├── centernet-update_r18_fpn_8xb8-amp-lsj-200e_coco.py │ ├── centernet-update_r50-caffe_fpn_ms-1x_coco.py │ ├── centernet-update_r50_fpn_8xb8-amp-lsj-200e_coco.py │ ├── centernet_r18-dcnv2_8xb16-crop512-140e_coco.py │ ├── centernet_r18_8xb16-crop512-140e_coco.py │ ├── centernet_tta.py │ └── metafile.yml ├── centripetalnet │ ├── README.md │ ├── centripetalnet_hourglass104_16xb6-crop511-210e-mstest_coco.py │ └── metafile.yml ├── cityscapes │ ├── README.md │ ├── faster-rcnn_r50_fpn_1x_cityscapes.py │ └── mask-rcnn_r50_fpn_1x_cityscapes.py ├── common │ ├── lsj-100e_coco-detection.py │ ├── lsj-100e_coco-instance.py │ ├── lsj-200e_coco-detection.py │ ├── lsj-200e_coco-instance.py │ ├── ms-90k_coco.py │ ├── ms-poly-90k_coco-instance.py │ ├── ms-poly_3x_coco-instance.py │ ├── ms_3x_coco-instance.py │ ├── ms_3x_coco.py │ ├── ssj_270k_coco-instance.py │ └── ssj_scp_270k_coco-instance.py ├── condinst │ ├── README.md │ ├── condinst_r50_fpn_ms-poly-90k_coco_instance.py │ └── metafile.yml ├── conditional_detr │ ├── README.md │ ├── conditional-detr_r50_8xb2-50e_coco.py │ └── metafile.yml ├── convnext │ ├── README.md │ ├── cascade-mask-rcnn_convnext-s-p4-w7_fpn_4conv1fc-giou_amp-ms-crop-3x_coco.py │ ├── cascade-mask-rcnn_convnext-t-p4-w7_fpn_4conv1fc-giou_amp-ms-crop-3x_coco.py │ ├── mask-rcnn_convnext-t-p4-w7_fpn_amp-ms-crop-3x_coco.py │ └── metafile.yml ├── cornernet │ ├── README.md │ ├── cornernet_hourglass104_10xb5-crop511-210e-mstest_coco.py │ ├── cornernet_hourglass104_32xb3-210e-mstest_coco.py │ ├── cornernet_hourglass104_8xb6-210e-mstest_coco.py │ └── metafile.yml ├── crowddet │ ├── README.md │ ├── crowddet-rcnn_r50_fpn_8xb2-30e_crowdhuman.py │ ├── crowddet-rcnn_refine_r50_fpn_8xb2-30e_crowdhuman.py │ └── metafile.yml ├── dab_detr │ ├── README.md │ ├── dab-detr_r50_8xb2-50e_coco.py │ └── metafile.yml ├── dcn │ ├── README.md │ ├── cascade-mask-rcnn_r101-dconv-c3-c5_fpn_1x_coco.py │ ├── cascade-mask-rcnn_r50-dconv-c3-c5_fpn_1x_coco.py │ ├── cascade-mask-rcnn_x101-32x4d-dconv-c3-c5_fpn_1x_coco.py │ ├── cascade-rcnn_r101-dconv-c3-c5_fpn_1x_coco.py │ ├── cascade-rcnn_r50-dconv-c3-c5_fpn_1x_coco.py │ ├── faster-rcnn_r101-dconv-c3-c5_fpn_1x_coco.py │ ├── faster-rcnn_r50-dconv-c3-c5_fpn_1x_coco.py │ ├── faster-rcnn_r50_fpn_dpool_1x_coco.py │ ├── faster-rcnn_x101-32x4d-dconv-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r101-dconv-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r50-dconv-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r50-dconv-c3-c5_fpn_amp-1x_coco.py │ └── metafile.yml ├── dcnv2 │ ├── README.md │ ├── faster-rcnn_r50-mdconv-c3-c5_fpn_1x_coco.py │ ├── faster-rcnn_r50-mdconv-group4-c3-c5_fpn_1x_coco.py │ ├── faster-rcnn_r50_fpn_mdpool_1x_coco.py │ ├── mask-rcnn_r50-mdconv-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r50-mdconv-c3-c5_fpn_amp-1x_coco.py │ └── metafile.yml ├── ddod │ ├── README.md │ ├── ddod_r50_fpn_1x_coco.py │ └── metafile.yml ├── ddq │ ├── README.md │ ├── ddq-detr-4scale_r50_8xb2-12e_coco.py │ ├── ddq-detr-4scale_swinl_8xb2-30e_coco.py │ ├── ddq-detr-5scale_r50_8xb2-12e_coco.py │ └── metafile.yml ├── deepfashion │ ├── README.md │ └── mask-rcnn_r50_fpn_15e_deepfashion.py ├── deepsort │ ├── README.md │ ├── deepsort_faster-rcnn_r50_fpn_8xb2-4e_mot17halftrain_test-mot17halfval.py │ ├── deepsort_faster-rcnn_r50_fpn_8xb2-4e_mot17train_test-mot17test.py │ └── metafile.yml ├── deformable_detr │ ├── README.md │ ├── deformable-detr-refine-twostage_r50_16xb2-50e_coco.py │ ├── deformable-detr-refine_r50_16xb2-50e_coco.py │ ├── deformable-detr_r50_16xb2-50e_coco.py │ └── metafile.yml ├── detectors │ ├── README.md │ ├── cascade-rcnn_r50-rfp_1x_coco.py │ ├── cascade-rcnn_r50-sac_1x_coco.py │ ├── detectors_cascade-rcnn_r50_1x_coco.py │ ├── detectors_htc-r101_20e_coco.py │ ├── detectors_htc-r50_1x_coco.py │ ├── htc_r50-rfp_1x_coco.py │ ├── htc_r50-sac_1x_coco.py │ └── metafile.yml ├── detr │ ├── README.md │ ├── detr_r101_8xb2-500e_coco.py │ ├── detr_r18_8xb2-500e_coco.py │ ├── detr_r50_8xb2-150e_coco.py │ ├── detr_r50_8xb2-500e_coco.py │ └── metafile.yml ├── dino │ ├── README.md │ ├── dino-4scale_r50_8xb2-12e_coco.py │ ├── dino-4scale_r50_8xb2-24e_coco.py │ ├── dino-4scale_r50_8xb2-36e_coco.py │ ├── dino-4scale_r50_improved_8xb2-12e_coco.py │ ├── dino-5scale_swin-l_8xb2-12e_coco.py │ ├── dino-5scale_swin-l_8xb2-36e_coco.py │ └── metafile.yml ├── double_heads │ ├── README.md │ ├── dh-faster-rcnn_r50_fpn_1x_coco.py │ └── metafile.yml ├── dsdl │ ├── README.md │ ├── coco.py │ ├── coco_instance.py │ ├── objects365v2.py │ ├── openimagesv6.py │ ├── voc07.py │ └── voc0712.py ├── dyhead │ ├── README.md │ ├── atss_r50-caffe_fpn_dyhead_1x_coco.py │ ├── atss_r50_fpn_dyhead_1x_coco.py │ ├── atss_swin-l-p4-w12_fpn_dyhead_ms-2x_coco.py │ └── metafile.yml ├── dynamic_rcnn │ ├── README.md │ ├── dynamic-rcnn_r50_fpn_1x_coco.py │ └── metafile.yml ├── efficientnet │ ├── README.md │ ├── metafile.yml │ └── retinanet_effb3_fpn_8xb4-crop896-1x_coco.py ├── empirical_attention │ ├── README.md │ ├── faster-rcnn_r50-attn0010-dcn_fpn_1x_coco.py │ ├── faster-rcnn_r50-attn0010_fpn_1x_coco.py │ ├── faster-rcnn_r50-attn1111-dcn_fpn_1x_coco.py │ ├── faster-rcnn_r50-attn1111_fpn_1x_coco.py │ └── metafile.yml ├── fast_rcnn │ ├── README.md │ ├── fast-rcnn_r101-caffe_fpn_1x_coco.py │ ├── fast-rcnn_r101_fpn_1x_coco.py │ ├── fast-rcnn_r101_fpn_2x_coco.py │ ├── fast-rcnn_r50-caffe_fpn_1x_coco.py │ ├── fast-rcnn_r50_fpn_1x_coco.py │ └── fast-rcnn_r50_fpn_2x_coco.py ├── faster_rcnn │ ├── README.md │ ├── faster-rcnn_r101-caffe_fpn_1x_coco.py │ ├── faster-rcnn_r101-caffe_fpn_ms-3x_coco.py │ ├── faster-rcnn_r101_fpn_1x_coco.py │ ├── faster-rcnn_r101_fpn_2x_coco.py │ ├── faster-rcnn_r101_fpn_8xb8-amp-lsj-200e_coco.py │ ├── faster-rcnn_r101_fpn_ms-3x_coco.py │ ├── faster-rcnn_r18_fpn_8xb8-amp-lsj-200e_coco.py │ ├── faster-rcnn_r50-caffe-c4_ms-1x_coco.py │ ├── faster-rcnn_r50-caffe-dc5_1x_coco.py │ ├── faster-rcnn_r50-caffe-dc5_ms-1x_coco.py │ ├── faster-rcnn_r50-caffe-dc5_ms-3x_coco.py │ ├── faster-rcnn_r50-caffe_c4-1x_coco.py │ ├── faster-rcnn_r50-caffe_fpn_1x_coco.py │ ├── faster-rcnn_r50-caffe_fpn_90k_coco.py │ ├── faster-rcnn_r50-caffe_fpn_ms-1x_coco-person-bicycle-car.py │ ├── faster-rcnn_r50-caffe_fpn_ms-1x_coco-person.py │ ├── faster-rcnn_r50-caffe_fpn_ms-1x_coco.py │ ├── faster-rcnn_r50-caffe_fpn_ms-2x_coco.py │ ├── faster-rcnn_r50-caffe_fpn_ms-3x_coco.py │ ├── faster-rcnn_r50-caffe_fpn_ms-90k_coco.py │ ├── faster-rcnn_r50-tnr-pre_fpn_1x_coco.py │ ├── faster-rcnn_r50_fpn_1x_coco.py │ ├── faster-rcnn_r50_fpn_2x_coco.py │ ├── faster-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py │ ├── faster-rcnn_r50_fpn_amp-1x_coco.py │ ├── faster-rcnn_r50_fpn_bounded-iou_1x_coco.py │ ├── faster-rcnn_r50_fpn_ciou_1x_coco.py │ ├── faster-rcnn_r50_fpn_fcos-rpn_1x_coco.py │ ├── faster-rcnn_r50_fpn_giou_1x_coco.py │ ├── faster-rcnn_r50_fpn_iou_1x_coco.py │ ├── faster-rcnn_r50_fpn_ms-3x_coco.py │ ├── faster-rcnn_r50_fpn_ohem_1x_coco.py │ ├── faster-rcnn_r50_fpn_soft-nms_1x_coco.py │ ├── faster-rcnn_x101-32x4d_fpn_1x_coco.py │ ├── faster-rcnn_x101-32x4d_fpn_2x_coco.py │ ├── faster-rcnn_x101-32x4d_fpn_ms-3x_coco.py │ ├── faster-rcnn_x101-32x8d_fpn_ms-3x_coco.py │ ├── faster-rcnn_x101-64x4d_fpn_1x_coco.py │ ├── faster-rcnn_x101-64x4d_fpn_2x_coco.py │ ├── faster-rcnn_x101-64x4d_fpn_ms-3x_coco.py │ └── metafile.yml ├── fcos │ ├── README.md │ ├── fcos_r101-caffe_fpn_gn-head-1x_coco.py │ ├── fcos_r101-caffe_fpn_gn-head_ms-640-800-2x_coco.py │ ├── fcos_r101_fpn_gn-head-center-normbbox-centeronreg-giou_8xb8-amp-lsj-200e_coco.py │ ├── fcos_r18_fpn_gn-head-center-normbbox-centeronreg-giou_8xb8-amp-lsj-200e_coco.py │ ├── fcos_r50-caffe_fpn_gn-head-center-normbbox-centeronreg-giou_1x_coco.py │ ├── fcos_r50-caffe_fpn_gn-head-center_1x_coco.py │ ├── fcos_r50-caffe_fpn_gn-head_1x_coco.py │ ├── fcos_r50-caffe_fpn_gn-head_4xb4-1x_coco.py │ ├── fcos_r50-caffe_fpn_gn-head_ms-640-800-2x_coco.py │ ├── fcos_r50-dcn-caffe_fpn_gn-head-center-normbbox-centeronreg-giou_1x_coco.py │ ├── fcos_r50_fpn_gn-head-center-normbbox-centeronreg-giou_8xb8-amp-lsj-200e_coco.py │ ├── fcos_x101-64x4d_fpn_gn-head_ms-640-800-2x_coco.py │ └── metafile.yml ├── foveabox │ ├── README.md │ ├── fovea_r101_fpn_4xb4-1x_coco.py │ ├── fovea_r101_fpn_4xb4-2x_coco.py │ ├── fovea_r101_fpn_gn-head-align_4xb4-2x_coco.py │ ├── fovea_r101_fpn_gn-head-align_ms-640-800-4xb4-2x_coco.py │ ├── fovea_r50_fpn_4xb4-1x_coco.py │ ├── fovea_r50_fpn_4xb4-2x_coco.py │ ├── fovea_r50_fpn_gn-head-align_4xb4-2x_coco.py │ ├── fovea_r50_fpn_gn-head-align_ms-640-800-4xb4-2x_coco.py │ └── metafile.yml ├── fpg │ ├── README.md │ ├── faster-rcnn_r50_fpg-chn128_crop640-50e_coco.py │ ├── faster-rcnn_r50_fpg_crop640-50e_coco.py │ ├── faster-rcnn_r50_fpn_crop640-50e_coco.py │ ├── mask-rcnn_r50_fpg-chn128_crop640-50e_coco.py │ ├── mask-rcnn_r50_fpg_crop640-50e_coco.py │ ├── mask-rcnn_r50_fpn_crop640-50e_coco.py │ ├── metafile.yml │ ├── retinanet_r50_fpg-chn128_crop640_50e_coco.py │ └── retinanet_r50_fpg_crop640_50e_coco.py ├── free_anchor │ ├── README.md │ ├── freeanchor_r101_fpn_1x_coco.py │ ├── freeanchor_r50_fpn_1x_coco.py │ ├── freeanchor_x101-32x4d_fpn_1x_coco.py │ └── metafile.yml ├── fsaf │ ├── README.md │ ├── fsaf_r101_fpn_1x_coco.py │ ├── fsaf_r50_fpn_1x_coco.py │ ├── fsaf_x101-64x4d_fpn_1x_coco.py │ └── metafile.yml ├── gcnet │ ├── README.md │ ├── cascade-mask-rcnn_x101-32x4d-syncbn-dconv-c3-c5-r16-gcb-c3-c5_fpn_1x_coco.py │ ├── cascade-mask-rcnn_x101-32x4d-syncbn-dconv-c3-c5-r4-gcb-c3-c5_fpn_1x_coco.py │ ├── cascade-mask-rcnn_x101-32x4d-syncbn-dconv-c3-c5_fpn_1x_coco.py │ ├── cascade-mask-rcnn_x101-32x4d-syncbn-r16-gcb-c3-c5_fpn_1x_coco.py │ ├── cascade-mask-rcnn_x101-32x4d-syncbn-r4-gcb-c3-c5_fpn_1x_coco.py │ ├── cascade-mask-rcnn_x101-32x4d-syncbn_fpn_1x_coco.py │ ├── mask-rcnn_r101-gcb-r16-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r101-gcb-r4-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r101-syncbn-gcb-r16-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r101-syncbn-gcb-r4-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r101-syncbn_fpn_1x_coco.py │ ├── mask-rcnn_r50-gcb-r16-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r50-gcb-r4-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r50-syncbn-gcb-r16-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r50-syncbn-gcb-r4-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_r50-syncbn_fpn_1x_coco.py │ ├── mask-rcnn_x101-32x4d-syncbn-gcb-r16-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_x101-32x4d-syncbn-gcb-r4-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_x101-32x4d-syncbn_fpn_1x_coco.py │ └── metafile.yml ├── gfl │ ├── README.md │ ├── gfl_r101-dconv-c3-c5_fpn_ms-2x_coco.py │ ├── gfl_r101_fpn_ms-2x_coco.py │ ├── gfl_r50_fpn_1x_coco.py │ ├── gfl_r50_fpn_ms-2x_coco.py │ ├── gfl_x101-32x4d-dconv-c4-c5_fpn_ms-2x_coco.py │ ├── gfl_x101-32x4d_fpn_ms-2x_coco.py │ └── metafile.yml ├── ghm │ ├── README.md │ ├── metafile.yml │ ├── retinanet_r101_fpn_ghm-1x_coco.py │ ├── retinanet_r50_fpn_ghm-1x_coco.py │ ├── retinanet_x101-32x4d_fpn_ghm-1x_coco.py │ └── retinanet_x101-64x4d_fpn_ghm-1x_coco.py ├── glip │ ├── README.md │ ├── glip_atss_swin-l_fpn_dyhead_16xb2_ms-2x_funtune_coco.py │ ├── glip_atss_swin-l_fpn_dyhead_pretrain_mixeddata.py │ ├── glip_atss_swin-t_a_fpn_dyhead_16xb2_ms-2x_funtune_coco.py │ ├── glip_atss_swin-t_a_fpn_dyhead_pretrain_obj365.py │ ├── glip_atss_swin-t_b_fpn_dyhead_16xb2_ms-2x_funtune_coco.py │ ├── glip_atss_swin-t_b_fpn_dyhead_pretrain_obj365.py │ ├── glip_atss_swin-t_c_fpn_dyhead_16xb2_ms-2x_funtune_coco.py │ ├── glip_atss_swin-t_c_fpn_dyhead_pretrain_obj365-goldg.py │ ├── glip_atss_swin-t_fpn_dyhead_16xb2_ms-2x_funtune_coco.py │ ├── glip_atss_swin-t_fpn_dyhead_pretrain_obj365-goldg-cc3m-sub.py │ └── metafile.yml ├── gn+ws │ ├── README.md │ ├── faster-rcnn_r101_fpn_gn-ws-all_1x_coco.py │ ├── faster-rcnn_r50_fpn_gn-ws-all_1x_coco.py │ ├── faster-rcnn_x101-32x4d_fpn_gn-ws-all_1x_coco.py │ ├── faster-rcnn_x50-32x4d_fpn_gn-ws-all_1x_coco.py │ ├── mask-rcnn_r101_fpn_gn-ws-all_20-23-24e_coco.py │ ├── mask-rcnn_r101_fpn_gn-ws-all_2x_coco.py │ ├── mask-rcnn_r50_fpn_gn-ws-all_20-23-24e_coco.py │ ├── mask-rcnn_r50_fpn_gn-ws-all_2x_coco.py │ ├── mask-rcnn_x101-32x4d_fpn_gn-ws-all_20-23-24e_coco.py │ ├── mask-rcnn_x101-32x4d_fpn_gn-ws-all_2x_coco.py │ ├── mask-rcnn_x50-32x4d_fpn_gn-ws-all_20-23-24e_coco.py │ ├── mask-rcnn_x50-32x4d_fpn_gn-ws-all_2x_coco.py │ └── metafile.yml ├── gn │ ├── README.md │ ├── mask-rcnn_r101_fpn_gn-all_2x_coco.py │ ├── mask-rcnn_r101_fpn_gn-all_3x_coco.py │ ├── mask-rcnn_r50-contrib_fpn_gn-all_2x_coco.py │ ├── mask-rcnn_r50-contrib_fpn_gn-all_3x_coco.py │ ├── mask-rcnn_r50_fpn_gn-all_2x_coco.py │ ├── mask-rcnn_r50_fpn_gn-all_3x_coco.py │ └── metafile.yml ├── grid_rcnn │ ├── README.md │ ├── grid-rcnn_r101_fpn_gn-head_2x_coco.py │ ├── grid-rcnn_r50_fpn_gn-head_1x_coco.py │ ├── grid-rcnn_r50_fpn_gn-head_2x_coco.py │ ├── grid-rcnn_x101-32x4d_fpn_gn-head_2x_coco.py │ ├── grid-rcnn_x101-64x4d_fpn_gn-head_2x_coco.py │ └── metafile.yml ├── groie │ ├── README.md │ ├── faste-rcnn_r50_fpn_groie_1x_coco.py │ ├── grid-rcnn_r50_fpn_gn-head-groie_1x_coco.py │ ├── mask-rcnn_r101_fpn_syncbn-r4-gcb_c3-c5-groie_1x_coco.py │ ├── mask-rcnn_r50_fpn_groie_1x_coco.py │ ├── mask-rcnn_r50_fpn_syncbn-r4-gcb-c3-c5-groie_1x_coco.py │ └── metafile.yml ├── grounding_dino │ ├── README.md │ ├── grounding_dino_r50_scratch_8xb2_1x_coco.py │ ├── grounding_dino_swin-b_finetune_16xb2_1x_coco.py │ ├── grounding_dino_swin-b_pretrain_mixeddata.py │ ├── grounding_dino_swin-t_finetune_16xb2_1x_coco.py │ ├── grounding_dino_swin-t_finetune_8xb2_20e_cat.py │ ├── grounding_dino_swin-t_pretrain_obj365_goldg_cap4m.py │ └── metafile.yml ├── guided_anchoring │ ├── README.md │ ├── ga-fast-rcnn_r50-caffe_fpn_1x_coco.py │ ├── ga-faster-rcnn_r101-caffe_fpn_1x_coco.py │ ├── ga-faster-rcnn_r50-caffe_fpn_1x_coco.py │ ├── ga-faster-rcnn_r50_fpn_1x_coco.py │ ├── ga-faster-rcnn_x101-32x4d_fpn_1x_coco.py │ ├── ga-faster-rcnn_x101-64x4d_fpn_1x_coco.py │ ├── ga-retinanet_r101-caffe_fpn_1x_coco.py │ ├── ga-retinanet_r101-caffe_fpn_ms-2x.py │ ├── ga-retinanet_r50-caffe_fpn_1x_coco.py │ ├── ga-retinanet_r50_fpn_1x_coco.py │ ├── ga-retinanet_x101-32x4d_fpn_1x_coco.py │ ├── ga-retinanet_x101-64x4d_fpn_1x_coco.py │ ├── ga-rpn_r101-caffe_fpn_1x_coco.py │ ├── ga-rpn_r50-caffe_fpn_1x_coco.py │ ├── ga-rpn_r50_fpn_1x_coco.py │ ├── ga-rpn_x101-32x4d_fpn_1x_coco.py │ ├── ga-rpn_x101-64x4d_fpn_1x_coco.py │ └── metafile.yml ├── hrnet │ ├── README.md │ ├── cascade-mask-rcnn_hrnetv2p-w18_20e_coco.py │ ├── cascade-mask-rcnn_hrnetv2p-w32_20e_coco.py │ ├── cascade-mask-rcnn_hrnetv2p-w40-20e_coco.py │ ├── cascade-rcnn_hrnetv2p-w18-20e_coco.py │ ├── cascade-rcnn_hrnetv2p-w32-20e_coco.py │ ├── cascade-rcnn_hrnetv2p-w40-20e_coco.py │ ├── faster-rcnn_hrnetv2p-w18-1x_coco.py │ ├── faster-rcnn_hrnetv2p-w18-2x_coco.py │ ├── faster-rcnn_hrnetv2p-w32-1x_coco.py │ ├── faster-rcnn_hrnetv2p-w32_2x_coco.py │ ├── faster-rcnn_hrnetv2p-w40-1x_coco.py │ ├── faster-rcnn_hrnetv2p-w40_2x_coco.py │ ├── fcos_hrnetv2p-w18-gn-head_4xb4-1x_coco.py │ ├── fcos_hrnetv2p-w18-gn-head_4xb4-2x_coco.py │ ├── fcos_hrnetv2p-w18-gn-head_ms-640-800-4xb4-2x_coco.py │ ├── fcos_hrnetv2p-w32-gn-head_4xb4-1x_coco.py │ ├── fcos_hrnetv2p-w32-gn-head_4xb4-2x_coco.py │ ├── fcos_hrnetv2p-w32-gn-head_ms-640-800-4xb4-2x_coco.py │ ├── fcos_hrnetv2p-w40-gn-head_ms-640-800-4xb4-2x_coco.py │ ├── htc_hrnetv2p-w18_20e_coco.py │ ├── htc_hrnetv2p-w32_20e_coco.py │ ├── htc_hrnetv2p-w40_20e_coco.py │ ├── htc_hrnetv2p-w40_28e_coco.py │ ├── htc_x101-64x4d_fpn_16xb1-28e_coco.py │ ├── mask-rcnn_hrnetv2p-w18-1x_coco.py │ ├── mask-rcnn_hrnetv2p-w18-2x_coco.py │ ├── mask-rcnn_hrnetv2p-w32-1x_coco.py │ ├── mask-rcnn_hrnetv2p-w32-2x_coco.py │ ├── mask-rcnn_hrnetv2p-w40-2x_coco.py │ ├── mask-rcnn_hrnetv2p-w40_1x_coco.py │ └── metafile.yml ├── htc │ ├── README.md │ ├── htc-without-semantic_r50_fpn_1x_coco.py │ ├── htc_r101_fpn_20e_coco.py │ ├── htc_r50_fpn_1x_coco.py │ ├── htc_r50_fpn_20e_coco.py │ ├── htc_x101-32x4d_fpn_16xb1-20e_coco.py │ ├── htc_x101-64x4d-dconv-c3-c5_fpn_ms-400-1400-16xb1-20e_coco.py │ ├── htc_x101-64x4d_fpn_16xb1-20e_coco.py │ └── metafile.yml ├── instaboost │ ├── README.md │ ├── cascade-mask-rcnn_r101_fpn_instaboost-4x_coco.py │ ├── cascade-mask-rcnn_r50_fpn_instaboost-4x_coco.py │ ├── cascade-mask-rcnn_x101-64x4d_fpn_instaboost-4x_coco.py │ ├── mask-rcnn_r101_fpn_instaboost-4x_coco.py │ ├── mask-rcnn_r50_fpn_instaboost-4x_coco.py │ ├── mask-rcnn_x101-64x4d_fpn_instaboost-4x_coco.py │ └── metafile.yml ├── lad │ ├── README.md │ ├── lad_r101-paa-r50_fpn_2xb8_coco_1x.py │ ├── lad_r50-paa-r101_fpn_2xb8_coco_1x.py │ └── metafile.yml ├── ld │ ├── README.md │ ├── ld_r101-gflv1-r101-dcn_fpn_2x_coco.py │ ├── ld_r18-gflv1-r101_fpn_1x_coco.py │ ├── ld_r34-gflv1-r101_fpn_1x_coco.py │ ├── ld_r50-gflv1-r101_fpn_1x_coco.py │ └── metafile.yml ├── legacy_1.x │ ├── README.md │ ├── cascade-mask-rcnn_r50_fpn_1x_coco_v1.py │ ├── faster-rcnn_r50_fpn_1x_coco_v1.py │ ├── mask-rcnn_r50_fpn_1x_coco_v1.py │ ├── retinanet_r50-caffe_fpn_1x_coco_v1.py │ ├── retinanet_r50_fpn_1x_coco_v1.py │ └── ssd300_coco_v1.py ├── libra_rcnn │ ├── README.md │ ├── libra-fast-rcnn_r50_fpn_1x_coco.py │ ├── libra-faster-rcnn_r101_fpn_1x_coco.py │ ├── libra-faster-rcnn_r50_fpn_1x_coco.py │ ├── libra-faster-rcnn_x101-64x4d_fpn_1x_coco.py │ ├── libra-retinanet_r50_fpn_1x_coco.py │ └── metafile.yml ├── lvis │ ├── README.md │ ├── mask-rcnn_r101_fpn_sample1e-3_ms-1x_lvis-v1.py │ ├── mask-rcnn_r101_fpn_sample1e-3_ms-2x_lvis-v0.5.py │ ├── mask-rcnn_r50_fpn_sample1e-3_ms-1x_lvis-v1.py │ ├── mask-rcnn_r50_fpn_sample1e-3_ms-2x_lvis-v0.5.py │ ├── mask-rcnn_x101-32x4d_fpn_sample1e-3_ms-1x_lvis-v1.py │ ├── mask-rcnn_x101-32x4d_fpn_sample1e-3_ms-2x_lvis-v0.5.py │ ├── mask-rcnn_x101-64x4d_fpn_sample1e-3_ms-1x_lvis-v1.py │ ├── mask-rcnn_x101-64x4d_fpn_sample1e-3_ms-2x_lvis-v0.5.py │ └── metafile.yml ├── mask2former │ ├── README.md │ ├── mask2former_r101_8xb2-lsj-50e_coco-panoptic.py │ ├── mask2former_r101_8xb2-lsj-50e_coco.py │ ├── mask2former_r50_8xb2-lsj-50e_coco-panoptic.py │ ├── mask2former_r50_8xb2-lsj-50e_coco.py │ ├── mask2former_swin-b-p4-w12-384-in21k_8xb2-lsj-50e_coco-panoptic.py │ ├── mask2former_swin-b-p4-w12-384_8xb2-lsj-50e_coco-panoptic.py │ ├── mask2former_swin-l-p4-w12-384-in21k_16xb1-lsj-100e_coco-panoptic.py │ ├── mask2former_swin-s-p4-w7-224_8xb2-lsj-50e_coco-panoptic.py │ ├── mask2former_swin-s-p4-w7-224_8xb2-lsj-50e_coco.py │ ├── mask2former_swin-t-p4-w7-224_8xb2-lsj-50e_coco-panoptic.py │ ├── mask2former_swin-t-p4-w7-224_8xb2-lsj-50e_coco.py │ └── metafile.yml ├── mask2former_vis │ ├── README.md │ ├── mask2former_r101_8xb2-8e_youtubevis2019.py │ ├── mask2former_r101_8xb2-8e_youtubevis2021.py │ ├── mask2former_r50_8xb2-8e_youtubevis2019.py │ ├── mask2former_r50_8xb2-8e_youtubevis2021.py │ ├── mask2former_swin-l-p4-w12-384-in21k_8xb2-8e_youtubevis2021.py │ └── metafile.yml ├── mask_rcnn │ ├── README.md │ ├── mask-rcnn_r101-caffe_fpn_1x_coco.py │ ├── mask-rcnn_r101-caffe_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_r101_fpn_1x_coco.py │ ├── mask-rcnn_r101_fpn_2x_coco.py │ ├── mask-rcnn_r101_fpn_8xb8-amp-lsj-200e_coco.py │ ├── mask-rcnn_r101_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_r18_fpn_8xb8-amp-lsj-200e_coco.py │ ├── mask-rcnn_r50-caffe-c4_1x_coco.py │ ├── mask-rcnn_r50-caffe_fpn_1x_coco.py │ ├── mask-rcnn_r50-caffe_fpn_ms-1x_coco.py │ ├── mask-rcnn_r50-caffe_fpn_ms-poly-1x_coco.py │ ├── mask-rcnn_r50-caffe_fpn_ms-poly-2x_coco.py │ ├── mask-rcnn_r50-caffe_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_r50-caffe_fpn_poly-1x_coco_v1.py │ ├── mask-rcnn_r50_fpn_1x-wandb_coco.py │ ├── mask-rcnn_r50_fpn_1x_coco.py │ ├── mask-rcnn_r50_fpn_2x_coco.py │ ├── mask-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py │ ├── mask-rcnn_r50_fpn_amp-1x_coco.py │ ├── mask-rcnn_r50_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_r50_fpn_poly-1x_coco.py │ ├── mask-rcnn_x101-32x4d_fpn_1x_coco.py │ ├── mask-rcnn_x101-32x4d_fpn_2x_coco.py │ ├── mask-rcnn_x101-32x4d_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_x101-32x8d_fpn_1x_coco.py │ ├── mask-rcnn_x101-32x8d_fpn_ms-poly-1x_coco.py │ ├── mask-rcnn_x101-32x8d_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_x101-64x4d_fpn_1x_coco.py │ ├── mask-rcnn_x101-64x4d_fpn_2x_coco.py │ ├── mask-rcnn_x101-64x4d_fpn_ms-poly_3x_coco.py │ └── metafile.yml ├── maskformer │ ├── README.md │ ├── maskformer_r50_ms-16xb1-75e_coco.py │ ├── maskformer_swin-l-p4-w12_64xb1-ms-300e_coco.py │ └── metafile.yml ├── masktrack_rcnn │ ├── README.md │ ├── masktrack-rcnn_mask-rcnn_r101_fpn_8xb1-12e_youtubevis2019.py │ ├── masktrack-rcnn_mask-rcnn_r101_fpn_8xb1-12e_youtubevis2021.py │ ├── masktrack-rcnn_mask-rcnn_r50_fpn_8xb1-12e_youtubevis2019.py │ ├── masktrack-rcnn_mask-rcnn_r50_fpn_8xb1-12e_youtubevis2021.py │ ├── masktrack-rcnn_mask-rcnn_x101_fpn_8xb1-12e_youtubevis2019.py │ ├── masktrack-rcnn_mask-rcnn_x101_fpn_8xb1-12e_youtubevis2021.py │ └── metafile.yml ├── misc │ ├── d2_faster-rcnn_r50-caffe_fpn_ms-90k_coco.py │ ├── d2_mask-rcnn_r50-caffe_fpn_ms-90k_coco.py │ └── d2_retinanet_r50-caffe_fpn_ms-90k_coco.py ├── ms_rcnn │ ├── README.md │ ├── metafile.yml │ ├── ms-rcnn_r101-caffe_fpn_1x_coco.py │ ├── ms-rcnn_r101-caffe_fpn_2x_coco.py │ ├── ms-rcnn_r50-caffe_fpn_1x_coco.py │ ├── ms-rcnn_r50-caffe_fpn_2x_coco.py │ ├── ms-rcnn_r50_fpn_1x_coco.py │ ├── ms-rcnn_x101-32x4d_fpn_1x_coco.py │ ├── ms-rcnn_x101-64x4d_fpn_1x_coco.py │ └── ms-rcnn_x101-64x4d_fpn_2x_coco.py ├── nas_fcos │ ├── README.md │ ├── metafile.yml │ ├── nas-fcos_r50-caffe_fpn_fcoshead-gn-head_4xb4-1x_coco.py │ └── nas-fcos_r50-caffe_fpn_nashead-gn-head_4xb4-1x_coco.py ├── nas_fpn │ ├── README.md │ ├── metafile.yml │ ├── retinanet_r50_fpn_crop640-50e_coco.py │ └── retinanet_r50_nasfpn_crop640-50e_coco.py ├── objects365 │ ├── README.md │ ├── faster-rcnn_r50-syncbn_fpn_1350k_objects365v1.py │ ├── faster-rcnn_r50_fpn_16xb4-1x_objects365v1.py │ ├── faster-rcnn_r50_fpn_16xb4-1x_objects365v2.py │ ├── metafile.yml │ ├── retinanet_r50-syncbn_fpn_1350k_objects365v1.py │ ├── retinanet_r50_fpn_1x_objects365v1.py │ └── retinanet_r50_fpn_1x_objects365v2.py ├── ocsort │ ├── README.md │ ├── metafile.yml │ ├── ocsort_yolox_x_8xb4-amp-80e_crowdhuman-mot17halftrain_test-mot17halfval.py │ └── ocsort_yolox_x_8xb4-amp-80e_crowdhuman-mot20train_test-mot20test.py ├── openimages │ ├── README.md │ ├── faster-rcnn_r50_fpn_32xb2-1x_openimages-challenge.py │ ├── faster-rcnn_r50_fpn_32xb2-1x_openimages.py │ ├── faster-rcnn_r50_fpn_32xb2-cas-1x_openimages-challenge.py │ ├── faster-rcnn_r50_fpn_32xb2-cas-1x_openimages.py │ ├── metafile.yml │ ├── retinanet_r50_fpn_32xb2-1x_openimages.py │ └── ssd300_32xb8-36e_openimages.py ├── paa │ ├── README.md │ ├── metafile.yml │ ├── paa_r101_fpn_1x_coco.py │ ├── paa_r101_fpn_2x_coco.py │ ├── paa_r101_fpn_ms-3x_coco.py │ ├── paa_r50_fpn_1.5x_coco.py │ ├── paa_r50_fpn_1x_coco.py │ ├── paa_r50_fpn_2x_coco.py │ └── paa_r50_fpn_ms-3x_coco.py ├── pafpn │ ├── README.md │ ├── faster-rcnn_r50_pafpn_1x_coco.py │ └── metafile.yml ├── panoptic_fpn │ ├── README.md │ ├── metafile.yml │ ├── panoptic-fpn_r101_fpn_1x_coco.py │ ├── panoptic-fpn_r101_fpn_ms-3x_coco.py │ ├── panoptic-fpn_r50_fpn_1x_coco.py │ └── panoptic-fpn_r50_fpn_ms-3x_coco.py ├── pascal_voc │ ├── README.md │ ├── faster-rcnn_r50-caffe-c4_ms-18k_voc0712.py │ ├── faster-rcnn_r50_fpn_1x_voc0712-cocofmt.py │ ├── faster-rcnn_r50_fpn_1x_voc0712.py │ ├── retinanet_r50_fpn_1x_voc0712.py │ ├── ssd300_voc0712.py │ └── ssd512_voc0712.py ├── pisa │ ├── README.md │ ├── faster-rcnn_r50_fpn_pisa_1x_coco.py │ ├── faster-rcnn_x101-32x4d_fpn_pisa_1x_coco.py │ ├── mask-rcnn_r50_fpn_pisa_1x_coco.py │ ├── mask-rcnn_x101-32x4d_fpn_pisa_1x_coco.py │ ├── metafile.yml │ ├── retinanet-r50_fpn_pisa_1x_coco.py │ ├── retinanet_x101-32x4d_fpn_pisa_1x_coco.py │ ├── ssd300_pisa_coco.py │ └── ssd512_pisa_coco.py ├── point_rend │ ├── README.md │ ├── metafile.yml │ ├── point-rend_r50-caffe_fpn_ms-1x_coco.py │ └── point-rend_r50-caffe_fpn_ms-3x_coco.py ├── pvt │ ├── README.md │ ├── metafile.yml │ ├── retinanet_pvt-l_fpn_1x_coco.py │ ├── retinanet_pvt-m_fpn_1x_coco.py │ ├── retinanet_pvt-s_fpn_1x_coco.py │ ├── retinanet_pvt-t_fpn_1x_coco.py │ ├── retinanet_pvtv2-b0_fpn_1x_coco.py │ ├── retinanet_pvtv2-b1_fpn_1x_coco.py │ ├── retinanet_pvtv2-b2_fpn_1x_coco.py │ ├── retinanet_pvtv2-b3_fpn_1x_coco.py │ ├── retinanet_pvtv2-b4_fpn_1x_coco.py │ └── retinanet_pvtv2-b5_fpn_1x_coco.py ├── qdtrack │ ├── README.md │ ├── metafile.yml │ ├── qdtrack_faster-rcnn_r50_fpn_4e_base.py │ └── qdtrack_faster-rcnn_r50_fpn_8xb2-4e_mot17halftrain_test-mot17halfval.py ├── queryinst │ ├── README.md │ ├── metafile.yml │ ├── queryinst_r101_fpn_300-proposals_crop-ms-480-800-3x_coco.py │ ├── queryinst_r101_fpn_ms-480-800-3x_coco.py │ ├── queryinst_r50_fpn_1x_coco.py │ ├── queryinst_r50_fpn_300-proposals_crop-ms-480-800-3x_coco.py │ └── queryinst_r50_fpn_ms-480-800-3x_coco.py ├── regnet │ ├── README.md │ ├── cascade-mask-rcnn_regnetx-1.6GF_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_regnetx-3.2GF_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_regnetx-400MF_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_regnetx-4GF_fpn_ms-3x_coco.py │ ├── cascade-mask-rcnn_regnetx-800MF_fpn_ms-3x_coco.py │ ├── faster-rcnn_regnetx-1.6GF_fpn_ms-3x_coco.py │ ├── faster-rcnn_regnetx-3.2GF_fpn_1x_coco.py │ ├── faster-rcnn_regnetx-3.2GF_fpn_2x_coco.py │ ├── faster-rcnn_regnetx-3.2GF_fpn_ms-3x_coco.py │ ├── faster-rcnn_regnetx-400MF_fpn_ms-3x_coco.py │ ├── faster-rcnn_regnetx-4GF_fpn_ms-3x_coco.py │ ├── faster-rcnn_regnetx-800MF_fpn_ms-3x_coco.py │ ├── mask-rcnn_regnetx-1.6GF_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_regnetx-12GF_fpn_1x_coco.py │ ├── mask-rcnn_regnetx-3.2GF-mdconv-c3-c5_fpn_1x_coco.py │ ├── mask-rcnn_regnetx-3.2GF_fpn_1x_coco.py │ ├── mask-rcnn_regnetx-3.2GF_fpn_ms-3x_coco.py │ ├── mask-rcnn_regnetx-400MF_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_regnetx-4GF_fpn_1x_coco.py │ ├── mask-rcnn_regnetx-4GF_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_regnetx-6.4GF_fpn_1x_coco.py │ ├── mask-rcnn_regnetx-800MF_fpn_ms-poly-3x_coco.py │ ├── mask-rcnn_regnetx-8GF_fpn_1x_coco.py │ ├── metafile.yml │ ├── retinanet_regnetx-1.6GF_fpn_1x_coco.py │ ├── retinanet_regnetx-3.2GF_fpn_1x_coco.py │ └── retinanet_regnetx-800MF_fpn_1x_coco.py ├── reid │ ├── README.md │ ├── reid_r50_8xb32-6e_mot15train80_test-mot15val20.py │ ├── reid_r50_8xb32-6e_mot16train80_test-mot16val20.py │ ├── reid_r50_8xb32-6e_mot17train80_test-mot17val20.py │ └── reid_r50_8xb32-6e_mot20train80_test-mot20val20.py ├── reppoints │ ├── README.md │ ├── metafile.yml │ ├── reppoints-bbox_r50-center_fpn-gn_head-gn-grid_1x_coco.py │ ├── reppoints-bbox_r50_fpn-gn_head-gn-grid_1x_coco.py │ ├── reppoints-minmax_r50_fpn-gn_head-gn_1x_coco.py │ ├── reppoints-moment_r101-dconv-c3-c5_fpn-gn_head-gn_2x_coco.py │ ├── reppoints-moment_r101_fpn-gn_head-gn_2x_coco.py │ ├── reppoints-moment_r50_fpn-gn_head-gn_1x_coco.py │ ├── reppoints-moment_r50_fpn-gn_head-gn_2x_coco.py │ ├── reppoints-moment_r50_fpn_1x_coco.py │ ├── reppoints-moment_x101-dconv-c3-c5_fpn-gn_head-gn_2x_coco.py │ ├── reppoints-partial-minmax_r50_fpn-gn_head-gn_1x_coco.py │ └── reppoints.png ├── res2net │ ├── README.md │ ├── cascade-mask-rcnn_res2net-101_fpn_20e_coco.py │ ├── cascade-rcnn_res2net-101_fpn_20e_coco.py │ ├── faster-rcnn_res2net-101_fpn_2x_coco.py │ ├── htc_res2net-101_fpn_20e_coco.py │ ├── mask-rcnn_res2net-101_fpn_2x_coco.py │ └── metafile.yml ├── resnest │ ├── README.md │ ├── cascade-mask-rcnn_s101_fpn_syncbn-backbone+head_ms-1x_coco.py │ ├── cascade-mask-rcnn_s50_fpn_syncbn-backbone+head_ms-1x_coco.py │ ├── cascade-rcnn_s101_fpn_syncbn-backbone+head_ms-range-1x_coco.py │ ├── cascade-rcnn_s50_fpn_syncbn-backbone+head_ms-range-1x_coco.py │ ├── faster-rcnn_s101_fpn_syncbn-backbone+head_ms-range-1x_coco.py │ ├── faster-rcnn_s50_fpn_syncbn-backbone+head_ms-range-1x_coco.py │ ├── mask-rcnn_s101_fpn_syncbn-backbone+head_ms-1x_coco.py │ ├── mask-rcnn_s50_fpn_syncbn-backbone+head_ms-1x_coco.py │ └── metafile.yml ├── resnet_strikes_back │ ├── README.md │ ├── cascade-mask-rcnn_r50-rsb-pre_fpn_1x_coco.py │ ├── faster-rcnn_r50-rsb-pre_fpn_1x_coco.py │ ├── mask-rcnn_r50-rsb-pre_fpn_1x_coco.py │ ├── metafile.yml │ └── retinanet_r50-rsb-pre_fpn_1x_coco.py ├── retinanet │ ├── README.md │ ├── metafile.yml │ ├── retinanet_r101-caffe_fpn_1x_coco.py │ ├── retinanet_r101-caffe_fpn_ms-3x_coco.py │ ├── retinanet_r101_fpn_1x_coco.py │ ├── retinanet_r101_fpn_2x_coco.py │ ├── retinanet_r101_fpn_8xb8-amp-lsj-200e_coco.py │ ├── retinanet_r101_fpn_ms-640-800-3x_coco.py │ ├── retinanet_r18_fpn_1x_coco.py │ ├── retinanet_r18_fpn_1xb8-1x_coco.py │ ├── retinanet_r18_fpn_8xb8-amp-lsj-200e_coco.py │ ├── retinanet_r50-caffe_fpn_1x_coco.py │ ├── retinanet_r50-caffe_fpn_ms-1x_coco.py │ ├── retinanet_r50-caffe_fpn_ms-2x_coco.py │ ├── retinanet_r50-caffe_fpn_ms-3x_coco.py │ ├── retinanet_r50_fpn_1x_coco.py │ ├── retinanet_r50_fpn_2x_coco.py │ ├── retinanet_r50_fpn_8xb8-amp-lsj-200e_coco.py │ ├── retinanet_r50_fpn_90k_coco.py │ ├── retinanet_r50_fpn_amp-1x_coco.py │ ├── retinanet_r50_fpn_ms-640-800-3x_coco.py │ ├── retinanet_tta.py │ ├── retinanet_x101-32x4d_fpn_1x_coco.py │ ├── retinanet_x101-32x4d_fpn_2x_coco.py │ ├── retinanet_x101-64x4d_fpn_1x_coco.py │ ├── retinanet_x101-64x4d_fpn_2x_coco.py │ └── retinanet_x101-64x4d_fpn_ms-640-800-3x_coco.py ├── rpn │ ├── README.md │ ├── metafile.yml │ ├── rpn_r101-caffe_fpn_1x_coco.py │ ├── rpn_r101_fpn_1x_coco.py │ ├── rpn_r101_fpn_2x_coco.py │ ├── rpn_r50-caffe-c4_1x_coco.py │ ├── rpn_r50-caffe_fpn_1x_coco.py │ ├── rpn_r50_fpn_1x_coco.py │ ├── rpn_r50_fpn_2x_coco.py │ ├── rpn_x101-32x4d_fpn_1x_coco.py │ ├── rpn_x101-32x4d_fpn_2x_coco.py │ ├── rpn_x101-64x4d_fpn_1x_coco.py │ └── rpn_x101-64x4d_fpn_2x_coco.py ├── rtmdet │ ├── README.md │ ├── classification │ │ ├── README.md │ │ ├── cspnext-l_8xb256-rsb-a1-600e_in1k.py │ │ ├── cspnext-m_8xb256-rsb-a1-600e_in1k.py │ │ ├── cspnext-s_8xb256-rsb-a1-600e_in1k.py │ │ ├── cspnext-tiny_8xb256-rsb-a1-600e_in1k.py │ │ └── cspnext-x_8xb256-rsb-a1-600e_in1k.py │ ├── metafile.yml │ ├── rtmdet-ins_l_8xb32-300e_coco.py │ ├── rtmdet-ins_m_8xb32-300e_coco.py │ ├── rtmdet-ins_s_8xb32-300e_coco.py │ ├── rtmdet-ins_tiny_8xb32-300e_coco.py │ ├── rtmdet-ins_x_8xb16-300e_coco.py │ ├── rtmdet_l_8xb32-300e_coco.py │ ├── rtmdet_m_8xb32-300e_coco.py │ ├── rtmdet_s_8xb32-300e_coco.py │ ├── rtmdet_tiny_8xb32-300e_coco.py │ ├── rtmdet_tta.py │ ├── rtmdet_x_8xb32-300e_coco.py │ └── rtmdet_x_p6_4xb8-300e_coco.py ├── sabl │ ├── README.md │ ├── metafile.yml │ ├── sabl-cascade-rcnn_r101_fpn_1x_coco.py │ ├── sabl-cascade-rcnn_r50_fpn_1x_coco.py │ ├── sabl-faster-rcnn_r101_fpn_1x_coco.py │ ├── sabl-faster-rcnn_r50_fpn_1x_coco.py │ ├── sabl-retinanet_r101-gn_fpn_1x_coco.py │ ├── sabl-retinanet_r101-gn_fpn_ms-480-960-2x_coco.py │ ├── sabl-retinanet_r101-gn_fpn_ms-640-800-2x_coco.py │ ├── sabl-retinanet_r101_fpn_1x_coco.py │ ├── sabl-retinanet_r50-gn_fpn_1x_coco.py │ └── sabl-retinanet_r50_fpn_1x_coco.py ├── scnet │ ├── README.md │ ├── metafile.yml │ ├── scnet_r101_fpn_20e_coco.py │ ├── scnet_r50_fpn_1x_coco.py │ ├── scnet_r50_fpn_20e_coco.py │ ├── scnet_x101-64x4d_fpn_20e_coco.py │ └── scnet_x101-64x4d_fpn_8xb1-20e_coco.py ├── scratch │ ├── README.md │ ├── faster-rcnn_r50-scratch_fpn_gn-all_6x_coco.py │ ├── mask-rcnn_r50-scratch_fpn_gn-all_6x_coco.py │ └── metafile.yml ├── seesaw_loss │ ├── README.md │ ├── cascade-mask-rcnn_r101_fpn_seesaw-loss-normed-mask_random-ms-2x_lvis-v1.py │ ├── cascade-mask-rcnn_r101_fpn_seesaw-loss-normed-mask_sample1e-3-ms-2x_lvis-v1.py │ ├── cascade-mask-rcnn_r101_fpn_seesaw-loss_random-ms-2x_lvis-v1.py │ ├── cascade-mask-rcnn_r101_fpn_seesaw-loss_sample1e-3-ms-2x_lvis-v1.py │ ├── mask-rcnn_r101_fpn_seesaw-loss-normed-mask_random-ms-2x_lvis-v1.py │ ├── mask-rcnn_r101_fpn_seesaw-loss-normed-mask_sample1e-3-ms-2x_lvis-v1.py │ ├── mask-rcnn_r101_fpn_seesaw-loss_random-ms-2x_lvis-v1.py │ ├── mask-rcnn_r101_fpn_seesaw-loss_sample1e-3-ms-2x_lvis-v1.py │ ├── mask-rcnn_r50_fpn_seesaw-loss-normed-mask_random-ms-2x_lvis-v1.py │ ├── mask-rcnn_r50_fpn_seesaw-loss-normed-mask_sample1e-3-ms-2x_lvis-v1.py │ ├── mask-rcnn_r50_fpn_seesaw-loss_random-ms-2x_lvis-v1.py │ ├── mask-rcnn_r50_fpn_seesaw-loss_sample1e-3-ms-2x_lvis-v1.py │ └── metafile.yml ├── selfsup_pretrain │ ├── README.md │ ├── mask-rcnn_r50-mocov2-pre_fpn_1x_coco.py │ ├── mask-rcnn_r50-mocov2-pre_fpn_ms-2x_coco.py │ ├── mask-rcnn_r50-swav-pre_fpn_1x_coco.py │ └── mask-rcnn_r50-swav-pre_fpn_ms-2x_coco.py ├── simple_copy_paste │ ├── README.md │ ├── mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_32xb2-ssj-270k_coco.py │ ├── mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_32xb2-ssj-90k_coco.py │ ├── mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_32xb2-ssj-scp-270k_coco.py │ ├── mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_32xb2-ssj-scp-90k_coco.py │ └── metafile.yml ├── soft_teacher │ ├── README.md │ ├── metafile.yml │ ├── soft-teacher_faster-rcnn_r50-caffe_fpn_180k_semi-0.01-coco.py │ ├── soft-teacher_faster-rcnn_r50-caffe_fpn_180k_semi-0.02-coco.py │ ├── soft-teacher_faster-rcnn_r50-caffe_fpn_180k_semi-0.05-coco.py │ └── soft-teacher_faster-rcnn_r50-caffe_fpn_180k_semi-0.1-coco.py ├── solo │ ├── README.md │ ├── decoupled-solo-light_r50_fpn_3x_coco.py │ ├── decoupled-solo_r50_fpn_1x_coco.py │ ├── decoupled-solo_r50_fpn_3x_coco.py │ ├── metafile.yml │ ├── solo_r101_fpn_8xb8-lsj-200e_coco.py │ ├── solo_r18_fpn_8xb8-lsj-200e_coco.py │ ├── solo_r50_fpn_1x_coco.py │ ├── solo_r50_fpn_3x_coco.py │ └── solo_r50_fpn_8xb8-lsj-200e_coco.py ├── solov2 │ ├── README.md │ ├── metafile.yml │ ├── solov2-light_r18_fpn_ms-3x_coco.py │ ├── solov2-light_r34_fpn_ms-3x_coco.py │ ├── solov2-light_r50-dcn_fpn_ms-3x_coco.py │ ├── solov2-light_r50_fpn_ms-3x_coco.py │ ├── solov2_r101-dcn_fpn_ms-3x_coco.py │ ├── solov2_r101_fpn_ms-3x_coco.py │ ├── solov2_r50_fpn_1x_coco.py │ ├── solov2_r50_fpn_ms-3x_coco.py │ └── solov2_x101-dcn_fpn_ms-3x_coco.py ├── sort │ ├── README.md │ ├── faster-rcnn_r50_fpn_8xb2-4e_mot17halftrain_test-mot17halfval.py │ ├── faster-rcnn_r50_fpn_8xb2-4e_mot17train_test-mot17train.py │ ├── faster-rcnn_r50_fpn_8xb2-8e_mot20halftrain_test-mot20halfval.py │ ├── faster-rcnn_r50_fpn_8xb2-8e_mot20train_test-mot20train.py │ ├── metafile.yml │ ├── sort_faster-rcnn_r50_fpn_8xb2-4e_mot17halftrain_test-mot17halfval.py │ └── sort_faster-rcnn_r50_fpn_8xb2-4e_mot17train_test-mot17test.py ├── sparse_rcnn │ ├── README.md │ ├── metafile.yml │ ├── sparse-rcnn_r101_fpn_300-proposals_crop-ms-480-800-3x_coco.py │ ├── sparse-rcnn_r101_fpn_ms-480-800-3x_coco.py │ ├── sparse-rcnn_r50_fpn_1x_coco.py │ ├── sparse-rcnn_r50_fpn_300-proposals_crop-ms-480-800-3x_coco.py │ └── sparse-rcnn_r50_fpn_ms-480-800-3x_coco.py ├── ssd │ ├── README.md │ ├── metafile.yml │ ├── ssd300_coco.py │ ├── ssd512_coco.py │ └── ssdlite_mobilenetv2-scratch_8xb24-600e_coco.py ├── strong_baselines │ ├── README.md │ ├── mask-rcnn_r50-caffe_fpn_rpn-2conv_4conv1fc_syncbn-all_amp-lsj-100e_coco.py │ ├── mask-rcnn_r50-caffe_fpn_rpn-2conv_4conv1fc_syncbn-all_lsj-100e_coco.py │ ├── mask-rcnn_r50-caffe_fpn_rpn-2conv_4conv1fc_syncbn-all_lsj-400e_coco.py │ ├── mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_amp-lsj-100e_coco.py │ ├── mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_lsj-100e_coco.py │ ├── mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_lsj-50e_coco.py │ └── metafile.yml ├── strongsort │ ├── README.md │ ├── metafile.yml │ ├── strongsort_yolox_x_8xb4-80e_crowdhuman-mot17halftrain_test-mot17halfval.py │ ├── strongsort_yolox_x_8xb4-80e_crowdhuman-mot20train_test-mot20test.py │ ├── yolox_x_8xb4-80e_crowdhuman-mot17halftrain_test-mot17halfval.py │ └── yolox_x_8xb4-80e_crowdhuman-mot20train_test-mot20test.py ├── swin │ ├── README.md │ ├── mask-rcnn_swin-s-p4-w7_fpn_amp-ms-crop-3x_coco.py │ ├── mask-rcnn_swin-t-p4-w7_fpn_1x_coco.py │ ├── mask-rcnn_swin-t-p4-w7_fpn_amp-ms-crop-3x_coco.py │ ├── mask-rcnn_swin-t-p4-w7_fpn_ms-crop-3x_coco.py │ ├── metafile.yml │ └── retinanet_swin-t-p4-w7_fpn_1x_coco.py ├── timm_example │ ├── README.md │ ├── retinanet_timm-efficientnet-b1_fpn_1x_coco.py │ └── retinanet_timm-tv-resnet50_fpn_1x_coco.py ├── tood │ ├── README.md │ ├── metafile.yml │ ├── tood_r101-dconv-c3-c5_fpn_ms-2x_coco.py │ ├── tood_r101_fpn_ms-2x_coco.py │ ├── tood_r50_fpn_1x_coco.py │ ├── tood_r50_fpn_anchor-based_1x_coco.py │ ├── tood_r50_fpn_ms-2x_coco.py │ ├── tood_x101-64x4d-dconv-c4-c5_fpn_ms-2x_coco.py │ └── tood_x101-64x4d_fpn_ms-2x_coco.py ├── tridentnet │ ├── README.md │ ├── metafile.yml │ ├── tridentnet_r50-caffe_1x_coco.py │ ├── tridentnet_r50-caffe_ms-1x_coco.py │ └── tridentnet_r50-caffe_ms-3x_coco.py ├── v3det │ ├── README.md │ ├── cascade_rcnn_r50_fpn_8x4_sample1e-3_mstrain_v3det_2x.py │ ├── cascade_rcnn_swinb_fpn_8x4_sample1e-3_mstrain_v3det_2x.py │ ├── category_name_13204_v3det_2023_v1.txt │ ├── deformable-detr-refine-twostage_r50_8xb4_sample1e-3_v3det_50e.py │ ├── deformable-detr-refine-twostage_swin_16xb2_sample1e-3_v3det_50e.py │ ├── dino-4scale_r50_8xb2_sample1e-3_v3det_36e.py │ ├── dino-4scale_swin_16xb1_sample1e-3_v3det_36e.py │ ├── faster_rcnn_r50_fpn_8x4_sample1e-3_mstrain_v3det_2x.py │ ├── faster_rcnn_swinb_fpn_8x4_sample1e-3_mstrain_v3det_2x.py │ ├── fcos_r50_fpn_8x4_sample1e-3_mstrain_v3det_2x.py │ ├── fcos_swinb_fpn_8x4_sample1e-3_mstrain_v3det_2x.py │ └── v3det_icon.jpg ├── vfnet │ ├── README.md │ ├── metafile.yml │ ├── vfnet_r101-mdconv-c3-c5_fpn_ms-2x_coco.py │ ├── vfnet_r101_fpn_1x_coco.py │ ├── vfnet_r101_fpn_2x_coco.py │ ├── vfnet_r101_fpn_ms-2x_coco.py │ ├── vfnet_r50-mdconv-c3-c5_fpn_ms-2x_coco.py │ ├── vfnet_r50_fpn_1x_coco.py │ ├── vfnet_r50_fpn_ms-2x_coco.py │ ├── vfnet_res2net-101_fpn_ms-2x_coco.py │ ├── vfnet_res2net101-mdconv-c3-c5_fpn_ms-2x_coco.py │ ├── vfnet_x101-32x4d-mdconv-c3-c5_fpn_ms-2x_coco.py │ ├── vfnet_x101-32x4d_fpn_ms-2x_coco.py │ ├── vfnet_x101-64x4d-mdconv-c3-c5_fpn_ms-2x_coco.py │ └── vfnet_x101-64x4d_fpn_ms-2x_coco.py ├── wider_face │ ├── README.md │ ├── retinanet_r50_fpn_1x_widerface.py │ └── ssd300_8xb32-24e_widerface.py ├── yolact │ ├── README.md │ ├── metafile.yml │ ├── yolact_r101_1xb8-55e_coco.py │ ├── yolact_r50_1xb8-55e_coco.py │ └── yolact_r50_8xb8-55e_coco.py ├── yolo │ ├── README.md │ ├── metafile.yml │ ├── yolov3_d53_8xb8-320-273e_coco.py │ ├── yolov3_d53_8xb8-amp-ms-608-273e_coco.py │ ├── yolov3_d53_8xb8-ms-416-273e_coco.py │ ├── yolov3_d53_8xb8-ms-608-273e_coco.py │ ├── yolov3_mobilenetv2_8xb24-320-300e_coco.py │ └── yolov3_mobilenetv2_8xb24-ms-416-300e_coco.py ├── yolof │ ├── README.md │ ├── metafile.yml │ ├── yolof_r50-c5_8xb8-1x_coco.py │ └── yolof_r50-c5_8xb8-iter-1x_coco.py └── yolox │ ├── README.md │ ├── metafile.yml │ ├── yolox_l_8xb8-300e_coco.py │ ├── yolox_m_8xb8-300e_coco.py │ ├── yolox_nano_8xb8-300e_coco.py │ ├── yolox_s_8xb8-300e_coco.py │ ├── yolox_tiny_8xb8-300e_coco.py │ ├── yolox_tta.py │ └── yolox_x_8xb8-300e_coco.py ├── dataset-index.yml ├── demo ├── MMDet_InstanceSeg_Tutorial.ipynb ├── MMDet_Tutorial.ipynb ├── create_result_gif.py ├── demo.jpg ├── demo.mp4 ├── demo_mot.mp4 ├── demo_multi_model.py ├── image_demo.py ├── inference_demo.ipynb ├── large_image.jpg ├── large_image_demo.py ├── mot_demo.py ├── video_demo.py ├── video_gpuaccel_demo.py └── webcam_demo.py ├── docker ├── Dockerfile ├── serve │ ├── Dockerfile │ ├── config.properties │ └── entrypoint.sh └── serve_cn │ └── Dockerfile ├── docs ├── en │ ├── Makefile │ ├── _static │ │ ├── css │ │ │ └── readthedocs.css │ │ └── image │ │ │ └── mmdet-logo.png │ ├── advanced_guides │ │ ├── conventions.md │ │ ├── customize_dataset.md │ │ ├── customize_losses.md │ │ ├── customize_models.md │ │ ├── customize_runtime.md │ │ ├── customize_transforms.md │ │ ├── data_flow.md │ │ ├── datasets.md │ │ ├── engine.md │ │ ├── evaluation.md │ │ ├── how_to.md │ │ ├── index.rst │ │ ├── models.md │ │ ├── structures.md │ │ └── transforms.md │ ├── api.rst │ ├── conf.py │ ├── dataset_zoo.md │ ├── get_started.md │ ├── index.rst │ ├── make.bat │ ├── migration.md │ ├── migration │ │ ├── api_and_registry_migration.md │ │ ├── config_migration.md │ │ ├── dataset_migration.md │ │ ├── migration.md │ │ ├── migration_faq.md │ │ └── model_migration.md │ ├── model_zoo.md │ ├── notes │ │ ├── changelog.md │ │ ├── changelog_v2.x.md │ │ ├── compatibility.md │ │ ├── contribution_guide.md │ │ ├── faq.md │ │ └── projects.md │ ├── overview.md │ ├── stat.py │ ├── switch_language.md │ └── user_guides │ │ ├── config.md │ │ ├── dataset_prepare.md │ │ ├── deploy.md │ │ ├── finetune.md │ │ ├── index.rst │ │ ├── inference.md │ │ ├── init_cfg.md │ │ ├── label_studio.md │ │ ├── new_model.md │ │ ├── robustness_benchmarking.md │ │ ├── semi_det.md │ │ ├── single_stage_as_rpn.md │ │ ├── test.md │ │ ├── test_results_submission.md │ │ ├── tracking_analysis_tools.md │ │ ├── tracking_config.md │ │ ├── tracking_dataset_prepare.md │ │ ├── tracking_inference.md │ │ ├── tracking_train_test.md │ │ ├── tracking_visualization.md │ │ ├── train.md │ │ ├── useful_hooks.md │ │ ├── useful_tools.md │ │ └── visualization.md └── zh_cn │ ├── Makefile │ ├── _static │ ├── css │ │ └── readthedocs.css │ └── image │ │ └── mmdet-logo.png │ ├── advanced_guides │ ├── conventions.md │ ├── customize_dataset.md │ ├── customize_losses.md │ ├── customize_models.md │ ├── customize_runtime.md │ ├── customize_transforms.md │ ├── data_flow.md │ ├── datasets.md │ ├── engine.md │ ├── evaluation.md │ ├── how_to.md │ ├── index.rst │ ├── models.md │ ├── structures.md │ └── transforms.md │ ├── api.rst │ ├── article.md │ ├── conf.py │ ├── get_started.md │ ├── index.rst │ ├── make.bat │ ├── migration │ ├── api_and_registry_migration.md │ ├── config_migration.md │ ├── dataset_migration.md │ ├── migration.md │ ├── migration_faq.md │ └── model_migration.md │ ├── model_zoo.md │ ├── notes │ ├── compatibility.md │ ├── faq.md │ └── projects.md │ ├── overview.md │ ├── stat.py │ ├── switch_language.md │ └── user_guides │ ├── config.md │ ├── dataset_prepare.md │ ├── deploy.md │ ├── finetune.md │ ├── index.rst │ ├── inference.md │ ├── init_cfg.md │ ├── label_studio.md │ ├── new_model.md │ ├── robustness_benchmarking.md │ ├── semi_det.md │ ├── single_stage_as_rpn.md │ ├── test.md │ ├── test_results_submission.md │ ├── tracking_analysis_tools.md │ ├── tracking_config.md │ ├── tracking_dataset_prepare.md │ ├── tracking_interference.md │ ├── tracking_train_test_zh_cn.md │ ├── tracking_visualization.md │ ├── train.md │ ├── useful_hooks.md │ ├── useful_tools.md │ └── visualization.md ├── mmdet ├── __init__.py ├── apis │ ├── __init__.py │ ├── det_inferencer.py │ └── inference.py ├── configs │ ├── _base_ │ │ ├── datasets │ │ │ ├── coco_detection.py │ │ │ ├── coco_instance.py │ │ │ ├── coco_instance_semantic.py │ │ │ ├── coco_panoptic.py │ │ │ └── mot_challenge.py │ │ ├── default_runtime.py │ │ ├── models │ │ │ ├── cascade_mask_rcnn_r50_fpn.py │ │ │ ├── cascade_rcnn_r50_fpn.py │ │ │ ├── faster_rcnn_r50_fpn.py │ │ │ ├── mask_rcnn_r50_caffe_c4.py │ │ │ ├── mask_rcnn_r50_fpn.py │ │ │ └── retinanet_r50_fpn.py │ │ └── schedules │ │ │ ├── schedule_1x.py │ │ │ └── schedule_2x.py │ ├── cascade_rcnn │ │ ├── cascade_mask_rcnn_r50_fpn_1x_coco.py │ │ └── cascade_rcnn_r50_fpn_1x_coco.py │ ├── common │ │ ├── lsj_100e_coco_detection.py │ │ ├── lsj_100e_coco_instance.py │ │ ├── lsj_200e_coco_detection.py │ │ ├── lsj_200e_coco_instance.py │ │ ├── ms_3x_coco.py │ │ ├── ms_3x_coco_instance.py │ │ ├── ms_90k_coco.py │ │ ├── ms_poly_3x_coco_instance.py │ │ ├── ms_poly_90k_coco_instance.py │ │ ├── ssj_270_coco_instance.py │ │ └── ssj_scp_270k_coco_instance.py │ ├── deformable_detr │ │ ├── deformable_detr_r50_16xb2_50e_coco.py │ │ ├── deformable_detr_refine_r50_16xb2_50e_coco.py │ │ └── deformable_detr_refine_twostage_r50_16xb2_50e_coco.py │ ├── detr │ │ ├── detr_r101_8xb2_500e_coco.py │ │ ├── detr_r18_8xb2_500e_coco.py │ │ ├── detr_r50_8xb2_150e_coco.py │ │ └── detr_r50_8xb2_500e_coco.py │ ├── dino │ │ ├── dino_4scale_r50_8xb2_12e_coco.py │ │ ├── dino_4scale_r50_8xb2_24e_coco.py │ │ ├── dino_4scale_r50_8xb2_36e_coco.py │ │ ├── dino_4scale_r50_improved_8xb2_12e_coco.py │ │ ├── dino_5scale_swin_l_8xb2_12e_coco.py │ │ └── dino_5scale_swin_l_8xb2_36e_coco.py │ ├── faster_rcnn │ │ └── faster_rcnn_r50_fpn_1x_coco.py │ ├── mask_rcnn │ │ ├── mask_rcnn_r101_caffe_fpn_1x_coco.py │ │ ├── mask_rcnn_r101_caffe_fpn_ms_poly_3x_coco.py │ │ ├── mask_rcnn_r101_fpn_1x_coco.py │ │ ├── mask_rcnn_r101_fpn_2x_coco.py │ │ ├── mask_rcnn_r101_fpn_8xb8_amp_lsj_200e_coco.py │ │ ├── mask_rcnn_r101_fpn_ms_poly_3x_coco.py │ │ ├── mask_rcnn_r18_fpn_8xb8_amp_lsj_200e_coco.py │ │ ├── mask_rcnn_r50_caffe_c4_1x_coco.py │ │ ├── mask_rcnn_r50_caffe_fpn_1x_coco.py │ │ ├── mask_rcnn_r50_caffe_fpn_ms_1x_coco.py │ │ ├── mask_rcnn_r50_caffe_fpn_ms_poly_1x_coco.py │ │ ├── mask_rcnn_r50_caffe_fpn_ms_poly_2x_coco.py │ │ ├── mask_rcnn_r50_caffe_fpn_ms_poly_3x_coco.py │ │ ├── mask_rcnn_r50_caffe_fpn_poly_1x_coco_v1.py │ │ ├── mask_rcnn_r50_fpn_1x_coco.py │ │ ├── mask_rcnn_r50_fpn_1x_wandb_coco.py │ │ ├── mask_rcnn_r50_fpn_2x_coco.py │ │ ├── mask_rcnn_r50_fpn_8xb8_amp_lsj_200e_coco.py │ │ ├── mask_rcnn_r50_fpn_amp_1x_coco.py │ │ ├── mask_rcnn_r50_fpn_ms_poly_-3x_coco.py │ │ ├── mask_rcnn_r50_fpn_poly_1x_coco.py │ │ ├── mask_rcnn_x101_32x4d_fpn_1x_coco.py │ │ ├── mask_rcnn_x101_32x4d_fpn_2x_coco.py │ │ ├── mask_rcnn_x101_32x4d_fpn_ms_poly_3x_coco.py │ │ ├── mask_rcnn_x101_32x8d_fpn_1x_coco.py │ │ ├── mask_rcnn_x101_32x8d_fpn_ms_poly_1x_coco.py │ │ ├── mask_rcnn_x101_32x8d_fpn_ms_poly_3x_coco.py │ │ ├── mask_rcnn_x101_64_4d_fpn_1x_coco.py │ │ ├── mask_rcnn_x101_64x4d_fpn_2x_coco.py │ │ └── mask_rcnn_x101_64x4d_fpn_ms_poly_3x_coco.py │ ├── maskformer │ │ ├── maskformer_r50_ms_16xb1_75e_coco.py │ │ └── maskformer_swin_l_p4_w12_64xb1_ms_300e_coco.py │ ├── panoptic_fpn │ │ └── panoptic_fpn_r50_fpn_1x_coco.py │ ├── qdtrack │ │ ├── qdtrack_faster_rcnn_r50_fpn_4e_base.py │ │ └── qdtrack_faster_rcnn_r50_fpn_8xb2-4e_mot17halftrain_test-mot17halfval.py │ ├── retinanet │ │ ├── retinanet_r50_fpn_1x_coco.py │ │ └── retinanet_tta.py │ └── rtmdet │ │ ├── rtmdet_ins_l_8xb32_300e_coco.py │ │ ├── rtmdet_ins_m_8xb32_300e_coco.py │ │ ├── rtmdet_ins_s_8xb32_300e_coco.py │ │ ├── rtmdet_ins_tiny_8xb32_300e_coco.py │ │ ├── rtmdet_ins_x_8xb16_300e_coco.py │ │ ├── rtmdet_l_8xb32_300e_coco.py │ │ ├── rtmdet_m_8xb32_300e_coco.py │ │ ├── rtmdet_s_8xb32_300e_coco.py │ │ ├── rtmdet_tiny_8xb32_300e_coco.py │ │ ├── rtmdet_tta.py │ │ └── rtmdet_x_8xb32_300e_coco.py ├── datasets │ ├── __init__.py │ ├── ade20k.py │ ├── api_wrappers │ │ ├── __init__.py │ │ ├── coco_api.py │ │ └── cocoeval_mp.py │ ├── base_det_dataset.py │ ├── base_semseg_dataset.py │ ├── base_video_dataset.py │ ├── cityscapes.py │ ├── coco.py │ ├── coco_caption.py │ ├── coco_panoptic.py │ ├── coco_semantic.py │ ├── crowdhuman.py │ ├── dataset_wrappers.py │ ├── deepfashion.py │ ├── dsdl.py │ ├── isaid.py │ ├── lvis.py │ ├── mot_challenge_dataset.py │ ├── objects365.py │ ├── openimages.py │ ├── refcoco.py │ ├── reid_dataset.py │ ├── samplers │ │ ├── __init__.py │ │ ├── batch_sampler.py │ │ ├── class_aware_sampler.py │ │ ├── multi_data_sampler.py │ │ ├── multi_source_sampler.py │ │ └── track_img_sampler.py │ ├── transforms │ │ ├── __init__.py │ │ ├── augment_wrappers.py │ │ ├── colorspace.py │ │ ├── formatting.py │ │ ├── frame_sampling.py │ │ ├── geometric.py │ │ ├── instaboost.py │ │ ├── loading.py │ │ ├── transformers_glip.py │ │ ├── transforms.py │ │ └── wrappers.py │ ├── utils.py │ ├── v3det.py │ ├── voc.py │ ├── wider_face.py │ ├── xml_style.py │ └── youtube_vis_dataset.py ├── engine │ ├── __init__.py │ ├── hooks │ │ ├── __init__.py │ │ ├── checkloss_hook.py │ │ ├── mean_teacher_hook.py │ │ ├── memory_profiler_hook.py │ │ ├── num_class_check_hook.py │ │ ├── pipeline_switch_hook.py │ │ ├── set_epoch_info_hook.py │ │ ├── sync_norm_hook.py │ │ ├── utils.py │ │ ├── visualization_hook.py │ │ └── yolox_mode_switch_hook.py │ ├── optimizers │ │ ├── __init__.py │ │ └── layer_decay_optimizer_constructor.py │ ├── runner │ │ ├── __init__.py │ │ └── loops.py │ └── schedulers │ │ ├── __init__.py │ │ └── quadratic_warmup.py ├── evaluation │ ├── __init__.py │ ├── functional │ │ ├── __init__.py │ │ ├── bbox_overlaps.py │ │ ├── cityscapes_utils.py │ │ ├── class_names.py │ │ ├── mean_ap.py │ │ ├── panoptic_utils.py │ │ ├── recall.py │ │ ├── ytvis.py │ │ └── ytviseval.py │ └── metrics │ │ ├── __init__.py │ │ ├── base_video_metric.py │ │ ├── cityscapes_metric.py │ │ ├── coco_caption_metric.py │ │ ├── coco_metric.py │ │ ├── coco_occluded_metric.py │ │ ├── coco_panoptic_metric.py │ │ ├── coco_video_metric.py │ │ ├── crowdhuman_metric.py │ │ ├── dump_det_results.py │ │ ├── dump_proposals_metric.py │ │ ├── lvis_metric.py │ │ ├── mot_challenge_metric.py │ │ ├── openimages_metric.py │ │ ├── refseg_metric.py │ │ ├── reid_metric.py │ │ ├── semseg_metric.py │ │ ├── voc_metric.py │ │ └── youtube_vis_metric.py ├── models │ ├── __init__.py │ ├── backbones │ │ ├── __init__.py │ │ ├── csp_darknet.py │ │ ├── cspnext.py │ │ ├── darknet.py │ │ ├── detectors_resnet.py │ │ ├── detectors_resnext.py │ │ ├── efficientnet.py │ │ ├── hourglass.py │ │ ├── hrnet.py │ │ ├── mobilenet_v2.py │ │ ├── pvt.py │ │ ├── regnet.py │ │ ├── res2net.py │ │ ├── resnest.py │ │ ├── resnet.py │ │ ├── resnext.py │ │ ├── ssd_vgg.py │ │ ├── swin.py │ │ └── trident_resnet.py │ ├── data_preprocessors │ │ ├── __init__.py │ │ ├── data_preprocessor.py │ │ ├── reid_data_preprocessor.py │ │ └── track_data_preprocessor.py │ ├── dense_heads │ │ ├── __init__.py │ │ ├── anchor_free_head.py │ │ ├── anchor_head.py │ │ ├── atss_head.py │ │ ├── atss_vlfusion_head.py │ │ ├── autoassign_head.py │ │ ├── base_dense_head.py │ │ ├── base_mask_head.py │ │ ├── boxinst_head.py │ │ ├── cascade_rpn_head.py │ │ ├── centernet_head.py │ │ ├── centernet_update_head.py │ │ ├── centripetal_head.py │ │ ├── condinst_head.py │ │ ├── conditional_detr_head.py │ │ ├── corner_head.py │ │ ├── dab_detr_head.py │ │ ├── ddod_head.py │ │ ├── ddq_detr_head.py │ │ ├── deformable_detr_head.py │ │ ├── dense_test_mixins.py │ │ ├── detr_head.py │ │ ├── dino_head.py │ │ ├── embedding_rpn_head.py │ │ ├── fcos_head.py │ │ ├── fovea_head.py │ │ ├── free_anchor_retina_head.py │ │ ├── fsaf_head.py │ │ ├── ga_retina_head.py │ │ ├── ga_rpn_head.py │ │ ├── gfl_head.py │ │ ├── grounding_dino_head.py │ │ ├── guided_anchor_head.py │ │ ├── lad_head.py │ │ ├── ld_head.py │ │ ├── mask2former_head.py │ │ ├── maskformer_head.py │ │ ├── nasfcos_head.py │ │ ├── paa_head.py │ │ ├── pisa_retinanet_head.py │ │ ├── pisa_ssd_head.py │ │ ├── reppoints_head.py │ │ ├── retina_head.py │ │ ├── retina_sepbn_head.py │ │ ├── rpn_head.py │ │ ├── rtmdet_head.py │ │ ├── rtmdet_ins_head.py │ │ ├── sabl_retina_head.py │ │ ├── solo_head.py │ │ ├── solov2_head.py │ │ ├── ssd_head.py │ │ ├── tood_head.py │ │ ├── vfnet_head.py │ │ ├── yolact_head.py │ │ ├── yolo_head.py │ │ ├── yolof_head.py │ │ └── yolox_head.py │ ├── detectors │ │ ├── __init__.py │ │ ├── atss.py │ │ ├── autoassign.py │ │ ├── base.py │ │ ├── base_detr.py │ │ ├── boxinst.py │ │ ├── cascade_rcnn.py │ │ ├── centernet.py │ │ ├── condinst.py │ │ ├── conditional_detr.py │ │ ├── cornernet.py │ │ ├── crowddet.py │ │ ├── d2_wrapper.py │ │ ├── dab_detr.py │ │ ├── ddod.py │ │ ├── ddq_detr.py │ │ ├── deformable_detr.py │ │ ├── detr.py │ │ ├── dino.py │ │ ├── fast_rcnn.py │ │ ├── faster_rcnn.py │ │ ├── fcos.py │ │ ├── fovea.py │ │ ├── fsaf.py │ │ ├── gfl.py │ │ ├── glip.py │ │ ├── grid_rcnn.py │ │ ├── grounding_dino.py │ │ ├── htc.py │ │ ├── kd_one_stage.py │ │ ├── lad.py │ │ ├── mask2former.py │ │ ├── mask_rcnn.py │ │ ├── mask_scoring_rcnn.py │ │ ├── maskformer.py │ │ ├── nasfcos.py │ │ ├── paa.py │ │ ├── panoptic_fpn.py │ │ ├── panoptic_two_stage_segmentor.py │ │ ├── point_rend.py │ │ ├── queryinst.py │ │ ├── reppoints_detector.py │ │ ├── retinanet.py │ │ ├── rpn.py │ │ ├── rtmdet.py │ │ ├── scnet.py │ │ ├── semi_base.py │ │ ├── single_stage.py │ │ ├── single_stage_instance_seg.py │ │ ├── soft_teacher.py │ │ ├── solo.py │ │ ├── solov2.py │ │ ├── sparse_rcnn.py │ │ ├── tood.py │ │ ├── trident_faster_rcnn.py │ │ ├── two_stage.py │ │ ├── vfnet.py │ │ ├── yolact.py │ │ ├── yolo.py │ │ ├── yolof.py │ │ └── yolox.py │ ├── language_models │ │ ├── __init__.py │ │ └── bert.py │ ├── layers │ │ ├── __init__.py │ │ ├── activations.py │ │ ├── bbox_nms.py │ │ ├── brick_wrappers.py │ │ ├── conv_upsample.py │ │ ├── csp_layer.py │ │ ├── dropblock.py │ │ ├── ema.py │ │ ├── inverted_residual.py │ │ ├── matrix_nms.py │ │ ├── msdeformattn_pixel_decoder.py │ │ ├── normed_predictor.py │ │ ├── pixel_decoder.py │ │ ├── positional_encoding.py │ │ ├── res_layer.py │ │ ├── se_layer.py │ │ └── transformer │ │ │ ├── __init__.py │ │ │ ├── conditional_detr_layers.py │ │ │ ├── dab_detr_layers.py │ │ │ ├── ddq_detr_layers.py │ │ │ ├── deformable_detr_layers.py │ │ │ ├── detr_layers.py │ │ │ ├── dino_layers.py │ │ │ ├── grounding_dino_layers.py │ │ │ ├── mask2former_layers.py │ │ │ └── utils.py │ ├── losses │ │ ├── __init__.py │ │ ├── accuracy.py │ │ ├── ae_loss.py │ │ ├── balanced_l1_loss.py │ │ ├── cross_entropy_loss.py │ │ ├── ddq_detr_aux_loss.py │ │ ├── dice_loss.py │ │ ├── eqlv2_loss.py │ │ ├── focal_loss.py │ │ ├── gaussian_focal_loss.py │ │ ├── gfocal_loss.py │ │ ├── ghm_loss.py │ │ ├── iou_loss.py │ │ ├── kd_loss.py │ │ ├── l2_loss.py │ │ ├── margin_loss.py │ │ ├── mse_loss.py │ │ ├── multipos_cross_entropy_loss.py │ │ ├── pisa_loss.py │ │ ├── seesaw_loss.py │ │ ├── smooth_l1_loss.py │ │ ├── triplet_loss.py │ │ ├── utils.py │ │ └── varifocal_loss.py │ ├── mot │ │ ├── __init__.py │ │ ├── base.py │ │ ├── bytetrack.py │ │ ├── deep_sort.py │ │ ├── ocsort.py │ │ ├── qdtrack.py │ │ └── strongsort.py │ ├── necks │ │ ├── __init__.py │ │ ├── bfp.py │ │ ├── channel_mapper.py │ │ ├── cspnext_pafpn.py │ │ ├── ct_resnet_neck.py │ │ ├── dilated_encoder.py │ │ ├── dyhead.py │ │ ├── fpg.py │ │ ├── fpn.py │ │ ├── fpn_carafe.py │ │ ├── fpn_dropblock.py │ │ ├── hrfpn.py │ │ ├── nas_fpn.py │ │ ├── nasfcos_fpn.py │ │ ├── pafpn.py │ │ ├── rfp.py │ │ ├── ssd_neck.py │ │ ├── ssh.py │ │ ├── yolo_neck.py │ │ └── yolox_pafpn.py │ ├── reid │ │ ├── __init__.py │ │ ├── base_reid.py │ │ ├── fc_module.py │ │ ├── gap.py │ │ └── linear_reid_head.py │ ├── roi_heads │ │ ├── __init__.py │ │ ├── base_roi_head.py │ │ ├── bbox_heads │ │ │ ├── __init__.py │ │ │ ├── bbox_head.py │ │ │ ├── convfc_bbox_head.py │ │ │ ├── dii_head.py │ │ │ ├── double_bbox_head.py │ │ │ ├── multi_instance_bbox_head.py │ │ │ ├── sabl_head.py │ │ │ └── scnet_bbox_head.py │ │ ├── cascade_roi_head.py │ │ ├── double_roi_head.py │ │ ├── dynamic_roi_head.py │ │ ├── grid_roi_head.py │ │ ├── htc_roi_head.py │ │ ├── mask_heads │ │ │ ├── __init__.py │ │ │ ├── coarse_mask_head.py │ │ │ ├── dynamic_mask_head.py │ │ │ ├── fcn_mask_head.py │ │ │ ├── feature_relay_head.py │ │ │ ├── fused_semantic_head.py │ │ │ ├── global_context_head.py │ │ │ ├── grid_head.py │ │ │ ├── htc_mask_head.py │ │ │ ├── mask_point_head.py │ │ │ ├── maskiou_head.py │ │ │ ├── scnet_mask_head.py │ │ │ └── scnet_semantic_head.py │ │ ├── mask_scoring_roi_head.py │ │ ├── multi_instance_roi_head.py │ │ ├── pisa_roi_head.py │ │ ├── point_rend_roi_head.py │ │ ├── roi_extractors │ │ │ ├── __init__.py │ │ │ ├── base_roi_extractor.py │ │ │ ├── generic_roi_extractor.py │ │ │ └── single_level_roi_extractor.py │ │ ├── scnet_roi_head.py │ │ ├── shared_heads │ │ │ ├── __init__.py │ │ │ └── res_layer.py │ │ ├── sparse_roi_head.py │ │ ├── standard_roi_head.py │ │ ├── test_mixins.py │ │ └── trident_roi_head.py │ ├── seg_heads │ │ ├── __init__.py │ │ ├── base_semantic_head.py │ │ ├── panoptic_fpn_head.py │ │ └── panoptic_fusion_heads │ │ │ ├── __init__.py │ │ │ ├── base_panoptic_fusion_head.py │ │ │ ├── heuristic_fusion_head.py │ │ │ └── maskformer_fusion_head.py │ ├── task_modules │ │ ├── __init__.py │ │ ├── assigners │ │ │ ├── __init__.py │ │ │ ├── approx_max_iou_assigner.py │ │ │ ├── assign_result.py │ │ │ ├── atss_assigner.py │ │ │ ├── base_assigner.py │ │ │ ├── center_region_assigner.py │ │ │ ├── dynamic_soft_label_assigner.py │ │ │ ├── grid_assigner.py │ │ │ ├── hungarian_assigner.py │ │ │ ├── iou2d_calculator.py │ │ │ ├── match_cost.py │ │ │ ├── max_iou_assigner.py │ │ │ ├── multi_instance_assigner.py │ │ │ ├── point_assigner.py │ │ │ ├── region_assigner.py │ │ │ ├── sim_ota_assigner.py │ │ │ ├── task_aligned_assigner.py │ │ │ ├── topk_hungarian_assigner.py │ │ │ └── uniform_assigner.py │ │ ├── builder.py │ │ ├── coders │ │ │ ├── __init__.py │ │ │ ├── base_bbox_coder.py │ │ │ ├── bucketing_bbox_coder.py │ │ │ ├── delta_xywh_bbox_coder.py │ │ │ ├── distance_point_bbox_coder.py │ │ │ ├── legacy_delta_xywh_bbox_coder.py │ │ │ ├── pseudo_bbox_coder.py │ │ │ ├── tblr_bbox_coder.py │ │ │ └── yolo_bbox_coder.py │ │ ├── prior_generators │ │ │ ├── __init__.py │ │ │ ├── anchor_generator.py │ │ │ ├── point_generator.py │ │ │ └── utils.py │ │ ├── samplers │ │ │ ├── __init__.py │ │ │ ├── base_sampler.py │ │ │ ├── combined_sampler.py │ │ │ ├── instance_balanced_pos_sampler.py │ │ │ ├── iou_balanced_neg_sampler.py │ │ │ ├── mask_pseudo_sampler.py │ │ │ ├── mask_sampling_result.py │ │ │ ├── multi_instance_random_sampler.py │ │ │ ├── multi_instance_sampling_result.py │ │ │ ├── ohem_sampler.py │ │ │ ├── pseudo_sampler.py │ │ │ ├── random_sampler.py │ │ │ ├── sampling_result.py │ │ │ └── score_hlr_sampler.py │ │ └── tracking │ │ │ ├── __init__.py │ │ │ ├── aflink.py │ │ │ ├── camera_motion_compensation.py │ │ │ ├── interpolation.py │ │ │ ├── kalman_filter.py │ │ │ └── similarity.py │ ├── test_time_augs │ │ ├── __init__.py │ │ ├── det_tta.py │ │ └── merge_augs.py │ ├── trackers │ │ ├── __init__.py │ │ ├── base_tracker.py │ │ ├── byte_tracker.py │ │ ├── masktrack_rcnn_tracker.py │ │ ├── ocsort_tracker.py │ │ ├── quasi_dense_tracker.py │ │ ├── sort_tracker.py │ │ └── strongsort_tracker.py │ ├── tracking_heads │ │ ├── __init__.py │ │ ├── mask2former_track_head.py │ │ ├── quasi_dense_embed_head.py │ │ ├── quasi_dense_track_head.py │ │ ├── roi_embed_head.py │ │ └── roi_track_head.py │ ├── utils │ │ ├── __init__.py │ │ ├── gaussian_target.py │ │ ├── image.py │ │ ├── make_divisible.py │ │ ├── misc.py │ │ ├── panoptic_gt_processing.py │ │ ├── point_sample.py │ │ ├── vlfuse_helper.py │ │ └── wbf.py │ └── vis │ │ ├── __init__.py │ │ ├── mask2former_vis.py │ │ └── masktrack_rcnn.py ├── registry.py ├── structures │ ├── __init__.py │ ├── bbox │ │ ├── __init__.py │ │ ├── base_boxes.py │ │ ├── bbox_overlaps.py │ │ ├── box_type.py │ │ ├── horizontal_boxes.py │ │ └── transforms.py │ ├── det_data_sample.py │ ├── mask │ │ ├── __init__.py │ │ ├── mask_target.py │ │ ├── structures.py │ │ └── utils.py │ ├── reid_data_sample.py │ └── track_data_sample.py ├── testing │ ├── __init__.py │ ├── _fast_stop_training_hook.py │ └── _utils.py ├── utils │ ├── __init__.py │ ├── benchmark.py │ ├── collect_env.py │ ├── compat_config.py │ ├── contextmanagers.py │ ├── dist_utils.py │ ├── large_image.py │ ├── logger.py │ ├── memory.py │ ├── misc.py │ ├── mot_error_visualize.py │ ├── profiling.py │ ├── replace_cfg_vals.py │ ├── setup_env.py │ ├── split_batch.py │ ├── typing_utils.py │ ├── util_mixins.py │ └── util_random.py ├── version.py └── visualization │ ├── __init__.py │ ├── local_visualizer.py │ └── palette.py ├── model-index.yml ├── projects ├── AlignDETR │ ├── README.md │ ├── align_detr │ │ ├── __init__.py │ │ ├── align_detr_head.py │ │ ├── mixed_hungarian_assigner.py │ │ └── utils.py │ └── configs │ │ ├── align_detr-4scale_r50_8xb2-12e_coco.py │ │ └── align_detr-4scale_r50_8xb2-24e_coco.py ├── CO-DETR │ ├── README.md │ ├── codetr │ │ ├── __init__.py │ │ ├── co_atss_head.py │ │ ├── co_dino_head.py │ │ ├── co_roi_head.py │ │ ├── codetr.py │ │ └── transformer.py │ └── configs │ │ └── codino │ │ ├── co_dino_5scale_r50_8xb2_1x_coco.py │ │ ├── co_dino_5scale_r50_lsj_8xb2_1x_coco.py │ │ ├── co_dino_5scale_r50_lsj_8xb2_3x_coco.py │ │ ├── co_dino_5scale_swin_l_16xb1_16e_o365tococo.py │ │ ├── co_dino_5scale_swin_l_16xb1_1x_coco.py │ │ ├── co_dino_5scale_swin_l_16xb1_3x_coco.py │ │ ├── co_dino_5scale_swin_l_lsj_16xb1_1x_coco.py │ │ └── co_dino_5scale_swin_l_lsj_16xb1_3x_coco.py ├── ConvNeXt-V2 │ ├── README.md │ └── configs │ │ └── mask-rcnn_convnext-v2-b_fpn_lsj-3x-fcmae_coco.py ├── Detic │ ├── README.md │ ├── configs │ │ └── detic_centernet2_swin-b_fpn_4x_lvis-coco-in21k.py │ ├── demo.py │ └── detic │ │ ├── __init__.py │ │ ├── centernet_rpn_head.py │ │ ├── detic_bbox_head.py │ │ ├── detic_roi_head.py │ │ ├── text_encoder.py │ │ ├── utils.py │ │ └── zero_shot_classifier.py ├── Detic_new │ ├── README.md │ ├── configs │ │ ├── detic_centernet2_r50_fpn_4x_lvis-base_boxsup.py │ │ ├── detic_centernet2_r50_fpn_4x_lvis-base_in21k-lvis.py │ │ ├── detic_centernet2_r50_fpn_4x_lvis_boxsup.py │ │ ├── detic_centernet2_r50_fpn_4x_lvis_in21k-lvis.py │ │ ├── detic_centernet2_swin-b_fpn_4x_lvis-base_boxsup.py │ │ ├── detic_centernet2_swin-b_fpn_4x_lvis-base_in21k-lvis.py │ │ ├── detic_centernet2_swin-b_fpn_4x_lvis_boxsup.py │ │ ├── detic_centernet2_swin-b_fpn_4x_lvis_coco_in21k.py │ │ └── detic_centernet2_swin-b_fpn_4x_lvis_in21k-lvis.py │ └── detic │ │ ├── __init__.py │ │ ├── centernet_rpn_head.py │ │ ├── detic.py │ │ ├── detic_bbox_head.py │ │ ├── detic_roi_head.py │ │ ├── heatmap_focal_loss.py │ │ ├── imagenet_lvis.py │ │ ├── iou_loss.py │ │ └── zero_shot_classifier.py ├── DiffusionDet │ ├── README.md │ ├── configs │ │ └── diffusiondet_r50_fpn_500-proposals_1-step_crop-ms-480-800-450k_coco.py │ ├── diffusiondet │ │ ├── __init__.py │ │ ├── diffusiondet.py │ │ ├── head.py │ │ └── loss.py │ └── model_converters │ │ └── diffusiondet_resnet_to_mmdet.py ├── EfficientDet │ ├── README.md │ ├── configs │ │ ├── efficientdet_effb0_bifpn_8xb16-crop512-300e_coco.py │ │ ├── efficientdet_effb3_bifpn_8xb16-crop896-300e_coco-90cls.py │ │ ├── efficientdet_effb3_bifpn_8xb16-crop896-300e_coco.py │ │ └── tensorflow │ │ │ └── efficientdet_effb0_bifpn_8xb16-crop512-300e_coco_tf.py │ ├── convert_tf_to_pt.py │ └── efficientdet │ │ ├── __init__.py │ │ ├── bifpn.py │ │ ├── efficientdet.py │ │ ├── efficientdet_head.py │ │ ├── huber_loss.py │ │ ├── tensorflow │ │ ├── anchor_generator.py │ │ ├── api_wrappers │ │ │ ├── __init__.py │ │ │ └── coco_api.py │ │ ├── coco_90class.py │ │ ├── coco_90metric.py │ │ ├── trans_max_iou_assigner.py │ │ └── yxyx_bbox_coder.py │ │ └── utils.py ├── HDINO │ ├── README.md │ ├── __init__.py │ ├── h-dino-4scale_r50_8xb2-12e_coco.py │ ├── h_dino.py │ └── h_dino_head.py ├── LabelStudio │ ├── backend_template │ │ ├── _wsgi.py │ │ └── mmdetection.py │ └── readme.md ├── RF100-Benchmark │ ├── README.md │ ├── README_zh-CN.md │ ├── __init__.py │ ├── coco.py │ ├── coco_metric.py │ ├── configs │ │ ├── dino_r50_fpn_ms_8xb8_tweeter-profile.py │ │ ├── faster-rcnn_r50_fpn_ms_8xb8_tweeter-profile.py │ │ └── tood_r50_fpn_ms_8xb8_tweeter-profile.py │ └── scripts │ │ ├── create_new_config.py │ │ ├── datasets_links_640.txt │ │ ├── dist_train.sh │ │ ├── download_dataset.py │ │ ├── download_datasets.sh │ │ ├── labels_names.json │ │ ├── log_extract.py │ │ ├── parse_dataset_link.py │ │ └── slurm_train.sh ├── SparseInst │ ├── README.md │ ├── configs │ │ └── sparseinst_r50_iam_8xb8-ms-270k_coco.py │ └── sparseinst │ │ ├── __init__.py │ │ ├── decoder.py │ │ ├── encoder.py │ │ ├── loss.py │ │ └── sparseinst.py ├── VISION-Datasets │ ├── README.md │ └── README_zh-CN.md ├── ViTDet │ ├── README.md │ ├── configs │ │ ├── lsj-100e_coco-instance.py │ │ └── vitdet_mask-rcnn_vit-b-mae_lsj-100e.py │ └── vitdet │ │ ├── __init__.py │ │ ├── fp16_compression_hook.py │ │ ├── layer_decay_optimizer_constructor.py │ │ ├── simple_fpn.py │ │ └── vit.py ├── XDecoder │ ├── README.md │ ├── configs │ │ ├── _base_ │ │ │ ├── xdecoder-tiny_caption.py │ │ │ ├── xdecoder-tiny_open-vocab-instance.py │ │ │ ├── xdecoder-tiny_open-vocab-panoptic.py │ │ │ ├── xdecoder-tiny_open-vocab-semseg.py │ │ │ └── xdecoder-tiny_ref-seg.py │ │ ├── xdecoder-tiny_zeroshot_caption_coco2014.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-instance_ade20k.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-instance_coco.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-panoptic_ade20k.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-panoptic_coco.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-ref-seg_refcoco+.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-ref-seg_refcoco.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-ref-seg_refcocog.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-semseg_ade20k.py │ │ ├── xdecoder-tiny_zeroshot_open-vocab-semseg_coco.py │ │ ├── xdecoder-tiny_zeroshot_ref-caption.py │ │ └── xdecoder-tiny_zeroshot_text-image-retrieval.py │ ├── demo.py │ └── xdecoder │ │ ├── __init__.py │ │ ├── focalnet.py │ │ ├── inference │ │ ├── __init__.py │ │ ├── image_caption.py │ │ └── texttoimage_regionretrieval_inferencer.py │ │ ├── language_model.py │ │ ├── pixel_decoder.py │ │ ├── transformer_blocks.py │ │ ├── transformer_decoder.py │ │ ├── unified_head.py │ │ ├── utils.py │ │ └── xdecoder.py ├── example_largemodel │ ├── README.md │ ├── README_zh-CN.md │ ├── __init__.py │ ├── dino-5scale_swin-l_deepspeed_8xb2-12e_coco.py │ ├── dino-5scale_swin-l_fsdp_8xb2-12e_coco.py │ └── fsdp_utils.py ├── example_project │ ├── README.md │ ├── configs │ │ └── faster-rcnn_dummy-resnet_fpn_1x_coco.py │ └── dummy │ │ ├── __init__.py │ │ └── dummy_resnet.py ├── gradio_demo │ ├── README.md │ └── launch.py └── iSAID │ ├── README.md │ ├── README_zh-CN.md │ ├── configs │ └── mask_rcnn_r50_fpn_1x_isaid.py │ └── isaid_json.py ├── pytest.ini ├── requirements.txt ├── requirements ├── albu.txt ├── build.txt ├── docs.txt ├── mminstall.txt ├── multimodal.txt ├── optional.txt ├── readthedocs.txt ├── runtime.txt ├── tests.txt └── tracking.txt ├── resources ├── coco_test_12510.jpg ├── corruptions_sev_3.png ├── data_pipeline.png ├── loss_curve.png ├── miaomiao_qrcode.jpg ├── mmdet-logo.png └── zhihu_qrcode.jpg ├── setup.cfg ├── setup.py ├── tests ├── data │ ├── Objects365 │ │ └── unsorted_obj365_sample.json │ ├── OpenImages │ │ ├── annotations │ │ │ ├── annotations-human-imagelabels-boxable.csv │ │ │ ├── bbox_labels_600_hierarchy.json │ │ │ ├── class-descriptions-boxable.csv │ │ │ ├── image-metas.pkl │ │ │ └── oidv6-train-annotations-bbox.csv │ │ └── challenge2019 │ │ │ ├── annotations-human-imagelabels-boxable.csv │ │ │ ├── challenge-2019-train-detection-bbox.txt │ │ │ ├── class_label_tree.np │ │ │ └── cls-label-description.csv │ ├── VOCdevkit │ │ ├── VOC2007 │ │ │ ├── Annotations │ │ │ │ └── 000001.xml │ │ │ ├── ImageSets │ │ │ │ └── Main │ │ │ │ │ ├── test.txt │ │ │ │ │ └── trainval.txt │ │ │ └── JPEGImages │ │ │ │ └── 000001.jpg │ │ └── VOC2012 │ │ │ ├── Annotations │ │ │ └── 000001.xml │ │ │ ├── ImageSets │ │ │ └── Main │ │ │ │ ├── test.txt │ │ │ │ └── trainval.txt │ │ │ └── JPEGImages │ │ │ └── 000001.jpg │ ├── WIDERFace │ │ ├── WIDER_train │ │ │ ├── 0--Parade │ │ │ │ └── .gitkeep │ │ │ └── Annotations │ │ │ │ └── 0_Parade_marchingband_1_5.xml │ │ └── train.txt │ ├── coco_batched_sample.json │ ├── coco_sample.json │ ├── coco_wrong_format_sample.json │ ├── color.jpg │ ├── configs_mmtrack │ │ ├── faster_rcnn_r50_dc5.py │ │ ├── faster_rcnn_r50_fpn.py │ │ ├── mot_challenge.py │ │ ├── selsa_faster_rcnn_r101_dc5_1x.py │ │ └── tracktor_faster-rcnn_r50_fpn_4e.py │ ├── crowdhuman_dataset │ │ ├── id_hw_train.json │ │ └── test_annotation_train.odgt │ ├── custom_dataset │ │ ├── images │ │ │ ├── 000001.jpg │ │ │ └── 000001.xml │ │ ├── test.txt │ │ └── trainval.txt │ ├── demo_reid_data │ │ └── mot17_reid │ │ │ └── ann.txt │ ├── dsdl_det │ │ ├── config.py │ │ ├── defs │ │ │ ├── class-domain.yaml │ │ │ └── obejct-detection-def.yaml │ │ └── set-train │ │ │ ├── train.yaml │ │ │ └── train_samples.json │ ├── gray.jpg │ ├── mot_sample.json │ └── vis_sample.json ├── test_apis │ ├── test_det_inferencer.py │ └── test_inference.py ├── test_datasets │ ├── test_cityscapes.py │ ├── test_coco.py │ ├── test_coco_api_wrapper.py │ ├── test_coco_panoptic.py │ ├── test_crowdhuman.py │ ├── test_dsdldet.py │ ├── test_lvis.py │ ├── test_mot_challenge_dataset.py │ ├── test_objects365.py │ ├── test_openimages.py │ ├── test_pascal_voc.py │ ├── test_reid_dataset.py │ ├── test_samplers │ │ ├── test_batch_sampler.py │ │ ├── test_multi_source_sampler.py │ │ └── test_track_img_sampler.py │ ├── test_transforms │ │ ├── __init__.py │ │ ├── test_augment_wrappers.py │ │ ├── test_colorspace.py │ │ ├── test_formatting.py │ │ ├── test_frame_sampling.py │ │ ├── test_geometric.py │ │ ├── test_instaboost.py │ │ ├── test_loading.py │ │ ├── test_transforms.py │ │ ├── test_wrappers.py │ │ └── utils.py │ ├── test_tta.py │ ├── test_wider_face.py │ └── test_youtube_vis_dataset.py ├── test_engine │ ├── __init__.py │ ├── test_hooks │ │ ├── test_checkloss_hook.py │ │ ├── test_mean_teacher_hook.py │ │ ├── test_memory_profiler_hook.py │ │ ├── test_num_class_check_hook.py │ │ ├── test_pipeline_switch_hook.py │ │ ├── test_sync_norm_hook.py │ │ ├── test_visualization_hook.py │ │ └── test_yolox_mode_switch_hook.py │ ├── test_optimizers │ │ ├── __init__.py │ │ └── test_layer_decay_optimizer_constructor.py │ ├── test_runner │ │ └── test_loops.py │ └── test_schedulers │ │ └── test_quadratic_warmup.py ├── test_evaluation │ └── test_metrics │ │ ├── __init__.py │ │ ├── test_cityscapes_metric.py │ │ ├── test_coco_metric.py │ │ ├── test_coco_occluded_metric.py │ │ ├── test_coco_panoptic_metric.py │ │ ├── test_coco_video_metric.py │ │ ├── test_crowdhuman_metric.py │ │ ├── test_dump_det_results.py │ │ ├── test_lvis_metric.py │ │ ├── test_mot_challenge_metrics.py │ │ ├── test_openimages_metric.py │ │ ├── test_reid_metric.py │ │ └── test_youtube_vis_metric.py ├── test_models │ ├── test_backbones │ │ ├── __init__.py │ │ ├── test_csp_darknet.py │ │ ├── test_detectors_resnet.py │ │ ├── test_efficientnet.py │ │ ├── test_hourglass.py │ │ ├── test_hrnet.py │ │ ├── test_mobilenet_v2.py │ │ ├── test_pvt.py │ │ ├── test_regnet.py │ │ ├── test_renext.py │ │ ├── test_res2net.py │ │ ├── test_resnest.py │ │ ├── test_resnet.py │ │ ├── test_swin.py │ │ ├── test_trident_resnet.py │ │ └── utils.py │ ├── test_data_preprocessors │ │ ├── test_batch_resize.py │ │ ├── test_boxinst_preprocessor.py │ │ ├── test_data_preprocessor.py │ │ └── test_track_data_preprocessor.py │ ├── test_dense_heads │ │ ├── test_anchor_head.py │ │ ├── test_atss_head.py │ │ ├── test_autoassign_head.py │ │ ├── test_boxinst_head.py │ │ ├── test_cascade_rpn_head.py │ │ ├── test_centernet_head.py │ │ ├── test_centernet_update_head.py │ │ ├── test_centripetal_head.py │ │ ├── test_condinst_head.py │ │ ├── test_corner_head.py │ │ ├── test_ddod_head.py │ │ ├── test_ddq_detr_head.py │ │ ├── test_embedding_rpn_head.py │ │ ├── test_fcos_head.py │ │ ├── test_fovea_head.py │ │ ├── test_free_anchor_head.py │ │ ├── test_fsaf_head.py │ │ ├── test_ga_retina_head.py │ │ ├── test_ga_rpn_head.py │ │ ├── test_gfl_head.py │ │ ├── test_guided_anchor_head.py │ │ ├── test_lad_head.py │ │ ├── test_ld_head.py │ │ ├── test_nasfcos_head.py │ │ ├── test_paa_head.py │ │ ├── test_pisa_retinanet_head.py │ │ ├── test_pisa_ssd_head.py │ │ ├── test_reppoints_head.py │ │ ├── test_retina_sepBN_head.py │ │ ├── test_rpn_head.py │ │ ├── test_sabl_retina_head.py │ │ ├── test_solo_head.py │ │ ├── test_solov2_head.py │ │ ├── test_ssd_head.py │ │ ├── test_tood_head.py │ │ ├── test_vfnet_head.py │ │ ├── test_yolo_head.py │ │ ├── test_yolof_head.py │ │ └── test_yolox_head.py │ ├── test_detectors │ │ ├── test_conditional_detr.py │ │ ├── test_cornernet.py │ │ ├── test_dab_detr.py │ │ ├── test_ddq_detr.py │ │ ├── test_deformable_detr.py │ │ ├── test_detr.py │ │ ├── test_dino.py │ │ ├── test_glip.py │ │ ├── test_kd_single_stage.py │ │ ├── test_maskformer.py │ │ ├── test_panoptic_two_stage_segmentor.py │ │ ├── test_rpn.py │ │ ├── test_semi_base.py │ │ ├── test_single_stage.py │ │ ├── test_single_stage_instance_seg.py │ │ └── test_two_stage.py │ ├── test_layers │ │ ├── __init__.py │ │ ├── test_brick_wrappers.py │ │ ├── test_conv_upsample.py │ │ ├── test_ema.py │ │ ├── test_inverted_residual.py │ │ ├── test_plugins.py │ │ ├── test_position_encoding.py │ │ ├── test_se_layer.py │ │ └── test_transformer.py │ ├── test_losses │ │ ├── test_gaussian_focal_loss.py │ │ ├── test_l2_loss.py │ │ ├── test_loss.py │ │ ├── test_multi_pos_cross_entropy_loss.py │ │ └── test_triplet_loss.py │ ├── test_mot │ │ ├── test_byte_track.py │ │ ├── test_deep_sort.py │ │ ├── test_oc_sort.py │ │ ├── test_qdtrack.py │ │ ├── test_sort.py │ │ └── test_strong_sort.py │ ├── test_necks │ │ ├── test_ct_resnet_neck.py │ │ └── test_necks.py │ ├── test_reid │ │ ├── test_base_reid.py │ │ ├── test_fc_module.py │ │ ├── test_gap.py │ │ └── test_linear_reid_head.py │ ├── test_roi_heads │ │ ├── test_bbox_heads │ │ │ ├── test_bbox_head.py │ │ │ ├── test_double_bbox_head.py │ │ │ ├── test_multi_instance_bbox_head.py │ │ │ ├── test_sabl_bbox_head.py │ │ │ └── test_scnet_bbox_head.py │ │ ├── test_cascade_roi_head.py │ │ ├── test_dynamic_roi_head.py │ │ ├── test_grid_roi_head.py │ │ ├── test_htc_roi_head.py │ │ ├── test_mask_heads │ │ │ ├── test_coarse_mask_head.py │ │ │ ├── test_fcn_mask_head.py │ │ │ ├── test_feature_relay_head.py │ │ │ ├── test_fused_semantic_head.py │ │ │ ├── test_global_context_head.py │ │ │ ├── test_grid_head.py │ │ │ ├── test_htc_mask_head.py │ │ │ ├── test_maskiou_head.py │ │ │ ├── test_scnet_mask_head.py │ │ │ └── test_scnet_semantic_head.py │ │ ├── test_mask_scoring_roI_head.py │ │ ├── test_multi_instance_roi_head.py │ │ ├── test_pisa_roi_head.py │ │ ├── test_point_rend_roi_head.py │ │ ├── test_roi_extractors │ │ │ ├── test_generic_roi_extractor.py │ │ │ └── test_single_level_roi_extractor.py │ │ ├── test_scnet_roi_head.py │ │ ├── test_sparse_roi_head.py │ │ ├── test_standard_roi_head.py │ │ └── test_trident_roi_head.py │ ├── test_seg_heads │ │ ├── test_heuristic_fusion_head.py │ │ ├── test_maskformer_fusion_head.py │ │ └── test_panoptic_fpn_head.py │ ├── test_task_modules │ │ ├── __init__.py │ │ ├── test_assigners │ │ │ ├── test_approx_max_iou_assigner.py │ │ │ ├── test_atss_assigner.py │ │ │ ├── test_center_region_assigner.py │ │ │ ├── test_dynamic_soft_label_assigner.py │ │ │ ├── test_grid_assigner.py │ │ │ ├── test_hungarian_assigner.py │ │ │ ├── test_max_iou_assigner.py │ │ │ ├── test_point_assigner.py │ │ │ ├── test_region_assigner.py │ │ │ ├── test_simota_assigner.py │ │ │ ├── test_task_aligned_assigner.py │ │ │ ├── test_task_uniform_assigner.py │ │ │ └── test_topk_hungarian_assigner.py │ │ ├── test_coder │ │ │ └── test_delta_xywh_bbox_coder.py │ │ ├── test_iou2d_calculator.py │ │ ├── test_prior_generators │ │ │ └── test_anchor_generator.py │ │ ├── test_samplers │ │ │ └── test_pesudo_sampler.py │ │ └── test_track │ │ │ ├── test_aflink.py │ │ │ ├── test_interpolation.py │ │ │ ├── test_kalman_filter.py │ │ │ └── test_similarity.py │ ├── test_trackers │ │ ├── test_byte_tracker.py │ │ ├── test_masktrack_rcnn_tracker.py │ │ ├── test_oc_sort_tracker.py │ │ ├── test_sort_tracker.py │ │ └── test_strong_sort_tracker.py │ ├── test_tracking_heads │ │ ├── test_mask2former_track_head.py │ │ ├── test_quasi_dense_embed_head.py │ │ ├── test_quasi_dense_track_head.py │ │ └── test_roi_embed_head.py │ ├── test_tta │ │ └── test_det_tta.py │ ├── test_utils │ │ ├── test_misc.py │ │ └── test_model_misc.py │ └── test_vis │ │ ├── test_mask2former.py │ │ └── test_masktrack_rcnn.py ├── test_structures │ ├── __init__.py │ ├── test_bbox │ │ ├── __init__.py │ │ ├── test_base_boxes.py │ │ ├── test_box_type.py │ │ ├── test_horizontal_boxes.py │ │ └── utils.py │ ├── test_det_data_sample.py │ ├── test_mask │ │ └── test_mask_structures.py │ ├── test_reid_data_sample.py │ └── test_track_data_sample.py ├── test_utils │ ├── test_benchmark.py │ ├── test_memory.py │ ├── test_replace_cfg_vals.py │ └── test_setup_env.py └── test_visualization │ ├── test_local_visualizer.py │ └── test_palette.py └── tools ├── analysis_tools ├── analyze_logs.py ├── analyze_results.py ├── benchmark.py ├── browse_dataset.py ├── coco_error_analysis.py ├── coco_occluded_separated_recall.py ├── confusion_matrix.py ├── eval_metric.py ├── fuse_results.py ├── get_flops.py ├── mot │ ├── browse_dataset.py │ ├── dist_mot_search.sh │ ├── mot_error_visualize.py │ ├── mot_param_search.py │ └── slurm_mot_search.sh ├── optimize_anchors.py ├── robustness_eval.py └── test_robustness.py ├── dataset_converters ├── ade20k2coco.py ├── cityscapes.py ├── coco_stuff164k.py ├── crowdhuman2coco.py ├── images2coco.py ├── mot2coco.py ├── mot2reid.py ├── pascal_voc.py ├── prepare_coco_semantic_annos_from_panoptic_annos.py ├── scripts │ ├── preprocess_coco2017.sh │ ├── preprocess_voc2007.sh │ └── preprocess_voc2012.sh └── youtubevis2coco.py ├── deployment ├── mmdet2torchserve.py ├── mmdet_handler.py └── test_torchserver.py ├── dist_test.sh ├── dist_test_tracking.sh ├── dist_train.sh ├── eval_v3det.py ├── misc ├── download_dataset.py ├── gen_coco_panoptic_test_info.py ├── get_crowdhuman_id_hw.py ├── get_image_metas.py ├── print_config.py └── split_coco.py ├── model_converters ├── detectron2_to_mmdet.py ├── detectron2pytorch.py ├── detic_to_mmdet.py ├── glip_to_mmdet.py ├── groundingdino_to_mmdet.py ├── publish_model.py ├── regnet2mmdet.py ├── selfsup2mmdet.py ├── swinv1_to_mmdet.py ├── upgrade_model_version.py └── upgrade_ssd_version.py ├── slurm_test.sh ├── slurm_test_tracking.sh ├── slurm_train.sh ├── test.py ├── test_tracking.py └── train.py /.dev_scripts/covignore.cfg: -------------------------------------------------------------------------------- 1 | # Each line should be the relative path to the root directory 2 | # of this repo. Support regular expression as well. 3 | # For example: 4 | 5 | .*/__init__.py 6 | -------------------------------------------------------------------------------- /.dev_scripts/linter.sh: -------------------------------------------------------------------------------- 1 | yapf -r -i mmdet/ configs/ tests/ tools/ 2 | isort -rc mmdet/ configs/ tests/ tools/ 3 | flake8 . 4 | -------------------------------------------------------------------------------- /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | We appreciate all contributions to improve MMDetection. Please refer to [CONTRIBUTING.md](https://github.com/open-mmlab/mmcv/blob/master/CONTRIBUTING.md) in MMCV for more details about the contributing guideline. 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | 3 | contact_links: 4 | - name: Common Issues 5 | url: https://mmdetection.readthedocs.io/en/latest/faq.html 6 | about: Check if your issue already has solutions 7 | - name: MMDetection Documentation 8 | url: https://mmdetection.readthedocs.io/en/latest/ 9 | about: Check if your question is answered in docs 10 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/general_questions.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: General questions 3 | about: Ask general questions to get help 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | --- 8 | -------------------------------------------------------------------------------- /.owners.yml: -------------------------------------------------------------------------------- 1 | assign: 2 | strategy: 3 | # random 4 | daily-shift-based 5 | scedule: 6 | '*/1 * * * *' 7 | assignees: 8 | - Czm369 9 | - hhaAndroid 10 | - jbwang1997 11 | - RangiLyu 12 | - BIGWangYuDong 13 | - chhluo 14 | - ZwwWayne 15 | -------------------------------------------------------------------------------- /.readthedocs.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | 3 | build: 4 | os: ubuntu-22.04 5 | tools: 6 | python: "3.8" 7 | 8 | formats: 9 | - epub 10 | 11 | python: 12 | install: 13 | - requirements: requirements/docs.txt 14 | - requirements: requirements/readthedocs.txt 15 | -------------------------------------------------------------------------------- /CITATION.cff: -------------------------------------------------------------------------------- 1 | cff-version: 1.2.0 2 | message: "If you use this software, please cite it as below." 3 | authors: 4 | - name: "MMDetection Contributors" 5 | title: "OpenMMLab Detection Toolbox and Benchmark" 6 | date-released: 2018-08-22 7 | url: "https://github.com/open-mmlab/mmdetection" 8 | license: Apache-2.0 9 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include requirements/*.txt 2 | include mmdet/VERSION 3 | include mmdet/.mim/model-index.yml 4 | include mmdet/.mim/dataset-index.yml 5 | include mmdet/.mim/demo/*/* 6 | recursive-include mmdet/.mim/configs *.py *.yml 7 | recursive-include mmdet/.mim/tools *.sh *.py 8 | -------------------------------------------------------------------------------- /configs/atss/atss_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './atss_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/atss/atss_r101_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './atss_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/atss/atss_r18_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './atss_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/boxinst/boxinst_r101_fpn_ms-90k_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './boxinst_r50_fpn_ms-90k_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict( 6 | depth=101, 7 | init_cfg=dict(type='Pretrained', 8 | checkpoint='torchvision://resnet101'))) 9 | -------------------------------------------------------------------------------- /configs/bytetrack/bytetrack_yolox_x_8xb4-amp-80e_crowdhuman-mot17halftrain_test-mot17halfval.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './bytetrack_yolox_x_8xb4-80e_crowdhuman-mot17halftrain_' 3 | 'test-mot17halfval.py' 4 | ] 5 | 6 | # fp16 settings 7 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale='dynamic') 8 | val_cfg = dict(type='ValLoop', fp16=True) 9 | test_cfg = dict(type='TestLoop', fp16=True) 10 | -------------------------------------------------------------------------------- /configs/bytetrack/bytetrack_yolox_x_8xb4-amp-80e_crowdhuman-mot20train_test-mot20test.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './bytetrack_yolox_x_8xb4-80e_crowdhuman-mot20train_test-mot20test.py' 3 | ] 4 | 5 | # fp16 settings 6 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale='dynamic') 7 | val_cfg = dict(type='ValLoop', fp16=True) 8 | test_cfg = dict(type='TestLoop', fp16=True) 9 | -------------------------------------------------------------------------------- /configs/bytetrack/yolox_x_8xb4-amp-80e_crowdhuman-mot17halftrain_test-mot17halfval.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../strongsort/yolox_x_8xb4-80e_crowdhuman-mot17halftrain_test-mot17halfval.py' # noqa: E501 3 | ] 4 | 5 | # fp16 settings 6 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale='dynamic') 7 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r101-caffe_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50-caffe_fpn_ms-3x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r101_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r101_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_ms-3x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r50-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./cascade-mask-rcnn_r50_fpn_1x_coco.py'] 2 | 3 | model = dict( 4 | data_preprocessor=dict( 5 | mean=[103.530, 116.280, 123.675], 6 | std=[1.0, 1.0, 1.0], 7 | bgr_to_rgb=False), 8 | backbone=dict( 9 | norm_cfg=dict(requires_grad=False), 10 | norm_eval=True, 11 | style='caffe', 12 | init_cfg=dict( 13 | type='Pretrained', 14 | checkpoint='open-mmlab://detectron2/resnet50_caffe'))) 15 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r50_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/cascade-mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r50_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/cascade-mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_20e.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_r50_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../common/ms_3x_coco-instance.py', 3 | '../_base_/models/cascade-mask-rcnn_r50_fpn.py' 4 | ] 5 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_x101-32x4d_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_x101-32x4d_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_ms-3x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_x101-64x4d_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-mask-rcnn_x101-64x4d_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_ms-3x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_r101_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_r101_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_r18_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_r50_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/cascade-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_r50_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/cascade-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_20e.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/cascade_rcnn/cascade-rcnn_x101-32x4d_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/centernet/centernet-update_r101_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './centernet-update_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/centernet/centernet-update_r18_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './centernet-update_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/centernet/centernet_r18_8xb16-crop512-140e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './centernet_r18-dcnv2_8xb16-crop512-140e_coco.py' 2 | 3 | model = dict(neck=dict(use_dcn=False)) 4 | -------------------------------------------------------------------------------- /configs/common/lsj-200e_coco-detection.py: -------------------------------------------------------------------------------- 1 | _base_ = './lsj-100e_coco-detection.py' 2 | 3 | # 8x25=200e 4 | train_dataloader = dict(dataset=dict(times=8)) 5 | 6 | # learning rate 7 | param_scheduler = [ 8 | dict( 9 | type='LinearLR', start_factor=0.067, by_epoch=False, begin=0, 10 | end=1000), 11 | dict( 12 | type='MultiStepLR', 13 | begin=0, 14 | end=25, 15 | by_epoch=True, 16 | milestones=[22, 24], 17 | gamma=0.1) 18 | ] 19 | -------------------------------------------------------------------------------- /configs/common/lsj-200e_coco-instance.py: -------------------------------------------------------------------------------- 1 | _base_ = './lsj-100e_coco-instance.py' 2 | 3 | # 8x25=200e 4 | train_dataloader = dict(dataset=dict(times=8)) 5 | 6 | # learning rate 7 | param_scheduler = [ 8 | dict( 9 | type='LinearLR', start_factor=0.067, by_epoch=False, begin=0, 10 | end=1000), 11 | dict( 12 | type='MultiStepLR', 13 | begin=0, 14 | end=25, 15 | by_epoch=True, 16 | milestones=[22, 24], 17 | gamma=0.1) 18 | ] 19 | -------------------------------------------------------------------------------- /configs/cornernet/cornernet_hourglass104_10xb5-crop511-210e-mstest_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cornernet_hourglass104_8xb6-210e-mstest_coco.py' 2 | 3 | train_dataloader = dict(batch_size=5) 4 | 5 | # NOTE: `auto_scale_lr` is for automatically scaling LR, 6 | # USER SHOULD NOT CHANGE ITS VALUES. 7 | # base_batch_size = (10 GPUs) x (5 samples per GPU) 8 | auto_scale_lr = dict(base_batch_size=50) 9 | -------------------------------------------------------------------------------- /configs/cornernet/cornernet_hourglass104_32xb3-210e-mstest_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cornernet_hourglass104_8xb6-210e-mstest_coco.py' 2 | 3 | train_dataloader = dict(batch_size=3) 4 | 5 | # NOTE: `auto_scale_lr` is for automatically scaling LR, 6 | # USER SHOULD NOT CHANGE ITS VALUES. 7 | # base_batch_size = (32 GPUs) x (3 samples per GPU) 8 | auto_scale_lr = dict(base_batch_size=96) 9 | -------------------------------------------------------------------------------- /configs/crowddet/crowddet-rcnn_refine_r50_fpn_8xb2-30e_crowdhuman.py: -------------------------------------------------------------------------------- 1 | _base_ = './crowddet-rcnn_r50_fpn_8xb2-30e_crowdhuman.py' 2 | 3 | model = dict(roi_head=dict(bbox_head=dict(with_refine=True))) 4 | -------------------------------------------------------------------------------- /configs/dcn/cascade-mask-rcnn_r101-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/cascade-mask-rcnn_r50-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/cascade-mask-rcnn_x101-32x4d-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/cascade-rcnn_r101-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/cascade-rcnn_r50-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/faster-rcnn_r101-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/faster-rcnn_r50-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/faster-rcnn_r50_fpn_dpool_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | roi_head=dict( 4 | bbox_roi_extractor=dict( 5 | type='SingleRoIExtractor', 6 | roi_layer=dict( 7 | _delete_=True, 8 | type='DeformRoIPoolPack', 9 | output_size=7, 10 | output_channels=256), 11 | out_channels=256, 12 | featmap_strides=[4, 8, 16, 32]))) 13 | -------------------------------------------------------------------------------- /configs/dcn/mask-rcnn_r101-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/mask-rcnn_r50-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcn/mask-rcnn_r50-dconv-c3-c5_fpn_amp-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | 7 | # MMEngine support the following two ways, users can choose 8 | # according to convenience 9 | # optim_wrapper = dict(type='AmpOptimWrapper') 10 | _base_.optim_wrapper.type = 'AmpOptimWrapper' 11 | -------------------------------------------------------------------------------- /configs/dcnv2/faster-rcnn_r50-mdconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCNv2', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcnv2/faster-rcnn_r50-mdconv-group4-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCNv2', deform_groups=4, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcnv2/faster-rcnn_r50_fpn_mdpool_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | roi_head=dict( 4 | bbox_roi_extractor=dict( 5 | type='SingleRoIExtractor', 6 | roi_layer=dict( 7 | _delete_=True, 8 | type='ModulatedDeformRoIPoolPack', 9 | output_size=7, 10 | output_channels=256), 11 | out_channels=256, 12 | featmap_strides=[4, 8, 16, 32]))) 13 | -------------------------------------------------------------------------------- /configs/dcnv2/mask-rcnn_r50-mdconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCNv2', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | -------------------------------------------------------------------------------- /configs/dcnv2/mask-rcnn_r50-mdconv-c3-c5_fpn_amp-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCNv2', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True))) 6 | 7 | # MMEngine support the following two ways, users can choose 8 | # according to convenience 9 | # optim_wrapper = dict(type='AmpOptimWrapper') 10 | _base_.optim_wrapper.type = 'AmpOptimWrapper' 11 | -------------------------------------------------------------------------------- /configs/deformable_detr/deformable-detr-refine-twostage_r50_16xb2-50e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'deformable-detr-refine_r50_16xb2-50e_coco.py' 2 | model = dict(as_two_stage=True) 3 | -------------------------------------------------------------------------------- /configs/deformable_detr/deformable-detr-refine_r50_16xb2-50e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'deformable-detr_r50_16xb2-50e_coco.py' 2 | model = dict(with_box_refine=True) 3 | -------------------------------------------------------------------------------- /configs/detectors/cascade-rcnn_r50-sac_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/cascade-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict( 8 | backbone=dict( 9 | type='DetectoRS_ResNet', 10 | conv_cfg=dict(type='ConvAWS'), 11 | sac=dict(type='SAC', use_deform=True), 12 | stage_with_sac=(False, True, True, True))) 13 | -------------------------------------------------------------------------------- /configs/detectors/htc_r50-sac_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../htc/htc_r50_fpn_1x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | type='DetectoRS_ResNet', 6 | conv_cfg=dict(type='ConvAWS'), 7 | sac=dict(type='SAC', use_deform=True), 8 | stage_with_sac=(False, True, True, True))) 9 | -------------------------------------------------------------------------------- /configs/detr/detr_r101_8xb2-500e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './detr_r50_8xb2-500e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/detr/detr_r18_8xb2-500e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './detr_r50_8xb2-500e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[512])) 8 | -------------------------------------------------------------------------------- /configs/dino/dino-4scale_r50_8xb2-24e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './dino-4scale_r50_8xb2-12e_coco.py' 2 | max_epochs = 24 3 | train_cfg = dict( 4 | type='EpochBasedTrainLoop', max_epochs=max_epochs, val_interval=1) 5 | param_scheduler = [ 6 | dict( 7 | type='MultiStepLR', 8 | begin=0, 9 | end=max_epochs, 10 | by_epoch=True, 11 | milestones=[20], 12 | gamma=0.1) 13 | ] 14 | -------------------------------------------------------------------------------- /configs/dino/dino-4scale_r50_8xb2-36e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './dino-4scale_r50_8xb2-12e_coco.py' 2 | max_epochs = 36 3 | train_cfg = dict( 4 | type='EpochBasedTrainLoop', max_epochs=max_epochs, val_interval=1) 5 | param_scheduler = [ 6 | dict( 7 | type='MultiStepLR', 8 | begin=0, 9 | end=max_epochs, 10 | by_epoch=True, 11 | milestones=[30], 12 | gamma=0.1) 13 | ] 14 | -------------------------------------------------------------------------------- /configs/dino/dino-5scale_swin-l_8xb2-36e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './dino-5scale_swin-l_8xb2-12e_coco.py' 2 | max_epochs = 36 3 | train_cfg = dict( 4 | type='EpochBasedTrainLoop', max_epochs=max_epochs, val_interval=1) 5 | param_scheduler = [ 6 | dict( 7 | type='MultiStepLR', 8 | begin=0, 9 | end=max_epochs, 10 | by_epoch=True, 11 | milestones=[27, 33], 12 | gamma=0.1) 13 | ] 14 | -------------------------------------------------------------------------------- /configs/empirical_attention/faster-rcnn_r50-attn0010_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict(plugins=[ 4 | dict( 5 | cfg=dict( 6 | type='GeneralizedAttention', 7 | spatial_range=-1, 8 | num_heads=8, 9 | attention_type='0010', 10 | kv_stride=2), 11 | stages=(False, False, True, True), 12 | position='after_conv2') 13 | ])) 14 | -------------------------------------------------------------------------------- /configs/empirical_attention/faster-rcnn_r50-attn1111_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict(plugins=[ 4 | dict( 5 | cfg=dict( 6 | type='GeneralizedAttention', 7 | spatial_range=-1, 8 | num_heads=8, 9 | attention_type='1111', 10 | kv_stride=2), 11 | stages=(False, False, True, True), 12 | position='after_conv2') 13 | ])) 14 | -------------------------------------------------------------------------------- /configs/fast_rcnn/fast-rcnn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fast-rcnn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/fast_rcnn/fast-rcnn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fast-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/fast_rcnn/fast-rcnn_r101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fast-rcnn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/fast_rcnn/fast-rcnn_r50_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fast-rcnn_r50_fpn_1x_coco.py' 2 | 3 | train_cfg = dict(max_epochs=24) 4 | param_scheduler = [ 5 | dict( 6 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 7 | dict( 8 | type='MultiStepLR', 9 | begin=0, 10 | end=24, 11 | by_epoch=True, 12 | milestones=[16, 22], 13 | gamma=0.1) 14 | ] 15 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r101-caffe_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'faster-rcnn_r50_fpn_ms-3x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | norm_cfg=dict(requires_grad=False), 7 | norm_eval=True, 8 | style='caffe', 9 | init_cfg=dict( 10 | type='Pretrained', 11 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 12 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r101_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r101_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'faster-rcnn_r50_fpn_ms-3x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r18_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50-caffe-dc5_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/faster-rcnn_r50-caffe-dc5.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50-caffe_c4-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/faster-rcnn_r50-caffe-c4.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/faster-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/faster-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_2x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_amp-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | 3 | # MMEngine support the following two ways, users can choose 4 | # according to convenience 5 | # optim_wrapper = dict(type='AmpOptimWrapper') 6 | _base_.optim_wrapper.type = 'AmpOptimWrapper' 7 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_bounded-iou_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | roi_head=dict( 4 | bbox_head=dict( 5 | reg_decoded_bbox=True, 6 | loss_bbox=dict(type='BoundedIoULoss', loss_weight=10.0)))) 7 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_ciou_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | roi_head=dict( 4 | bbox_head=dict( 5 | reg_decoded_bbox=True, 6 | loss_bbox=dict(type='CIoULoss', loss_weight=12.0)))) 7 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_giou_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | roi_head=dict( 4 | bbox_head=dict( 5 | reg_decoded_bbox=True, 6 | loss_bbox=dict(type='GIoULoss', loss_weight=10.0)))) 7 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_iou_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | roi_head=dict( 4 | bbox_head=dict( 5 | reg_decoded_bbox=True, 6 | loss_bbox=dict(type='IoULoss', loss_weight=10.0)))) 7 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../common/ms_3x_coco.py', '../_base_/models/faster-rcnn_r50_fpn.py'] 2 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_ohem_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict(train_cfg=dict(rcnn=dict(sampler=dict(type='OHEMSampler')))) 3 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_r50_fpn_soft-nms_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/faster-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict( 8 | test_cfg=dict( 9 | rcnn=dict( 10 | score_thr=0.05, 11 | nms=dict(type='soft_nms', iou_threshold=0.5), 12 | max_per_img=100))) 13 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_x101-32x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/faster_rcnn/faster-rcnn_x101-64x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/fcos/fcos_r101-caffe_fpn_gn-head-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcos_r50-caffe_fpn_gn-head_1x_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict( 6 | depth=101, 7 | init_cfg=dict( 8 | type='Pretrained', 9 | checkpoint='open-mmlab://detectron/resnet101_caffe'))) 10 | -------------------------------------------------------------------------------- /configs/fcos/fcos_r101_fpn_gn-head-center-normbbox-centeronreg-giou_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcos_r50_fpn_gn-head-center-normbbox-centeronreg-giou_8xb8-amp-lsj-200e_coco.py' # noqa 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/fcos/fcos_r18_fpn_gn-head-center-normbbox-centeronreg-giou_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcos_r50_fpn_gn-head-center-normbbox-centeronreg-giou_8xb8-amp-lsj-200e_coco.py' # noqa 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/fcos/fcos_r50-caffe_fpn_gn-head-center_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcos_r50-caffe_fpn_gn-head_1x_coco.py' 2 | 3 | # model settings 4 | model = dict(bbox_head=dict(center_sampling=True, center_sample_radius=1.5)) 5 | -------------------------------------------------------------------------------- /configs/fcos/fcos_r50-caffe_fpn_gn-head_4xb4-1x_coco.py: -------------------------------------------------------------------------------- 1 | # TODO: Remove this config after benchmarking all related configs 2 | _base_ = 'fcos_r50-caffe_fpn_gn-head_1x_coco.py' 3 | 4 | # dataset settings 5 | train_dataloader = dict(batch_size=4, num_workers=4) 6 | -------------------------------------------------------------------------------- /configs/foveabox/fovea_r101_fpn_4xb4-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fovea_r50_fpn_4xb4-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/foveabox/fovea_r101_fpn_4xb4-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fovea_r50_fpn_4xb4-2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/foveabox/fovea_r50_fpn_4xb4-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fovea_r50_fpn_4xb4-1x_coco.py' 2 | # learning policy 3 | max_epochs = 24 4 | param_scheduler = [ 5 | dict( 6 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 7 | dict( 8 | type='MultiStepLR', 9 | begin=0, 10 | end=max_epochs, 11 | by_epoch=True, 12 | milestones=[16, 22], 13 | gamma=0.1) 14 | ] 15 | train_cfg = dict(max_epochs=max_epochs) 16 | -------------------------------------------------------------------------------- /configs/fpg/faster-rcnn_r50_fpg-chn128_crop640-50e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'faster-rcnn_r50_fpg_crop640-50e_coco.py' 2 | 3 | norm_cfg = dict(type='BN', requires_grad=True) 4 | model = dict( 5 | neck=dict(out_channels=128, inter_channels=128), 6 | rpn_head=dict(in_channels=128), 7 | roi_head=dict( 8 | bbox_roi_extractor=dict(out_channels=128), 9 | bbox_head=dict(in_channels=128))) 10 | -------------------------------------------------------------------------------- /configs/fpg/mask-rcnn_r50_fpg-chn128_crop640-50e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'mask-rcnn_r50_fpg_crop640-50e_coco.py' 2 | 3 | model = dict( 4 | neck=dict(out_channels=128, inter_channels=128), 5 | rpn_head=dict(in_channels=128), 6 | roi_head=dict( 7 | bbox_roi_extractor=dict(out_channels=128), 8 | bbox_head=dict(in_channels=128), 9 | mask_roi_extractor=dict(out_channels=128), 10 | mask_head=dict(in_channels=128))) 11 | -------------------------------------------------------------------------------- /configs/fpg/retinanet_r50_fpg-chn128_crop640_50e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'retinanet_r50_fpg_crop640_50e_coco.py' 2 | 3 | model = dict( 4 | neck=dict(out_channels=128, inter_channels=128), 5 | bbox_head=dict(in_channels=128)) 6 | -------------------------------------------------------------------------------- /configs/free_anchor/freeanchor_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './freeanchor_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/free_anchor/freeanchor_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './freeanchor_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | style='pytorch', 12 | init_cfg=dict( 13 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 14 | -------------------------------------------------------------------------------- /configs/fsaf/fsaf_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fsaf_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/fsaf/fsaf_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fsaf_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/gcnet/cascade-mask-rcnn_x101-32x4d-syncbn-dconv-c3-c5-r16-gcb-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../dcn/cascade-mask-rcnn_x101-32x4d-dconv-c3-c5_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 16), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/cascade-mask-rcnn_x101-32x4d-syncbn-dconv-c3-c5-r4-gcb-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../dcn/cascade-mask-rcnn_x101-32x4d-dconv-c3-c5_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 4), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/cascade-mask-rcnn_x101-32x4d-syncbn-dconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../dcn/cascade-mask-rcnn_x101-32x4d-dconv-c3-c5_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), norm_eval=False)) 5 | -------------------------------------------------------------------------------- /configs/gcnet/cascade-mask-rcnn_x101-32x4d-syncbn-r16-gcb-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 16), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/cascade-mask-rcnn_x101-32x4d-syncbn-r4-gcb-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 4), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/cascade-mask-rcnn_x101-32x4d-syncbn_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), norm_eval=False)) 5 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r101-gcb-r16-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict(plugins=[ 4 | dict( 5 | cfg=dict(type='ContextBlock', ratio=1. / 16), 6 | stages=(False, True, True, True), 7 | position='after_conv3') 8 | ])) 9 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r101-gcb-r4-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict(plugins=[ 4 | dict( 5 | cfg=dict(type='ContextBlock', ratio=1. / 4), 6 | stages=(False, True, True, True), 7 | position='after_conv3') 8 | ])) 9 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r101-syncbn-gcb-r16-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 16), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r101-syncbn-gcb-r4-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 4), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r101-syncbn_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), norm_eval=False)) 5 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r50-gcb-r16-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict(plugins=[ 4 | dict( 5 | cfg=dict(type='ContextBlock', ratio=1. / 16), 6 | stages=(False, True, True, True), 7 | position='after_conv3') 8 | ])) 9 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r50-gcb-r4-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict(plugins=[ 4 | dict( 5 | cfg=dict(type='ContextBlock', ratio=1. / 4), 6 | stages=(False, True, True, True), 7 | position='after_conv3') 8 | ])) 9 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r50-syncbn-gcb-r16-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 16), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r50-syncbn-gcb-r4-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 4), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_r50-syncbn_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), norm_eval=False)) 5 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_x101-32x4d-syncbn-gcb-r16-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 16), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_x101-32x4d-syncbn-gcb-r4-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), 5 | norm_eval=False, 6 | plugins=[ 7 | dict( 8 | cfg=dict(type='ContextBlock', ratio=1. / 4), 9 | stages=(False, True, True, True), 10 | position='after_conv3') 11 | ])) 12 | -------------------------------------------------------------------------------- /configs/gcnet/mask-rcnn_x101-32x4d-syncbn_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | norm_cfg=dict(type='SyncBN', requires_grad=True), norm_eval=False)) 5 | -------------------------------------------------------------------------------- /configs/gfl/gfl_r101_fpn_ms-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './gfl_r50_fpn_ms-2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNet', 5 | depth=101, 6 | num_stages=4, 7 | out_indices=(0, 1, 2, 3), 8 | frozen_stages=1, 9 | norm_cfg=dict(type='BN', requires_grad=True), 10 | norm_eval=True, 11 | style='pytorch', 12 | init_cfg=dict(type='Pretrained', 13 | checkpoint='torchvision://resnet101'))) 14 | -------------------------------------------------------------------------------- /configs/ghm/retinanet_r101_fpn_ghm-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_ghm-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/ghm/retinanet_x101-32x4d_fpn_ghm-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_ghm-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/ghm/retinanet_x101-64x4d_fpn_ghm-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_ghm-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/glip/glip_atss_swin-l_fpn_dyhead_pretrain_mixeddata.py: -------------------------------------------------------------------------------- 1 | _base_ = './glip_atss_swin-t_a_fpn_dyhead_pretrain_obj365.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | embed_dims=192, 6 | depths=[2, 2, 18, 2], 7 | num_heads=[6, 12, 24, 48], 8 | window_size=12, 9 | drop_path_rate=0.4, 10 | ), 11 | neck=dict(in_channels=[384, 768, 1536]), 12 | bbox_head=dict(early_fuse=True, num_dyhead_blocks=8)) 13 | -------------------------------------------------------------------------------- /configs/glip/glip_atss_swin-t_b_fpn_dyhead_16xb2_ms-2x_funtune_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './glip_atss_swin-t_a_fpn_dyhead_16xb2_ms-2x_funtune_coco.py' 2 | 3 | model = dict(bbox_head=dict(early_fuse=True, use_checkpoint=True)) 4 | 5 | load_from = 'https://download.openmmlab.com/mmdetection/v3.0/glip/glip_tiny_b_mmdet-6dfbd102.pth' # noqa 6 | 7 | optim_wrapper = dict( 8 | optimizer=dict(lr=0.00001), 9 | clip_grad=dict(_delete_=True, max_norm=1, norm_type=2)) 10 | -------------------------------------------------------------------------------- /configs/glip/glip_atss_swin-t_b_fpn_dyhead_pretrain_obj365.py: -------------------------------------------------------------------------------- 1 | _base_ = './glip_atss_swin-t_a_fpn_dyhead_pretrain_obj365.py' 2 | 3 | model = dict(bbox_head=dict(early_fuse=True)) 4 | -------------------------------------------------------------------------------- /configs/glip/glip_atss_swin-t_c_fpn_dyhead_16xb2_ms-2x_funtune_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './glip_atss_swin-t_b_fpn_dyhead_16xb2_ms-2x_funtune_coco.py' 2 | 3 | load_from = 'https://download.openmmlab.com/mmdetection/v3.0/glip/glip_tiny_c_mmdet-2fc427dd.pth' # noqa 4 | -------------------------------------------------------------------------------- /configs/glip/glip_atss_swin-t_c_fpn_dyhead_pretrain_obj365-goldg.py: -------------------------------------------------------------------------------- 1 | _base_ = './glip_atss_swin-t_b_fpn_dyhead_pretrain_obj365.py' 2 | -------------------------------------------------------------------------------- /configs/glip/glip_atss_swin-t_fpn_dyhead_16xb2_ms-2x_funtune_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './glip_atss_swin-t_b_fpn_dyhead_16xb2_ms-2x_funtune_coco.py' 2 | 3 | load_from = 'https://download.openmmlab.com/mmdetection/v3.0/glip/glip_tiny_mmdet-c24ce662.pth' # noqa 4 | -------------------------------------------------------------------------------- /configs/glip/glip_atss_swin-t_fpn_dyhead_pretrain_obj365-goldg-cc3m-sub.py: -------------------------------------------------------------------------------- 1 | _base_ = './glip_atss_swin-t_b_fpn_dyhead_pretrain_obj365.py' 2 | -------------------------------------------------------------------------------- /configs/gn+ws/faster-rcnn_r101_fpn_gn-ws-all_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_r50_fpn_gn-ws-all_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', checkpoint='open-mmlab://jhu/resnet101_gn_ws'))) 7 | -------------------------------------------------------------------------------- /configs/gn+ws/mask-rcnn_r101_fpn_gn-ws-all_20-23-24e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r101_fpn_gn-ws-all_2x_coco.py' 2 | # learning policy 3 | max_epochs = 24 4 | train_cfg = dict(max_epochs=max_epochs) 5 | 6 | # learning rate 7 | param_scheduler = [ 8 | dict( 9 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 10 | dict( 11 | type='MultiStepLR', 12 | begin=0, 13 | end=max_epochs, 14 | by_epoch=True, 15 | milestones=[20, 23], 16 | gamma=0.1) 17 | ] 18 | -------------------------------------------------------------------------------- /configs/gn+ws/mask-rcnn_r101_fpn_gn-ws-all_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_gn-ws-all_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', checkpoint='open-mmlab://jhu/resnet101_gn_ws'))) 7 | -------------------------------------------------------------------------------- /configs/gn+ws/mask-rcnn_r50_fpn_gn-ws-all_20-23-24e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_gn-ws-all_2x_coco.py' 2 | # learning policy 3 | max_epochs = 24 4 | train_cfg = dict(max_epochs=max_epochs) 5 | 6 | # learning rate 7 | param_scheduler = [ 8 | dict( 9 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 10 | dict( 11 | type='MultiStepLR', 12 | begin=0, 13 | end=max_epochs, 14 | by_epoch=True, 15 | milestones=[20, 23], 16 | gamma=0.1) 17 | ] 18 | -------------------------------------------------------------------------------- /configs/gn+ws/mask-rcnn_x101-32x4d_fpn_gn-ws-all_20-23-24e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_x101-32x4d_fpn_gn-ws-all_2x_coco.py' 2 | # learning policy 3 | max_epochs = 24 4 | train_cfg = dict(max_epochs=max_epochs) 5 | 6 | # learning rate 7 | param_scheduler = [ 8 | dict( 9 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 10 | dict( 11 | type='MultiStepLR', 12 | begin=0, 13 | end=max_epochs, 14 | by_epoch=True, 15 | milestones=[20, 23], 16 | gamma=0.1) 17 | ] 18 | -------------------------------------------------------------------------------- /configs/gn+ws/mask-rcnn_x50-32x4d_fpn_gn-ws-all_20-23-24e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_x50-32x4d_fpn_gn-ws-all_2x_coco.py' 2 | # learning policy 3 | max_epochs = 24 4 | train_cfg = dict(max_epochs=max_epochs) 5 | 6 | # learning rate 7 | param_scheduler = [ 8 | dict( 9 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 10 | dict( 11 | type='MultiStepLR', 12 | begin=0, 13 | end=max_epochs, 14 | by_epoch=True, 15 | milestones=[20, 23], 16 | gamma=0.1) 17 | ] 18 | -------------------------------------------------------------------------------- /configs/gn/mask-rcnn_r101_fpn_gn-all_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_gn-all_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron/resnet101_gn'))) 8 | -------------------------------------------------------------------------------- /configs/gn/mask-rcnn_r101_fpn_gn-all_3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r101_fpn_gn-all_2x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 36 5 | train_cfg = dict(max_epochs=max_epochs) 6 | 7 | # learning rate 8 | param_scheduler = [ 9 | dict( 10 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 11 | dict( 12 | type='MultiStepLR', 13 | begin=0, 14 | end=max_epochs, 15 | by_epoch=True, 16 | milestones=[28, 34], 17 | gamma=0.1) 18 | ] 19 | -------------------------------------------------------------------------------- /configs/gn/mask-rcnn_r50-contrib_fpn_gn-all_3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50-contrib_fpn_gn-all_2x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 36 5 | train_cfg = dict(max_epochs=max_epochs) 6 | 7 | # learning rate 8 | param_scheduler = [ 9 | dict( 10 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 11 | dict( 12 | type='MultiStepLR', 13 | begin=0, 14 | end=max_epochs, 15 | by_epoch=True, 16 | milestones=[28, 34], 17 | gamma=0.1) 18 | ] 19 | -------------------------------------------------------------------------------- /configs/gn/mask-rcnn_r50_fpn_gn-all_3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_gn-all_2x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 36 5 | train_cfg = dict(max_epochs=max_epochs) 6 | 7 | # learning rate 8 | param_scheduler = [ 9 | dict( 10 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 11 | dict( 12 | type='MultiStepLR', 13 | begin=0, 14 | end=max_epochs, 15 | by_epoch=True, 16 | milestones=[28, 34], 17 | gamma=0.1) 18 | ] 19 | -------------------------------------------------------------------------------- /configs/grid_rcnn/grid-rcnn_r101_fpn_gn-head_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './grid-rcnn_r50_fpn_gn-head_2x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/grid_rcnn/grid-rcnn_r50_fpn_gn-head_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './grid-rcnn_r50_fpn_gn-head_2x_coco.py' 2 | 3 | # training schedule 4 | max_epochs = 12 5 | train_cfg = dict(max_epochs=max_epochs) 6 | 7 | # learning rate 8 | param_scheduler = [ 9 | dict( 10 | type='LinearLR', start_factor=0.0001, by_epoch=False, begin=0, 11 | end=500), 12 | dict( 13 | type='MultiStepLR', 14 | begin=0, 15 | end=max_epochs, 16 | by_epoch=True, 17 | milestones=[8, 11], 18 | gamma=0.1) 19 | ] 20 | -------------------------------------------------------------------------------- /configs/grid_rcnn/grid-rcnn_x101-32x4d_fpn_gn-head_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './grid-rcnn_r50_fpn_gn-head_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | style='pytorch', 12 | init_cfg=dict( 13 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 14 | -------------------------------------------------------------------------------- /configs/grid_rcnn/grid-rcnn_x101-64x4d_fpn_gn-head_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './grid-rcnn_x101-32x4d_fpn_gn-head_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | style='pytorch', 12 | init_cfg=dict( 13 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 14 | -------------------------------------------------------------------------------- /configs/grounding_dino/grounding_dino_swin-b_pretrain_mixeddata.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './grounding_dino_swin-t_pretrain_obj365_goldg_cap4m.py', 3 | ] 4 | 5 | model = dict( 6 | type='GroundingDINO', 7 | backbone=dict( 8 | pretrain_img_size=384, 9 | embed_dims=128, 10 | depths=[2, 2, 18, 2], 11 | num_heads=[4, 8, 16, 32], 12 | window_size=12, 13 | drop_path_rate=0.3, 14 | patch_norm=True), 15 | neck=dict(in_channels=[256, 512, 1024]), 16 | ) 17 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-faster-rcnn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-faster-rcnn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-faster-rcnn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-faster-rcnn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-retinanet_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-retinanet_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-retinanet_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-retinanet_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-retinanet_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-retinanet_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-rpn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-rpn_r50-caffe_fpn_1x_coco.py' 2 | # model settings 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict( 7 | type='Pretrained', 8 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 9 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-rpn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-rpn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/guided_anchoring/ga-rpn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ga-rpn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/hrnet/cascade-rcnn_hrnetv2p-w18-20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_hrnetv2p-w32-20e_coco.py' 2 | # model settings 3 | model = dict( 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(18, 36)), 7 | stage3=dict(num_channels=(18, 36, 72)), 8 | stage4=dict(num_channels=(18, 36, 72, 144))), 9 | init_cfg=dict( 10 | type='Pretrained', checkpoint='open-mmlab://msra/hrnetv2_w18')), 11 | neck=dict(type='HRFPN', in_channels=[18, 36, 72, 144], out_channels=256)) 12 | -------------------------------------------------------------------------------- /configs/hrnet/faster-rcnn_hrnetv2p-w18-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_hrnetv2p-w32-1x_coco.py' 2 | # model settings 3 | model = dict( 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(18, 36)), 7 | stage3=dict(num_channels=(18, 36, 72)), 8 | stage4=dict(num_channels=(18, 36, 72, 144))), 9 | init_cfg=dict( 10 | type='Pretrained', checkpoint='open-mmlab://msra/hrnetv2_w18')), 11 | neck=dict(type='HRFPN', in_channels=[18, 36, 72, 144], out_channels=256)) 12 | -------------------------------------------------------------------------------- /configs/hrnet/faster-rcnn_hrnetv2p-w18-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_hrnetv2p-w18-1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/faster-rcnn_hrnetv2p-w32_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_hrnetv2p-w32-1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/faster-rcnn_hrnetv2p-w40-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_hrnetv2p-w32-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='HRNet', 5 | extra=dict( 6 | stage2=dict(num_channels=(40, 80)), 7 | stage3=dict(num_channels=(40, 80, 160)), 8 | stage4=dict(num_channels=(40, 80, 160, 320))), 9 | init_cfg=dict( 10 | type='Pretrained', checkpoint='open-mmlab://msra/hrnetv2_w40')), 11 | neck=dict(type='HRFPN', in_channels=[40, 80, 160, 320], out_channels=256)) 12 | -------------------------------------------------------------------------------- /configs/hrnet/faster-rcnn_hrnetv2p-w40_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_hrnetv2p-w40-1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/fcos_hrnetv2p-w18-gn-head_4xb4-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcos_hrnetv2p-w32-gn-head_4xb4-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | extra=dict( 5 | stage2=dict(num_channels=(18, 36)), 6 | stage3=dict(num_channels=(18, 36, 72)), 7 | stage4=dict(num_channels=(18, 36, 72, 144))), 8 | init_cfg=dict( 9 | type='Pretrained', checkpoint='open-mmlab://msra/hrnetv2_w18')), 10 | neck=dict(type='HRFPN', in_channels=[18, 36, 72, 144], out_channels=256)) 11 | -------------------------------------------------------------------------------- /configs/hrnet/fcos_hrnetv2p-w18-gn-head_4xb4-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcos_hrnetv2p-w18-gn-head_4xb4-1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/fcos_hrnetv2p-w32-gn-head_4xb4-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcos_hrnetv2p-w32-gn-head_4xb4-1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/htc_hrnetv2p-w18_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './htc_hrnetv2p-w32_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | extra=dict( 5 | stage2=dict(num_channels=(18, 36)), 6 | stage3=dict(num_channels=(18, 36, 72)), 7 | stage4=dict(num_channels=(18, 36, 72, 144))), 8 | init_cfg=dict( 9 | type='Pretrained', checkpoint='open-mmlab://msra/hrnetv2_w18')), 10 | neck=dict(type='HRFPN', in_channels=[18, 36, 72, 144], out_channels=256)) 11 | -------------------------------------------------------------------------------- /configs/hrnet/htc_hrnetv2p-w40_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './htc_hrnetv2p-w32_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='HRNet', 5 | extra=dict( 6 | stage2=dict(num_channels=(40, 80)), 7 | stage3=dict(num_channels=(40, 80, 160)), 8 | stage4=dict(num_channels=(40, 80, 160, 320))), 9 | init_cfg=dict( 10 | type='Pretrained', checkpoint='open-mmlab://msra/hrnetv2_w40')), 11 | neck=dict(type='HRFPN', in_channels=[40, 80, 160, 320], out_channels=256)) 12 | -------------------------------------------------------------------------------- /configs/hrnet/htc_hrnetv2p-w40_28e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './htc_hrnetv2p-w40_20e_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 28 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[24, 27], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/htc_x101-64x4d_fpn_16xb1-28e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../htc/htc_x101-64x4d_fpn_16xb1-20e_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 28 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[24, 27], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/mask-rcnn_hrnetv2p-w18-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_hrnetv2p-w32-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | extra=dict( 5 | stage2=dict(num_channels=(18, 36)), 6 | stage3=dict(num_channels=(18, 36, 72)), 7 | stage4=dict(num_channels=(18, 36, 72, 144))), 8 | init_cfg=dict( 9 | type='Pretrained', checkpoint='open-mmlab://msra/hrnetv2_w18')), 10 | neck=dict(type='HRFPN', in_channels=[18, 36, 72, 144], out_channels=256)) 11 | -------------------------------------------------------------------------------- /configs/hrnet/mask-rcnn_hrnetv2p-w18-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_hrnetv2p-w18-1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/mask-rcnn_hrnetv2p-w32-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_hrnetv2p-w32-1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/mask-rcnn_hrnetv2p-w40-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_hrnetv2p-w40_1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/hrnet/mask-rcnn_hrnetv2p-w40_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_hrnetv2p-w18-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='HRNet', 5 | extra=dict( 6 | stage2=dict(num_channels=(40, 80)), 7 | stage3=dict(num_channels=(40, 80, 160)), 8 | stage4=dict(num_channels=(40, 80, 160, 320))), 9 | init_cfg=dict( 10 | type='Pretrained', checkpoint='open-mmlab://msra/hrnetv2_w40')), 11 | neck=dict(type='HRFPN', in_channels=[40, 80, 160, 320], out_channels=256)) 12 | -------------------------------------------------------------------------------- /configs/htc/htc_r101_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './htc_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/htc/htc_r50_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './htc_r50_fpn_1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 20 5 | param_scheduler = [ 6 | dict( 7 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 8 | dict( 9 | type='MultiStepLR', 10 | begin=0, 11 | end=max_epochs, 12 | by_epoch=True, 13 | milestones=[16, 19], 14 | gamma=0.1) 15 | ] 16 | train_cfg = dict(max_epochs=max_epochs) 17 | -------------------------------------------------------------------------------- /configs/htc/htc_x101-64x4d_fpn_16xb1-20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './htc_x101-32x4d_fpn_16xb1-20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | groups=64, 6 | init_cfg=dict( 7 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 8 | -------------------------------------------------------------------------------- /configs/instaboost/cascade-mask-rcnn_r101_fpn_instaboost-4x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r50_fpn_instaboost-4x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/instaboost/mask-rcnn_r101_fpn_instaboost-4x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_instaboost-4x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/instaboost/mask-rcnn_x101-64x4d_fpn_instaboost-4x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_instaboost-4x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/libra_rcnn/libra-faster-rcnn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './libra-faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/libra_rcnn/libra-faster-rcnn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './libra-faster-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/lvis/mask-rcnn_r101_fpn_sample1e-3_ms-1x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_sample1e-3_ms-1x_lvis-v1.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/lvis/mask-rcnn_r101_fpn_sample1e-3_ms-2x_lvis-v0.5.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_sample1e-3_ms-2x_lvis-v0.5.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/lvis/mask-rcnn_r50_fpn_sample1e-3_ms-1x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/lvis_v1_instance.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | model = dict( 7 | roi_head=dict( 8 | bbox_head=dict(num_classes=1203), mask_head=dict(num_classes=1203)), 9 | test_cfg=dict( 10 | rcnn=dict( 11 | score_thr=0.0001, 12 | # LVIS allows up to 300 13 | max_per_img=300))) 14 | -------------------------------------------------------------------------------- /configs/lvis/mask-rcnn_r50_fpn_sample1e-3_ms-2x_lvis-v0.5.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/lvis_v0.5_instance.py', 4 | '../_base_/schedules/schedule_2x.py', '../_base_/default_runtime.py' 5 | ] 6 | model = dict( 7 | roi_head=dict( 8 | bbox_head=dict(num_classes=1230), mask_head=dict(num_classes=1230)), 9 | test_cfg=dict( 10 | rcnn=dict( 11 | score_thr=0.0001, 12 | # LVIS allows up to 300 13 | max_per_img=300))) 14 | -------------------------------------------------------------------------------- /configs/mask2former/mask2former_r101_8xb2-lsj-50e_coco-panoptic.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask2former_r50_8xb2-lsj-50e_coco-panoptic.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/mask2former/mask2former_r101_8xb2-lsj-50e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./mask2former_r50_8xb2-lsj-50e_coco.py'] 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/mask2former/mask2former_swin-b-p4-w12-384-in21k_8xb2-lsj-50e_coco-panoptic.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./mask2former_swin-b-p4-w12-384_8xb2-lsj-50e_coco-panoptic.py'] 2 | pretrained = 'https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_base_patch4_window12_384_22k.pth' # noqa 3 | 4 | model = dict( 5 | backbone=dict(init_cfg=dict(type='Pretrained', checkpoint=pretrained))) 6 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r101_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r101_fpn_ms-poly-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../common/ms-poly_3x_coco-instance.py', 3 | '../_base_/models/mask-rcnn_r50_fpn.py' 4 | ] 5 | 6 | model = dict( 7 | backbone=dict( 8 | depth=101, 9 | init_cfg=dict(type='Pretrained', 10 | checkpoint='torchvision://resnet101'))) 11 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r18_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r50-caffe-c4_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50-caffe-c4.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r50-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | # use caffe img_norm 4 | data_preprocessor=dict( 5 | mean=[103.530, 116.280, 123.675], 6 | std=[1.0, 1.0, 1.0], 7 | bgr_to_rgb=False), 8 | backbone=dict( 9 | norm_cfg=dict(requires_grad=False), 10 | style='caffe', 11 | init_cfg=dict( 12 | type='Pretrained', 13 | checkpoint='open-mmlab://detectron2/resnet50_caffe'))) 14 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r50-caffe_fpn_ms-poly-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50-caffe_fpn_ms-poly-1x_coco.py' 2 | 3 | train_cfg = dict(max_epochs=24) 4 | # learning rate 5 | param_scheduler = [ 6 | dict( 7 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 8 | dict( 9 | type='MultiStepLR', 10 | begin=0, 11 | end=24, 12 | by_epoch=True, 13 | milestones=[16, 22], 14 | gamma=0.1) 15 | ] 16 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r50-caffe_fpn_ms-poly-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50-caffe_fpn_ms-poly-1x_coco.py' 2 | 3 | train_cfg = dict(max_epochs=36) 4 | # learning rate 5 | param_scheduler = [ 6 | dict( 7 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 8 | dict( 9 | type='MultiStepLR', 10 | begin=0, 11 | end=24, 12 | by_epoch=True, 13 | milestones=[28, 34], 14 | gamma=0.1) 15 | ] 16 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r50_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r50_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_2x.py', '../_base_/default_runtime.py' 5 | ] 6 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r50_fpn_amp-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_1x_coco.py' 2 | 3 | # Enable automatic-mixed-precision training with AmpOptimWrapper. 4 | optim_wrapper = dict(type='AmpOptimWrapper') 5 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_r50_fpn_ms-poly-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../common/ms-poly_3x_coco-instance.py', 3 | '../_base_/models/mask-rcnn_r50_fpn.py' 4 | ] 5 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r101_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_x101-32x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r101_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_x101-32x4d_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/mask_rcnn/mask-rcnn_x101-64x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_x101-32x4d_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/ms_rcnn/ms-rcnn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ms-rcnn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/ms_rcnn/ms-rcnn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ms-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/ms_rcnn/ms-rcnn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './ms-rcnn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/openimages/faster-rcnn_r50_fpn_32xb2-cas-1x_openimages-challenge.py: -------------------------------------------------------------------------------- 1 | _base_ = ['faster-rcnn_r50_fpn_32xb2-1x_openimages-challenge.py'] 2 | 3 | # Use ClassAwareSampler 4 | train_dataloader = dict( 5 | sampler=dict(_delete_=True, type='ClassAwareSampler', num_sample_class=1)) 6 | -------------------------------------------------------------------------------- /configs/openimages/faster-rcnn_r50_fpn_32xb2-cas-1x_openimages.py: -------------------------------------------------------------------------------- 1 | _base_ = ['faster-rcnn_r50_fpn_32xb2-1x_openimages.py'] 2 | 3 | # Use ClassAwareSampler 4 | train_dataloader = dict( 5 | sampler=dict(_delete_=True, type='ClassAwareSampler', num_sample_class=1)) 6 | -------------------------------------------------------------------------------- /configs/paa/paa_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './paa_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/paa/paa_r101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './paa_r101_fpn_1x_coco.py' 2 | max_epochs = 24 3 | 4 | # learning rate 5 | param_scheduler = [ 6 | dict( 7 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 8 | dict( 9 | type='MultiStepLR', 10 | begin=0, 11 | end=max_epochs, 12 | by_epoch=True, 13 | milestones=[16, 22], 14 | gamma=0.1) 15 | ] 16 | 17 | # training schedule for 2x 18 | train_cfg = dict(max_epochs=max_epochs) 19 | -------------------------------------------------------------------------------- /configs/paa/paa_r101_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './paa_r50_fpn_ms-3x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/paa/paa_r50_fpn_1.5x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './paa_r50_fpn_1x_coco.py' 2 | max_epochs = 18 3 | 4 | # learning rate 5 | param_scheduler = [ 6 | dict( 7 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 8 | dict( 9 | type='MultiStepLR', 10 | begin=0, 11 | end=max_epochs, 12 | by_epoch=True, 13 | milestones=[12, 16], 14 | gamma=0.1) 15 | ] 16 | 17 | # training schedule for 1.5x 18 | train_cfg = dict(max_epochs=max_epochs) 19 | -------------------------------------------------------------------------------- /configs/paa/paa_r50_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './paa_r50_fpn_1x_coco.py' 2 | max_epochs = 24 3 | 4 | # learning rate 5 | param_scheduler = [ 6 | dict( 7 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 8 | dict( 9 | type='MultiStepLR', 10 | begin=0, 11 | end=max_epochs, 12 | by_epoch=True, 13 | milestones=[16, 22], 14 | gamma=0.1) 15 | ] 16 | 17 | # training schedule for 2x 18 | train_cfg = dict(max_epochs=max_epochs) 19 | -------------------------------------------------------------------------------- /configs/pafpn/faster-rcnn_r50_pafpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py' 2 | 3 | model = dict( 4 | neck=dict( 5 | type='PAFPN', 6 | in_channels=[256, 512, 1024, 2048], 7 | out_channels=256, 8 | num_outs=5)) 9 | -------------------------------------------------------------------------------- /configs/panoptic_fpn/panoptic-fpn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './panoptic-fpn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/panoptic_fpn/panoptic-fpn_r101_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './panoptic-fpn_r50_fpn_ms-3x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/pisa/retinanet-r50_fpn_pisa_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../retinanet/retinanet_r50_fpn_1x_coco.py' 2 | 3 | model = dict( 4 | bbox_head=dict( 5 | type='PISARetinaHead', 6 | loss_bbox=dict(type='SmoothL1Loss', beta=0.11, loss_weight=1.0)), 7 | train_cfg=dict(isr=dict(k=2., bias=0.), carl=dict(k=1., bias=0.2))) 8 | -------------------------------------------------------------------------------- /configs/pisa/retinanet_x101-32x4d_fpn_pisa_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../retinanet/retinanet_x101-32x4d_fpn_1x_coco.py' 2 | 3 | model = dict( 4 | bbox_head=dict( 5 | type='PISARetinaHead', 6 | loss_bbox=dict(type='SmoothL1Loss', beta=0.11, loss_weight=1.0)), 7 | train_cfg=dict(isr=dict(k=2., bias=0.), carl=dict(k=1., bias=0.2))) 8 | -------------------------------------------------------------------------------- /configs/pisa/ssd300_pisa_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../ssd/ssd300_coco.py' 2 | 3 | model = dict( 4 | bbox_head=dict(type='PISASSDHead'), 5 | train_cfg=dict(isr=dict(k=2., bias=0.), carl=dict(k=1., bias=0.2))) 6 | 7 | optim_wrapper = dict(clip_grad=dict(max_norm=35, norm_type=2)) 8 | -------------------------------------------------------------------------------- /configs/pisa/ssd512_pisa_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../ssd/ssd512_coco.py' 2 | 3 | model = dict( 4 | bbox_head=dict(type='PISASSDHead'), 5 | train_cfg=dict(isr=dict(k=2., bias=0.), carl=dict(k=1., bias=0.2))) 6 | 7 | optim_wrapper = dict(clip_grad=dict(max_norm=35, norm_type=2)) 8 | -------------------------------------------------------------------------------- /configs/point_rend/point-rend_r50-caffe_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './point-rend_r50-caffe_fpn_ms-1x_coco.py' 2 | 3 | max_epochs = 36 4 | 5 | # learning policy 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[28, 34], 15 | gamma=0.1) 16 | ] 17 | 18 | train_cfg = dict(max_epochs=max_epochs) 19 | -------------------------------------------------------------------------------- /configs/pvt/retinanet_pvt-l_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'retinanet_pvt-t_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | num_layers=[3, 8, 27, 3], 5 | init_cfg=dict(checkpoint='https://github.com/whai362/PVT/' 6 | 'releases/download/v2/pvt_large.pth'))) 7 | # Enable automatic-mixed-precision training with AmpOptimWrapper. 8 | optim_wrapper = dict(type='AmpOptimWrapper') 9 | -------------------------------------------------------------------------------- /configs/pvt/retinanet_pvt-m_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'retinanet_pvt-t_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | num_layers=[3, 4, 18, 3], 5 | init_cfg=dict(checkpoint='https://github.com/whai362/PVT/' 6 | 'releases/download/v2/pvt_medium.pth'))) 7 | -------------------------------------------------------------------------------- /configs/pvt/retinanet_pvt-s_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'retinanet_pvt-t_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | num_layers=[3, 4, 6, 3], 5 | init_cfg=dict(checkpoint='https://github.com/whai362/PVT/' 6 | 'releases/download/v2/pvt_small.pth'))) 7 | -------------------------------------------------------------------------------- /configs/pvt/retinanet_pvtv2-b1_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'retinanet_pvtv2-b0_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | embed_dims=64, 5 | init_cfg=dict(checkpoint='https://github.com/whai362/PVT/' 6 | 'releases/download/v2/pvt_v2_b1.pth')), 7 | neck=dict(in_channels=[64, 128, 320, 512])) 8 | -------------------------------------------------------------------------------- /configs/pvt/retinanet_pvtv2-b2_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'retinanet_pvtv2-b0_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | embed_dims=64, 5 | num_layers=[3, 4, 6, 3], 6 | init_cfg=dict(checkpoint='https://github.com/whai362/PVT/' 7 | 'releases/download/v2/pvt_v2_b2.pth')), 8 | neck=dict(in_channels=[64, 128, 320, 512])) 9 | -------------------------------------------------------------------------------- /configs/pvt/retinanet_pvtv2-b3_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'retinanet_pvtv2-b0_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | embed_dims=64, 5 | num_layers=[3, 4, 18, 3], 6 | init_cfg=dict(checkpoint='https://github.com/whai362/PVT/' 7 | 'releases/download/v2/pvt_v2_b3.pth')), 8 | neck=dict(in_channels=[64, 128, 320, 512])) 9 | -------------------------------------------------------------------------------- /configs/qdtrack/qdtrack_faster-rcnn_r50_fpn_8xb2-4e_mot17halftrain_test-mot17halfval.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './qdtrack_faster-rcnn_r50_fpn_4e_base.py', 3 | '../_base_/datasets/mot_challenge.py', 4 | ] 5 | 6 | # evaluator 7 | val_evaluator = [ 8 | dict(type='CocoVideoMetric', metric=['bbox'], classwise=True), 9 | dict(type='MOTChallengeMetric', metric=['HOTA', 'CLEAR', 'Identity']) 10 | ] 11 | 12 | test_evaluator = val_evaluator 13 | # The fluctuation of HOTA is about +-1. 14 | randomness = dict(seed=6) 15 | -------------------------------------------------------------------------------- /configs/queryinst/queryinst_r101_fpn_300-proposals_crop-ms-480-800-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './queryinst_r50_fpn_300-proposals_crop-ms-480-800-3x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/queryinst/queryinst_r101_fpn_ms-480-800-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './queryinst_r50_fpn_ms-480-800-3x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/regnet/faster-rcnn_regnetx-3.2GF_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_regnetx-3.2GF_fpn_1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict(max_epochs=max_epochs) 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=max_epochs, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/regnet/mask-rcnn_regnetx-3.2GF-mdconv-c3-c5_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'mask-rcnn_regnetx-3.2GF_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCNv2', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True), 6 | init_cfg=dict( 7 | type='Pretrained', checkpoint='open-mmlab://regnetx_3.2gf'))) 8 | -------------------------------------------------------------------------------- /configs/reid/reid_r50_8xb32-6e_mot15train80_test-mot15val20.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./reid_r50_8xb32-6e_mot17train80_test-mot17val20.py'] 2 | model = dict(head=dict(num_classes=368)) 3 | # data 4 | data_root = 'data/MOT15/' 5 | train_dataloader = dict(dataset=dict(data_root=data_root)) 6 | val_dataloader = dict(dataset=dict(data_root=data_root)) 7 | test_dataloader = val_dataloader 8 | -------------------------------------------------------------------------------- /configs/reid/reid_r50_8xb32-6e_mot16train80_test-mot16val20.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./reid_r50_8xb32-6e_mot17train80_test-mot17val20.py'] 2 | model = dict(head=dict(num_classes=371)) 3 | # data 4 | data_root = 'data/MOT16/' 5 | train_dataloader = dict(dataset=dict(data_root=data_root)) 6 | val_dataloader = dict(dataset=dict(data_root=data_root)) 7 | test_dataloader = val_dataloader 8 | -------------------------------------------------------------------------------- /configs/reid/reid_r50_8xb32-6e_mot20train80_test-mot20val20.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./reid_r50_8xb32-6e_mot17train80_test-mot17val20.py'] 2 | model = dict(head=dict(num_classes=1701)) 3 | # data 4 | data_root = 'data/MOT20/' 5 | train_dataloader = dict(dataset=dict(data_root=data_root)) 6 | val_dataloader = dict(dataset=dict(data_root=data_root)) 7 | test_dataloader = val_dataloader 8 | 9 | # train, val, test setting 10 | train_cfg = dict(type='EpochBasedTrainLoop', max_epochs=6, val_interval=7) 11 | -------------------------------------------------------------------------------- /configs/reppoints/reppoints-bbox_r50-center_fpn-gn_head-gn-grid_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './reppoints-moment_r50_fpn-gn_head-gn_1x_coco.py' 2 | model = dict(bbox_head=dict(transform_method='minmax', use_grid_points=True)) 3 | -------------------------------------------------------------------------------- /configs/reppoints/reppoints-minmax_r50_fpn-gn_head-gn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './reppoints-moment_r50_fpn-gn_head-gn_1x_coco.py' 2 | model = dict(bbox_head=dict(transform_method='minmax')) 3 | -------------------------------------------------------------------------------- /configs/reppoints/reppoints-moment_r101-dconv-c3-c5_fpn-gn_head-gn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './reppoints-moment_r50_fpn-gn_head-gn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | dcn=dict(type='DCN', deform_groups=1, fallback_on_stride=False), 6 | stage_with_dcn=(False, True, True, True), 7 | init_cfg=dict(type='Pretrained', 8 | checkpoint='torchvision://resnet101'))) 9 | -------------------------------------------------------------------------------- /configs/reppoints/reppoints-moment_r101_fpn-gn_head-gn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './reppoints-moment_r50_fpn-gn_head-gn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/reppoints/reppoints-moment_r50_fpn-gn_head-gn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './reppoints-moment_r50_fpn_1x_coco.py' 2 | norm_cfg = dict(type='GN', num_groups=32, requires_grad=True) 3 | model = dict(neck=dict(norm_cfg=norm_cfg), bbox_head=dict(norm_cfg=norm_cfg)) 4 | -------------------------------------------------------------------------------- /configs/reppoints/reppoints-partial-minmax_r50_fpn-gn_head-gn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './reppoints-moment_r50_fpn-gn_head-gn_1x_coco.py' 2 | model = dict(bbox_head=dict(transform_method='partial_minmax')) 3 | -------------------------------------------------------------------------------- /configs/reppoints/reppoints.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/configs/reppoints/reppoints.png -------------------------------------------------------------------------------- /configs/res2net/cascade-mask-rcnn_res2net-101_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-mask-rcnn_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=101, 6 | scales=4, 7 | base_width=26, 8 | init_cfg=dict( 9 | type='Pretrained', 10 | checkpoint='open-mmlab://res2net101_v1d_26w_4s'))) 11 | -------------------------------------------------------------------------------- /configs/res2net/cascade-rcnn_res2net-101_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../cascade_rcnn/cascade-rcnn_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=101, 6 | scales=4, 7 | base_width=26, 8 | init_cfg=dict( 9 | type='Pretrained', 10 | checkpoint='open-mmlab://res2net101_v1d_26w_4s'))) 11 | -------------------------------------------------------------------------------- /configs/res2net/faster-rcnn_res2net-101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../faster_rcnn/faster-rcnn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=101, 6 | scales=4, 7 | base_width=26, 8 | init_cfg=dict( 9 | type='Pretrained', 10 | checkpoint='open-mmlab://res2net101_v1d_26w_4s'))) 11 | -------------------------------------------------------------------------------- /configs/res2net/htc_res2net-101_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../htc/htc_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=101, 6 | scales=4, 7 | base_width=26, 8 | init_cfg=dict( 9 | type='Pretrained', 10 | checkpoint='open-mmlab://res2net101_v1d_26w_4s'))) 11 | -------------------------------------------------------------------------------- /configs/res2net/mask-rcnn_res2net-101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = '../mask_rcnn/mask-rcnn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='Res2Net', 5 | depth=101, 6 | scales=4, 7 | base_width=26, 8 | init_cfg=dict( 9 | type='Pretrained', 10 | checkpoint='open-mmlab://res2net101_v1d_26w_4s'))) 11 | -------------------------------------------------------------------------------- /configs/resnest/cascade-mask-rcnn_s101_fpn_syncbn-backbone+head_ms-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_s50_fpn_syncbn-backbone+head_ms-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | stem_channels=128, 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='open-mmlab://resnest101'))) 8 | -------------------------------------------------------------------------------- /configs/resnest/cascade-rcnn_s101_fpn_syncbn-backbone+head_ms-range-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-rcnn_s50_fpn_syncbn-backbone+head_ms-range-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | stem_channels=128, 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='open-mmlab://resnest101'))) 8 | -------------------------------------------------------------------------------- /configs/resnest/faster-rcnn_s101_fpn_syncbn-backbone+head_ms-range-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './faster-rcnn_s50_fpn_syncbn-backbone+head_ms-range-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | stem_channels=128, 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='open-mmlab://resnest101'))) 8 | -------------------------------------------------------------------------------- /configs/resnest/mask-rcnn_s101_fpn_syncbn-backbone+head_ms-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_s50_fpn_syncbn-backbone+head_ms-1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | stem_channels=128, 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='open-mmlab://resnest101'))) 8 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r101-caffe_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50-caffe_fpn_ms-3x_coco.py' 2 | # learning policy 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict( 7 | type='Pretrained', 8 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 9 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r101_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r101_fpn_ms-640-800-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../_base_/models/retinanet_r50_fpn.py', '../common/ms_3x_coco.py'] 2 | # optimizer 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | optim_wrapper = dict( 9 | optimizer=dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)) 10 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r18_fpn_8xb8-amp-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_8xb8-amp-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r50-caffe_fpn_ms-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50-caffe_fpn_ms-1x_coco.py' 2 | # training schedule for 2x 3 | train_cfg = dict(max_epochs=24) 4 | 5 | # learning rate policy 6 | param_scheduler = [ 7 | dict( 8 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 9 | dict( 10 | type='MultiStepLR', 11 | begin=0, 12 | end=24, 13 | by_epoch=True, 14 | milestones=[16, 22], 15 | gamma=0.1) 16 | ] 17 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r50-caffe_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50-caffe_fpn_ms-1x_coco.py' 2 | 3 | # training schedule for 2x 4 | train_cfg = dict(max_epochs=36) 5 | 6 | # learning rate policy 7 | param_scheduler = [ 8 | dict( 9 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 10 | dict( 11 | type='MultiStepLR', 12 | begin=0, 13 | end=36, 14 | by_epoch=True, 15 | milestones=[28, 34], 16 | gamma=0.1) 17 | ] 18 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r50_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/retinanet_r50_fpn.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py', 5 | './retinanet_tta.py' 6 | ] 7 | 8 | # optimizer 9 | optim_wrapper = dict( 10 | optimizer=dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)) 11 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r50_fpn_amp-1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_1x_coco.py' 2 | 3 | # MMEngine support the following two ways, users can choose 4 | # according to convenience 5 | # optim_wrapper = dict(type='AmpOptimWrapper') 6 | _base_.optim_wrapper.type = 'AmpOptimWrapper' 7 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_r50_fpn_ms-640-800-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../_base_/models/retinanet_r50_fpn.py', '../common/ms_3x_coco.py'] 2 | # optimizer 3 | optim_wrapper = dict( 4 | optimizer=dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)) 5 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_x101-32x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_x101-64x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './retinanet_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/retinanet/retinanet_x101-64x4d_fpn_ms-640-800-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../_base_/models/retinanet_r50_fpn.py', '../common/ms_3x_coco.py'] 2 | # optimizer 3 | model = dict( 4 | backbone=dict( 5 | type='ResNeXt', 6 | depth=101, 7 | groups=64, 8 | base_width=4, 9 | init_cfg=dict( 10 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 11 | optim_wrapper = dict(optimizer=dict(type='SGD', lr=0.01)) 12 | -------------------------------------------------------------------------------- /configs/rpn/rpn_r101-caffe_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rpn_r50-caffe_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict( 6 | type='Pretrained', 7 | checkpoint='open-mmlab://detectron2/resnet101_caffe'))) 8 | -------------------------------------------------------------------------------- /configs/rpn/rpn_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rpn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/rpn/rpn_r101_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rpn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/rpn/rpn_r50-caffe-c4_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/rpn_r50-caffe-c4.py', 3 | '../_base_/datasets/coco_detection.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | val_evaluator = dict(metric='proposal_fast') 8 | test_evaluator = val_evaluator 9 | -------------------------------------------------------------------------------- /configs/rpn/rpn_r50_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rpn_r50_fpn_1x_coco.py' 2 | 3 | # learning policy 4 | max_epochs = 24 5 | train_cfg = dict( 6 | type='EpochBasedTrainLoop', max_epochs=max_epochs, val_interval=1) 7 | param_scheduler = [ 8 | dict( 9 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 10 | dict( 11 | type='MultiStepLR', 12 | begin=0, 13 | end=max_epochs, 14 | by_epoch=True, 15 | milestones=[16, 22], 16 | gamma=0.1) 17 | ] 18 | -------------------------------------------------------------------------------- /configs/rpn/rpn_x101-32x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rpn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/rpn/rpn_x101-32x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rpn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=32, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_32x4d'))) 15 | -------------------------------------------------------------------------------- /configs/rpn/rpn_x101-64x4d_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rpn_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/rpn/rpn_x101-64x4d_fpn_2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rpn_r50_fpn_2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | style='pytorch', 13 | init_cfg=dict( 14 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 15 | -------------------------------------------------------------------------------- /configs/rtmdet/classification/cspnext-l_8xb256-rsb-a1-600e_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './cspnext-s_8xb256-rsb-a1-600e_in1k.py' 2 | 3 | model = dict( 4 | backbone=dict(deepen_factor=1, widen_factor=1), 5 | head=dict(in_channels=1024)) 6 | -------------------------------------------------------------------------------- /configs/rtmdet/classification/cspnext-m_8xb256-rsb-a1-600e_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './cspnext-s_8xb256-rsb-a1-600e_in1k.py' 2 | 3 | model = dict( 4 | backbone=dict(deepen_factor=0.67, widen_factor=0.75), 5 | head=dict(in_channels=768)) 6 | -------------------------------------------------------------------------------- /configs/rtmdet/classification/cspnext-tiny_8xb256-rsb-a1-600e_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './cspnext-s_8xb256-rsb-a1-600e_in1k.py' 2 | 3 | model = dict( 4 | backbone=dict(deepen_factor=0.167, widen_factor=0.375), 5 | head=dict(in_channels=384)) 6 | -------------------------------------------------------------------------------- /configs/rtmdet/classification/cspnext-x_8xb256-rsb-a1-600e_in1k.py: -------------------------------------------------------------------------------- 1 | _base_ = './cspnext-s_8xb256-rsb-a1-600e_in1k.py' 2 | 3 | model = dict( 4 | backbone=dict(deepen_factor=1.33, widen_factor=1.25), 5 | head=dict(in_channels=1280)) 6 | -------------------------------------------------------------------------------- /configs/rtmdet/rtmdet-ins_m_8xb32-300e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rtmdet-ins_l_8xb32-300e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict(deepen_factor=0.67, widen_factor=0.75), 5 | neck=dict(in_channels=[192, 384, 768], out_channels=192, num_csp_blocks=2), 6 | bbox_head=dict(in_channels=192, feat_channels=192)) 7 | -------------------------------------------------------------------------------- /configs/rtmdet/rtmdet_m_8xb32-300e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rtmdet_l_8xb32-300e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict(deepen_factor=0.67, widen_factor=0.75), 5 | neck=dict(in_channels=[192, 384, 768], out_channels=192, num_csp_blocks=2), 6 | bbox_head=dict(in_channels=192, feat_channels=192)) 7 | -------------------------------------------------------------------------------- /configs/rtmdet/rtmdet_x_8xb32-300e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './rtmdet_l_8xb32-300e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict(deepen_factor=1.33, widen_factor=1.25), 5 | neck=dict( 6 | in_channels=[320, 640, 1280], out_channels=320, num_csp_blocks=4), 7 | bbox_head=dict(in_channels=320, feat_channels=320)) 8 | -------------------------------------------------------------------------------- /configs/scnet/scnet_r101_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './scnet_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/scnet/scnet_r50_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './scnet_r50_fpn_1x_coco.py' 2 | # learning policy 3 | max_epochs = 20 4 | param_scheduler = [ 5 | dict( 6 | type='LinearLR', start_factor=0.001, by_epoch=False, begin=0, end=500), 7 | dict( 8 | type='MultiStepLR', 9 | begin=0, 10 | end=max_epochs, 11 | by_epoch=True, 12 | milestones=[16, 19], 13 | gamma=0.1) 14 | ] 15 | train_cfg = dict(max_epochs=max_epochs) 16 | -------------------------------------------------------------------------------- /configs/scnet/scnet_x101-64x4d_fpn_20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './scnet_r50_fpn_20e_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | type='ResNeXt', 5 | depth=101, 6 | groups=64, 7 | base_width=4, 8 | num_stages=4, 9 | out_indices=(0, 1, 2, 3), 10 | frozen_stages=1, 11 | norm_cfg=dict(type='BN', requires_grad=True), 12 | norm_eval=True, 13 | style='pytorch', 14 | init_cfg=dict( 15 | type='Pretrained', checkpoint='open-mmlab://resnext101_64x4d'))) 16 | -------------------------------------------------------------------------------- /configs/scnet/scnet_x101-64x4d_fpn_8xb1-20e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './scnet_x101-64x4d_fpn_20e_coco.py' 2 | train_dataloader = dict(batch_size=1, num_workers=1) 3 | 4 | optim_wrapper = dict(optimizer=dict(lr=0.01)) 5 | # NOTE: `auto_scale_lr` is for automatically scaling LR, 6 | # USER SHOULD NOT CHANGE ITS VALUES. 7 | # base_batch_size = (8 GPUs) x (1 samples per GPU) 8 | auto_scale_lr = dict(base_batch_size=8) 9 | -------------------------------------------------------------------------------- /configs/seesaw_loss/cascade-mask-rcnn_r101_fpn_seesaw-loss-normed-mask_random-ms-2x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r101_fpn_seesaw-loss_random-ms-2x_lvis-v1.py' # noqa: E501 2 | model = dict( 3 | roi_head=dict( 4 | mask_head=dict( 5 | predictor_cfg=dict(type='NormedConv2d', tempearture=20)))) 6 | -------------------------------------------------------------------------------- /configs/seesaw_loss/cascade-mask-rcnn_r101_fpn_seesaw-loss-normed-mask_sample1e-3-ms-2x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './cascade-mask-rcnn_r101_fpn_seesaw-loss_sample1e-3-ms-2x_lvis-v1.py' # noqa: E501 2 | model = dict( 3 | roi_head=dict( 4 | mask_head=dict( 5 | predictor_cfg=dict(type='NormedConv2d', tempearture=20)))) 6 | -------------------------------------------------------------------------------- /configs/seesaw_loss/mask-rcnn_r101_fpn_seesaw-loss-normed-mask_random-ms-2x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_seesaw-loss-normed-mask_random-ms-2x_lvis-v1.py' # noqa: E501 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/seesaw_loss/mask-rcnn_r101_fpn_seesaw-loss-normed-mask_sample1e-3-ms-2x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_seesaw-loss-normed-mask_sample1e-3-ms-2x_lvis-v1.py' # noqa: E501 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/seesaw_loss/mask-rcnn_r101_fpn_seesaw-loss_random-ms-2x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_seesaw-loss_random-ms-2x_lvis-v1.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/seesaw_loss/mask-rcnn_r101_fpn_seesaw-loss_sample1e-3-ms-2x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_seesaw-loss_sample1e-3-ms-2x_lvis-v1.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/seesaw_loss/mask-rcnn_r50_fpn_seesaw-loss-normed-mask_random-ms-2x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_seesaw-loss_random-ms-2x_lvis-v1.py' 2 | model = dict( 3 | roi_head=dict( 4 | mask_head=dict( 5 | predictor_cfg=dict(type='NormedConv2d', tempearture=20)))) 6 | -------------------------------------------------------------------------------- /configs/seesaw_loss/mask-rcnn_r50_fpn_seesaw-loss-normed-mask_sample1e-3-ms-2x_lvis-v1.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_r50_fpn_seesaw-loss_sample1e-3-ms-2x_lvis-v1.py' 2 | model = dict( 3 | roi_head=dict( 4 | mask_head=dict( 5 | predictor_cfg=dict(type='NormedConv2d', tempearture=20)))) 6 | -------------------------------------------------------------------------------- /configs/selfsup_pretrain/mask-rcnn_r50-mocov2-pre_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict( 8 | backbone=dict( 9 | frozen_stages=0, 10 | norm_cfg=dict(type='SyncBN', requires_grad=True), 11 | norm_eval=False, 12 | init_cfg=dict( 13 | type='Pretrained', checkpoint='./mocov2_r50_800ep_pretrain.pth'))) 14 | -------------------------------------------------------------------------------- /configs/selfsup_pretrain/mask-rcnn_r50-swav-pre_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/mask-rcnn_r50_fpn.py', 3 | '../_base_/datasets/coco_instance.py', 4 | '../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py' 5 | ] 6 | 7 | model = dict( 8 | backbone=dict( 9 | frozen_stages=0, 10 | norm_cfg=dict(type='SyncBN', requires_grad=True), 11 | norm_eval=False, 12 | init_cfg=dict( 13 | type='Pretrained', checkpoint='./swav_800ep_pretrain.pth.tar'))) 14 | -------------------------------------------------------------------------------- /configs/solo/solo_r101_fpn_8xb8-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './solo_r50_fpn_8xb8-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/solo/solo_r18_fpn_8xb8-lsj-200e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './solo_r50_fpn_8xb8-lsj-200e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=18, 6 | init_cfg=dict(type='Pretrained', checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/solov2/solov2-light_r18_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './solov2-light_r50_fpn_ms-3x_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict( 6 | depth=18, init_cfg=dict(checkpoint='torchvision://resnet18')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/solov2/solov2-light_r34_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './solov2-light_r50_fpn_ms-3x_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict( 6 | depth=34, init_cfg=dict(checkpoint='torchvision://resnet34')), 7 | neck=dict(in_channels=[64, 128, 256, 512])) 8 | -------------------------------------------------------------------------------- /configs/solov2/solov2_r101_fpn_ms-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './solov2_r50_fpn_ms-3x_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict( 6 | depth=101, init_cfg=dict(checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/sort/faster-rcnn_r50_fpn_8xb2-4e_mot17train_test-mot17train.py: -------------------------------------------------------------------------------- 1 | _base_ = ['./faster-rcnn_r50_fpn_8xb2-4e_mot17halftrain_test-mot17halfval'] 2 | # data 3 | data_root = 'data/MOT17/' 4 | train_dataloader = dict( 5 | dataset=dict(ann_file='annotations/train_cocoformat.json')) 6 | val_dataloader = dict( 7 | dataset=dict(ann_file='annotations/train_cocoformat.json')) 8 | test_dataloader = val_dataloader 9 | 10 | val_evaluator = dict(ann_file=data_root + 'annotations/train_cocoformat.json') 11 | test_evaluator = val_evaluator 12 | -------------------------------------------------------------------------------- /configs/sparse_rcnn/sparse-rcnn_r101_fpn_300-proposals_crop-ms-480-800-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './sparse-rcnn_r50_fpn_300-proposals_crop-ms-480-800-3x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/sparse_rcnn/sparse-rcnn_r101_fpn_ms-480-800-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './sparse-rcnn_r50_fpn_ms-480-800-3x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/strong_baselines/mask-rcnn_r50-caffe_fpn_rpn-2conv_4conv1fc_syncbn-all_amp-lsj-100e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'mask-rcnn_r50-caffe_fpn_rpn-2conv_4conv1fc_syncbn-all_lsj-100e_coco.py' # noqa 2 | 3 | # Enable automatic-mixed-precision training with AmpOptimWrapper. 4 | optim_wrapper = dict(type='AmpOptimWrapper') 5 | -------------------------------------------------------------------------------- /configs/strong_baselines/mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_amp-lsj-100e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_lsj-100e_coco.py' 2 | 3 | # Enable automatic-mixed-precision training with AmpOptimWrapper. 4 | optim_wrapper = dict(type='AmpOptimWrapper') 5 | -------------------------------------------------------------------------------- /configs/strong_baselines/mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_lsj-50e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = 'mask-rcnn_r50_fpn_rpn-2conv_4conv1fc_syncbn-all_lsj-100e_coco.py' 2 | 3 | # Use RepeatDataset to speed up training 4 | # change repeat time from 4 (for 100 epochs) to 2 (for 50 epochs) 5 | train_dataloader = dict(dataset=dict(times=2)) 6 | -------------------------------------------------------------------------------- /configs/swin/mask-rcnn_swin-s-p4-w7_fpn_amp-ms-crop-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_swin-t-p4-w7_fpn_amp-ms-crop-3x_coco.py' 2 | pretrained = 'https://github.com/SwinTransformer/storage/releases/download/v1.0.0/swin_small_patch4_window7_224.pth' # noqa 3 | model = dict( 4 | backbone=dict( 5 | depths=[2, 2, 18, 2], 6 | init_cfg=dict(type='Pretrained', checkpoint=pretrained))) 7 | -------------------------------------------------------------------------------- /configs/swin/mask-rcnn_swin-t-p4-w7_fpn_amp-ms-crop-3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './mask-rcnn_swin-t-p4-w7_fpn_ms-crop-3x_coco.py' 2 | # Enable automatic-mixed-precision training with AmpOptimWrapper. 3 | optim_wrapper = dict(type='AmpOptimWrapper') 4 | -------------------------------------------------------------------------------- /configs/tood/tood_r101-dconv-c3-c5_fpn_ms-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './tood_r101_fpn_ms-2x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | dcn=dict(type='DCNv2', deformable_groups=1, fallback_on_stride=False), 6 | stage_with_dcn=(False, True, True, True)), 7 | bbox_head=dict(num_dcn=2)) 8 | -------------------------------------------------------------------------------- /configs/tood/tood_r101_fpn_ms-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './tood_r50_fpn_ms-2x_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/tood/tood_r50_fpn_anchor-based_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './tood_r50_fpn_1x_coco.py' 2 | model = dict(bbox_head=dict(anchor_type='anchor_based')) 3 | -------------------------------------------------------------------------------- /configs/tood/tood_x101-64x4d-dconv-c4-c5_fpn_ms-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './tood_x101-64x4d_fpn_ms-2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCNv2', deformable_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, False, True, True), 6 | ), 7 | bbox_head=dict(num_dcn=2)) 8 | -------------------------------------------------------------------------------- /configs/v3det/v3det_icon.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/configs/v3det/v3det_icon.jpg -------------------------------------------------------------------------------- /configs/vfnet/vfnet_r101_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './vfnet_r50_fpn_1x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/vfnet/vfnet_r101_fpn_ms-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './vfnet_r50_fpn_ms-2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | depth=101, 5 | init_cfg=dict(type='Pretrained', 6 | checkpoint='torchvision://resnet101'))) 7 | -------------------------------------------------------------------------------- /configs/vfnet/vfnet_r50-mdconv-c3-c5_fpn_ms-2x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './vfnet_r50_fpn_ms-2x_coco.py' 2 | model = dict( 3 | backbone=dict( 4 | dcn=dict(type='DCNv2', deform_groups=1, fallback_on_stride=False), 5 | stage_with_dcn=(False, True, True, True)), 6 | bbox_head=dict(dcn_on_last_conv=True)) 7 | -------------------------------------------------------------------------------- /configs/wider_face/retinanet_r50_fpn_1x_widerface.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/retinanet_r50_fpn.py', 3 | '../_base_/datasets/wider_face.py', '../_base_/schedules/schedule_1x.py', 4 | '../_base_/default_runtime.py' 5 | ] 6 | # model settings 7 | model = dict(bbox_head=dict(num_classes=1)) 8 | # optimizer 9 | optim_wrapper = dict( 10 | optimizer=dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0001)) 11 | -------------------------------------------------------------------------------- /configs/yolact/yolact_r101_1xb8-55e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './yolact_r50_1xb8-55e_coco.py' 2 | 3 | model = dict( 4 | backbone=dict( 5 | depth=101, 6 | init_cfg=dict(type='Pretrained', 7 | checkpoint='torchvision://resnet101'))) 8 | -------------------------------------------------------------------------------- /configs/yolo/yolov3_d53_8xb8-amp-ms-608-273e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './yolov3_d53_8xb8-ms-608-273e_coco.py' 2 | # fp16 settings 3 | optim_wrapper = dict(type='AmpOptimWrapper', loss_scale='dynamic') 4 | -------------------------------------------------------------------------------- /configs/yolox/yolox_l_8xb8-300e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './yolox_s_8xb8-300e_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(deepen_factor=1.0, widen_factor=1.0), 6 | neck=dict( 7 | in_channels=[256, 512, 1024], out_channels=256, num_csp_blocks=3), 8 | bbox_head=dict(in_channels=256, feat_channels=256)) 9 | -------------------------------------------------------------------------------- /configs/yolox/yolox_m_8xb8-300e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './yolox_s_8xb8-300e_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(deepen_factor=0.67, widen_factor=0.75), 6 | neck=dict(in_channels=[192, 384, 768], out_channels=192, num_csp_blocks=2), 7 | bbox_head=dict(in_channels=192, feat_channels=192), 8 | ) 9 | -------------------------------------------------------------------------------- /configs/yolox/yolox_nano_8xb8-300e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './yolox_tiny_8xb8-300e_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(deepen_factor=0.33, widen_factor=0.25, use_depthwise=True), 6 | neck=dict( 7 | in_channels=[64, 128, 256], 8 | out_channels=64, 9 | num_csp_blocks=1, 10 | use_depthwise=True), 11 | bbox_head=dict(in_channels=64, feat_channels=64, use_depthwise=True)) 12 | -------------------------------------------------------------------------------- /configs/yolox/yolox_x_8xb8-300e_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = './yolox_s_8xb8-300e_coco.py' 2 | 3 | # model settings 4 | model = dict( 5 | backbone=dict(deepen_factor=1.33, widen_factor=1.25), 6 | neck=dict( 7 | in_channels=[320, 640, 1280], out_channels=320, num_csp_blocks=4), 8 | bbox_head=dict(in_channels=320, feat_channels=320)) 9 | -------------------------------------------------------------------------------- /demo/demo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/demo/demo.jpg -------------------------------------------------------------------------------- /demo/demo.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/demo/demo.mp4 -------------------------------------------------------------------------------- /demo/demo_mot.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/demo/demo_mot.mp4 -------------------------------------------------------------------------------- /demo/large_image.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/demo/large_image.jpg -------------------------------------------------------------------------------- /docker/serve/config.properties: -------------------------------------------------------------------------------- 1 | inference_address=http://0.0.0.0:8080 2 | management_address=http://0.0.0.0:8081 3 | metrics_address=http://0.0.0.0:8082 4 | model_store=/home/model-server/model-store 5 | load_models=all 6 | -------------------------------------------------------------------------------- /docker/serve/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | if [[ "$1" = "serve" ]]; then 5 | shift 1 6 | torchserve --start --ts-config /home/model-server/config.properties 7 | else 8 | eval "$@" 9 | fi 10 | 11 | # prevent docker exit 12 | tail -f /dev/null 13 | -------------------------------------------------------------------------------- /docs/en/_static/css/readthedocs.css: -------------------------------------------------------------------------------- 1 | .header-logo { 2 | background-image: url("../image/mmdet-logo.png"); 3 | background-size: 156px 40px; 4 | height: 40px; 5 | width: 156px; 6 | } 7 | -------------------------------------------------------------------------------- /docs/en/_static/image/mmdet-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/docs/en/_static/image/mmdet-logo.png -------------------------------------------------------------------------------- /docs/en/advanced_guides/data_flow.md: -------------------------------------------------------------------------------- 1 | # Data Flow 2 | -------------------------------------------------------------------------------- /docs/en/advanced_guides/datasets.md: -------------------------------------------------------------------------------- 1 | # Datasets 2 | -------------------------------------------------------------------------------- /docs/en/advanced_guides/engine.md: -------------------------------------------------------------------------------- 1 | # Engine 2 | -------------------------------------------------------------------------------- /docs/en/advanced_guides/evaluation.md: -------------------------------------------------------------------------------- 1 | # Evaluation 2 | -------------------------------------------------------------------------------- /docs/en/advanced_guides/models.md: -------------------------------------------------------------------------------- 1 | # Models 2 | -------------------------------------------------------------------------------- /docs/en/advanced_guides/structures.md: -------------------------------------------------------------------------------- 1 | # Structures 2 | -------------------------------------------------------------------------------- /docs/en/dataset_zoo.md: -------------------------------------------------------------------------------- 1 | # Dataset Zoo 2 | -------------------------------------------------------------------------------- /docs/en/migration.md: -------------------------------------------------------------------------------- 1 | # Migration 2 | -------------------------------------------------------------------------------- /docs/en/migration/api_and_registry_migration.md: -------------------------------------------------------------------------------- 1 | # Migrate API and Registry from MMDetection 2.x to 3.x 2 | -------------------------------------------------------------------------------- /docs/en/migration/dataset_migration.md: -------------------------------------------------------------------------------- 1 | # Migrate dataset from MMDetection 2.x to 3.x 2 | -------------------------------------------------------------------------------- /docs/en/migration/migration_faq.md: -------------------------------------------------------------------------------- 1 | # Migration FAQ 2 | -------------------------------------------------------------------------------- /docs/en/migration/model_migration.md: -------------------------------------------------------------------------------- 1 | # Migrate models from MMDetection 2.x to 3.x 2 | -------------------------------------------------------------------------------- /docs/en/notes/contribution_guide.md: -------------------------------------------------------------------------------- 1 | # Contribution 2 | -------------------------------------------------------------------------------- /docs/en/switch_language.md: -------------------------------------------------------------------------------- 1 | ## English 2 | 3 | ## 简体中文 4 | -------------------------------------------------------------------------------- /docs/zh_cn/_static/css/readthedocs.css: -------------------------------------------------------------------------------- 1 | .header-logo { 2 | background-image: url("../image/mmdet-logo.png"); 3 | background-size: 156px 40px; 4 | height: 40px; 5 | width: 156px; 6 | } 7 | -------------------------------------------------------------------------------- /docs/zh_cn/_static/image/mmdet-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/docs/zh_cn/_static/image/mmdet-logo.png -------------------------------------------------------------------------------- /docs/zh_cn/advanced_guides/data_flow.md: -------------------------------------------------------------------------------- 1 | # 数据流(待更新) 2 | -------------------------------------------------------------------------------- /docs/zh_cn/advanced_guides/datasets.md: -------------------------------------------------------------------------------- 1 | # 数据集(待更新) 2 | -------------------------------------------------------------------------------- /docs/zh_cn/advanced_guides/engine.md: -------------------------------------------------------------------------------- 1 | # 执行引擎(待更新) 2 | -------------------------------------------------------------------------------- /docs/zh_cn/advanced_guides/evaluation.md: -------------------------------------------------------------------------------- 1 | # 精度评测(待更新) 2 | -------------------------------------------------------------------------------- /docs/zh_cn/advanced_guides/models.md: -------------------------------------------------------------------------------- 1 | # 模型(待更新) 2 | -------------------------------------------------------------------------------- /docs/zh_cn/advanced_guides/structures.md: -------------------------------------------------------------------------------- 1 | # 数据结构(待更新) 2 | -------------------------------------------------------------------------------- /docs/zh_cn/migration/api_and_registry_migration.md: -------------------------------------------------------------------------------- 1 | # 将 API 和注册器从 MMDetection 2.x 迁移至 3.x 2 | -------------------------------------------------------------------------------- /docs/zh_cn/migration/dataset_migration.md: -------------------------------------------------------------------------------- 1 | # 将数据集从 MMDetection 2.x 迁移至 3.x 2 | -------------------------------------------------------------------------------- /docs/zh_cn/migration/migration.md: -------------------------------------------------------------------------------- 1 | # 从 MMDetection 2.x 迁移至 3.x 2 | 3 | MMDetection 3.x 版本是一个重大更新,包含了许多 API 和配置文件的变化。本文档旨在帮助用户从 MMDetection 2.x 版本迁移到 3.x 版本。 4 | 我们将迁移指南分为以下几个部分: 5 | 6 | - [配置文件迁移](./config_migration.md) 7 | - [API 和 Registry 迁移](./api_and_registry_migration.md) 8 | - [数据集迁移](./dataset_migration.md) 9 | - [模型迁移](./model_migration.md) 10 | - [常见问题](./migration_faq.md) 11 | 12 | 如果您在迁移过程中遇到任何问题,欢迎在 issue 中提出。我们也欢迎您为本文档做出贡献。 13 | -------------------------------------------------------------------------------- /docs/zh_cn/migration/migration_faq.md: -------------------------------------------------------------------------------- 1 | # 迁移 FAQ 2 | -------------------------------------------------------------------------------- /docs/zh_cn/migration/model_migration.md: -------------------------------------------------------------------------------- 1 | # 将模型从 MMDetection 2.x 迁移至 3.x 2 | -------------------------------------------------------------------------------- /docs/zh_cn/switch_language.md: -------------------------------------------------------------------------------- 1 | ## English 2 | 3 | ## 简体中文 4 | -------------------------------------------------------------------------------- /mmdet/apis/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .det_inferencer import DetInferencer 3 | from .inference import (async_inference_detector, inference_detector, 4 | inference_mot, init_detector, init_track_model) 5 | 6 | __all__ = [ 7 | 'init_detector', 'async_inference_detector', 'inference_detector', 8 | 'DetInferencer', 'inference_mot', 'init_track_model' 9 | ] 10 | -------------------------------------------------------------------------------- /mmdet/configs/deformable_detr/deformable_detr_refine_r50_16xb2_50e_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | 3 | # Please refer to https://mmengine.readthedocs.io/en/latest/advanced_tutorials/config.html#a-pure-python-style-configuration-file-beta for more details. # noqa 4 | # mmcv >= 2.0.1 5 | # mmengine >= 0.8.0 6 | 7 | from mmengine.config import read_base 8 | 9 | with read_base(): 10 | from .deformable_detr_r50_16xb2_50e_coco import * 11 | 12 | model.update(dict(with_box_refine=True)) 13 | -------------------------------------------------------------------------------- /mmdet/configs/deformable_detr/deformable_detr_refine_twostage_r50_16xb2_50e_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | 3 | # Please refer to https://mmengine.readthedocs.io/en/latest/advanced_tutorials/config.html#a-pure-python-style-configuration-file-beta for more details. # noqa 4 | # mmcv >= 2.0.1 5 | # mmengine >= 0.8.0 6 | 7 | from mmengine.config import read_base 8 | 9 | with read_base(): 10 | from .deformable_detr_refine_r50_16xb2_50e_coco import * 11 | 12 | model.update(dict(as_two_stage=True)) 13 | -------------------------------------------------------------------------------- /mmdet/configs/detr/detr_r101_8xb2_500e_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmengine.config import read_base 3 | from mmengine.model.weight_init import PretrainedInit 4 | 5 | with read_base(): 6 | from .detr_r50_8xb2_500e_coco import * 7 | 8 | model.update( 9 | dict( 10 | backbone=dict( 11 | depth=101, 12 | init_cfg=dict( 13 | type=PretrainedInit, checkpoint='torchvision://resnet101')))) 14 | -------------------------------------------------------------------------------- /mmdet/configs/detr/detr_r18_8xb2_500e_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmengine.config import read_base 3 | from mmengine.model.weight_init import PretrainedInit 4 | 5 | with read_base(): 6 | from .detr_r50_8xb2_500e_coco import * 7 | 8 | model.update( 9 | dict( 10 | backbone=dict( 11 | depth=18, 12 | init_cfg=dict( 13 | type=PretrainedInit, checkpoint='torchvision://resnet18')), 14 | neck=dict(in_channels=[512]))) 15 | -------------------------------------------------------------------------------- /mmdet/configs/dino/dino_4scale_r50_8xb2_24e_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmengine.config import read_base 3 | from mmengine.runner.loops import EpochBasedTrainLoop 4 | 5 | with read_base(): 6 | from .dino_4scale_r50_8xb2_12e_coco import * 7 | 8 | max_epochs = 24 9 | train_cfg.update( 10 | dict(type=EpochBasedTrainLoop, max_epochs=max_epochs, val_interval=1)) 11 | 12 | param_scheduler[0].update(dict(milestones=[20])) 13 | -------------------------------------------------------------------------------- /mmdet/configs/dino/dino_4scale_r50_8xb2_36e_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmengine.config import read_base 3 | from mmengine.runner.loops import EpochBasedTrainLoop 4 | 5 | with read_base(): 6 | from .dino_4scale_r50_8xb2_12e_coco import * 7 | 8 | max_epochs = 36 9 | train_cfg.update( 10 | dict(type=EpochBasedTrainLoop, max_epochs=max_epochs, val_interval=1)) 11 | 12 | param_scheduler[0].update(dict(milestones=[30])) 13 | -------------------------------------------------------------------------------- /mmdet/configs/dino/dino_5scale_swin_l_8xb2_36e_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmengine.config import read_base 3 | from mmengine.runner.loops import EpochBasedTrainLoop 4 | 5 | with read_base(): 6 | from .dino_5scale_swin_l_8xb2_12e_coco import * 7 | 8 | max_epochs = 36 9 | train_cfg.update( 10 | dict(type=EpochBasedTrainLoop, max_epochs=max_epochs, val_interval=1)) 11 | 12 | param_scheduler[0].update(dict(milestones=[27, 33])) 13 | -------------------------------------------------------------------------------- /mmdet/configs/mask_rcnn/mask_rcnn_r50_fpn_8xb8_amp_lsj_200e_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | -------------------------------------------------------------------------------- /mmdet/configs/mask_rcnn/mask_rcnn_r50_fpn_ms_poly_-3x_coco.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | 3 | # Please refer to https://mmengine.readthedocs.io/en/latest/advanced_tutorials/config.html#a-pure-python-style-configuration-file-beta for more details. # noqa 4 | # mmcv >= 2.0.1 5 | # mmengine >= 0.8.0 6 | 7 | from mmengine.config import read_base 8 | 9 | with read_base(): 10 | from .._base_.models.mask_rcnn_r50_fpn import * 11 | from ..common.ms_poly_3x_coco_instance import * 12 | -------------------------------------------------------------------------------- /mmdet/datasets/api_wrappers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .coco_api import COCO, COCOeval, COCOPanoptic 3 | from .cocoeval_mp import COCOevalMP 4 | 5 | __all__ = ['COCO', 'COCOeval', 'COCOPanoptic', 'COCOevalMP'] 6 | -------------------------------------------------------------------------------- /mmdet/engine/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .hooks import * # noqa: F401, F403 3 | from .optimizers import * # noqa: F401, F403 4 | from .runner import * # noqa: F401, F403 5 | from .schedulers import * # noqa: F401, F403 6 | -------------------------------------------------------------------------------- /mmdet/engine/optimizers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .layer_decay_optimizer_constructor import \ 3 | LearningRateDecayOptimizerConstructor 4 | 5 | __all__ = ['LearningRateDecayOptimizerConstructor'] 6 | -------------------------------------------------------------------------------- /mmdet/engine/runner/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .loops import TeacherStudentValLoop 3 | 4 | __all__ = ['TeacherStudentValLoop'] 5 | -------------------------------------------------------------------------------- /mmdet/engine/schedulers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .quadratic_warmup import (QuadraticWarmupLR, QuadraticWarmupMomentum, 3 | QuadraticWarmupParamScheduler) 4 | 5 | __all__ = [ 6 | 'QuadraticWarmupParamScheduler', 'QuadraticWarmupMomentum', 7 | 'QuadraticWarmupLR' 8 | ] 9 | -------------------------------------------------------------------------------- /mmdet/evaluation/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .functional import * # noqa: F401,F403 3 | from .metrics import * # noqa: F401,F403 4 | -------------------------------------------------------------------------------- /mmdet/models/detectors/scnet.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmdet.registry import MODELS 3 | from .cascade_rcnn import CascadeRCNN 4 | 5 | 6 | @MODELS.register_module() 7 | class SCNet(CascadeRCNN): 8 | """Implementation of `SCNet `_""" 9 | 10 | def __init__(self, **kwargs) -> None: 11 | super().__init__(**kwargs) 12 | -------------------------------------------------------------------------------- /mmdet/models/language_models/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .bert import BertModel 3 | 4 | __all__ = ['BertModel'] 5 | -------------------------------------------------------------------------------- /mmdet/models/mot/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .base import BaseMOTModel 3 | from .bytetrack import ByteTrack 4 | from .deep_sort import DeepSORT 5 | from .ocsort import OCSORT 6 | from .qdtrack import QDTrack 7 | from .strongsort import StrongSORT 8 | 9 | __all__ = [ 10 | 'BaseMOTModel', 'ByteTrack', 'QDTrack', 'DeepSORT', 'StrongSORT', 'OCSORT' 11 | ] 12 | -------------------------------------------------------------------------------- /mmdet/models/reid/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .base_reid import BaseReID 3 | from .fc_module import FcModule 4 | from .gap import GlobalAveragePooling 5 | from .linear_reid_head import LinearReIDHead 6 | 7 | __all__ = ['BaseReID', 'GlobalAveragePooling', 'LinearReIDHead', 'FcModule'] 8 | -------------------------------------------------------------------------------- /mmdet/models/roi_heads/roi_extractors/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .base_roi_extractor import BaseRoIExtractor 3 | from .generic_roi_extractor import GenericRoIExtractor 4 | from .single_level_roi_extractor import SingleRoIExtractor 5 | 6 | __all__ = ['BaseRoIExtractor', 'SingleRoIExtractor', 'GenericRoIExtractor'] 7 | -------------------------------------------------------------------------------- /mmdet/models/roi_heads/shared_heads/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .res_layer import ResLayer 3 | 4 | __all__ = ['ResLayer'] 5 | -------------------------------------------------------------------------------- /mmdet/models/seg_heads/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .panoptic_fpn_head import PanopticFPNHead # noqa: F401,F403 3 | from .panoptic_fusion_heads import * # noqa: F401,F403 4 | -------------------------------------------------------------------------------- /mmdet/models/seg_heads/panoptic_fusion_heads/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .base_panoptic_fusion_head import \ 3 | BasePanopticFusionHead # noqa: F401,F403 4 | from .heuristic_fusion_head import HeuristicFusionHead # noqa: F401,F403 5 | from .maskformer_fusion_head import MaskFormerFusionHead # noqa: F401,F403 6 | -------------------------------------------------------------------------------- /mmdet/models/task_modules/tracking/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .aflink import AppearanceFreeLink 3 | from .camera_motion_compensation import CameraMotionCompensation 4 | from .interpolation import InterpolateTracklets 5 | from .kalman_filter import KalmanFilter 6 | from .similarity import embed_similarity 7 | 8 | __all__ = [ 9 | 'KalmanFilter', 'InterpolateTracklets', 'embed_similarity', 10 | 'AppearanceFreeLink', 'CameraMotionCompensation' 11 | ] 12 | -------------------------------------------------------------------------------- /mmdet/models/test_time_augs/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .det_tta import DetTTAModel 3 | from .merge_augs import (merge_aug_bboxes, merge_aug_masks, 4 | merge_aug_proposals, merge_aug_results, 5 | merge_aug_scores) 6 | 7 | __all__ = [ 8 | 'merge_aug_bboxes', 'merge_aug_masks', 'merge_aug_proposals', 9 | 'merge_aug_scores', 'merge_aug_results', 'DetTTAModel' 10 | ] 11 | -------------------------------------------------------------------------------- /mmdet/models/tracking_heads/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .mask2former_track_head import Mask2FormerTrackHead 3 | from .quasi_dense_embed_head import QuasiDenseEmbedHead 4 | from .quasi_dense_track_head import QuasiDenseTrackHead 5 | from .roi_embed_head import RoIEmbedHead 6 | from .roi_track_head import RoITrackHead 7 | 8 | __all__ = [ 9 | 'QuasiDenseEmbedHead', 'QuasiDenseTrackHead', 'Mask2FormerTrackHead', 10 | 'RoIEmbedHead', 'RoITrackHead' 11 | ] 12 | -------------------------------------------------------------------------------- /mmdet/models/vis/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .mask2former_vis import Mask2FormerVideo 3 | from .masktrack_rcnn import MaskTrackRCNN 4 | 5 | __all__ = ['Mask2FormerVideo', 'MaskTrackRCNN'] 6 | -------------------------------------------------------------------------------- /mmdet/structures/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .det_data_sample import DetDataSample, OptSampleList, SampleList 3 | from .reid_data_sample import ReIDDataSample 4 | from .track_data_sample import (OptTrackSampleList, TrackDataSample, 5 | TrackSampleList) 6 | 7 | __all__ = [ 8 | 'DetDataSample', 'SampleList', 'OptSampleList', 'TrackDataSample', 9 | 'TrackSampleList', 'OptTrackSampleList', 'ReIDDataSample' 10 | ] 11 | -------------------------------------------------------------------------------- /mmdet/visualization/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .local_visualizer import DetLocalVisualizer, TrackLocalVisualizer 3 | from .palette import get_palette, jitter_color, palette_val 4 | 5 | __all__ = [ 6 | 'palette_val', 'get_palette', 'DetLocalVisualizer', 'jitter_color', 7 | 'TrackLocalVisualizer' 8 | ] 9 | -------------------------------------------------------------------------------- /projects/AlignDETR/align_detr/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .align_detr_head import AlignDETRHead 3 | from .mixed_hungarian_assigner import MixedHungarianAssigner 4 | 5 | __all__ = ['AlignDETRHead', 'MixedHungarianAssigner'] 6 | -------------------------------------------------------------------------------- /projects/CO-DETR/configs/codino/co_dino_5scale_r50_lsj_8xb2_3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['co_dino_5scale_r50_lsj_8xb2_1x_coco.py'] 2 | 3 | param_scheduler = [dict(milestones=[30])] 4 | train_cfg = dict(max_epochs=36) 5 | -------------------------------------------------------------------------------- /projects/CO-DETR/configs/codino/co_dino_5scale_swin_l_16xb1_3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['co_dino_5scale_swin_l_16xb1_1x_coco.py'] 2 | # model settings 3 | model = dict(backbone=dict(drop_path_rate=0.6)) 4 | 5 | param_scheduler = [dict(milestones=[30])] 6 | train_cfg = dict(max_epochs=36) 7 | -------------------------------------------------------------------------------- /projects/CO-DETR/configs/codino/co_dino_5scale_swin_l_lsj_16xb1_3x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['co_dino_5scale_swin_l_lsj_16xb1_1x_coco.py'] 2 | 3 | model = dict(backbone=dict(drop_path_rate=0.5)) 4 | 5 | param_scheduler = [dict(milestones=[30])] 6 | train_cfg = dict(max_epochs=36) 7 | -------------------------------------------------------------------------------- /projects/Detic/detic/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .centernet_rpn_head import CenterNetRPNHead 3 | from .detic_bbox_head import DeticBBoxHead 4 | from .detic_roi_head import DeticRoIHead 5 | from .zero_shot_classifier import ZeroShotClassifier 6 | 7 | __all__ = [ 8 | 'CenterNetRPNHead', 'DeticBBoxHead', 'DeticRoIHead', 'ZeroShotClassifier' 9 | ] 10 | -------------------------------------------------------------------------------- /projects/Detic_new/configs/detic_centernet2_r50_fpn_4x_lvis-base_boxsup.py: -------------------------------------------------------------------------------- 1 | _base_ = './detic_centernet2_r50_fpn_4x_lvis_boxsup.py' 2 | 3 | # 'lvis_v1_train_norare.json' is the annotations of lvis_v1 4 | # removing the labels of 337 rare-class 5 | train_dataloader = dict( 6 | dataset=dict( 7 | type='ClassBalancedDataset', 8 | oversample_thr=1e-3, 9 | dataset=dict(ann_file='annotations/lvis_v1_train_norare.json'))) 10 | -------------------------------------------------------------------------------- /projects/Detic_new/configs/detic_centernet2_swin-b_fpn_4x_lvis-base_boxsup.py: -------------------------------------------------------------------------------- 1 | _base_ = './detic_centernet2_swin-b_fpn_4x_lvis_boxsup.py' 2 | 3 | # 'lvis_v1_train_norare.json' is the annotations of lvis_v1 4 | # removing the labels of 337 rare-class 5 | train_dataloader = dict( 6 | dataset=dict( 7 | type='ClassBalancedDataset', 8 | oversample_thr=1e-3, 9 | dataset=dict(ann_file='annotations/lvis_v1_train_norare.json'))) 10 | -------------------------------------------------------------------------------- /projects/Detic_new/configs/detic_centernet2_swin-b_fpn_4x_lvis_coco_in21k.py: -------------------------------------------------------------------------------- 1 | # not support training, only for testing 2 | _base_ = './detic_centernet2_swin-b_fpn_4x_lvis_in21k-lvis.py' 3 | -------------------------------------------------------------------------------- /projects/DiffusionDet/diffusiondet/__init__.py: -------------------------------------------------------------------------------- 1 | from .diffusiondet import DiffusionDet 2 | from .head import (DynamicConv, DynamicDiffusionDetHead, 3 | SingleDiffusionDetHead, SinusoidalPositionEmbeddings) 4 | from .loss import DiffusionDetCriterion, DiffusionDetMatcher 5 | 6 | __all__ = [ 7 | 'DiffusionDet', 'DynamicDiffusionDetHead', 'SingleDiffusionDetHead', 8 | 'SinusoidalPositionEmbeddings', 'DynamicConv', 'DiffusionDetCriterion', 9 | 'DiffusionDetMatcher' 10 | ] 11 | -------------------------------------------------------------------------------- /projects/EfficientDet/efficientdet/tensorflow/api_wrappers/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .coco_api import COCO, COCOeval, COCOPanoptic 3 | 4 | __all__ = ['COCO', 'COCOeval', 'COCOPanoptic'] 5 | -------------------------------------------------------------------------------- /projects/HDINO/__init__.py: -------------------------------------------------------------------------------- 1 | from .h_dino import HDINO 2 | from .h_dino_head import HybridDINOHead 3 | 4 | __all__ = ['HDINO', 'HybridDINOHead'] 5 | -------------------------------------------------------------------------------- /projects/LabelStudio/readme.md: -------------------------------------------------------------------------------- 1 | # Semi-automatic Object Detection Annotation with MMDetection and Label-Studio 2 | 3 | Please read the [Docs](../../docs/en/user_guides/label_studio.md) for more details. 4 | -------------------------------------------------------------------------------- /projects/RF100-Benchmark/__init__.py: -------------------------------------------------------------------------------- 1 | from .coco import RF100CocoDataset 2 | from .coco_metric import RF100CocoMetric 3 | 4 | __all__ = ['RF100CocoDataset', 'RF100CocoMetric'] 5 | -------------------------------------------------------------------------------- /projects/SparseInst/sparseinst/__init__.py: -------------------------------------------------------------------------------- 1 | from .decoder import BaseIAMDecoder, GroupIAMDecoder, GroupIAMSoftDecoder 2 | from .encoder import PyramidPoolingModule 3 | from .loss import SparseInstCriterion, SparseInstMatcher 4 | from .sparseinst import SparseInst 5 | 6 | __all__ = [ 7 | 'BaseIAMDecoder', 'GroupIAMDecoder', 'GroupIAMSoftDecoder', 8 | 'PyramidPoolingModule', 'SparseInstCriterion', 'SparseInstMatcher', 9 | 'SparseInst' 10 | ] 11 | -------------------------------------------------------------------------------- /projects/ViTDet/vitdet/__init__.py: -------------------------------------------------------------------------------- 1 | from .fp16_compression_hook import Fp16CompresssionHook 2 | from .layer_decay_optimizer_constructor import LayerDecayOptimizerConstructor 3 | from .simple_fpn import SimpleFPN 4 | from .vit import LN2d, ViT 5 | 6 | __all__ = [ 7 | 'LayerDecayOptimizerConstructor', 'ViT', 'SimpleFPN', 'LN2d', 8 | 'Fp16CompresssionHook' 9 | ] 10 | -------------------------------------------------------------------------------- /projects/XDecoder/configs/_base_/xdecoder-tiny_caption.py: -------------------------------------------------------------------------------- 1 | _base_ = 'xdecoder-tiny_open-vocab-semseg.py' 2 | 3 | model = dict(head=dict(task='caption')) 4 | -------------------------------------------------------------------------------- /projects/XDecoder/configs/_base_/xdecoder-tiny_open-vocab-instance.py: -------------------------------------------------------------------------------- 1 | _base_ = 'xdecoder-tiny_open-vocab-semseg.py' 2 | 3 | model = dict(head=dict(task='instance'), test_cfg=dict(max_per_img=100)) 4 | -------------------------------------------------------------------------------- /projects/XDecoder/configs/_base_/xdecoder-tiny_open-vocab-panoptic.py: -------------------------------------------------------------------------------- 1 | _base_ = 'xdecoder-tiny_open-vocab-semseg.py' 2 | 3 | model = dict( 4 | head=dict(task='panoptic'), test_cfg=dict(mask_thr=0.8, overlap_thr=0.8)) 5 | -------------------------------------------------------------------------------- /projects/XDecoder/configs/_base_/xdecoder-tiny_ref-seg.py: -------------------------------------------------------------------------------- 1 | _base_ = 'xdecoder-tiny_open-vocab-semseg.py' 2 | 3 | model = dict(head=dict(task='ref-seg')) 4 | -------------------------------------------------------------------------------- /projects/XDecoder/configs/xdecoder-tiny_zeroshot_open-vocab-ref-seg_refcoco+.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '_base_/xdecoder-tiny_ref-seg.py', 'mmdet::_base_/datasets/refcoco+.py' 3 | ] 4 | -------------------------------------------------------------------------------- /projects/XDecoder/configs/xdecoder-tiny_zeroshot_open-vocab-ref-seg_refcoco.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '_base_/xdecoder-tiny_ref-seg.py', 'mmdet::_base_/datasets/refcoco.py' 3 | ] 4 | -------------------------------------------------------------------------------- /projects/XDecoder/configs/xdecoder-tiny_zeroshot_open-vocab-ref-seg_refcocog.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '_base_/xdecoder-tiny_ref-seg.py', 'mmdet::_base_/datasets/refcocog.py' 3 | ] 4 | -------------------------------------------------------------------------------- /projects/XDecoder/xdecoder/__init__.py: -------------------------------------------------------------------------------- 1 | from .focalnet import FocalNet 2 | from .pixel_decoder import XTransformerEncoderPixelDecoder 3 | from .transformer_decoder import XDecoderTransformerDecoder 4 | from .unified_head import XDecoderUnifiedhead 5 | from .xdecoder import XDecoder 6 | 7 | __all__ = [ 8 | 'XDecoder', 'FocalNet', 'XDecoderUnifiedhead', 9 | 'XTransformerEncoderPixelDecoder', 'XDecoderTransformerDecoder' 10 | ] 11 | -------------------------------------------------------------------------------- /projects/XDecoder/xdecoder/inference/__init__.py: -------------------------------------------------------------------------------- 1 | from .image_caption import ImageCaptionInferencer, RefImageCaptionInferencer 2 | from .texttoimage_regionretrieval_inferencer import \ 3 | TextToImageRegionRetrievalInferencer 4 | 5 | __all__ = [ 6 | 'ImageCaptionInferencer', 'RefImageCaptionInferencer', 7 | 'TextToImageRegionRetrievalInferencer' 8 | ] 9 | -------------------------------------------------------------------------------- /projects/example_largemodel/__init__.py: -------------------------------------------------------------------------------- 1 | from .fsdp_utils import checkpoint_check_fn, layer_auto_wrap_policy 2 | 3 | __all__ = ['checkpoint_check_fn', 'layer_auto_wrap_policy'] 4 | -------------------------------------------------------------------------------- /projects/example_project/configs/faster-rcnn_dummy-resnet_fpn_1x_coco.py: -------------------------------------------------------------------------------- 1 | _base_ = ['../../../configs/faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py'] 2 | 3 | custom_imports = dict(imports=['projects.example_project.dummy']) 4 | 5 | _base_.model.backbone.type = 'DummyResNet' 6 | -------------------------------------------------------------------------------- /projects/example_project/dummy/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .dummy_resnet import DummyResNet 3 | 4 | __all__ = ['DummyResNet'] 5 | -------------------------------------------------------------------------------- /projects/example_project/dummy/dummy_resnet.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from mmdet.models.backbones import ResNet 3 | from mmdet.registry import MODELS 4 | 5 | 6 | @MODELS.register_module() 7 | class DummyResNet(ResNet): 8 | """Implements a dummy ResNet wrapper for demonstration purpose. 9 | Args: 10 | **kwargs: All the arguments are passed to the parent class. 11 | """ 12 | 13 | def __init__(self, **kwargs) -> None: 14 | print('Hello world!') 15 | super().__init__(**kwargs) 16 | -------------------------------------------------------------------------------- /projects/iSAID/configs/mask_rcnn_r50_fpn_1x_isaid.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../../../configs/_base_/models/mask-rcnn_r50_fpn.py', 3 | '../../../configs/_base_/datasets/isaid_instance.py', 4 | '../../../configs/_base_/schedules/schedule_1x.py', 5 | '../../../configs/_base_/default_runtime.py' 6 | ] 7 | -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | addopts = --xdoctest --xdoctest-style=auto 3 | norecursedirs = .git ignore build __pycache__ data docker docs .eggs 4 | 5 | filterwarnings= default 6 | ignore:.*No cfgstr given in Cacher constructor or call.*:Warning 7 | ignore:.*Define the __nice__ method for.*:Warning 8 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | -r requirements/build.txt 2 | -r requirements/optional.txt 3 | -r requirements/runtime.txt 4 | -------------------------------------------------------------------------------- /requirements/albu.txt: -------------------------------------------------------------------------------- 1 | albumentations>=0.3.2 --no-binary qudida,albumentations 2 | -------------------------------------------------------------------------------- /requirements/build.txt: -------------------------------------------------------------------------------- 1 | # These must be installed before building mmdetection 2 | cython 3 | numpy 4 | -------------------------------------------------------------------------------- /requirements/docs.txt: -------------------------------------------------------------------------------- 1 | docutils==0.16.0 2 | myst-parser 3 | -e git+https://github.com/open-mmlab/pytorch_sphinx_theme.git#egg=pytorch_sphinx_theme 4 | sphinx==4.0.2 5 | sphinx-copybutton 6 | sphinx_markdown_tables 7 | sphinx_rtd_theme==0.5.2 8 | urllib3<2.0.0 9 | -------------------------------------------------------------------------------- /requirements/mminstall.txt: -------------------------------------------------------------------------------- 1 | mmcv>=2.0.0rc4,<2.2.0 2 | mmengine>=0.7.1,<1.0.0 3 | -------------------------------------------------------------------------------- /requirements/multimodal.txt: -------------------------------------------------------------------------------- 1 | fairscale 2 | nltk 3 | pycocoevalcap 4 | transformers 5 | -------------------------------------------------------------------------------- /requirements/optional.txt: -------------------------------------------------------------------------------- 1 | cityscapesscripts 2 | fairscale 3 | imagecorruptions 4 | scikit-learn 5 | -------------------------------------------------------------------------------- /requirements/readthedocs.txt: -------------------------------------------------------------------------------- 1 | mmcv>=2.0.0rc4,<2.2.0 2 | mmengine>=0.7.1,<1.0.0 3 | scipy 4 | torch 5 | torchvision 6 | urllib3<2.0.0 7 | -------------------------------------------------------------------------------- /requirements/runtime.txt: -------------------------------------------------------------------------------- 1 | matplotlib 2 | numpy 3 | pycocotools 4 | scipy 5 | shapely 6 | six 7 | terminaltables 8 | tqdm 9 | -------------------------------------------------------------------------------- /requirements/tests.txt: -------------------------------------------------------------------------------- 1 | asynctest 2 | cityscapesscripts 3 | codecov 4 | flake8 5 | imagecorruptions 6 | instaboostfast 7 | interrogate 8 | isort==4.3.21 9 | # Note: used for kwarray.group_items, this may be ported to mmcv in the future. 10 | kwarray 11 | memory_profiler 12 | -e git+https://github.com/open-mmlab/mmtracking@dev-1.x#egg=mmtrack 13 | nltk 14 | onnx==1.7.0 15 | onnxruntime>=1.8.0 16 | parameterized 17 | prettytable 18 | protobuf<=3.20.1 19 | psutil 20 | pytest 21 | transformers 22 | ubelt 23 | xdoctest>=0.10.0 24 | yapf 25 | -------------------------------------------------------------------------------- /requirements/tracking.txt: -------------------------------------------------------------------------------- 1 | mmpretrain 2 | motmetrics 3 | numpy<1.24.0 4 | scikit-learn 5 | seaborn 6 | -------------------------------------------------------------------------------- /resources/coco_test_12510.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/resources/coco_test_12510.jpg -------------------------------------------------------------------------------- /resources/corruptions_sev_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/resources/corruptions_sev_3.png -------------------------------------------------------------------------------- /resources/data_pipeline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/resources/data_pipeline.png -------------------------------------------------------------------------------- /resources/loss_curve.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/resources/loss_curve.png -------------------------------------------------------------------------------- /resources/miaomiao_qrcode.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/resources/miaomiao_qrcode.jpg -------------------------------------------------------------------------------- /resources/mmdet-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/resources/mmdet-logo.png -------------------------------------------------------------------------------- /resources/zhihu_qrcode.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/resources/zhihu_qrcode.jpg -------------------------------------------------------------------------------- /tests/data/OpenImages/annotations/annotations-human-imagelabels-boxable.csv: -------------------------------------------------------------------------------- 1 | ImageID,Source,LabelName,Confidence 2 | 0001eeaf4aed83f9,verification,/m/0cmf2,1 3 | -------------------------------------------------------------------------------- /tests/data/OpenImages/annotations/bbox_labels_600_hierarchy.json: -------------------------------------------------------------------------------- 1 | { 2 | "LabelName": "/m/0bl9f", 3 | "Subcategory": [ 4 | { 5 | "LabelName": "/m/0cmf2" 6 | } 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /tests/data/OpenImages/annotations/class-descriptions-boxable.csv: -------------------------------------------------------------------------------- 1 | /m/0cmf2,Airplane 2 | -------------------------------------------------------------------------------- /tests/data/OpenImages/annotations/image-metas.pkl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/data/OpenImages/annotations/image-metas.pkl -------------------------------------------------------------------------------- /tests/data/OpenImages/annotations/oidv6-train-annotations-bbox.csv: -------------------------------------------------------------------------------- 1 | ImageID,Source,LabelName,Confidence,XMin,XMax,YMin,YMax,IsOccluded,IsTruncated,IsGroupOf,IsDepiction,IsInside 2 | 0001eeaf4aed83f9,xclick,/m/0cmf2,1,0.022673031,0.9642005,0.07103825,0.80054647,0,0,0,0,0 3 | -------------------------------------------------------------------------------- /tests/data/OpenImages/challenge2019/annotations-human-imagelabels-boxable.csv: -------------------------------------------------------------------------------- 1 | ImageID,Source,LabelName,Confidence 2 | 0001eeaf4aed83f9,verification,/m/0cmf2,1 3 | -------------------------------------------------------------------------------- /tests/data/OpenImages/challenge2019/challenge-2019-train-detection-bbox.txt: -------------------------------------------------------------------------------- 1 | validation/0001eeaf4aed83f9.jpg 2 | -1 3 | 1 4 | 86 0.022673031 0.07103825 0.9642004999999999 0.80054647 0 5 | -------------------------------------------------------------------------------- /tests/data/OpenImages/challenge2019/class_label_tree.np: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/data/OpenImages/challenge2019/class_label_tree.np -------------------------------------------------------------------------------- /tests/data/OpenImages/challenge2019/cls-label-description.csv: -------------------------------------------------------------------------------- 1 | /m/0cmf2,Airplane,86 2 | -------------------------------------------------------------------------------- /tests/data/VOCdevkit/VOC2007/ImageSets/Main/test.txt: -------------------------------------------------------------------------------- 1 | 000001 2 | -------------------------------------------------------------------------------- /tests/data/VOCdevkit/VOC2007/ImageSets/Main/trainval.txt: -------------------------------------------------------------------------------- 1 | 000001 2 | -------------------------------------------------------------------------------- /tests/data/VOCdevkit/VOC2007/JPEGImages/000001.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/data/VOCdevkit/VOC2007/JPEGImages/000001.jpg -------------------------------------------------------------------------------- /tests/data/VOCdevkit/VOC2012/ImageSets/Main/test.txt: -------------------------------------------------------------------------------- 1 | 000001 2 | -------------------------------------------------------------------------------- /tests/data/VOCdevkit/VOC2012/ImageSets/Main/trainval.txt: -------------------------------------------------------------------------------- 1 | 000001 2 | -------------------------------------------------------------------------------- /tests/data/VOCdevkit/VOC2012/JPEGImages/000001.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/data/VOCdevkit/VOC2012/JPEGImages/000001.jpg -------------------------------------------------------------------------------- /tests/data/WIDERFace/WIDER_train/0--Parade/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/data/WIDERFace/WIDER_train/0--Parade/.gitkeep -------------------------------------------------------------------------------- /tests/data/WIDERFace/train.txt: -------------------------------------------------------------------------------- 1 | 0_Parade_marchingband_1_5 2 | -------------------------------------------------------------------------------- /tests/data/color.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/data/color.jpg -------------------------------------------------------------------------------- /tests/data/crowdhuman_dataset/id_hw_train.json: -------------------------------------------------------------------------------- 1 | { 2 | "283554,35288000868e92d4": [ 3 | 1356, 4 | 2048 5 | ] 6 | } 7 | -------------------------------------------------------------------------------- /tests/data/custom_dataset/images/000001.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/data/custom_dataset/images/000001.jpg -------------------------------------------------------------------------------- /tests/data/custom_dataset/test.txt: -------------------------------------------------------------------------------- 1 | 000001 2 | -------------------------------------------------------------------------------- /tests/data/custom_dataset/trainval.txt: -------------------------------------------------------------------------------- 1 | 000001 2 | -------------------------------------------------------------------------------- /tests/data/dsdl_det/config.py: -------------------------------------------------------------------------------- 1 | local = dict( 2 | type='LocalFileReader', 3 | working_dir='local path', 4 | ) 5 | -------------------------------------------------------------------------------- /tests/data/gray.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/data/gray.jpg -------------------------------------------------------------------------------- /tests/test_datasets/test_transforms/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .utils import construct_toy_data, create_full_masks, create_random_bboxes 3 | 4 | __all__ = ['create_random_bboxes', 'create_full_masks', 'construct_toy_data'] 5 | -------------------------------------------------------------------------------- /tests/test_engine/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/test_engine/__init__.py -------------------------------------------------------------------------------- /tests/test_engine/test_optimizers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/test_engine/test_optimizers/__init__.py -------------------------------------------------------------------------------- /tests/test_evaluation/test_metrics/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/test_evaluation/test_metrics/__init__.py -------------------------------------------------------------------------------- /tests/test_models/test_backbones/__init__.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) OpenMMLab. All rights reserved. 2 | from .utils import check_norm_state, is_block, is_norm 3 | 4 | __all__ = ['is_block', 'is_norm', 'check_norm_state'] 5 | -------------------------------------------------------------------------------- /tests/test_models/test_layers/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/test_models/test_layers/__init__.py -------------------------------------------------------------------------------- /tests/test_models/test_task_modules/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/test_models/test_task_modules/__init__.py -------------------------------------------------------------------------------- /tests/test_models/test_task_modules/test_samplers/test_pesudo_sampler.py: -------------------------------------------------------------------------------- 1 | # TODO: follow up 2 | -------------------------------------------------------------------------------- /tests/test_models/test_task_modules/test_track/test_similarity.py: -------------------------------------------------------------------------------- 1 | import torch 2 | 3 | from mmdet.models.task_modules import embed_similarity 4 | 5 | 6 | def test_embed_similarity(): 7 | """Test embed similarity.""" 8 | embeds = torch.rand(2, 3) 9 | similarity = embed_similarity(embeds, embeds) 10 | assert similarity.shape == (2, 2) 11 | -------------------------------------------------------------------------------- /tests/test_structures/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/test_structures/__init__.py -------------------------------------------------------------------------------- /tests/test_structures/test_bbox/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V3Det/mmdetection-V3Det/efc935821981d07e34e916d4ceae8a87947fe999/tests/test_structures/test_bbox/__init__.py -------------------------------------------------------------------------------- /tools/analysis_tools/mot/dist_mot_search.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | GPUS=$2 5 | PORT=${PORT:-29500} 6 | 7 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 8 | python -m torch.distributed.launch --nproc_per_node=$GPUS --master_port=$PORT \ 9 | $(dirname "$0")/mot_param_search.py $CONFIG --launcher pytorch ${@:3} 10 | -------------------------------------------------------------------------------- /tools/dataset_converters/scripts/preprocess_voc2007.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | DOWNLOAD_DIR=$1 4 | DATA_ROOT=$2 5 | 6 | tar -xvf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2007/raw/VOCtrainval_06-Nov-2007.tar -C $DATA_ROOT 7 | tar -xvf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2007/raw/VOCtestnoimgs_06-Nov-2007.tar -C $DATA_ROOT 8 | rm -rf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2007 9 | -------------------------------------------------------------------------------- /tools/dataset_converters/scripts/preprocess_voc2012.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | DOWNLOAD_DIR=$1 4 | DATA_ROOT=$2 5 | 6 | tar -xvf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2012/raw/VOCtrainval_11-May-2012.tar -C $DATA_ROOT 7 | tar -xvf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2012/raw/VOC2012test.tar -C $DATA_ROOT 8 | rm -rf $DOWNLOAD_DIR/OpenDataLab___PASCAL_VOC2012 9 | -------------------------------------------------------------------------------- /tools/dist_train.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | GPUS=$2 5 | NNODES=${NNODES:-1} 6 | NODE_RANK=${NODE_RANK:-0} 7 | PORT=${PORT:-29500} 8 | MASTER_ADDR=${MASTER_ADDR:-"127.0.0.1"} 9 | 10 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 11 | python -m torch.distributed.launch \ 12 | --nnodes=$NNODES \ 13 | --node_rank=$NODE_RANK \ 14 | --master_addr=$MASTER_ADDR \ 15 | --nproc_per_node=$GPUS \ 16 | --master_port=$PORT \ 17 | $(dirname "$0")/train.py \ 18 | $CONFIG \ 19 | --launcher pytorch ${@:3} 20 | --------------------------------------------------------------------------------