• Stars
    star
    229
  • Rank 174,666 (Top 4 %)
  • Language
    Python
  • Created almost 4 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

tfyolo: Efficient Implementation of Yolov5 in TensorFlow

Yolov5

LICENSE

YoloV5 implemented by TensorFlow2 , with support for training, evaluation and inference.

NOT perfect project currently, but I will continue to improve this, so you might want to watch/star this repo to revisit. Any contribution is highly welcomed

demo

Key Features

  • minimal Yolov5 by pure tensorflow2
  • yaml file to configure the model
  • custom data training
  • mosaic data augmentation
  • label encoding by iou or wh ratio of anchor
  • positive sample augment
  • multi-gpu training
  • detailed code comments
  • full of drawbacks with huge space to improve

Usage

Clone and install requirements

$ git clone [email protected]:LongxingTan/Yolov5.git
$ cd Yolov5/
$ pip install -r requirements.txt

Download VOC

$ bash data/scripts/get_voc.sh
$ cd yolo
$ python dataset/prepare_data.py

Train

$ python train.py

Inference

$ python detect.py
$ python test.py

Train on custom data

If you want to train on custom dataset, PLEASE note the input data should like this:

image_dir/001.jpg x_min, y_min, x_max, y_max, class_id x_min2, y_min2, x_max2, y_max2, class_id2

And maybe new anchor need to be created, don't forget to change the nc(number classes) in yolo-yaml.

$ python dataset/create_anchor.py

References and Further Reading