YOLOv1
YOLOv1 is the original 2016 detector that gave the YOLO family its name: one convolutional network with a fully connected head predicts every box and class score in a single pass, with no anchor boxes. LibreYOLO carries it as a frozen, inference-only exhibit.
- Tasks
- detection
- Sizes
- t, b at 448 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
YOLOv1 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("LibreYOLO1b.pt")result = model(SAMPLE_IMAGE, save=True) for box in result.boxes: print(box.cls, box.conf, box.xyxy)libreyolo predict model=LibreYOLO1b.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=TrueThe returned Results object is the one every family returns, so swapping in
a different detector is a one line change. Two things are specific to this
family. The published checkpoint is trained on Pascal VOC (2007+2012), not
COCO, so box.cls indexes the 20 VOC categories (aeroplane, bicycle, bird,
boat, bottle, bus, car, cat, chair, cow, diningtable, dog, horse, motorbike,
person, pottedplant, sheep, sofa, train, tvmonitor) rather than the 80 COCO
ones. And the fully connected detection head accepts one image at a time, so a
list of sources is looped rather than run as a true batch. 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 a dataset in the same VOC-style label
space the checkpoint was trained on.
from libreyolo import LibreYOLO model = LibreYOLO("LibreYOLO1b.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/mAP50-95"])print(metrics["metrics/mAP50"])libreyolo val model=LibreYOLO1b.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("LibreYOLO1b.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)libreyolo export model=LibreYOLO1b.pt format=onnxlibreyolo export model=LibreYOLO1b.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("LibreYOLO1b.onnx")result = model(SAMPLE_IMAGE) print(result.boxes.xyxy)Checkpoints
Every published weight file for this family.
| File | Input (px) | Weights license |
|---|---|---|
| Detection | ||
| LibreYOLO1b.pt | 448 | 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
- YOLOv1, 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. One thing to know before deploying this checkpoint: it is trained on Pascal VOC 2007+2012, not COCO, so it detects and names the 20 VOC categories rather than the 80 COCO ones.