Skip to content

theoseo/yolov3-tensorflow2

Repository files navigation

YOLOv3 implementation in TensorFlow 2.0

This implementation of YOLOv3 object detector in TensorFlow 2.0 (Keras). Referenced great resources below. Traning is on going. Tested on Python 3.6, TensorFlow 2.0 alpha on Ubuntu 16.04.

Reference

Todo list:

  • Darknet53 architecture and Test
  • YOLOv3 architecture
  • Basic working demo
  • Weights converter (util for exporting loaded COCO weights as TF checkpoint)
  • Training pipeline
  • More backends

How to run the demo:

To run demo type this in the command line:

  1. Download COCO class names file: wget https://raw.githubusercontent.com/pjreddie/darknet/master/data/coco.names
  2. Download and convert model weights:
    1. Download binary file with desired weights:
      1. Full weights: wget https://pjreddie.com/media/files/yolov3.weights
    2. Run python ./convert_weights.py
  3. Run python ./demo.py --input_img <path-to-image> --output_img <name-of-output-image>

####Optional Flags

  1. convert_weights.py:
    1. --class_names
      1. Path to the class names file
    2. --weights_file
      1. Path to the desired weights file
    3. --data_format
      1. channels_first or channels_last
    4. --tf2_weights
      1. Output weights file
  2. demo.py
    1. --class_names
      1. Path to the class names file
    2. --input_img
      1. Path to the input image file
    3. --output_img
      1. Path to the output image file
    4. --data_format
      1. channels_first or channels_last
    5. --weights
      1. TensorFlow 2.0 Weights file.
    6. --score_threshold
      1. Desired Score Threshold
    7. --iou_threshold
      1. Desired IOU Threshold

About

YOLOv3 implementation in TensorFlow 2.0

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published