This repo is based on FPN, and completed by YangXue.
Model | Backbone | Train Schedule | GPU | Image/GPU | FP16 | Box AP(Mask AP) | test stage |
---|---|---|---|---|---|---|---|
Faster (paper) | R50v1-FPN | 1X | 8X TITAN XP | 1 | no | 38.3 | 3 |
Faster (ours) | R50v1-FPN | 1X | 8X 2080 Ti | 1 | no | 38.2 | 3 |
Faster (Face++) | R50v1-FPN | 1X | 8X 2080 Ti | 2 | no | 39.1 | 3 |
1、python3.5 (anaconda recommend)
2、cuda9.0 (If you want to use cuda8, please set CUDA9 = False in the cfgs.py file.)
3、opencv(cv2)
4、tfplot
5、tensorflow == 1.12
1、Please download resnet50_v1, resnet101_v1 pre-trained models on Imagenet, put it to data/pretrained_weights.
2、Or you can choose to use a better backbone, refer to gluon2TF. Pretrain Model Link, password: 5ht9.
Select a configuration file in the folder ($PATH_ROOT/libs/configs/) and copy its contents into cfgs.py, then download the corresponding weights.
cd $PATH_ROOT/libs/box_utils/cython_utils
python setup.py build_ext --inplace
1、If you want to train your own data, please note:
(1) Modify parameters (such as CLASS_NUM, DATASET_NAME, VERSION, etc.) in $PATH_ROOT/libs/configs/cfgs.py
(2) Add category information in $PATH_ROOT/libs/label_name_dict/lable_dict.py
(3) Add data_name to $PATH_ROOT/data/io/read_tfrecord_multi_gpu.py
2、make tfrecord
cd $PATH_ROOT/data/io/
python convert_data_to_tfrecord_coco.py --VOC_dir='/PATH/TO/JSON/FILE/'
--save_name='train'
--dataset='coco'
3、multi-gpu train
cd $PATH_ROOT/tools
python multi_gpu_train.py
cd $PATH_ROOT/tools
python eval_coco.py --eval_data='/PATH/TO/IMAGES/'
--eval_gt='/PATH/TO/TEST/ANNOTATION/'
--GPU='0'
cd $PATH_ROOT/output/summary
tensorboard --logdir=.
1、https://github.com/endernewton/tf-faster-rcnn
2、https://github.com/zengarden/light_head_rcnn
3、https://github.com/tensorflow/models/tree/master/research/object_detection
4、https://github.com/CharlesShang/FastMaskRCNN
5、https://github.com/matterport/Mask_RCNN
6、https://github.com/msracver/Deformable-ConvNets
7、https://github.com/tensorpack/tensorpack