logo
OpenMV
Heimkamera
Anwendungen
Speichern
AI
Vertriebskanäle
Unterstützung
OpenMVOpenMV
SchildeSchilde
LinseLinse
RobotikRobotik
BuchBuch
VideoVideo
HerunterladenHerunterladen
DokumenteDokumente
ForumForum
OpenMV.ioOpenMV.io
GithubGithub

OpenMV-basierte selbstständige Ausbildung eines neuronalen Netzwerks zur Erkennung von Zielpunkten – Erkennung von Verkehrszeichen in realen Strassenumgebungen

In der visuellen Wahrnehmung gibt es zwei sehr verbreitete Aufgabenbereiche für künstliche Intelligenz: Klassifizierung und Objekterkennung.

Kategorie:Bestimmen Sie, zu welcher Kategorie das Bild gehört, z. B. Katze oder Hund.

Objekterkennung:Dient zum Ermitteln der Positionen, der Anzahl und der Abmessungen mehrerer unterschiedlicher Objekte in einem Bild.

In den vorherigen Video-Tutorials haben wir erläutert, wie man mit dem OpenMV4 Plus ein neuronales Netzwerk online trainiert, um verschiedene Objekte zu klassifizieren. Dieses kann in Echtzeit bestimmen, ob ein Bild im Sichtfeld des OpenMV ein bestimmtes Objekt darstellt – beispielsweise, ob eine Person eine Maske trägt. Es ist jedoch nicht in der Lage, die Positionskoordinaten des Gesichts oder der Maske sowie die Anzahl der Gesichter auszugeben.

Da Objekterkennung deutlich komplexer und rechenintensiver ist als Klassifizierung, kommt sie im Mikrocontroller-Bereich nur selten zum Einsatz. Der Haupt-MCU von OpenMV ist der STM32H7; mittlerweile haben wir auf unserer OpenMV-Plattform eine neue Funktion hinzugefügt, mit der Aufgaben ähnlich der Objekterkennung direkt auf Mikrocontrollern ausgeführt werden können – die Leistung ist äusserst beeindruckend.

交通标志识别教程-多个目标的识别

Heute erläutern wir IhnenSchulung zur Erkennung von Verkehrszeichen in realen Strassenumgebungen: Erkennung der Verkehrszeichen auf unseren tatsächlichen Strassenz. B. Verbot des Hupens, Parkverbot, Geschwindigkeitsbegrenzung auf 80 km/h usw., statt einer störungsfreien Laborumgebung.

Sie können den gesamten Projektinhalt, einschliesslich sämtlichen Codes und Modelle, unter folgender Adresse einsehen: https://book.openmv.cc/project/traffic-sign.html

Es ist allgemein bekannt, dass die reale Umgebung äusserst komplex ist – insbesondere die Strassenumgebung mit zahlreichen Störfaktoren. Wir haben mithilfe von Mobiltelefonen und anderen Geräten Bilder von Verkehrszeichen in der realen Umgebung aufgenommen, das Modell auf der Online-Plattform EdgeImpulse unseres OpenMV-Partners trainiert, wobei rund 270 Bilder annotiert wurden; die Trainingsdauer betrug lediglich zehn Minuten. Die erzielte Modellgenauigkeit (F1-Score) beträgt 92 %, und die Ausführungsfrequenz des Modells auf OpenMV liegt bei zehn Bildern pro Sekunde – das Ergebnis ist somit sowohl äusserst flüssig als auch hochgradig genau.

Sie können anhand unserer Videoanleitungen beliebige zu erkennende Objekte trainieren, beispielsweise verschiedene Ziffern, verschiedene Obstsorten, verschiedene Markierungsobjekte, verschiedene Bauteile oder sogar beliebige spezifische unregelmässige Objekte; dabei lassen sich stets die Anzahl, die Koordinaten sowie die Bezeichnung der jeweiligen Objektklasse erkennen.

Hinweis:In diesem Video-Tutorial wird die Funktion der neuronalen Netzwerk-Zielobjekterkennung erläutert, die nicht nur für den OpenMV4 H7 Plus, sondern auch für den OpenMV4 H7 geeignet ist, da das trainierte FOMO-Modell zur Zielobjekterkennung nur geringe Speicheranforderungen stellt, hervorragende Ergebnisse liefert und lediglich einige Dutzend KB umfasst; selbst wenn der OpenMV4 H7 über weniger Arbeitsspeicher als der OpenMV4 H7 Plus verfügt, kann ein entsprechend kleineres Modell trainiert und auf dem OpenMV4 ausgeführt werden.

Im Folgenden wird kurz das Prinzip erläutert:

Die wichtigsten Gestaltungsentscheidungen für die FOMO-Zielobjekterkennung auf OpenMV basieren auf der Überlegung, dass bei vielen Objekterkennungsaufgaben die Grösse der Objekte nicht benötigt wird, sondern lediglich ihre Position im Bild. Sobald die Position der Objekte bekannt ist, können anschliessende Aktionen durchgeführt werden, beispielsweise die Steuerung eines Fahrzeugs durch OpenMV in Richtung des erkannten Ziels, die präzise Landung einer Drohne an einem bestimmten Punkt oder die Steuerung eines Roboterarms zum Greifen eines spezifischen Zielobjekts.

Das FOMO-Modell ist ein von EdgeImpulse speziell für Mikrocontroller-Umgebungen entwickeltes Modell. Im Gegensatz zu herkömmlichen Objekterkennungsmodellen kann es lediglich die Positionen und die Anzahl mehrerer Objekte erkennen, nicht jedoch deren konkrete Abmessungen.

Das zugrundeliegende Prinzip des FOMO-Modells ist äusserst einfach und flexibel. Zunächst wird das Bild in Blöcke unterteilt, wobei jeder Block 8×8 Pixel umfasst. Bei einem Bild mit einer Auflösung von 96×96 ergibt dies ein Raster von 12×12 Zellen; bei einem Bild mit einer Auflösung von 360×360 ergibt dies ein Raster von 40×40 Zellen. Anschliessend wird die Bildklassifizierung unabhängig für jede einzelne Zelle durchgeführt.

Im Vergleich zu YOLO V5 oder MobileNet SSD erzielt FOMO bei einer grossen Anzahl kleiner Objekte deutlich bessere Ergebnisse. Die FOMO-Ziel-Punkterkennung ist 30-mal schneller als MobileNet SSD.

Falls die zu erkennenden Objekte eine ähnliche Grösse aufweisen – beispielsweise weisen die zu identifizierenden Markierungen im Wesentlichen keine grossen Grössenunterschiede auf, statt eines sehr grossen und eines sehr kleinen Objekts – ist die Leistung von FOMO besser.

OpenMV verwendet EdgeImpulse zur Online-Trainierung neuronaler Netze für die Erkennung von Zielobjekten. Dies umfasst im Wesentlichen die folgenden Schritte: Erfassung und Hochladen des Bilddatensatzes, Kennzeichnung der Zielobjekte, Training, Testen des Modells sowie Bereitstellung.

* Erfassung eines Bilddatensatzes: Aufnahme von Bildern spezifischer Objekte in der realen Umgebung, in der diese später erkannt werden sollen. Wir erfassen die Bilder in derselben Umgebung, in der die Erkennung stattfinden soll; dadurch stimmen die tatsächliche Trainingsumgebung und die tatsächliche Erkennungsumgebung weitgehend überein, was zu besseren Ergebnissen führt.

* Kennzeichnung des Ziels: Jedes zu erkennende Ziel in unserem Datensatz muss umrahmt und mit dem entsprechenden Zielnamen verknüpft werden, um das spätere Training sowie die Erkennung der Zielposition und des Zielnamens zu erleichtern.

* Trainingsmodell: Nach Abschluss der Kennzeichnung erfolgt das Training des Modells gemäss den von uns festgelegten Parametern des konvolutionalen neuronalen Netzwerks.

* Testmodell: Wir testen das trainierte Modell. Falls die Ergebnisse unzureichend sind, erweitern wir entsprechend den Trainingsdatensatz oder passen die Trainingsparameter an und führen ein weiteres Training durch, bis wir ein zufriedenstellendes Modell erhalten.

* Bereitstellung: Wir kopieren die trainierte Modell-Datei auf das integrierte USB-Laufwerk des OpenMV-Geräts und führen sie dort aus.

Im Folgenden wird der konkrete Ablauf demonstriert:

01. Erfassung und Hochladen des Bilddatensatzes

I. Zunächst melden wir uns auf der Website edgeimpulse.com an, wählen «Anmelden» aus, geben den Namen des neu erstellten Projekts ein und wählen «Bilder» → «Mehrere Objekte klassifizieren».

交通标志识别教程-新建项目.

II. Wählen Sie ein Bild zum Hochladen aus. Es gibt verschiedene Möglichkeiten, an einen Datensatz mit Bildern zu gelangen:

1. Bilder in Echtzeit über die OpenMV-IDE erfassen. Verwenden Sie das Tool „Datensatz-Editor“ in der OpenMV-IDE, um einen neuen Datensatz zu erstellen und Bilder in Echtzeit zu erfassen. Weitere Informationen finden Sie in unserem vorherigen Video-Tutorial zur Objektklassifizierung und Maskenerkennung.

交通标志识别教程-.实时采集图像

2. Bilder, die über das Netz heruntergeladen oder direkt mit dem Smartphone aufgenommen wurden. Vorzugsweise sollten sie der tatsächlichen Umgebung entsprechen, in der Sie die Erkennung durchführen. Wir haben rund vier- bis fünfhundert Bilder von Verkehrsschildern wie «Parkverbot», «Hupen verboten» und «Tempolimit 80» zusammengestellt; alle Aufnahmen stammen aus der realen Verkehrsumgebung. Dieser Datensatz steht auf unserem GitHub-Repository sowie auf unserer Anleitung-Website zum Download bereit.

02. Zielobjekte kennzeichnen

Für jede Kategorie werden etwa 100 Bilder hochgeladen; nach Abschluss des Hochladens erfolgt die Bildannotierung, bei der die Positionen sowie die Klassifizierung der zu erkennenden Objekte markiert werden.

交通标志识别教程-上传图片
交通标志识别教程-标记物体

03. Modell trainieren

Geben Sie die Parameter für das Training an, ändern Sie die Auflösung in 128 × 128 und übernehmen Sie alle übrigen Parameter mit den Standardwerten; klicken Sie anschliessend auf „Speichern“.

交通标志识别教程-训练模型1.

Erstellung der Features; die drei Farben stehen jeweils für ein anderes Symbol.

交通标志识别教程-训练模型2

Legen Sie die Trainingsparameter für die Objekterkennung fest. Die Standardanzahl der Trainingsdurchläufe beträgt 60, die Lernrate 0,001 und der Anteil des Validierungssatzes 20 %. Aktivieren Sie die Datenanreicherung. Für das Transferlernen können Sie als Modell standardmässig MobileNetV2 0,35 oder MobileNetV2 0,1 wählen. (Hinweis: SSD darf nicht verwendet werden, da SSD auf OpenMV nicht ausgeführt werden kann.)

Wählen Sie „Training starten“. Nach Abschluss des Trainings beträgt der F1-Score des resultierenden neuronalen Netzwerkmodells 91,2 %; wir können die aktuelle Version speichern.

交通标志识别教程-训练模型3

Speichern Sie die Auswahl, geben Sie Ihre Beschreibung ein und wählen Sie «Speichern».

交通标志识别教程-训练模型4

04. Modell bereitstellen

Exportieren Sie die trainierte Modell-Datei. Es genügt, nur die Bibliothek zu exportieren. Wählen Sie OpenMV und klicken Sie auf „Build“, um den Export des Modells zu starten.

交通标志识别教程-部署模型1

Es lädt automatisch das von uns exportierte Modell herunter; hierbei handelt es sich um das Modell, das wir mit 300 Bildern trainiert haben. Damit ist das gesamte Training abgeschlossen.

交通标志识别教程-部署模型2

05. Modell ausführen

Modell auf OpenMV ausführen:

Verbinden Sie das OpenMV Plus, speichern Sie die drei trainierten Dateien auf dem internen USB-Speicher des OpenMV und öffnen Sie die Datei ei_object_detection.py in der OpenMV-IDE. Klicken Sie auf „Ausführen“; die Ausführungsergebnisse werden im seriellen Terminal angezeigt.

交通标志识别教程-运行模型1
交通标志识别教程-运行模型2

Diese Funktion ist auch auf dem OpenMV4 verfügbar. Da das OpenMV4 keinen externen SDRAM besitzt, ist der verfügbare Arbeitsspeicher geringer; wir können die Modellgrösse reduzieren, damit das Modell auf dem OpenMV4 ausgeführt werden kann.

Es gibt zwei Methoden, um die Modellgrösse zu reduzieren:

I. Verringern Sie die Auflösung für das Training, indem Sie die Auflösung von 128 × 128 auf 96 × 96 ändern.

Zwei. Anpassung des verwendeten Transfer-Learning-Modells: Ersetzen von MobileNetV2 0.35 durch MobileNetV2 0.1.

Zum Schluss kann die neu trainierte Datei auf dem OpenMV4 ausgeführt werden.

Dies ist unsere Anleitung zur Zielmarkenerkennung. Wir freuen uns auf Ihre Ergebnisse!

# Intelligenter Verkehr

Verwandte Artikel

机房/配电房/单元门敞开识别

KI-Wächter auf Basis von OpenMV: Automatische Benachrichtigung bei nicht geschlossenen Zugängen zu wichtigen Bereichen

Automatische Erkennung, ob die Tür eines wichtigen Ortes längere Zeit geöffnet bleibt, und rechtzeitige Benachrichtigung.

越界识别

Personenüberschreitung löst sofort eine Alarmmeldung aus – OpenMV interpretiert das Gefühl der „Sicherheitsgrenze“.

Erkennung von Personen- oder Geräteübertretungen mithilfe einer virtuellen Warnlinie.

占道经营识别

„KI-Stadtwache“ ist da: Ein automatisches System zur Erkennung von Straßenhandel auf Basis von OpenMV

Automatische Erkennung von Geschäftsaktivitäten auf öffentlichen Strassen zur Unterstützung der täglichen Stadtverwaltung.

煤气罐违规摆放识别

Gasflaschen unsachgemäss gelagert? Gefahrenwarnung automatisch mittels OpenMV auslösen

Automatische Erkennung nicht vorschriftsmässiger Aufstellungsorte von Gasflaschen zur frühzeitigen Identifizierung von Sicherheitsrisiken im Zusammenhang mit Erdgas.

绝缘手套佩戴识别

Stromführende Arbeiten ohne isolierende Handschuhe? OpenMV warnt sofort!

Automatische Erkennung, ob das Personal Isolierhandschuhe trägt, zur Unterstützung sicherer Arbeitsabläufe.

铝板缺陷识别

Echtzeit-Erkennung von Oberflächenfehlern auf Aluminiumplatten mithilfe der intelligenten OpenMV-Kamera

Online-Erkennung von Oberflächenfehlern wie Kratzern und Vertiefungen auf Aluminiumplatten zur Unterstützung der Qualitätskontrolle.

Beliebte Kategorien

Sprache und Region
Copyright © 2025 星瞳科技SingTown
粤ICP备17045162号