VGG

VGG ist ein konvolutionaler Bildklassifikator, der auf gleichförmigen Stapeln kleiner 3x3-Faltungen statt größerer Filter basiert. LibreYOLO stellt die Varianten mit 16 und 19 Schichten jeweils ohne und mit Batch-Normalisierung für die Bildklassifizierung bereit.

Aufgaben
classify
Größen
16, 19, 16bn, 19bn at 224 px
Installation
pip install libreyolo
Supportstufe
Nur Inferenz, seit v. Nur Vorhersage, Validierung und Export. Trainingsfunktionen sind nicht verfügbar.
Upstream
VGG von Visual Geometry Group, University of Oxford, BSD-3-Clause. Publikation, Quelle
Lizenzen
Code BSD-3-Clause, Gewichte BSD-3-Clause. Kommerzielle Nutzung

Installation

VGG benötigt kein optionales Extra. Alle Importe sind in der Basisinstallation enthalten.

bash
pip install libreyolo

Vorhersage

Die Gewichte werden bei der ersten Verwendung von Hugging Face heruntergeladen und lokal zwischengespeichert.

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreVGG16-cls.pt")result = model(SAMPLE_IMAGE, save=True) probs = result.probsprint(probs.top1, probs.top1conf)print(probs.top5, probs.top5conf)
CLI
libreyolo predict model=LibreVGG16-cls.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True

Ein Klassifikator gibt result.probs statt result.boxes zurück. top1 und top5 enthalten Klassenindizes, top1conf und top5conf die zugehörigen Konfidenzwerte. Die Vorhersage verwendet eine feste Eingabegröße von 224 px und löst einen Fehler aus, wenn du einen anderen Wert für imgsz übergibst. Unter Vorhersage findest du Informationen zu Quellen, Streaming und Ergebnisverarbeitung.

Varianten

Es gibt vier Größen: 16 und 19 konvolutionale Schichten, jeweils als einfache und als Batch-normalisierte Variante. Die bereitgestellten Gewichte stammen aus dem späteren, von Grund auf neu ausgeführten ImageNet-Training von torchvision. Es handelt sich nicht um Konvertierungen der ursprünglichen Caffe-Veröffentlichung der Oxford-Gruppe von 2014. LibreYOLO stellt diese Familie nur für die Inferenz bereit. Unterstützt werden Vorhersage, Validierung im ImageNet-Stil mit Top-1 und Top-5 sowie Export. Fine-Tuning ist nicht implementiert.

Validierung

val() arbeitet mit einem Split im ImageFolder-Stil, also einem Verzeichnis mit den Unterordnern train/ und val/ und je einem Ordner pro Klasse. Die Methode gibt die Genauigkeit für Top-1 und Top-5 zurück.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreVGG16-cls.pt") # data ist ein Verzeichnis mit train/- und val/-Splits aus Klassenordnern# (ImageFolder-Layout), keine Datensatz-YAML-Datei.metrics = model.val(data="imagenet-1k/") print(metrics["metrics/accuracy_top1"])print(metrics["metrics/accuracy_top5"])
CLI
libreyolo val model=LibreVGG16-cls.pt data=imagenet-1k/

Export

AufgabeONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
classifyclassify to ONNX: unterstütztclassify to TorchScript: unterstütztclassify to ExecuTorch: unterstütztclassify to TensorRT: unterstütztclassify to OpenVINO: unterstütztclassify to Paddle: nicht unterstütztclassify to MNN: nicht unterstütztclassify to RKNN: nicht unterstütztclassify to ncnn: unterstütztclassify to TFLite: nicht unterstütztclassify to CoreML: nicht unterstütztclassify to Core AI: nicht unterstützt

Ein exportiertes Artefakt wird über seine Dateiendung wieder durch LibreYOLO() geladen. Eine .onnx- oder .engine-Datei verhält sich daher wie ein Checkpoint und gibt dasselbe Results-Objekt zurück. Unter Export findest du die Argumente, die jedes Format akzeptiert, sowie zusätzliche Argumente einzelner Formate.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreVGG16-cls.pt")model.export(format="onnx")model.export(format="tensorrt", half=True)
CLI
libreyolo export model=LibreVGG16-cls.pt format=onnxlibreyolo export model=LibreVGG16-cls.pt format=tensorrt half=True
Exportierte Datei verwenden
from libreyolo import LibreYOLO, SAMPLE_IMAGE # Die Factory leitet anhand der Dateiendung weiter, daher wird ein exportiertes Artefakt# wie jeder Checkpoint geladen und gibt dasselbe Results-Objekt zurück.model = LibreYOLO("LibreVGG16-cls.onnx")result = model(SAMPLE_IMAGE) print(result.probs.top1)

Checkpoints

Alle für diese Familie veröffentlichten Gewichtsdateien.

DateiEingabe (px)Lizenz der Gewichte
classify
LibreVGG16-cls.pt224bsd-3-clause
LibreVGG19bn-cls.pt224bsd-3-clause
LibreVGG19-cls.pt224bsd-3-clause
LibreVGG16bn-cls.pt224bsd-3-clause

Jede oben aufgeführte Datei ist heute in der LibreYOLO-Organisation verfügbar und wird bei der ersten Verwendung heruntergeladen.

Lizenzierung

Prüfe die Lizenz im Hugging-Face-Repository der konkreten Gewichte, die du herunterlädst. Jeder Checkpoint in der LibreYOLO-Organisation hat eine Lizenz, und sie ist innerhalb einer Familie nicht immer gleich. Dieses Repository ist die maßgebliche Quelle. Die Zusammenfassung unten beschreibt den Stand bei der letzten Verifizierung dieser Seite.

Dies ist eine Beschreibung der beteiligten Lizenzen und keine Rechtsberatung. Wenn die Antwort kommerziell relevant ist, lies die Lizenzen selbst und hole eigenen Rechtsrat ein.

Originalarbeit
VGG, Visual Geometry Group, University of Oxford
Upstream-Lizenz
BSD-3-Clause
LibreYOLO-Code
MIT
Gewichte
BSD-3-Clause, erneut unter huggingface.co/LibreYOLO veröffentlicht
Einordnung
BSD-3-Clause is a permissive license, so these weights can be used in commercial and closed-source products. It asks you to keep the copyright notice, the list of conditions and the disclaimer with any copy you redistribute, and it forbids using the contributors' names to endorse a derived product without permission; it carries no explicit patent grant. LibreYOLO's code and the four shipped checkpoints (16, 19, 16-BN, 19-BN) are both derived from torchvision, not from the Oxford group's original 2014 Caffe release, which is a separate model under Creative Commons Attribution and is not what LibreYOLO redistributes. Torchvision itself notes that BSD-3-Clause redistribution of a pretrained checkpoint is an implied basis rather than a grant written for that specific checkpoint, and that pretrained-model terms can depend on the data a model was trained on; LibreYOLO repeats that caveat on each hosted weights repository.

Mit LibreYOLO v1.5.0 verifiziert. Supporttabellen, Checkpoints und Benchmarkwerte auf dieser Seite werden aus der veröffentlichten Bibliothek und den publizierten Gewichten generiert und nicht von Hand geschrieben.