This document provides a brief intro of the usage of builtin command-line tools in detectron2.
For a tutorial that involves actual coding with the API,
see our Colab Notebook
which covers how to run inference with an
existing model, and how to train a builtin model on a custom dataset.
For more advanced tutorials, refer to our documentation.
mask_rcnn_R_50_FPN_3x.yaml.python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml \
--input input1.jpg input2.jpg \
[--other-options]
--opts MODEL.WEIGHTS detectron2://COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x/137849600/model_final_f10217.pkl
The configs are made for training, therefore we need to specify MODEL.WEIGHTS to a model from model zoo for evaluation.
This command will run the inference and show visualizations in an OpenCV window.
For details of the command line arguments, see demo.py -h. Some common ones are:
--input files with --webcam.--input files with --video-input video.mp4.MODEL.DEVICE cpu after --opts.--output.We provide a script in "tools/train_net.py", that is made to train
all the configs provided in detectron2.
You may want to use it as a reference to write your own training script for a new research.
To train a model with "train_net.py", first
setup the corresponding datasets following
datasets/README.md,
then run:
python tools/train_net.py --num-gpus 8 \
--config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_1x.yaml
The configs are made for 8-GPU training. To train on 1 GPU, change the batch size with:
python tools/train_net.py \
--config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_1x.yaml \
SOLVER.IMS_PER_BATCH 2 SOLVER.BASE_LR 0.0025
For most models, CPU training is not supported.
(Note that we applied the linear learning rate scaling rule
when changing the batch size.)
To evaluate this model's performance, use
python tools/train_net.py \
--config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_1x.yaml \
--eval-only MODEL.WEIGHTS /path/to/checkpoint_file
For more options, see python tools/train_net.py -h.
See our Colab Notebook
to learn how to use detectron2 APIs to:
See detectron2/projects
for more ways to build your project on detectron2.