The code in this repository has been copied from the original repo : https://github.com/YunYang1994/TensorFlow2.0-Examples/tree/master/4-Object_Detection/YOLOV3 with minor modifications. I chose to not fork the original repo because it contained many things that I didn't want to use. I also made some modifications based on some issues that were reported by other developers.
A minimal tensorflow implementation of YOLOv3, with support for training, inference and evaluation.
Install requirements and download pretrained weights
$ pip3 install -r ./docs/requirements.txt
Download yymnist dataset and make data.
$ git clone https://github.com/YunYang1994/yymnist.git
$ python yymnist/make_data.py --images_num 1000 --images_path ./data/dataset/train --labels_txt ./data/dataset/yymnist_train.txt
$ python yymnist/make_data.py --images_num 200 --images_path ./data/dataset/test --labels_txt ./data/dataset/yymnist_test.txt
Open ./core/config.py
and do some configurations
__C.YOLO.CLASSES = "./data/classes/yymnist.names"
Finally, you can train it and then evaluate your model
$ python train.py
$ tensorboard --logdir ./data/log
$ python test.py
$ cd ../mAP
$ python main.py # Detection images are expected to save in `YOLOV3/data/detection`
Track training progress in Tensorboard and go to http://localhost:6006/
$ tensorboard --logdir ./data/log