andrewssobral / ONNX-YOLOv6-Object-Detection

Python scripts performing object detection using the YOLOv6 model in ONNX.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ONNX YOLOv6 Object Detection

Python scripts performing object detection using the YOLOv6 model in ONNX.

! ONNX YOLOv6 Object Detection Original image: https://commons.wikimedia.org/wiki/File:Motorcyclists_lane_splitting_in_Bangkok,_Thailand.jpg

Important

  • About the YOLOv6 name: https://github.com/meituan/YOLOv6/blob/main/docs/About_naming_yolov6.md
  • The input images are directly resized to match the input size of the model. I skipped adding the pad to the input image, it might affect the accuracy of the model if the input image has a different aspect ratio compared to the input size of the model. Always try to get an input size with a ratio close to the input images you will use.
  • The original YOLOv6 repository is still in development, so things might not work in the future.

Requirements

  • Check the requirements.txt file.
  • For ONNX, if you have a NVIDIA GPU, then install the onnxruntime-gpu, otherwise use the onnxruntime library.
  • Additionally, pafy and youtube-dl are required for youtube video inference.

Installation

git clone https://github.com/ibaiGorordo/ONNX-YOLOv6-Object-Detection.git
cd ONNX-YOLOv6-Object-Detection
pip install -r requirements.txt

ONNX Runtime

For Nvidia GPU computers: pip install onnxruntime-gpu

Otherwise: pip install onnxruntime

For youtube video inference

pip install youtube_dl
pip install git+https://github.com/zizo-pro/pafy@b8976f22c19e4ab5515cacbfae0a3970370c102b

ONNX model

The original model was converted to ONNX using the following Colab notebook from the original repository, run the notebook and save the download model into the models folder:

  • Convert YOLOv6 ONNX for Inference Open In Colab
  • The License of the models is GPL-3.0 license: License

Pytorch model

The original Pytorch model can be found in this repository: YOLOv6 Repository

Examples

  • Image inference:
python image_object_detection.py
  • Webcam inference:
python webcam_object_detection.py
python video_object_detection.py

!YOLOv6 detection video

Original video: https://youtu.be/yXEb0fWLJIY

python video_object_detection.py

Original video: https://youtu.be/trNO5Imf1Q8

References:

About

Python scripts performing object detection using the YOLOv6 model in ONNX.

License:MIT License


Languages

Language:Python 100.0%