ArUco Marker mit Matlab/Simulink erkennen - Einbindung von OpenCV über S-Function: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 22: Zeile 22:


== Lösungen ==
== Lösungen ==
'''WORK IN PROGRESS'''


=== Planung ===
=== Planung ===

Version vom 27. Juni 2018, 09:40 Uhr

Autor:
Betreuer: Prof. Schneider

Motivation

ArUco Marker ermöglichen eine low-cost Lokalisierung.

Ziel

Die Verarbeitung von ArUco Marken mit Matlab ermöglicht die Lokalisierung der Marker in einer realen Umgebung. So lässt sich mir einfachen Mitteln eine Lokalisierung (Ground Truth) realisieren. Position und Lage der Marker sollen in Echtzeit in Weltkoordinaten bestimmt werden.

Anforderungen

  1. Recherchieren Sie was ArUco Marker sind und wie sich diese in Position und Lage detektieren lassen.
  2. Erstellen Sie ArUko Marken mittels ArUko Generator.
  3. Nutzen Sie eine Webcam für die Detektion der Marker.
  4. Kalibrieren Sie diese Kameras.
  5. Setzen Sie ein Verfahren zur Bestimmung der Pose eines ArUko Markers durch die Einbindung von OpenCV über eine S-Funktion um.
  6. Transformieren Sie ein Objekt aus der Kameraperspektive in Weltkoordinaten.
  7. Stellen Sie die Objekte im Sichtfeld in der Draufsich metrisch dar.
  8. Schätzen Sie die Genauigkeit Ihres 3D-Sensors ab.
  9. Wissenschaftliche Dokumentation als HSHL-Wiki Artikel
  10. Softwareentwicklung nach SDE Standard in SVN
  11. Funktionsnachweis als YouTube-Video (vgl. Veranstaltungsregeln)

Lösungen

WORK IN PROGRESS

Planung

Diese Projektlösung beschäftigt sich aus Zeitgründen nur mit der Erkennung von ArUko Markern in dem Webcambild. Zuerst muss dazu ein Kamerabild eingelesen werden. Dieses wird im nächsten Schritt über eine Matlab Mex Funktion in die Open CV Umgebung gebracht. Dort müssen verschiedene Bildverarbeitungsmethoden angewendet werden, um den ArUko Maker zu erkennen und anzuzeigen.

Matlab

In Matlab müssen folgende Schritte abgearbeitet werden:

  1. Die Kamera kalibrieren
  2. Ein Webcambild aufnehmen
  3. Die Kalibrierung auf das Bild anwenden
  4. Das neue Bild an die Mex Funktion übergeben

Schritt 1:

Für die Kamerakalibrierung bietet sich die Matlab App Camera Calibrator an. Dieses vorgefertigte Tool erleichert das Erstellen einer Kameramatrix für spätere benutzung. Dazu muss ein Schachbrettmuster ausgedruckt werden und damit eine Reihe von Kalibrierungsbildern erstellt werden. Dabei empfielt es sich, dass Muster vor allem in den Ecken des Bildes in vielen verschiedenen Winkeln festzuhalten, denn dort ist die Verzerrung oft am größten.

BILD



Open CV

Weblinks

BSD-Lizenzbedingung BSD-Lizenz

Copyright (c) 2014, Hochschule Hamm-Lippstadt, Dep. Lip. 1, Prof. Schneider
Hochschule Hamm-Lippstadt. Alle Rechte vorbehalten.



→ zurück zum Hauptartikel: Digitale Signal- und Bildverarbeitung SoSe2018