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

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

8. Termin Teil B: Wiederholung Begriffe Baum
Powerpoint-Präsentation
Fast Fourier Transformation
Christian Scheideler SS 2009
Routing – Routing Protokolle
Motivation Bisher: Codes mit möglichst kurzer Codelänge.
Polynomial Root Isolation
Algebraische Zahlen: Exaktes Rechnen mit Wurzeln
Schnelle Matrizenoperationen von Christian Büttner
Lineare Funktionen mit der Gleichung y = mx
Geometrie von Objektoberflächen
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Wasserfall-Ansätze zur Bildsegmentierung
Genetische Algorithmen für die Variogrammanpassung
Marco Barz Seminar über Algorithmen SoSe2007
Kollisionen erkennen Kollisions- und Schnittpunkttests auf Dreieckbasis Kollisions- und Schnittpunkttests auf Viereckbasis Einsatz von achsenausgerichteten.
Kombinatorische Topologie in der 3d Geomodellierung
Verifizieren versus Berechnen
Konzeption und Realisierung eines Text- Analysesystems zur Automatisierung der Bewerberauswahl von diesem Datenformat jede beliebige Anwendung adaptieren.
Sortierverfahren Richard Göbel.
Sortierverfahren Richard Göbel.
5. Beleuchtung und Schattierung
Algorithmentheorie 04 –Hashing
WS Algorithmentheorie 01 – Divide and Conquer (Segmentschnitt) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Geometrisches Divide and Conquer
Genetische Algorithmen
Computerkurs: Quantitative Auswertung biochemischer Experimente Guten Morgen.
Kapitel 6 Differenzierbarkeit. Kapitel 6: Differenzierbarkeit © Beutelspacher Juni 2005 Seite 2 Inhalt 6.1 Die Definition 6.2 Die Eigenschaften 6.3 Extremwerte.
Seminar parallele Programmierung SS 2003
Klausur „Diskrete Mathematik II“
PG 520 Intelligence Service – gezielte Informationen aus dem Internet
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
Access 2000 Datenbanken.
Modellierung von Baumstrukturen mit einem einzigen Polygonnetz
Grundschutztools
Heute: Scherenzange zeichnen
DG1 – Sichtbarkeit Aufgabenstellung: Bei einem Pyramidenschnitt soll die Sichtbarkeit festgestellt werden.
Tetraederzerlegung Ina Ehmann Tetraederzerlegung.
in der medizinischen Bildverarbeitung
Ändern von Merkmalen Geometrie Topologie Attribute.
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/ /23.1.
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
§3 Allgemeine lineare Gleichungssysteme
Polynome und schnelle Fourier-Transformation
Geometrie : Rekonstruktion
Kapitel 16 Ökonometrische Modelle
… oder wie finde ich den Weg
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Das Heronverfahren arithmetisches Mittel geometrisches Mittel
Erstellen eines Impossibles:
Ein Überblick über verschiedene Verfahren
LOD Levels of Detail Oliver Gassner Christian Troger.
Das Traveling Salesman Problem (TSP)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Analyse der Laufzeit von Algorithmen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Vortrag Relative Orientierung
- Studienarbeit - Entwurf und Umsetzung von kombinierten Anfragen für die Ähnlichkeitssuche auf digitalen Bilder auf der Basis von Regionen und Features.
Konvexe Hüllen (Convex Hulls)
Institut für Informationssysteme Technische Universität Braunschweig Institut für Informationssysteme Technische Universität Braunschweig Verdrängung von.
Spärliche Kodierung von Videos natürlicher Szenen Vortragender: Christian Fischer.
Rechen- und Kommunikationszentrum (RZ) Selektionsstrategien auf Graphstrukturen Sven Porsche Seminarvorträge Aachen.
 Präsentation transkript:

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 3D Objekterkennung von Matthias Dube

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Generierung der Objektmodelle 3D Objekterkennung von Matthias Dube

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

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

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

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

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

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

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

Experimentelle Ergebnisse und Schlussfolgerungen 3D Objekterkennung von Matthias Dube

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

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