Erkennungsalgorithmen bereitstellen und Ergebnisse integrieren
Stelle Algorithmen zur Personen-, Lagerplatz- und Volumenerkennung bereit, konfiguriere Kameraextrinsik und Parameter und rufe Ergebnisse über TCP, UDP, HTTP oder Modbus TCP ab.
Dieser Leitfaden behandelt Bereitstellung, Kalibrierung, Konfiguration und Ergebnisintegration der MRDVS-Algorithmen für Personen-, Lagerplatz- und Volumenerkennung. Der Algorithmus läuft auf der Kamera; die Algorithmus-Hostanwendung dient zur Konfiguration, für Upgrades und zur Ergebnisprüfung.
Algorithmusfirmware und Algorithmus-Hostanwendung werden projektbezogen geliefert. Bestätige vor dem Flashen der Algorithmusfirmware, dass auf der Kamera eine MDS-Firmwareversion läuft. Beschaffe ein Installationspaket, das zu Projekt und Kameramodell passt.
Verwende eine starre Halterung, um Bewegungen oder Vibrationen nach der Installation zu verhindern. Für die Personenerkennung wird normalerweise eine horizontale Installation oder eine Installation mit einem Winkel von höchstens 30° verwendet.
Versorge die Kamera mit einer geregelten 24-V-Gleichstromversorgung. Verwende ein Cat6A- oder Cat7-Kabel, um die Kamera mit einem Gigabit-Switch oder Controller zu verbinden.
2
Mehrere Kameras bereitstellen
Installiere jede Kamera in der im CAD-Plan angegebenen Höhe und Position. Verbinde alle Kameras über einen Gigabit-Switch und prüfe für jede Kamera Stromversorgung und Linkstatus.
3
Testziele vorbereiten
Platziere die zu erkennenden Personen, Paletten oder Güter vor der Kalibrierung der Extrinsik und der Konfiguration der Bereiche im Sichtfeld der Kamera.
Lege Hostcomputer und Kamera in dasselbe Subnetz. Das ursprüngliche Beispiel verwendet folgenden Plan:
Element
Beispiel
Host-IP-Adresse
192.168.100.xxx
Subnetzmaske
255.255.255.0
Standardgateway
192.168.100.1
1
Adaptereinstellungen öffnen
Öffne unter Windows Control Panel → Network and Sharing Center → Change adapter settings und wähle anschließend den mit der Kamera verbundenen Ethernet-Adapter aus.
2
IPv4 konfigurieren
Öffne Internet Protocol Version 4 (TCP/IPv4), wähle Use the following IP address und gib eine freie statische Adresse im Subnetz der Kamera ein.
3
Verbindung bestätigen
Speichere die Einstellungen, bestätige eine Gigabit-Verbindung und verwende die Hostanwendung, um die Kamera zu suchen oder zu öffnen.
Lass die Firewall in einem Produktionsnetzwerk nicht deaktiviert. Wenn die Hostanwendung keine Verbindung herstellen kann, erstelle zuerst eine Regel für die erforderliche Anwendung oder den erforderlichen Port. Deaktiviere die Firewall vorübergehend nur in einem vertrauenswürdigen Debugging-Netzwerk und stelle den Schutz anschließend wieder her.
Installiere die Kamera-Hostanwendung außerhalb des Systemlaufwerks.
Kopiere die projektbezogen gelieferten Dateien der Algorithmus-Hostanwendung in den Ordner Tools unterhalb des Verzeichnisses der Kamera-Hostanwendung. Ersetze gleichnamige Dateien und doppelklicke anschließend auf die ausführbare Datei, um sie zu starten.
Um nur die Algorithmus-Hostanwendung zu aktualisieren, ersetze ihre .exe-Datei durch die gelieferte Version.
Die Kamera startet während des Flashens neu. Trenne weder Stromversorgung noch Netzwerk und schließe die Hostanwendung nicht. Das Paket muss zu Kameramodell, MDS-Firmwareversion und Projektalgorithmus passen.
Kamera-Hostanwendung
Algorithmus-Hostanwendung
Starte LxCameraViewer.exe und öffne die Kamera.
Wähle Basic tools → Function settings → Firmware upgrade.
Wähle die gelieferte Datei des Erkennungsalgorithmus aus und wähle Run.
Wähle die Zielkamera in der Geräteliste aus.
Wähle Upgrade firmware, wähle die Datei des Erkennungsalgorithmus aus und öffne sie.
Warte, bis die Kamera wieder in der Geräteliste angezeigt wird.
Wenn die Kamera nach dem Neustart wieder angezeigt wird, ist das Flashen abgeschlossen. Ein grüner Kamerahintergrund in der Algorithmus-Hostanwendung bedeutet, dass die Kamera verbunden und der Algorithmus verfügbar ist.
Starte LxApplicationViewer.exe. Ein grünes Symbol in der Geräteliste zeigt eine verbundene Kamera an. Wähle ein Gerät aus, um zwischen RGB- und Punktwolkenansicht zu wechseln. Standardbenutzer können Ergebnisse anzeigen; Administratoren können Kamera- und Algorithmusparameter ändern.
Den aktuellen Algorithmus stoppen. Er startet erst wieder automatisch, wenn die Kamera erneut eingeschaltet wird.
Firmware aktualisieren
Den Workflow zum Upgrade der Algorithmusfirmware öffnen.
Kamera neu starten
Die ausgewählte Kamera neu starten.
Wenn sich der Status ändert, speichert die Software ein RGB-Bild und Punktwolkendaten. Wiedergabedaten werden nicht zwischen Algorithmen geteilt. Die Wiedergabezeit verwendet die interne Uhr der Kamera, nicht die Systemzeit des Hostcomputers.Wenn der Gerätehintergrund gelb ist oder grün ist, das Bild aber nicht aktualisiert wird, aktiviere die automatische Aktualisierung, um die Bildaufnahme fortzusetzen.
Identifiziert eine Kamera in einer Bereitstellung mit mehreren Kameras.
Simulationsmodus
Interne Funktion; deaktiviert lassen.
Bildspeichermodus
Speichert Algorithmusbilddaten auf der Kamera.
Bildaufnahmemodus
MDS belegt den Kamerazugriff nicht. SDK tut dies; die Hostanwendung kann die Kamera während der Ausführung des Algorithmus nicht öffnen.
x, y, z
Extrinsische Kameraposition; z ist die Kamerahöhe über dem Boden.
roll, pitch, yaw
Extrinsische Winkel der Kameraausrichtung.
Idealer Boden
Standardwert beibehalten.
Konfiguration aus Kamera lesen
Liest die aktuelle Kamerakonfiguration.
Speichern und senden
Schreibt Änderungen auf die Kamera. Nicht gespeicherte Parameter werden nicht wirksam.
Extrinsikkalibrierung
Kalibriert Kamerahöhe und -ausrichtung.
Vertikale Installation
Horizontale Installation
Öffne Camera configuration. Setze vor der Kalibrierung x, y, z, roll, pitch und yaw auf 0 und wähle anschließend Save and send.
Wähle Extrinsic calibration. Prüfe nach erfolgreicher Kalibrierung das Ergebnis im Parameterbereich.
Öffne Camera configuration und rufe die Seite zur Parameterkalibrierung auf.
Richte den Boden der Punktwolke am Koordinatensystem aus: Die rote X- und grüne Y-Achse liegen auf dem Boden, während die blaue Z-Achse senkrecht zum Boden nach oben zeigt.
Passe normalerweise zuerst nur roll und z an und setze die anderen Werte auf 0. Wähle nach der Prüfung Save and send.
Wähle nach jeder Änderung eines Algorithmusparameters Save and send. Behalte Filterparameter bei ihren Standardwerten, sofern ein Test vor Ort keine Anpassung erfordert.
Personenerkennung
Lagerplatzerkennung
Volumenerkennung
Parameter
Beschreibung
Algorithmusversion
Aktuelle Algorithmusversion.
Erkennungsfrequenz
Aktualisierungsfrequenz für Bilder und Ergebnisse.
Temporaler Filter
Bei 3 müssen drei aufeinanderfolgende identische Ergebnisse vorliegen, bevor ein Ergebnis als gültig gilt.
Kernelgröße
Kernelgröße für morphologische 2D-Operationen. Größere Werte verkleinern Ziele und vergrößern den Hintergrund.
Abstandsschwellenwert
Bestimmt, ob Punkte ähnlich sind oder derselben Klasse angehören.
Mindestpunktzahl
Erforderliche Punktwolkenanzahl für semantisches Clustering.
Mindestanzahl nicht semantischer Punkte
Erforderliche Punktwolkenanzahl für nicht semantisches Clustering.
Nachbarschaftsgröße
Definiert den Bereich der Punktnachbarschaft und beeinflusst die Granularität des Clusterings.
Rotationserkennung
An die Installationsrichtung der Kamera anpassen; die Ausrichtung mit dem Logo nach unten als Referenz 0° verwenden.
Bereichsparameter
Beschreibung
Bereich hinzufügen/löschen
Einen Bereich für die Personenerkennung erstellen oder löschen.
Aktuelle Box
Den aktiven Erkennungsbereich auswählen.
Minimales/maximales X, Y, Z
Die 3D-Grenzen des Bereichs definieren.
ID
Bereichsname zur Unterscheidung mehrerer Bereiche.
Bereich per Ziehen anpassen
Mit der linken Maustaste entlang x und y, mit der rechten Maustaste entlang z ziehen.
Parameter
Beschreibung
Algorithmusversion
Aktuelle Algorithmusversion.
KI-Filter
Semantische Segmentierung; derzeit nicht verfügbar.
Erkennungsfrequenz
Aktualisierungsfrequenz der Ergebnisse.
Ausrichtungswinkel
Maximal zulässiger Winkelversatz der Ladung, wenn die Ausrichtungsprüfung aktiviert ist.
Ausrichtungsprüfung
Prüft Winkelversatz und Grenzstatus. Erkannte Objekte werden mit gelben Volumenboxen angezeigt.
Temporaler Filter
Gibt einen gültigen Zustand erst nach mehreren aufeinanderfolgenden konsistenten Ergebnissen aus.
Mindestpunktzahl
Objekte mit weniger Punkten als diesem Wert werden ignoriert.
Bereichsmodus
Konfiguration
2D-RGB
Verwende minimale und maximale Pixelwerte für X und Y, um den Lagerplatz zu definieren. Der semantische Modus und ein semantisches Modell sind erforderlich.
3D-Punktwolke
Verwende minimale und maximale Werte für X, Y und Z, um den Platz zu definieren. Ziehe mit der linken Maustaste entlang x und y oder mit der rechten Maustaste entlang z.
Erweiterte Funktion
Beschreibung
Aktuelle Box kopieren
Den aktiven Lagerplatzbereich kopieren.
Richtung, Abstand, Anzahl
Gleichmäßig verteilte Kopien entlang der X-, Y- oder Z-Achse definieren.
Ausführen
Mehrere Bereiche aus der Konfiguration erzeugen.
QR-Code-Kalibrierung
Breite, Länge, Z_MIN und Z_MAX des Lagerplatzes eingeben und anschließend mit einem QR-Code kalibrieren.
Parameter
Beschreibung
Algorithmusversion
Aktuelle Algorithmusversion.
Trigger mode
Bei Aktivierung für jeden Trigger ein Bild und Ergebnis aufnehmen.
Upward detection
Mit dem umgekehrten Kamerakoordinatensystem erkennen.
Detection frequency
Aktualisierungsfrequenz für Bilder und Ergebnisse.
Detection-plane distance
Referenzposition der unteren Objektfläche in mm.
Neighborhood count / distance threshold
Filterparameter; in den meisten Bereitstellungen die Standardwerte beibehalten.
Normal-vector filter threshold
Geneigte Punktwolkenebenen filtern. Die ursprüngliche Empfehlung ist 60.
Normal-vector distance threshold
Filterparameter. Der ursprünglich empfohlene Bereich ist 20–30.
Minimum point count
Objekte mit weniger Punkten als diesem Wert werden ignoriert.
Minimum X, Y, Z
Mindestschwellenwerte für Länge, Breite und Höhe in mm.
Bereichsparameter
Beschreibung
Minimales/maximales X, Y, Z
Definiert die 3D-Grenzen des Bereichs für die Volumenerkennung.
Richte die X- und Y-Achsen an der Bodenpunktwolke aus. Die Z-Achse muss senkrecht zum Boden stehen und nach oben zeigen.
2
Globale Parameter festlegen
Öffne Human detection. Normalerweise muss nur Rotation detection festgelegt werden. Eine Drehung der Kamera im Uhrzeigersinn unterstützt 0°, 90°, 180° und 270°.
3
Erkennungsbereich erstellen
Wähle Add detection region, lege minimales und maximales X, Y und Z fest und verschiebe den Bereich über das Ziel. Im ursprünglichen Beispiel wird ein Bereich von 1000 × 1000 × 2000 mm verwendet.
4
Speichern und prüfen
Wähle Save and send, führe einen Test durch, bei dem eine Person den Bereich durchquert, und prüfe das Ergebnis in der Statusleiste oder der historischen Wiedergabe.
Zuordnungsregel
Keine Person
Person
Hindernis
Person und Hindernis
Nur Tiefe
0
2
2
2
Semantik plus Tiefe
0
1
0
1
Der Nur-Tiefe-Modus meldet jedes Objekt im Bereich. Der Modus Semantik plus Tiefe meldet nur als Personen klassifizierte Cluster.
Befolge das Verfahren zur Extrinsikkalibrierung. Richte X und Y am Boden aus und halte Z senkrecht und nach oben zeigend.
2
Globale Parameter konfigurieren
Lege Alignment check, Alignment angle und Minimum point count für den Standort fest. Aktiviere die Ausrichtungsprüfung, wenn die Ladung in einem definierten Winkel platziert werden muss.
3
Lagerplätze erstellen
Wähle im Punktwolkenmodus Add storage location, wechsle zur Draufsicht und drücke X, um das Zeichnen zu starten oder zu beenden. Ziehe das Rechteck über die Palette und passe die Grenzen für X, Y und Z an. Drücke erneut X, um den Zeichenmodus zu verlassen.
4
Speichern und prüfen
Wähle Save and send. Konfiguriere die Plätze im 2D-RGB- oder 3D-Punktwolkenmodus und prüfe Result in der Statusleiste.
Zustand des Lagerplatzes
Result
Leer
0
Belegt oder belegt und ausgerichtet
1
Belegt mit einem Winkel über dem Ausrichtungsschwellenwert
2
Belegt und außerhalb der Platzgrenze
3
Verwende für ein regelmäßiges Layout Copy current box, um Plätze mit fester Richtung und festem Abstand zu erstellen. Wenn eine QR-Code-Prüfung erforderlich ist, verwende QR Code calibration, um Platzabmessungen und Tiefenbereich zu konfigurieren.
Die Volumenerkennung arbeitet von oben nach unten. Nach der Kalibrierung zeigt die Z-Achse nach unten und die X-/Y-Ebene ist parallel zum Boden.
2
Erkennungsebene festlegen
Lege die Erkennungsebene bei Gütern, die direkt auf dem Boden liegen, auf die Bodenhöhe. Um nur Güter auf einer Palette zu messen, richte die Ebene an der Punktwolke der Palette aus.
3
Mindestabmessungen und Bereich festlegen
Lege minimale Werte für X, Y und Z fest, um kleine Ziele zu filtern. Lege anschließend die Bereichsgrenzen anhand der Erkennungsebene und der Abmessungen der Ladung fest.
4
Speichern und prüfen
Wähle Save and send, platziere ein oder mehrere Objekte im Bereich und prüfe zurückgegebene Länge, Breite, Höhe und Anzahl.
Aktiviere für die Einzeltriggeraufnahme Trigger mode unter Volume detection und wähle Save and send. Wähle anschließend unter Basic toolsSingle trigger oder sende TM_TRIGGER über TCP oder UDP.
Die IP-Adresse in den Beispielen dient nur zur Veranschaulichung. Ersetze sie durch die Kameraadresse am Standort und prüfe vor der Integration in ein übergeordnetes System Netzwerk, Algorithmusstatus und Ergebnisformat.
Das übergeordnete System sendet eine Ergebnisanfrage an den Vision-Endpunkt, der eine JSON-Zeichenfolge zurückgibt. Verwende die mit dem Projekt gelieferte Anfrage-Header in deinem HTTP-Client sowie den folgenden Anfrage-Body.
Statusobjekt, dessen Schlüssel die IDs der Erkennungsbereiche sind: 0 bedeutet kein Ziel, 1 bedeutet, dass eine Person erkannt wurde, und 2 bedeutet, dass ein Objekt nur anhand der Tiefenregel erkannt wurde.
Clusterdetails enthalten rbx2d, rby2d, tlx2d und tly2d (Koordinaten der 2D-Box), semantic_index, traceID sowie x_min, x_max, y_min, y_max, z_min und z_max (Grenzen der 3D-Box).
Details für Platz X: Mittelpunkt x, y und z, Länge, Breite, Höhe und Winkelversatz von der Begrenzungsbox. Ein in 2D erstellter Platz gibt für alle Werte -1 zurück.
Bestätige, dass Host und Kamera dasselbe Subnetz verwenden, der Netzwerkadapter Gigabit unterstützt sowie Stromversorgung und Switch-Links intakt sind.
Parameter werden nicht wirksam
Bestätige, dass nach der Änderung Save and send ausgewählt wurde.
Kein Algorithmergebnis
Bestätige, dass die richtige Algorithmusfirmware geflasht wurde, das Gerät grün ist und der Algorithmus aktiviert ist.
Leere oder veraltete Punktwolke
Scrolle über den Punktwolkenbereich, um Daten anzuzeigen; aktiviere bei Bedarf die automatische Aktualisierung.
Abnormale Lagerplatz- oder Volumenergebnisse
Prüfe Richtung der Extrinsikachsen, Erkennungsebene und Bereichsgrenzen erneut und teste anschließend mit Objekten vom Standort.