Yolo-v3 model was implemented with tf2 eager style. I also implemented the eager model's training function and applied it to other datasets (digit detector, vehicle detector).
I have implemented yolo-v3 detector using tf2 eager execution.
I recommend that you create and use an anaconda env that is independent of your project. You can create anaconda env for this project by following these simple steps. This process has been verified on Windows 10 and ubuntu 16.04.
$ conda create -n yolo3 python=3.6
$ activate yolo3 # in linux "source activate yolo3"
(yolo3) $ pip install -r requirements.txt
(yolo3) $ pip install -e .
Run object detection through the following command.
project/root> python pred.py -c configs/predict_coco.json -i imgs/dog.jpg
You can see the following results:
This project provides a way to train a detector from scratch. If you follow the command below, you can build a digit detector with just two images. If you follow the instructions, you can train the digit detector as shown below.
project/root> python train_eager.py -c configs/svhn.json
After training, you can evaluate the performance of the detector with the following command.
project/root> python eval.py -c configs/svhn.json
train_annot_folder
. The evaluation results are output in the following manner.{'fscore': 1.0, 'precision': 1.0, 'recall': 1.0}
Now you can add more images to train a digit detector with good generalization performance.