Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

3D-Objekterkennung in beliebigen Umgebungen durch Segment-Based Stereo Vision von Matthias Dube.

Ähnliche Präsentationen


Präsentation zum Thema: "3D-Objekterkennung in beliebigen Umgebungen durch Segment-Based Stereo Vision von Matthias Dube."—  Präsentation transkript:

1 3D-Objekterkennung in beliebigen Umgebungen durch Segment-Based Stereo Vision
von Matthias Dube

2 Gliederung Einleitung 3D-Rekonstruktion (Segment-Based Stereo Vision)
Konstruktion der Kantenmerkmale Generierung der Objektmodelle Matching Experimentelle Ergebnisse und Schlussfolgerungen 3D Objekterkennung von Matthias Dube

3 Einleitung Thema: die modellbasierte Erkennung von 3D-Objekten in beliebigen Umgebungen (d.h. Objekte können gedreht oder teilweise verdeckt sein) Anwendung: z.B. eine gezielte automatische Robotersteuerung Prinzipiell zwei Probleme: Es sollen Objekte beliebiger Form erkannt werden Die Objekte können sich in jeder beliebigen Umgebung befinden Weitere Aspekte für eine praktische Anwendung sind: Die benötigte Rechenzeit Installationskosten 3D Objekterkennung von Matthias Dube

4 Einleitung Zur Realisierung eines solchen Systems wird hierbei "Segment-Based Stereo Vision" (SBSV) genutzt Vorteile bei ausreichender Genauigkeit gegenüber anderen Ansätzen: Objekte können beliebig geformt sein Benötigte Rechenkapazität ist relativ gering (gegenüber laser range finders) Geringe Hardwarekosten (s.o.) Annehmbare Komplexität der Algorithmen (gegenüber monokularem Ansatz) Funktioniert auch bei gleichen Objekten verschiedener Größe (s.o.) 3D Objekterkennung von Matthias Dube

5 Einleitung Dieses Erkennungssystem wurde bereits im so genannten "VVV-System" integriert. (VVV: Versatile Volumetric Vision ... "vielseitige Raumsicht") 3D Objekterkennung von Matthias Dube

6 3D Rekonstruktion Boundary Representation (B-rep)
Bekannte Datenstruktur zur Repräsentation von 2D- und 3D-Objekten Hier dient sie zur Beschreibung einer Szene und zur Merkmalsdefinition (R)… Region in einem Intensitätsbild (B)… gerichtete Boundary(Kante), die die Region umgibt (S)… gerichtetes Segment einer Kante (P)… Pixel des Segments 3D Objekterkennung von Matthias Dube

7 3D Rekonstruktion Bei der Rekonstruktion wird jedes der Eingabe-Bilder in eine 2D B-rep umgewandelt 1. Schritt: Bild-Segmentierung  Regionen (R), Kanten (B) 2. Schritt: Kanten-Segmentierung  Segmente (S), Pixel (P) Dann wird mittels SBSV-Algorithmus aus dem Paar (Trio) von 2D B-reps ein 3D B-rep erzeugt 3D Objekterkennung von Matthias Dube

8 3D Rekonstruktion Bild-Segmentierung
Schritt 1: Berechnung der Kantenstärke und -richtung an jedem Pixel (x, y) im Graustufen-Bild. |e(x, y)| =  x(x, y)2 + y(x, y)2 e(x, y) = tan-1(y(x, y) / x(x, y)) + /2 Schritt 2: Extraktion der sog. starken Kanten. (Dadurch können Lücken entstehen.) 3D Objekterkennung von Matthias Dube

9 3D Rekonstruktion - e0 ist das zu verlängernde Element
Schritt 3: Schließen dieser Lücken durch Verlängerung der starken Kanten, d.h. man nutzt ein 33-Fenster und maximiert die Funktion h(e0, ei) = |ei|cos(ei - e0). - e0 ist das zu verlängernde Element - ei sind Kandidaten für die Verlängerung von e0 - h liefert hohe Werte, wenn ei stark ist und die gleiche Richtung wie e0 hat Wenn ein ei gefunden wurde, setzt man e0 = ei und wiederholt diesen Schritt solange, bis man auf eine bereits existierende starke oder verlängerte Kante trifft. Entstandene Kanten, die zu klein sind, werden anschließend eliminiert. 3D Objekterkennung von Matthias Dube

10 Kanten-Segmentierung
3D Rekonstruktion Kanten-Segmentierung Der SBSV-Algorithmus benötigt eine Unterteilung der Kanten in gerade, konvexe und konkave Segmente, was durch die Extraktion von Merkmalspunkten erreicht wird (Algorithmus von Sugimoto & Tomita) Es gibt vier Arten von Merkmalspunkten (feature points): Eckpunkte (der Normalenvektor verändert sich abrupt) Wendepunkte (Vorzeichen der Krümmung ändert sich) Übergangspunkte (Krümmung geht von null über zu nicht-null) Verzweigungspunkte (Kante verzweigt sich) 3D Objekterkennung von Matthias Dube

11 3D Rekonstruktion (b) Bild-Segmentierung
(c) Kantensegmentierung und Eliminierung zu kleiner Regionen 3D Objekterkennung von Matthias Dube

12 Segment-Based Stereo Vision
3D Rekonstruktion Segment-Based Stereo Vision Dient der eigentlichen 3D-Rekonstruktion (5 Schritte) Schritt 1: Geometrische Suche nach Korrespondenz-Kandidaten zwischen linker und rechter 2D B-rep. Diese werden als Paare [l, r] von B-rep - Segmenten registriert und ihr "Gleichheitswert" (similarity value) berechnet: Spair(l,r)  dl,r ( 1 – ΔIl,r / Imax ) - dl,r … Länge des korrespondierenden Stückes - ΔIl,r … Intensitätsunterschied - Imax … maximale Intensität 3D Objekterkennung von Matthias Dube

13 3D Rekonstruktion Schritt 2: Überprüfung der "Verbundenheit" (connectivity) zwischen den gefundenen Korrespondenzpaaren, d.h. zwei Paare sind verbunden, wenn sie auf der gleichen Kante liegen und ihre Anfangs- bzw. Endpunkte nah beieinander sind  Ergebnis ist ein gerichteter Graph der verbundenen Paare Schritt 3: Finden des optimalen Pfades, der folgende Gleichung (globaler Gleichheitswert) maximiert: Spath   Spair(i) i  path 3D Objekterkennung von Matthias Dube

14 3D Rekonstruktion (a) Gerichteter Graph der Verbundenheit (b) Suche nach dem optimalen Pfad 3D Objekterkennung von Matthias Dube

15 3D Rekonstruktion Schritt 4: Sicherstellen einer eins-zu-eins-Korrespondenz durch Entfernung von multiplen Korrespondenzen Schritt 5: Rekonstruktion der gesamten Szene mittels Parallaxe (Parallaxe: beschreibt die Abweichung zwischen Bildern einer Szene, die von zwei verschiedenen Punkten gemacht wurden.) Durch dieses Verfahren entsteht eine Menge von sog. Datenpunkten. Das sind die Punkte der B-rep inklusive ihrer 3D-Position 3D Objekterkennung von Matthias Dube

16 3D Rekonstruktion Entstandene 3D B-rep (Ansicht von oben und vorn)
3D Objekterkennung von Matthias Dube

17 Konstruktion der Kantenmerkmale
Die Kantenmerkmale (boundary features) bestehen aus zwei Vektoren ausgehend von den Merkmalspunkten. Dabei werden die sich treffenden Segmente durch Geraden bzw. Kreise gefittet. Es gibt zwei Arten von Kantenmerkmalen: Scheitel (BF-Vertex) Bogen (BF-Arc) (für Wende- und Übergangspunkte wegen linearer Abhängigkeit) BF-Vertex besteht aus den zwei Tangential-Vektoren der Segmente, die sich an diesem Merkmalspunkt treffen. BF-Arc besteht aus einem Normalenvektor der Kreisebene und dem Vektor, der vom Kreismittelpunkt zum Merkmalspunkt zeigt. 3D Objekterkennung von Matthias Dube

18 Konstruktion der Kantenmerkmale
(a) BF-Vertex (b) BF-Arc 3D Objekterkennung von Matthias Dube

19 Generierung der Objektmodelle
Datenstruktur Auch hier wird die B-rep genutzt. Für gekrümmte Oberflächen werden zusätzlich Gitternetze verwendet. Aufgebaut werden diese Datenstrukturen durch die sog. Modellpunkte. Die Gewinnung dieser Modellpunkte kann entweder CAD-basiert oder durch Sensoren (Laser Range Finder) geschehen Außerdem hat ein Objektmodell eine Sammlung von Modell-BFs, die dann zum Matching mit den Daten-BFs genutzt werden. 3D Objekterkennung von Matthias Dube

20 Generierung der Objektmodelle
Berechnung der Modell-BFs bei Freiform-Objekten über die Konturen: Um das Objekt wird eine Kugel gelegt, auf der n Sichten diskret verteilt werden. Zu jeder Sicht Wi wird die zugehörige Kontur (contour generator) extrahiert, d.h. die Menge von Punkten aus den gescannten Daten, die folgende Gleichung erfüllen: Np  Wi = 0 Np… Normalenvektor der Oberfläche Projizieren dieser Punktmenge auf ein 2D-Bild (apparent contour) Segmentierung der Kontur Berechnung der Modell-BFs (wie Daten-BFs) 3D Objekterkennung von Matthias Dube

21 Generierung der Objektmodelle
3D Objekterkennung von Matthias Dube

22 Matching Matching wird nach dem Prinzip der Annahme und Bestätigung vorgenommen. Erkennung des Objektes erfolgt in zwei Phasen Groberkennung (initial matching) … mittels Daten-/Modell-BFs Feinabstimmung (fine adjustment) … mittels Daten Hypothese und Groberkennung Zweck ist die Aufstellung von Hypothesen der möglichen Korrespondenzen zwischen Modellpunkten (Model-BFs) und Datenpunkten (Data-BFs), dabei brauchen BF-Paare, die durch Winkel bzw. Radius nicht übereinstimmen können, nicht betrachtet zu werden. 3D Objekterkennung von Matthias Dube

23 Matching Zu diesen Korrespondenzen gehören 44-Transformationsmatrizen T' (33-Rotationsmatrix R' und Translationvektor t'), die wie folgt berechnet werden: t' = PD - PM V1D = R'V1M ND = R'NM ( N = V1V2 ) 3D Objekterkennung von Matthias Dube

24 Verifikation und Feinabstimmung
Matching Verifikation und Feinabstimmung In dieser Phase wird überprüft, ob die im vorherigen Schritt gemachten Annahmen richtig waren, und die Exaktheit der Transformationen verbessert (iterativer Prozess aus 4 Schritten über alle Annahmen): Schritt 1: Objektmodell wird in die berechnete Position der aktuellen Hypothese gebracht Schritt 2: Es werden alle sichtbaren Modellpunkte ausgewählt, d.h. Punkte, die folgende Gleichung erfüllen: (P-O)N 0 P… Position des Modellpunktes N… Normalenvektor O… Kameraposition 3D Objekterkennung von Matthias Dube

25 Matching Schritt 3: Suche zugehöriger Datenpunkte
Sowohl Daten- als auch Modellpunkte werden auf ein 2D-Bild abgebildet. Umgebung der Modellpunkte wird in senkrechter Richtung nach Datenpunkten abgesucht Wird ein Datenpunkt gefunden, dessen 3D-Abstand einen bestimmten Wert nicht überschreitet, kann dieser als der korrespondierende Punkt angesehen werden. Bei Freiform-Objekten wird aufgrund von möglichen Ungenauigkeiten bei der Objekt-modellierung etwas anders vorgegangen: Man fällt ausgehend vom Datenpunkt ein Lot auf die Tangentialebene des Modellpunktes, und der Schnittpunkt ist der zugehörige Korrespondenzpunkt. 3D Objekterkennung von Matthias Dube

26 Matching Schritt 4: Update von Position und Orientierung Die optimale Transformationsmatrix T'' wird durch Minimierung der folgenden Gleichung gefunden (Methode der kleinste Quadrate): ² = i=1..n |R''PMi + t''-PDi|² PMi/PDi… Modell-/Datenpunkt-Paare n… Anzahl der Paare T = T''T'… Angepasste Position des Objektes Ist der Fehler ² nicht klein genug oder die Zahl der Korrespondenz-paare verglichen mit den Modellpunkten gering, so muss mit T'=T iteriert werden (Wiederholung der Schritte 1 bis 4). Wenn die Iteration keine Verbesserung bringt, kann die aktuelle Annahme als falsch betrachtet werden. 3D Objekterkennung von Matthias Dube

27 Matching Wurden alle Annahmen überprüft, wird die mit den meisten Korrespondenzpaaren als Ergebnis genommen. Zur Verbesserung des Algorithmus' wird die Feinabstimmung wiederum in zwei Phasen unterteilt: Anfangsabstimmung (Es werden nur Punkte in der Nähe des jeweiligen BFs abgeglichen) Hauptabstimmung (Mit der verbesserten Transformationsmatrix werden alle Punkte abgestimmt) Dadurch wird vermieden, dass die im Schritt 3 betrachteten Abstände zwischen Daten- und Modellpunkten zu groß werden 3D Objekterkennung von Matthias Dube

28 Matching 2D-Beispiel für Feinabstimmung: (a) Objektmodell
(b) linkes Stereobild (Daten) (c) Iteration in Anfangsabstimmung (d) Iteration in Hauptabstimmung 3D Objekterkennung von Matthias Dube

29 Experimentelle Ergebnisse und Schlussfolgerungen
3D Objekterkennung von Matthias Dube

30 Experimentelle Ergebnisse und Schlussfolgerungen
Typ MV MA DV DA H(R) T3D-R. TInit TFine (a) T-Block Fixed 36 164 44 1742 (29.5%) 2.3 0.8 9.4 (b) Pappe 9 14 81 100 358 (16.8%) 1.9 0.1 0.6 (c) Dose 4 128 125 70 (14%) 4.9 0.9 (d) Bananen Free 229 403 58 53 2251 (6.5%) 1.7 0.4 17.0 (e) Banane 91 6804 (7.8%) 2.8 37.3 (f) Katze 345 1110 120 200 16057 (6.1%) 2.9 4.2 81.1 MV, MA / DV, DA… BFs des Modells bzw. der rekonstruierten 3D-Daten H… Anzahl der gemachten Hypothesen im 1. Schritt des Matching (Groberkennung) R… prozentualer Anteil an der Anzahl der möglichen Hypothesen T3D-R., TInit, TFine… Rechenzeit in Sek. für 3D-Rekonstruktion, Groberkennung, Feinabstimmung 3D Objekterkennung von Matthias Dube

31 Experimentelle Ergebnisse und Schlussfolgerungen
Bei der 3D-Rekonstruktion hängt die Rechenzeit von der Größe der Eingangsbilder ab Beim Matching spielt die Komplexität des Modells und der Szene eine entscheidende Rolle Probleme beim Matching: Die Bildauflösung muss hoch genug sein Es dürfen nicht alle BFs verdeckt sein. Aber es reicht ein erkennbarer BF zur Erkennung des ganzen Objekts, auch wenn der Rest verdeckt ist. Fehler bei der Kantenerkennung Zusätzliche Probleme beim Matching mit Freiform-Objekten: Da bei diesen Objekten von Konturen ausgegangen wird, kann es vorkommen, dass bei verschiedenen Positionen fast gleiche Konturen auftreten, was eine eindeutige Positionserkennung unmöglich macht 3D Objekterkennung von Matthias Dube


Herunterladen ppt "3D-Objekterkennung in beliebigen Umgebungen durch Segment-Based Stereo Vision von Matthias Dube."

Ähnliche Präsentationen


Google-Anzeigen