yolov3  by ultralytics

Object detection in PyTorch > ONNX > CoreML > TFLite

created 7 years ago
10,426 stars

Top 4.9% on sourcepulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

Ultralytics YOLOv3 provides a PyTorch implementation of the YOLOv3 object detection model, optimized for speed and accuracy. It targets researchers and developers needing a robust baseline for computer vision tasks, offering straightforward integration and deployment across multiple platforms.

How It Works

This implementation leverages PyTorch, building upon the established YOLOv3 architecture. It utilizes Darknet-53 as its feature extractor and incorporates multi-scale predictions and logistic classifiers for improved accuracy, particularly with small objects and multi-label classification. The project emphasizes ease of use and exportability to formats like ONNX, CoreML, and TFLite.

Quick Start & Requirements

  • Install via pip: pip install ultralytics
  • Clone repo and install dependencies: git clone https://github.com/ultralytics/yolov3, cd yolov3, pip install -r requirements.txt
  • Requires Python >= 3.8.0 and PyTorch >= 1.8.
  • Inference can be performed using PyTorch Hub or the detect.py script.
  • Training examples are provided for COCO dataset.
  • Official Docs: https://docs.ultralytics.com/

Highlighted Details

  • Supports inference via PyTorch Hub and detect.py script with various input sources (images, videos, streams, webcam).
  • Offers training scripts for YOLOv3, YOLOv3-SPP, and YOLOv3-tiny on datasets like COCO.
  • Includes tutorials for custom data training, model export (ONNX, TFLite, CoreML), and deployment on NVIDIA Jetson.
  • Integrates with experiment tracking tools like Weights & Biases and Comet ML.

Maintenance & Community

Licensing & Compatibility

  • AGPL-3.0 License: Suitable for academic and personal projects, requires derivative works to be open-sourced.
  • Enterprise License available for commercial use.

Limitations & Caveats

  • While the repo is named yolov3, the README indicates it's based on YOLOv5 structure, suggesting potential compatibility nuances for pure YOLOv3 users.
  • YOLOv3-specific documentation may be limited, directing users to general YOLO principles.
Health Check
Last commit

4 weeks ago

Responsiveness

1 day

Pull Requests (30d)
1
Issues (30d)
0
Star History
63 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.