MCPcopy Index your code
hub / github.com/MultimediaTechLab/YOLO

github.com/MultimediaTechLab/YOLO @v1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0 ↗ · + Follow
397 symbols 1,323 edges 39 files 78 documented · 20%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

YOLO: Official Implementation of YOLOv9, YOLOv7, YOLO-RD

Documentation Status GitHub License

Developer Mode Build & Test Deploy Mode Validation & Inference

Open In Colab Hugging Face Spaces

Welcome to the official implementation of YOLOv7[^1] and YOLOv9[^2], YOLO-RD[^3]. This repository will contains the complete codebase, pre-trained models, and detailed instructions for training and deploying YOLOv9.

TL;DR

  • This is the official YOLO model implementation with an MIT License.
  • For quick deployment: you can directly install by pip+git:
pip install git+https://github.com/WongKinYiu/YOLO.git
yolo task.data.source=0 # source could be a single file, video, image folder, webcam ID

Introduction

Installation

To get started using YOLOv9's developer mode, we recommand you clone this repository and install the required dependencies:

git clone git@github.com:WongKinYiu/YOLO.git
cd YOLO
pip install -r requirements.txt

Features

## Task These are simple examples. For more customization details, please refer to [Notebooks](examples) and lower-level modifications **[HOWTO](docs/HOWTO.md)**. ## Training To train YOLO on your machine/dataset: 1. Modify the configuration file `yolo/config/dataset/**.yaml` to point to your dataset. 2. Run the training script:
python yolo/lazy.py task=train dataset=** use_wandb=True
python yolo/lazy.py task=train task.data.batch_size=8 model=v9-c weight=False # or more args
### Transfer Learning To perform transfer learning with YOLOv9:
python yolo/lazy.py task=train task.data.batch_size=8 model=v9-c dataset={dataset_config} device={cpu, mps, cuda}
### Inference To use a model for object detection, use:
python yolo/lazy.py # if cloned from GitHub
python yolo/lazy.py task=inference \ # default is inference
                    name=AnyNameYouWant \ # AnyNameYouWant
                    device=cpu \ # hardware cuda, cpu, mps
                    model=v9-s \ # model version: v9-c, m, s
                    task.nms.min_confidence=0.1 \ # nms config
                    task.fast_inference=onnx \ # onnx, trt, deploy
                    task.data.source=data/toy/images/train \ # file, dir, webcam
                    +quiet=True \ # Quiet Output
yolo task.data.source={Any Source} # if pip installed
yolo task=inference task.data.source={Any}
### Validation To validate model performance, or generate a json file in COCO format:
python yolo/lazy.py task=validation
python yolo/lazy.py task=validation dataset=toy
## Contributing Contributions to the YOLO project are welcome! See [CONTRIBUTING](docs/CONTRIBUTING.md) for guidelines on how to contribute. ## Star History [![Star History Chart](https://api.star-history.com/svg?repos=MultimediaTechLab/YOLO&type=Date)](https://star-history.com/#MultimediaTechLab/YOLO&Date) ## Citations
@inproceedings{wang2022yolov7,
      title={{YOLOv7}: Trainable Bag-of-Freebies Sets New State-of-the-Art for Real-Time Object Detectors},
      author={Wang, Chien-Yao and Bochkovskiy, Alexey and Liao, Hong-Yuan Mark},
      year={2023},
      booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},

}
@inproceedings{wang2024yolov9,
      title={{YOLOv9}: Learning What You Want to Learn Using Programmable Gradient Information},
      author={Wang, Chien-Yao and Yeh, I-Hau and Liao, Hong-Yuan Mark},
      year={2024},
      booktitle={Proceedings of the European Conference on Computer Vision (ECCV)},
}
@inproceedings{tsui2024yolord,
      author={Tsui, Hao-Tang and Wang, Chien-Yao and Liao, Hong-Yuan Mark},
      title={{YOLO-RD}: Introducing Relevant and Compact Explicit Knowledge to YOLO by Retriever-Dictionary},
      booktitle={Proceedings of the International Conference on Learning Representations (ICLR)},
      year={2025},
}

[^1]: [**YOLOv7**: Trainable Bag-of-Freebies Sets New State-of-the-Art for Real-Time Object Detectors](https://arxiv.org/abs/2207.02696) [^2]: [**YOLOv9**: Learning What You Want to Learn Using Programmable Gradient Information](https://arxiv.org/abs/2402.13616) [^3]: [**YOLO-RD**: Introducing Relevant and Compact Explicit Knowledge to YOLO by Retriever-Dictionary](https://arxiv.org/abs/2410.15346)

Core symbols most depended-on inside this repo

create_model
called by 14
yolo/model/yolo.py
create_dataloader
called by 9
yolo/tools/data_loader.py
transform_bbox
called by 9
yolo/utils/bounding_box_utils.py
update
called by 7
yolo/utils/bounding_box_utils.py
create_converter
called by 7
yolo/utils/bounding_box_utils.py
calculate_iou
called by 6
yolo/utils/bounding_box_utils.py
lerp
called by 6
yolo/utils/model_utils.py
prepare_dataset
called by 5
yolo/tools/dataset_preparation.py

Shape

Method 177
Function 141
Class 79

Languages

Python100%

Modules by API surface

yolo/model/module.py79 symbols
yolo/utils/bounding_box_utils.py27 symbols
yolo/tools/data_augmentation.py27 symbols
yolo/utils/logging_utils.py25 symbols
yolo/utils/model_utils.py23 symbols
yolo/tools/data_loader.py23 symbols
yolo/tools/solver.py22 symbols
yolo/config/config.py20 symbols
yolo/tools/loss_functions.py17 symbols
tests/conftest.py17 symbols
tests/test_utils/test_bounding_box_utils.py14 symbols
tests/test_tools/test_solver.py10 symbols

For agents

$ claude mcp add YOLO \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact