EasyClassify
Bibliothek zur Klassifizierung mittels Deep Learning
- Enthält Funktionen zum Trainieren von Klassifikatoren und zur Bildklassifizierung
- Erkennt fehlerhafte Produkte
- Sortiert Produkte in verschiedene Klassen
- Unterstützt Datenaugmentierung
- Kompatibel mit CPU- und GPU-Verarbeitung
- Deep Learning Studio zur Erstellung, zum Training und zur Auswertung von Datensätzen
- Erhältlich als Teil des Deep Learning Bundles
- Auch als kostengünstige Lizenz ausschließlich für die Inferenz
Beschreibung
Was ist Deep Learning?
Neuronale Netze sind Computersysteme, die von den biologischen neuronalen Netzen des menschlichen Gehirns inspiriert sind. Faltungsneuronale Netze (Convolutional Neural Networks, CNN) sind eine Klasse tiefer, vorwärtsgerichteter künstlicher neuronaler Netze, die am häufigsten zur Bildanalyse eingesetzt werden. Deep Learning nutzt große CNNs, um komplexe Probleme zu lösen, die mit sogenannten konventionellen Algorithmen der Bildverarbeitung nur schwer oder gar nicht zu lösen sind. Deep-Learning-Algorithmen sind möglicherweise einfacher zu verwenden, da sie in der Regel anhand von Beispielen lernen. Der Anwender muss nicht selbst herausfinden, wie Teile klassifiziert oder während der Inspektion geprüft werden sollen. Stattdessen lernen sie in einer anfänglichen Trainingsphase allein dadurch, dass ihnen viele Bilder der zu inspizierenden Teile gezeigt werden. Nach erfolgreichem Training können sie zur Klassifizierung von Teilen oder zur Erkennung und Segmentierung von Fehlern eingesetzt werden.
Wozu eignet sich EasyClassify?
Deep Learning eignet sich im Allgemeinen nicht für Anwendungen, die präzise Messungen oder Prüfungen erfordern. Es wird auch nicht empfohlen, wenn bestimmte Fehlerarten (wie z. B. falsch-negative Ergebnisse) völlig inakzeptabel sind. EasyClassify schneidet besser ab als herkömmliche Bildverarbeitung, wenn sich die Fehler nur schwer explizit spezifizieren lassen, beispielsweise wenn die Klassifizierung von komplexen Formen und Texturen in verschiedenen Maßstäben und Positionen abhängt. Zudem kann das „Lernen anhand von Beispielen“-Prinzip des Deep Learning auch die Entwicklungszeit eines Bildverarbeitungsprozesses verkürzen.
Datenerweiterung
Deep Learning funktioniert durch das Trainieren eines neuronalen Netzes, dem beigebracht wird, wie eine Reihe von Referenzbildern klassifiziert wird. Die Leistungsfähigkeit des Verfahrens hängt in hohem Maße davon ab, wie repräsentativ und umfangreich die Referenzbildersammlung ist. Das Deep-Learning-Bundle nutzt die „Datenaugmentation“, bei der durch Modifikation (z. B. Verschieben, Drehen, Skalieren) bestehender Referenzbilder innerhalb programmierbarer Grenzen zusätzliche Referenzbilder erzeugt werden. Dadurch kann das Deep-Learning-Bundle bereits mit nur hundert Trainingsbildern pro Klasse arbeiten.
Leistung
Deep Learning erfordert in der Regel erhebliche Rechenleistung, insbesondere während der Trainingsphase. Das Deep-Learning-Bundle unterstützt Standard-CPUs und erkennt automatisch Nvidia-CUDA-kompatible GPUs im PC. Der Einsatz einer einzigen GPU beschleunigt das Training und die Verarbeitungsphasen in der Regel um den Faktor 100.
Erkennung von Nichtverfügbarkeit
Die „Out-of-Distribution“-Erkennung (OOD) ist eine Funktion von EasyClassify, die Bilder identifiziert, die sich deutlich von den Daten unterscheiden, mit denen das Modell trainiert wurde, und daher wahrscheinlich falsch klassifiziert werden. OOD ist eine wichtige Funktion für den Aufbau robuster und zuverlässiger Deep-Learning-Klassifizierungssysteme für praktische Anwendungen.
Kostengünstige Inferenzlizenz
In der Regel erfordert der Einsatz von Deep Learning in der Produktion lediglich die Inferenzverarbeitung. Unter Inferenz versteht man den Vorgang, bei dem ein zuvor trainiertes Modell zur Inspektion und Analyse neu erfasster Bilder verwendet wird. Das Training erfolgt in den meisten Fällen offline. Das Training kann über die eVision-API durchgeführt werden und erfordert eine Lizenz für das Deep-Learning-Bundle. Alternativ kann das Training auch kostenlos mit der Anwendung „Deep Learning Studio“ durchgeführt werden. Lizenzen, die ausschließlich für die Inferenz gelten, stellen eine Alternative zur Deep-Learning-Bundle-Lizenz dar und ermöglichen es dem Kunden, kostenoptimierte Deep-Learning-Lösungen einzusetzen.
Weitere Vorteile
Neo-Lizenzierungssystem
Neo ist das neue Lizenzierungssystem. Es ist zuverlässig, auf dem neuesten Stand der Technik und steht nun für die Speicherung von eVision- und eGrabber-Lizenzen zur Verfügung. Mit Neo können Sie wählen, wo Sie Ihre Lizenzen aktivieren möchten – entweder auf einem Neo-Dongle oder in einem Neo-Software-Container. Sie kaufen eine Lizenz und entscheiden sich später.
Neo-Dongles bieten robuste Hardware und die Flexibilität, von einem Computer auf einen anderen übertragen zu werden. Neo-Software-Container benötigen keine spezielle Hardware, sondern sind stattdessen an den Computer gebunden, auf dem sie aktiviert wurden.
Neo wird mit einem eigenen, dedizierten Neo-Lizenzmanager ausgeliefert, der in zwei Varianten erhältlich ist: als intuitive, benutzerfreundliche grafische Benutzeroberfläche und als Befehlszeilenschnittstelle, die eine einfache Automatisierung der Neo-Lizenzierungsvorgänge ermöglicht.
Alle eVision-Bibliotheken für Windows und Linux
- Microsoft Windows 11, 10 für x86-64 (64-Bit) Prozessorarchitektur
- Microsoft Windows 11, 10 IoT Enterprise auf x86_64-Systemen
- Linux für x86-64 (64-Bit) und ARMv8-A (64-Bit) Prozessorarchitekturen mit einer glibc-Version größer oder gleich 2.18
eVision Deep Learning Studio
eVision enthält die kostenlose Anwendung „Deep Learning Studio“. Diese Anwendung unterstützt den Benutzer sowohl bei der Erstellung des Datensatzes als auch beim Training und Testen des Deep-Learning-Tools. Für EasySegment integriert Deep Learning Studio ein Annotationswerkzeug und kann Vorhersagen in Ground-Truth-Annotationen umwandeln. Außerdem ermöglicht es die grafische Konfiguration des Tools, um es an die Leistungsanforderungen anzupassen. So kann man beispielsweise nach dem Training einen Kompromiss zwischen einer besseren Fehlererkennungsrate und einer besseren Erkennung von einwandfreien Objekten wählen.
Software
- Host PC Operating System
-
eVision is a set of 64-bit libraries that require an Intel compatible processor with the SSE4 instruction set or an ARMv8-A compatible processor.
eVision can be used on the following operating systems:
Microsoft Windows 11, 10 for x86-64 (64-bit) processor architecture
Microsoft Windows 11, 10 IoT Enterprise for x86-64 systems
Linux for x86-64 (64-bit) and ARMv8-A (64-bit) processor architectures with a glibc version greater or equal to 2.18
Remote connections
Remote connections are allowed using remote desktop, TeamViewer or any other similar software.
Virtual machines
Virtual machines are supported. Microsoft Hyper-V, Oracle VirtualBox and libvirt hypervisors have been successfully tested.
Only the Neo Licensing System is compatible with virtualization.
Minimum requirements:
2 GB RAM to run an eVision application
8 GB RAM to compile an eVision application
Between 100 MB and 2 GB free hard disk space for libraries, depending on selected options.
- APIs
-
Supported programming languages :
The eVision libraries and tools support C++, Python and the programming languages compatible with the .NET (C#, VB.NET)
C++ requirements: A compiler compatible with the C++ 11 standard is required to use eVision
Python requirements: Python 3.11 or later is required to use the Python bindings for eVision
.NET requirements: .NET framework 4.8 (or later) or the .NET platform 6.0 (or later) are supported
Supported Integrated Development Environments:
Microsoft Visual Studio 2017 (C++, C#, VB .NET, C++/CLI)
Microsoft Visual Studio 2019 (C++, C#, VB .NET, C++/CLI)
Microsoft Visual Studio 2022 (C++, C#, VB .NET, C++/CLI)
QtCreator 4.15 with Qt 5.12
Ordering Information
- Product status
-
Released
- Product code - Description
-
PC4187 Open EasyClassify for USB dongle
PC4337 Open eVision EasyClassify
PC4192 Open EasyClassify Inference for USB dongle
PC4342 Open eVision EasyClassify Inference
- Related products
-
PC4182 Open Deep Learning Bundle for USB dongle
PC4332 Open eVision Deep Learning Bundle