This is an implementation of FCOS on keras and Tensorflow. The project is based on fizyr/keras-retinanet and tianzhi0549/FCOS. Thanks for their hard work.
- I trained on Pascal VOC2012 trainval.txt + Pascal VOC2007 train.txt, and validated on Pascal VOC2007 val.txt. There are 14041 images for training and 2510 images for validation.
- The best evaluation results on VOC2007 test are (score_threshold=0.05):
backbone | mAP50 |
---|---|
resnet50 | 0.6892 |
resnet101 | 0.7352 |
- Pretrained model is here. baidu netdisk extract code: yr8k
python3 inference.py
to test your image by specifying image path and model path there.
build dataset (Pascal VOC, other types please refer to fizyr/keras-retinanet)
- Download VOC2007 and VOC2012, copy all image files from VOC2007 to VOC2012.
- Append VOC2007 train.txt to VOC2012 trainval.txt.
- Overwrite VOC2012 val.txt by VOC2007 val.txt.
python3 train.py --backbone resnet50 --gpu 0 pascal datasets/VOC2012
to start training.
python3 utils/eval.py
to evaluate by specifying model path there.