YOLOv3
YOLOv3 is the Darknet-53 detector that added multi-scale prediction and independent logistic classifiers to the YOLO line. LibreYOLO carries it as a frozen, inference-only exhibit in tiny, base and SPP sizes.
- Tasks
- detection
- Sizes
- t, b, spp at 416 to 608 px
- Install
pip install libreyolo- Support tier
- Museum, since v. Frozen exhibit. Bug fixes only.
- Licenses
- Code MIT, weights Public domain (Darknet "YOLO LICENSE"). Commercial use
Install
YOLOv3 needs no extra beyond the base package.
pip install libreyoloPredict
This family is inference-only: train() raises NotImplementedError, so this
page has no Train section. Predict, validate and export are all supported.
Weights download from Hugging Face on first use and are cached locally.
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreYOLO3b.pt")result = model(SAMPLE_IMAGE, save=True) for box in result.boxes: print(box.cls, box.conf, box.xyxy)libreyolo predict model=LibreYOLO3b.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE # The SPP variant adds a spatial pyramid pooling block before the# detection heads and runs at its own native input size.model = LibreYOLO("LibreYOLO3spp.pt")result = model(SAMPLE_IMAGE)The returned Results object is the one every family returns, so swapping in
a different detector is a one line change. conf filters the confidence
threshold and iou the NMS threshold, applied per scale before boxes from all
three heads are merged. See prediction for sources, streaming
and result handling.
Validate
val() returns a dictionary of metrics/ keys covering precision, recall,
mAP 50 and mAP 50-95, measured against any dataset in the format you validate
on.
from libreyolo import LibreYOLO model = LibreYOLO("LibreYOLO3b.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/mAP50-95"])print(metrics["metrics/mAP50"])libreyolo val model=LibreYOLO3b.pt data=my-dataset.yamlExport
| Task | ONNX | TorchScript | ExecuTorch | TensorRT | OpenVINO | Paddle | MNN | RKNN | ncnn | TFLite | CoreML | Core AI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Detection | Detection to ONNX: supported. | Detection to TorchScript: supported. | Detection to ExecuTorch: supported. | Detection to TensorRT: supported. | Detection to OpenVINO: supported. | Detection to Paddle: not supported | Detection to MNN: not supported | Detection to RKNN: not supported | Detection to ncnn: supported. | Detection to TFLite: not supported | Detection to CoreML: not supported | Detection to Core AI: supported. |
An exported artifact loads back through LibreYOLO() on its file suffix, so a
.onnx or .engine file behaves like a checkpoint and returns the same
Results. Running the graph in a bare runtime, with no LibreYOLO installed, is
also supported, but then preprocessing and postprocessing are yours to write.
from libreyolo import LibreYOLO model = LibreYOLO("LibreYOLO3b.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)libreyolo export model=LibreYOLO3b.pt format=onnxlibreyolo export model=LibreYOLO3b.pt format=tensorrt half=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE # The factory routes on the file suffix, so an exported artifact loads# like any checkpoint and returns the same Results object.model = LibreYOLO("LibreYOLO3b.onnx")result = model(SAMPLE_IMAGE) print(result.boxes.xyxy)Checkpoints
Every published weight file for this family.
| File | Input (px) | Weights license |
|---|---|---|
| Detection | ||
| LibreYOLO3t.pt | 416 | other |
| LibreYOLO3b.pt | 416 | other |
| LibreYOLO3spp.pt | 608 | other |
Every file above exists in the LibreYOLO org today and downloads on first use.
Licensing
Check the license on the Hugging Face repository of the specific weights you download. Every checkpoint in the LibreYOLO org carries one, and they are not always the same across a family. That repository is the authoritative source; the summary below describes what applied when this page was last verified.
This is a description of the licenses involved, not legal advice. If the answer matters commercially, read the licenses yourself and take your own counsel.
- Original work
- YOLOv3, Joseph Redmon
- Upstream license
- Public domain (Darknet "YOLO LICENSE")
- Upstream source
- github.com/pjreddie/darknet
- LibreYOLO code
- MIT
- Weights
- Public domain (Darknet "YOLO LICENSE"), republished at huggingface.co/LibreYOLO
- Interpretation
- Darknet's bundled NOTICE quotes its own license in full: "Darknet is public domain. Do whatever you want with it." That covers both the architecture and the pretrained weights LibreYOLO converts from it, with no attribution requirement and no restriction on commercial use. LibreYOLO's own code around this architecture is MIT.