Objekterkennung in Vision-Systemen

Segmentierung auf Pixelebene für Navigation und Wahrnehmung mit 40-mal geringerer Latenz

Erkennen von feinkörnigen Hindernissen und Pfaden auf Bildern in Echtzeit mit Prozessoren mit C7™-NPU

Segmentierung auf Pixelebene für Navigation und Wahrnehmung mit 40-mal geringerer Latenz

Anwendungsübersicht

In der realen Welt gibt es komplexe Landschaften, die Roboter, Drohnen und Fahrzeuge sicher und effizient navigieren müssen. Um diese Landschaften zu verstehen, müssen die Wege und Hindernisse detailliert betrachtet werden.

KI-Modelle können ihre Umgebung auf Pixelebene mithilfe von Modellen auf Grundlage von neuronalen Netzen mit semantischer Segmentierung identifizieren. Andere Anwendungen im Bereich der Fehlererkennung, der medizinischer Bildgebung und der Landwirtschaft können ebenfalls von den präzisen Konturen aussagekräftiger Anomalien und Objekten profitieren, die Segmentierungsmodelle bieten.

Um diese komplexen KI-Modelle auf höchstem Niveau auszuführen, ist eine erhebliche Rechenleistung erforderlich, die normalerweise Beschleuniger wie die C7™-NPU benötigt, um Entscheidungen in Echtzeit zu ermöglichen. 

Evaluierung zum Einstieg

Datensammlung

Datenmuster sind Bilder, die auf Kameras gesammelt werden, die der Kamera ähneln, die in der Produktionsanwendung verwendet wird. Bilder können manuell oder über Tools wie Edge AI Studio erfasst werden. Die Bilder werden entweder mit Pixelmasken oder Polygonen beschriftet, die die Konturen von Objekten umrahmen und komplexe Formen bilden können.

Ein guter Datensatz enthält eine Vielzahl realistischer Szenen und Kombinationen der zu erkennenden Objekte. Üblicherweise gibt es eine generische „Hingergrund“-Klasse, die alles umfasst, was nicht zu verfolgen ist.  In den meisten realen Szenarien kommt es häufig vor, dass sich Objekte überlappen oder teilweise verdecken, aber bei Anwendungen wie medizinischer Bildgebung oder Fehlererkennung sollten solche Situationen nicht auftreten. Um ein stabiles Modell zu trainieren, sollten die Positionen und Ausrichtungen von Objekten sowie die unterschiedlichen Licht- und Wetterbedingungen sehr unterschiedlich sein.

Bewertung der Datenqualität

Die Daten und Beschriftungen sollten so ausgerichtet sein, dass die zu erkennenden Objekte gut von den Masken oder Polygonen abgedeckt sind. Es ist hilfreich, diese Beschriftungen auf dem Bild zu visualisieren, um nach Bereichen zu suchen, die nicht abgedeckt sind oder bei denen die Beschriftung weit über die Objekte hinausgeht. Überladene Beschriftungen machen es dem neuronalen Netz schwerer, die richtigen visuellen Muster zu erlernen.

 

Die Erweiterung von Datensätzen ist eine gute Möglichkeit, die Größe und Variationen des Datensatzes zu erhöhen. Künstliche „Erweiterungen“ ändern das Bild, um mehrere Kopien zu erstellen und den Datensatz zu erweitern. Bei einigen Erweiterungen, wie dem Drehen und Skalieren des Bildes, muss die Beschriftung selbst jedoch auf die gleiche Weise geändert werden.

 

Die folgende Abbildung zeigt Edge AI Studio für ein Segmentierungsmodell auf Grundlage von Daten aus dem Segmentierungsdatensatz tiscapes2017. Dieser Datensatz umfasst sowohl Begrenzungsrahmen für die Objekterkennung als auch Segmentierungsmasken. Das Werkzeug zeigt beide Arten von Beschriftungen an, aber die Maske, die die Personen, Schilder und Fahrzeuge im Bild umrahmt, ist die Beschriftung, die für das Training von Segmentierungsmodellen verwendet wird.

Erstellen und trainieren Sie Ihr Modell

CCStudio™ Edge AI Studio und edgeai-modelmaker enthalten mehrere Segmentierungsmodelle, die mit Ihrem benutzerdefinierten Datensatz trainiert werden können. Wenn edgeai-modelmaker verwendet wird, verwendet der benutzerdefinierte Datensatz das COCO-Format mit Segmentierungsbeschriftungen. 

Andernfalls können Tools wie PyTorch und Tensorflow verwendet werden, um etablierte Modelle zu trainieren oder komplett benutzerdefinierte Modelle zu implementieren.

Finden Sie das richtige Modell für Ihre Anforderungen

Bei der Auswahl des richtigen Modells kommt es zu einem Kompromiss zwischen Genauigkeit und Latenz. Modelle wie Deeplabv3 werden effizient auf der C7-NPU ausgeführt und repräsentative Benchmarks sind im Modellauswahltool verfügbar.

Implementierung Ihres Modells

Für die Modellbereitstellung muss das Modell im Voraus für den Ziel-Hardwarebeschleuniger kompiliert werden. Mit Tools wie Edge AI Studio und edgeai-modelmaker erfolgt die Kompilierung automatisch. Andernfalls erfordert die Kompilierung von Modellen einen separaten Schritt durch Softwarepakete wie edgeai-tidl-Tools auf GitHub von TI mithilfe eines Bring-Your-Own-Model-Work.

Modellartefakte werden durch Laufzeiten wie ONNX Runtime, LiteRT und TVM mit TI Deep Learning (TIDL) als Hardware-Backend zur Beschleunigung implementiert.

Die Implementierung des Modells in einer End-to-End-Vision-Anwendung wird mit edgeai-gst-apps gestartet, welches die Pipeline mit mehreren Stufen an Hardwarebeschleunigung für die Vor- und Nachverarbeitung des Bildes zusammensetzt und zusätzlich das KI-Modell selbst beschleunigt.

Finden Sie den richtigen Baustein für Ihre Zwecke

Die Auswahl des Bausteins hängt von dem erforderlichen KI-Leistungsniveau und dem Durchsatz der Kamera (Auflösung und Bildfrequenz) ab. In der nachstehenden Tabelle finden Sie einen Leistungsvergleich verschiedener Bausteinen.  Hinweis: Verwenden Sie für umfassende Benchmarks dieser Bausteine das Modellauswahltool von Edge AI Studio.

Die Benchmarks in der folgenden Tabelle wurden mit SDK-Version 10.1 hergestellt und zeigen, dass der AM62A bei 2 TOPS die Leistung reiner CPU-Lösungen um mehr als das 40-fache übertrifft.

Produktnummer
Verarbeitungskern
NPU verfügbar
Benchmarks für die semantische Segmentierung
Leistung von DeepLabv3-Segmentierung (512 x 512)
Leistung von FPN Lite mit regnetx-800-Backbone (512 x 512)
AM62P
4x Arm®
Cortex®-A53
keine NPU

1061 ms

0,94 FPS

 

1560 ms

0,64 FPS

 

AM62A7
4x Arm®
Cortex®-A53 + C7™ NPU
2 TOPS

25,3 ms

39 FPS

48,72 ms

21 FPS

TDA4VE-Q1
4x Arm®
Cortex®-A53 + C7™ NPU
8 TOPS

7,66 ms

130 FPS

25,5 ms

39 FPS

FPS (Frames per second, Bilder pro Sekunde)

Alles an Hardware, Software und Ressourcen, was Sie zum Einstieg benötigen

Hardware

SK-AM62A-LP
AM62A ist der kostengünstigste KI-beschleunigte Baustein der AM6xA-Familie und eignet sich am besten zur Evaluierung. Eine generische USB-Kamera oder Webcam kann zur Bilderfassung und Modellevaluierung anhand von Live-Daten verwendet werden.

Software- und Entwicklungstools

PROZESSOR-SDK-LINUX-AM62A
Das Edge-KI-Prozessor-SDK basiert auf Linux und enthält die notwendigen Softwarekomponenten zur Ausführung eines kompilierten Modells mit Hardwarebeschleunigung. Andere Edge-KI-beschleunigte Prozessoren können statt AM62A verwendet werden.

CCStudio™ Edge AI Studio
Dieses Tool enthält Tools für Training, Kompilierung und Bereitstellung eines Modells für Edge-KI-Prozessoren von TI. Ein Modellauswahltool ist verfügbar, um vorgenerierte Benchmarks gängiger Modelle anzuzeigen.

Befehlszeilen-Tools
Tools für Mikroprozessorbausteine mit Linux- und TIDL-Unterstützung. Die Edge-KI-Lösung von TI vereinfacht den gesamten Produktlebenszyklus der DNN-Entwicklung und -Implementierung durch eine Vielzahl von Tools und optimierten Bibliotheken. 

Industrie | Vision

Erkennen Sie Personen in einer Vielzahl von Umgebungen mit auf Vision basierter KI in > 120 FPS mithilfe von KI-Beschleunigern.

Industrie | Vision

Finden und lokalisieren Sie bestimmte Objekte, Personen in Echtzeit mit hohem Bildfrequenz und KI-beschleunigter Prozessoren und Software nach Industriestandard.