This is my implementation of YOLO Nano with Pytorch.
YOLO Nano paper:
YOLO Nano: a Highly Compact You Only Look Once Convolutional Neural Network for Object Detection
The network structure of YOLO Nano:
The performance of YOLO Nano:
- Make sure you have powerfull GPU computer and you are good at Python coding.
git clone git@github.com:ardeal/yolo_nano.git
- Install Pytorch and necessary packages
- Prepare validating images. Training and validating image and label files are all specified in file config/coco.data.
- in data folder, there are 2 csv files which are examples about how to prepare training and prediction samples.
- If you prepare corresponding csv file similiar with those 2 csv files in data folder, VOC data could also be used to train the network.
- Customize opt.py file according to your environment
- Run train_yolonano.py
- Prepare validating images and corresponding label files. In this code base, the example image and label files are downloaded from COCO.
- Make sure the pth file path in test_yolonano.py code is correct.
- The evaluate function in test_yolonano.py file is the main code of validating. Uncomment out code in evaluate function in test_yolonano.py file to show the image and corresponding algorithms result.
the performance at present is not good enough, I will update the code and re-train a better model
The size of the model is too big to be shared on github directly.
If you are interested in the pre-trained model, please join the QQ group.
- The code will be further optimized.
- Star the code you like is the best respect to the author.
- Please ask your questions on the Issues tab on this page or in the QQ group: