1 / 31

3D-Objekterkennung in beliebigen Umgebungen durch Segment-Based Stereo Vision

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

Télécharger la présentation

3D-Objekterkennung in beliebigen Umgebungen durch Segment-Based Stereo Vision

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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 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 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.) von Matthias Dube

  5. Einleitung • Dieses Erkennungssystem wurde bereits im so genannten "VVV-System" integriert. (VVV: Versatile Volumetric Vision ... "vielseitige Raumsicht") 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 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 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.) von Matthias Dube

  9. 3D Rekonstruktion • 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. von Matthias Dube

  10. 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) von Matthias Dube

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

  12. 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] vonB-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 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 von Matthias Dube

  14. 3D Rekonstruktion (a) Gerichteter Graph der Verbundenheit (b) Suche nach dem optimalen Pfad 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 von Matthias Dube

  16. 3D Rekonstruktion Entstandene 3D B-rep (Ansicht von oben und vorn) 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. von Matthias Dube

  18. Konstruktion der Kantenmerkmale (a) BF-Vertex (b) BF-Arc 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. 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) von Matthias Dube

  21. Generierung der Objektmodelle 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. 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 ) von Matthias Dube

  24. 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 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. von Matthias Dube

  26. Matching • Schritt 4: Update von Position und OrientierungDie 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 PaareT = 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. 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 von Matthias Dube

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

  29. Experimentelle Ergebnisse und Schlussfolgerungen von Matthias Dube

  30. Experimentelle Ergebnisse und Schlussfolgerungen 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 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 von Matthias Dube

More Related