YOLOv4

YOLOv4 combines a CSPDarknet-53 backbone, an SPP block and a PANet neck with Mish activations. LibreYOLO carries it as a frozen, inference-only exhibit in tiny and base sizes.

Tasks
detection
Sizes
t, b at 416 to 608 px
Install
pip install libreyolo
Support tier
Museum, since v. Frozen exhibit. Bug fixes only.
Upstream
YOLOv4 by Alexey Bochkovskiy, Public domain (Darknet "YOLO LICENSE"). Paper, source
Licenses
Code MIT, weights Public domain (Darknet "YOLO LICENSE"). Commercial use

Install

YOLOv4 needs no extra beyond the base package.

bash
pip install libreyolo

Predict

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.

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreYOLO4b.pt")result = model(SAMPLE_IMAGE, save=True) for box in result.boxes:    print(box.cls, box.conf, box.xyxy)
CLI
libreyolo predict model=LibreYOLO4b.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True

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 after each head's own scale_x_y center scaling. 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.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreYOLO4b.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/mAP50-95"])print(metrics["metrics/mAP50"])
CLI
libreyolo val model=LibreYOLO4b.pt data=my-dataset.yaml

Export

TaskONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
DetectionDetection to ONNX: supported. Detection to TorchScript: supported. Detection to ExecuTorch: supported. Detection to TensorRT: supported. Detection to OpenVINO: supported. Detection to Paddle: not supportedDetection to MNN: not supportedDetection to RKNN: not supportedDetection to ncnn: supported. Detection to TFLite: not supportedDetection to CoreML: not supportedDetection 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.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreYOLO4b.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)
CLI
libreyolo export model=LibreYOLO4b.pt format=onnxlibreyolo export model=LibreYOLO4b.pt format=tensorrt half=True
Use the exported file
from 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("LibreYOLO4b.onnx")result = model(SAMPLE_IMAGE) print(result.boxes.xyxy)

Checkpoints

Every published weight file for this family.

FileInput (px)Weights license
Detection
LibreYOLO4t.pt416other
LibreYOLO4b.pt608other

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
YOLOv4, Alexey Bochkovskiy
Upstream license
Public domain (Darknet "YOLO LICENSE")
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.

Citation

@misc{bochkovskiy2020yolov4,
      title={YOLOv4: Optimal Speed and Accuracy of Object Detection}, 
      author={Alexey Bochkovskiy and Chien-Yao Wang and Hong-Yuan Mark Liao},
      year={2020},
      eprint={2004.10934},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Copied from the authors' citation block at github.com/AlexeyAB/darknet#citation.

Verified against LibreYOLO v1.5.0. Support tables, checkpoints and benchmark numbers on this page are generated from the released library and the published weights, not written by hand.