Visuelle Anomalieerkennung mit anomalib: PatchCore, Memory Bank und Inferenz an der Linie
Eurokommerz, Wien, seit 2006: Private AI/ML · IT Managed Services · Enterprise Training · KI-Hardware & Software
- Anomalieerkennung lernt, wie ein Gutteil aussieht, und markiert Abweichungen; sie kann also allein mit Bildern von Gutteilen beginnen, während Objektdetektoren wie YOLO gelabelte Beispiele jeder Fehlerklasse brauchen
- anomalib 2.7.0 (Apache 2.0) bietet PatchCore, PaDiM, STFPM und neu in 2.7.0 MH-PatchCore, RAD und das Few-Shot-Modell FoundAD; es braucht PyTorch ab 2.10 und hat Installationsvarianten für CUDA 12.6 und 13.0
- PatchCore trainiert in einem Durchgang ohne Backpropagation und behält standardmäßig 10 Prozent der Patch-Merkmale; nach unserer Rechnung sammeln die Standardeinstellungen vor der Ausdünnung etwa 6 MiB Merkmale pro Trainingsbild
- Das Training läuft auf einer GPU pro Job; ein zentraler Server trainiert jede Produktvariante neu, und eine NVIDIA L4 oder RTX PRO 4000 SFF (je 24 GB, 72 W und 70 W) übernimmt die Inferenz an der Linie
- Die Dokumentation von anomalib nennt keine Inferenzrate für diese Karten: Messen Sie die Zeit pro Bild auf der Karte, die an der Linie stehen wird
Geliefert von Eurokommerz: RTX PRO 6000 und H200 NVL Preis und Verfügbarkeit anfragen →
Anomalieerkennung, nur mit Gutteilen trainiert
Visuelle Anomalieerkennung ist Fehlererkennung ohne Fehlerbilder: Das Modell lernt allein aus Bildern von Gutteilen, wie ein gutes Teil aussieht, und markiert jeden Bereich, der davon abweicht. anomalib, eine Open-Source-Bibliothek unter Apache 2.0, implementiert solche Modelle, darunter PatchCore, das sein Modell in einem einzigen Durchgang über die Gutteilbilder aufbaut, ohne Backpropagation. Ein Qualitätsteam mit Tausenden Gutteilbildern und einer Handvoll Fehlerfotos kann so mit der Prüfung beginnen; ein GPU-Server trainiert für jede Produktvariante ein Modell neu, und eine kleine Karte an der Linie führt die Prüfung aus.
Der Unterschied zur überwachten Detektion entscheidet, welches Werkzeug passt. Ein Detektor vom Typ YOLO lernt aus Rahmen oder Masken, die um jede Fehlerklasse gezeichnet werden, und die Empfehlung von Ultralytics selbst lautet etwa 1.500 Bilder pro Klasse, wie unser Leitfaden zu Bildprüfung mit KI ohne Data Scientists erklärt. Das passt zu Fehlern, die wiederkehren und sich benennen lassen. Anomalieerkennung passt zum umgekehrten Fall: seltene Fehler, Fehlerarten, die noch niemand gesehen hat, und Linien, an denen Ausschuss zu selten ist, um Tausende Beispiele zu sammeln. Oft werden beide kombiniert: Die Anomalieerkennung markiert die ungewöhnlichen Teile, ein überwachtes Modell oder ein Mensch ordnet ein, was gefunden wurde.
Auch die Methode hat Grenzen. Sie markiert alles, was von den Trainingsbildern abweicht, auch eine neue Materialcharge mit leicht anderer Oberfläche, ein verschobenes Teil oder geändertes Licht. Die Trainingsbilder müssen deshalb die normale Streuung der Gutteile abdecken, und Kamera, Objektiv und Beleuchtung müssen zwischen Training und Produktion gleich bleiben.
Dieser Artikel richtet sich an das IT- und ML-Team, das die Lösung betreibt. Für das Training mit gelabelten Fehlern siehe unseren Leitfaden zum GPU-Server für das Training von Vision-Modellen, für die Prüfung als eine von mehreren Aufgaben im Werk unseren Artikel zu KI-Servern für die Industrie.
anomalib 2.7.0: Modelle, Lizenz und Installation
anomalib beschreibt sich als Bibliothek zur Anomalieerkennung mit aktuellen Algorithmen („an anomaly detection library comprising state-of-the-art algorithms“), mit Experimentverwaltung, Hyperparameter-Optimierung und Edge-Inferenz. Das Repository steht unter Apache 2.0, und 2.7.0 ist am 25. Oktober 2026 die aktuelle Version auf GitHub.
| PUNKT | ANOMALIB 2.7.0 | HINWEIS |
|---|---|---|
| Lizenz | Apache 2.0 | Code der Bibliothek |
| Python | ab 3.10 | Badge im Repository |
| PyTorch | ab 2.10 | mit 2.7.0 angehoben; ROCm 2.13 |
| GPU-Varianten | [cu126], [cu130] | außerdem cpu, rocm, xpu, openvino |
| Genannte Modelle | PatchCore, PaDiM, STFPM, WinCLIP | vollständige Liste im Quellbaum |
| Neu in 2.7.0 | MH-PatchCore, RAD, FoundAD | RAD retrieval-basiert, FoundAD Few-Shot |
| Export | ONNX, OpenVINO IR, PyTorch | alter ONNX-Exporter entfernt |
GitHub-Repository von anomalib, README und Release Notes von v2.7.0 sowie die Inferenz-Referenz der anomalib-Dokumentation, gelesen am 25. Oktober 2026.
Die Installation erfolgt mit pip install anomalib oder uv pip install "anomalib[cu130]". Auf Karten der RTX PRO Blackwell mit Compute Capability 12.0 nehmen Sie die Variante für CUDA 13.0: CUDA 12.8 war das erste Toolkit, das für diese Architektur kompiliert, wie unser Leitfaden zur Software-Unterstützung der RTX PRO Blackwell erklärt, und unser Artikel zum Fehler „no kernel image“ auf sm_120 zeigt, was mit älteren Builds geschieht.
Training und Test brauchen wenige Zeilen. Das Beispiel im README baut ein Datenmodul, ein Modell und eine Engine und ruft dann engine.fit(datamodule=..., model=...) auf; auf der Kommandozeile leistet anomalib train --model Patchcore mit einem Datenmodul dasselbe. Für eigene Bilder nimmt das Datenmodul Folder ein Wurzelverzeichnis mit einem Ordner guter Bilder (normal_dir) und, falls vorhanden, Ordnern mit Fehlerbildern und Masken. Ohne Fehlerbilder schlägt der Leitfaden zu eigenen Daten die synthetische Anomalieerzeugung vor, die aus normalen Bildern abweichende Bilder für die Validierung erzeugt.
Beachten Sie eine Datensatzlizenz. MVTec AD, der Benchmark in den Beispielen von anomalib und im PatchCore-Paper, steht unter CC BY-NC-SA 4.0, und MVTec schreibt, dass der Datensatz nicht für kommerzielle Zwecke verwendet werden darf („it is not allowed to use the dataset for commercial purposes“). Zum Kennenlernen des Werkzeugs ist er geeignet; ein Produktivmodell wird mit Ihren eigenen Bildern trainiert.
PatchCore: GPU-Anforderungen und wie es die Karte nutzt
PatchCore stammt aus dem Paper „Towards Total Recall in Industrial Anomaly Detection“, das auf MVTec AD eine AUROC auf Bildebene von bis zu 99,6 Prozent berichtet. Es trainiert kein Netz. In der Implementierung von anomalib extrahiert ein auf ImageNet vortrainiertes Wide ResNet-50-2 Merkmale aus zwei Zwischenschichten, layer2 und layer3, für jeden Patch jedes Gutteilbilds. Diese Patch-Merkmale kommen in eine Memory Bank, und ein Coreset-Schritt behält eine repräsentative Teilmenge, standardmäßig 10 Prozent (coreset_). Bei der Inferenz wird jeder Patch eines neuen Bilds mit seinen nächsten Nachbarn in der Memory Bank verglichen (standardmäßig neun); ein Patch, der von allen guten Patches weit entfernt ist, erhält einen hohen Wert, und die Werte bilden die Anomaliekarte, die zeigt, wo der Fehler liegt.
Drei Details folgen aus dem Code. Das Modell braucht laut Docstring keine Optimierung und keine Backpropagation; der Trainer läuft mit max_epochs=1, einem einzigen Durchgang durch die Trainingsdaten. Die Standardeinstellungen des Trainers tragen den Hinweis „only single gpu supported“: Ein PatchCore-Job nutzt eine Karte, und ein Server mit mehreren Karten führt mehrere Jobs aus, einen pro Produktvariante. Und die Suche nach den nächsten Nachbarn ist eine Brute-Force-Suche per Matrixprodukt, verarbeitet in Blöcken von 1.024 Abfrage-Patches, was GPUs gut liegt.
Die Standardbildgröße beträgt 256 × 256 Pixel, normalisiert mit Mittelwert und Standardabweichung von ImageNet. Das Backbone hat laut torchvision 68,9 Millionen Parameter, nach heutigen Maßstäben ein kleines Modell: Der GPU-Speicher geht an die Memory Bank und die Suche, nicht an das Netz.
Größe der Memory Bank nach unserer Rechnung
anomalib dokumentiert nicht, wie viel Speicher eine Memory Bank belegt; hier deshalb die Rechnung für die Standardwerte. Im ResNet-Code von torchvision hat layer2 eines ResNet-50 die Schrittweite 8 und 512 Ausgangskanäle, layer3 hat 1.024; das Wide ResNet-50-2 verbreitert nur die inneren Bottleneck-Kanäle, die Ausgänge bleiben gleich. anomalib skaliert layer3 auf die Größe von layer2 hoch und hängt beide aneinander. Das ergibt ein Merkmal mit 1.536 Werten für jeden der 32 × 32 = 1.024 Patches eines Bilds mit 256 × 256 Pixeln, in 32-Bit-Gleitkommazahlen 6 MiB pro Trainingsbild vor der Ausdünnung.
| GUTTEILBILDER | VOR CORESET | MEMORY BANK (10 %) | SUCHE PRO BILD |
|---|---|---|---|
| 200 | 1,2 GiB | 120 MiB, 20.480 Patches | 3,2 × 10^10 Multiplikationen |
| 1.000 | 5,9 GiB | 600 MiB, 102.400 Patches | 1,6 × 10^11 Multiplikationen |
| 5.000 | 29,3 GiB | 2,9 GiB, 512.000 Patches | 8,1 × 10^11 Multiplikationen |
Unsere Rechnung aus den PatchCore-Standardwerten von anomalib (wide_resnet50_2, layer2 und layer3, Bilder mit 256 × 256 Pixeln, Coreset-Anteil 0,1) und dem ResNet-Code von torchvision; 32-Bit-Gleitkommazahlen angenommen, da der Code den Datentyp nicht festlegt. Keine Messung. Bei 512 × 512 Pixeln ist jeder Wert viermal so groß.
Daraus folgt dreierlei. Die Memory Bank, die die Linie braucht, ist klein: Selbst 5.000 Gutteilbilder ergeben eine Bank unter 3 GiB, die mit Platz für Backbone und Batch auf eine Karte mit 24 GB passt. Das Training braucht mehr, weil alle Merkmale vor dem Coreset-Schritt gesammelt werden; in der Dokumentation von anomalib fanden wir keine Aussage, ob sie im GPU- oder im Hauptspeicher liegen, planen Sie also so, als lägen sie auf der GPU, und testen Sie mit Ihrer Bildzahl. Und der Coreset-Schritt wächst schneller als die Bildzahl. Die gierige k-Center-Auswahl, die anomalib nennt, vergleicht jedes gesammelte Merkmal mit jedem neu gewählten, ihr Aufwand wächst also mit der Zahl der Merkmale mal der Größe des Coresets: Nach unserer Rechnung bedeutet die zehnfache Bildzahl bei gleichem Anteil etwa den hundertfachen Auswahlaufwand. Ein Team, das mit Tausenden Bildern pro Variante trainiert, senkt den Anteil, verkleinert die Bilder oder nimmt eine Karte mit mehr Speicher.
Der Suchaufwand an der Linie wächst linear mit der Memory Bank. Ein Modell aus 5.000 Bildern braucht pro Testbild das 25-Fache an Multiplikationen eines Modells aus 200 Bildern; mehr Trainingsbilder machen die Prüfung also langsamer. Messen Sie die Zeit pro Bild auf der Karte, die an der Linie stehen wird, mit der geplanten Bildgröße und Bank; die Dokumentation von anomalib nennt für diese Karten keine Rate.
Wir liefern die Karten für die Linie und die Server für das Nachtrainieren; senden Sie uns Bildgröße, Zahl der Gutteilbilder pro Variante und die Taktzeit an der Linie, und unser Team antwortet mit einem Vorschlag für Karte und Server.
Zentral trainieren, an der Linie prüfen
Üblich ist eine Trennung der beiden Aufgaben. Der zentrale GPU-Server hält das Bildarchiv, trainiert für jede Produktvariante ein Modell und trainiert es nach, und er prüft es gegen einen Validierungssatz; die Prüfstation an der Linie führt das exportierte Modell innerhalb der Taktzeit auf jedem Bild aus.
| ROLLE | KARTE | SPEICHER, LEISTUNG | HINWEIS |
|---|---|---|---|
| Linie, Industrie-PC | RTX PRO 4000 SFF | 24 GB, 70 W | aktiv gekühlt, Low Profile, zwei Slots |
| Linie, Server oder Edge-Box | L4 | 24 GB, 72 W | passiv, Low Profile, braucht Systemluftstrom |
| Linie, kleine Station | RTX PRO 2000 | 16 GB, 70 W | aktiv gekühlt, Low Profile |
| Zentrales Nachtrainieren | RTX PRO 4500 Server Edition | 32 GB, 165 W | passiv, MIG 2 × 16 GB |
| Zentral, viele Varianten | RTX PRO 6000 Server Edition | 96 GB, bis 600 W | MIG bis 4 × 24 GB |
Produktseiten und Datenblätter von NVIDIA, wie in unseren Leitfäden zur L4 und zu den 70-W-Karten zusammengestellt, und unsere kanonischen Kartendaten, gelesen September bis Oktober 2026. Welche Karte in einen Industrie-PC passt, entscheidet die Freigabeliste des PC-Herstellers.
Die L4 ist eine passive Karte, und NVIDIAs Product Brief verlangt Systemluftstrom; sie gehört also in ein Server- oder Edge-Gehäuse, das sie listet. Ein Industrie-PC mit eigenen Lüftern nimmt eine aktiv gekühlte Karte wie die RTX PRO 4000 SFF. Unser Vergleich von RTX PRO 4000 SFF, RTX PRO 2000 und L4 behandelt die drei Karten der 70-W-Klasse.
Für den zentralen Server spricht das Training auf einer GPU pro Job für mehrere Karten statt einer großen: Ein Server mit mehreren Karten der RTX PRO 4500 Server Edition oder mit RTX PRO 6000 Server Edition, aufgeteilt in MIG-Instanzen, trainiert parallel eine Variante pro Karte oder Instanz. Zwei MIG-Instanzen mit 16 GB auf einer RTX PRO 4500 Server Edition fassen nach der Rechnung oben je einen PatchCore-Job mit 1.000 Bildern, sofern die Merkmale unter dieser Größe bleiben; prüfen Sie die Spitze bei den ersten Läufen mit nvidia-smi. Größere Bildzahlen, andere anomalib-Modelle, die mit Backpropagation trainieren, und ein gemeinsames Training von Vision-Modellen sind Gründe für Karten der RTX PRO 6000 Server Edition. Unser Leitfaden zu MIG-Profilen nennt die Instanzgrößen.
Export, Inferenz und Sicherheit der Checkpoints
anomalib exportiert nach ONNX, OpenVINO IR und PyTorch. Die eigenen Inferencer sind ein TorchInferencer, der auf cuda läuft, und ein OpenVINOInferencer für OpenVINO, das Toolkit von Intel, mit den Geräten CPU, GPU und NPU. Auf einer NVIDIA-Karte an der Linie läuft der PyTorch-Weg über Engine.predict() direkt; ein ONNX-Export lässt sich mit NVIDIA-Laufzeitumgebungen ausführen, die unser Leitfaden zum Serving von Vision-Modellen mit Triton, ONNX und TensorRT behandelt. Prüfen Sie das exportierte Modell auf denselben Bildern gegen das PyTorch-Modell, bevor es an die Linie geht, denn eine Konvertierung kann die Werte und damit die Schwelle verschieben.
Zwei Änderungen in 2.7.0 betreffen den Betrieb. Der alte ONNX-Exporter (dynamo=False) ist entfernt; der Standard-Exporter dynamo braucht die Variante openvino für onnxscript. Und Checkpoints werden jetzt standardmäßig mit weights_only=True geladen, sodass ältere Checkpoints mit gepickelten Objekten nicht mehr laden, bis sie einmal migriert oder neu gespeichert sind; planen Sie beim Upgrade ein Nachtrainieren oder einen neuen Export ein. Die Dokumentation warnt außerdem, dass TorchInferencer Modelle mit dem Pickle-Modul von Python lädt, das in einem Checkpoint eingebetteten Code ausführen kann, rät, Modelle nur aus vertrauenswürdigen Quellen zu laden („Load models only from trusted sources“), und verlangt TRUST_. Behandeln Sie Modelldateien auf dem Weg vom Trainingsserver an die Linie wie Software-Releases: signiert oder zumindest mit Prüfsumme, aus einem kontrollierten Speicher. Unser Leitfaden zum Absichern eines GPU-Servers behandelt Modelldateien allgemein.
Schwellen, Varianten und Nachtrainieren
Ein Wert ist noch keine Entscheidung. Jedes Modell braucht eine Schwelle, über der ein Teil ausgeschleust wird, festgelegt auf einem Validierungssatz mit Gutteilen und, wo vorhanden, echten Fehlern. Ohne echte Fehler liefern synthetische Anomalien eine erste Schätzung, und die ersten Wochen an der Linie, in denen ein Mensch jedes ausgeschleuste Teil prüft, liefern die richtige. Unser Artikel zu AOI-Pseudofehlern mit KI-Prüfung in der SMT-Fertigung zeigt denselben Prüfkreislauf für die automatische optische Inspektion.
Planen Sie ein Modell pro Produktvariante und Kameraposition, denn das Aussehen der Gutteile unterscheidet sich zwischen ihnen. Ein Werk mit 40 Varianten und zwei Kamerapositionen trainiert 80 Modelle; mit dem einzigen Durchgang von PatchCore ist jeder Job kurz, und der zentrale Server arbeitet sie als Warteschlange ab, einen pro Karte oder MIG-Instanz. Trainieren Sie nach, wenn sich Material, Lieferant, Licht oder Kamera ändern, und bewahren Sie jedes Modell mit seiner Liste der Trainingsbilder, seiner Schwelle und der anomalib-Version auf, damit sich eine Ausschleusung auf das Modell zurückführen lässt, das sie ausgelöst hat.
Die neueren Modelle in 2.7.0 gehen den Mangel an Bildern von der anderen Seite an. FoundAD ist als Few-Shot-Anomalieerkennung beschrieben, RAD als retrieval-basiert; WinCLIP kommt mit der Variante clip. Für Varianten mit wenigen Gutteilbildern lohnt ein Test gegen PatchCore auf demselben Validierungssatz.
Was wir liefern
Sie können die Karten und Server dafür bei uns kaufen: Unser Team legt die Konfiguration nach Ihrer Last und Ihrem Budget aus und antwortet innerhalb eines Werktages. Wir liefern die L4, RTX PRO 4000 SFF und RTX PRO 2000 für die Linie und bauen Server für das Nachtrainieren auf Bestellung mit Karten der RTX PRO 4500 Server Edition oder RTX PRO 6000 Server Edition, vor der Lieferung montiert und getestet, mit einem EU-Vertrag und einer EU-Rechnung und mit Herstellergarantie auf jede Komponente, abgewickelt über uns; Mengen und Lieferzeit werden mit dem Angebot schriftlich bestätigt. Unser Service Private AI/ML mit unserem Engineering-Partner Vixen.UNO baut die MLOps-Plattform auf Kubernetes für Training und Modell-Releases; Kamera, Beleuchtung und die Anbindung an die Liniensteuerung bleiben bei Ihrem Team oder Ihrem Bildverarbeitungsintegrator.
FAQ
Welche GPU braucht anomalib?
Wie viel GPU-Speicher braucht PatchCore für das Training?
Kann man Fehler ohne Fehlerbilder erkennen?
Wie lange dauert das Training mit anomalib?
Darf man anomalib kommerziell nutzen?
Wo kann man eine GPU für die Anomalieerkennung an der Linie kaufen?
Wir liefern L4- und RTX-PRO-Karten für Prüfstationen und GPU-Server für das zentrale Nachtrainieren. Beschreiben Sie Ihre Aufgabe in wenigen Sätzen, unser Team hilft Ihnen weiter. Wir antworten innerhalb eines Werktages. Das erste Gespräch ist kostenlos.
Mit einem Experten sprechenWir antworten innerhalb eines Werktages