Ein PMD-Kamera basiertes Pick-and- Place- System EiN PMD ... · einer PMD-CamCube 3.0...

1
Kontakt Hochschule Darmstadt Prof. Dr. Stephan Neser Fachbereich Mathematik und Naturwissenschaften Schöfferstraße 3, 64295 Darmstadt E-Mail: [email protected] Fachbereich Mathematik und Naturwissenschaften Intelligente „Pick-and-Place“-Systeme sind eine wichtige Komponente moderner Produktionsanlagen. Wir stellen eine Lösung für das Pick-und-Place-Problem vor, die mit Hilfe einer PMD-CamCube 3.0 Tiefenbildkamera selbstständig Objekte auf einer Arbeitsebne lokalisiert und mit Hilfe eines 6- Achs-Roboterarmes greifen kann. Als Modell-Objekte wurden Holzquader mit einem Querschnitt von 40x40 mm in den Längen 80, 120 und 160 mm verwendet. Datenerfassung PMD-Kameras können mit einem Lichtlaufzeitverfahren neben der Intensitätsinformation auch Entfernungen messen. Dazu beleuchtet die Kamera die Szene mit amplitudenmoduliertem Infrarotlicht und ermittelt dann in jedem Pixel die Phasenverschiebung zwischen ausgesendetem und empfangenem Signal. Aus dieser Phasenverschiebung lässt sich die Entfernung zwischen Objekt und Kamera bestimmen. 3D-Datenverarbeitung & Visualisierung Mit dem Tiefenbild der PMD-Kamera erhält man ein Modell der Oberfläche der aufgenommenen Szene als Menge von 3D- Punkten (Punktewolke). Die Algorithmen für die Verarbeitung dieser Punktwolken wurden in C++ implementiert. Die Visualisierung der Punktwolken erfolgt in OpenGL mit Hilfe von Vertex-Buffer-Objects (Abb. 4). Segmentierung und Groblokalisierung Die Lokalisierung der Objekte erfolgt zunächst mit klassischen Methoden der 2D-Bildverarbeitung im Tiefenbild: Nach einer Kantenhervorhebung mit dem Canny-Filter füllt ein "Fill- Hole"-Algorithmus alle geschlossenen Konturen auf. Ein Labeling liefert dann die Pixel aller Objekte. Mit Hilfe von Formfaktoren lassen sich dann die Quader von unerwünschten Störobjekten unterschieden (Abb. 3, 4). Feinlokalisierung Nach dem Labeling ist für jedes Objekt die Menge seiner Objektpixel bekannt. Mit den PMD-Entfernungsdaten kann nun eine 3D-Punktewolke für jedes der aufgenommenen Objekte erzeugt werden. Durch Vergleich dieser Daten mit Referenzpunktewolken, lassen sich dann die Position und die Drehlage der erkannten Objekte bestimmen. Dazu wird mit dem "Expectation-Maximation-Iterated-Closest- Point"-Algorithmus (EM-ICP) die relative Rotation und Translation der beiden Punktewolken solange variiert, bis eine optimale Angleichung zwischen Modell und Teilszene erreicht ist. Der Griffpunkt der Objekte wird einmalig über deren Beschaffenheit festgelegt und als Zusatzinformation an das Modell angehängt. Der EM-ICP Algorithmus ist sehr rechenaufwändig, die CPU-Implementierung benötigte auf einem 2.4 GHz Pentium Dual-Core ca. 70s. Eine EM-ICP- Implementierung auf einer GeForce 680-Grafikkarte (CUDA) verringerte die Rechenzeit auf ca. 1s. Das Endergebnis des Algorithmus zeigt Abb. 6: Die Objekte werden korrekt klassifiziert und lassen sich mit dem Roboter erfolgreich greifen Fazit und Ausblick Mit dem hier vorgestellten System, konnte eine stabile Lösung zum Picken von Objekten mit einer Tiefenbildkamera vorgestellt werden. Derzeit wird an einer Erweiterung des Systems zum Greifen von Objekten aus Vorratsbehältern gearbeitet (bin-picking). Acknowledgements Diese Arbeit wurde vom Zentrum für Forschung und Entwicklung der Hochschule Darmstadt gefördert Literatur N. Küppers; C. Gottwald, S. Neser: Ein PMD-Kamera basiertes "Pick and Place" System, in Th. Luhmann/Ch. Müller (Hrsg.) Photogrammetrie-Laserscanning Optische 3D-Messtechnik, Beiträge der Oldenburger 3D-Tage 2012, (2012) Video:http://fbmn.h-da.de/home/neser/public_html/publicatio ns/3DTage2012_Demo.m4v Abb. 4: (a) Tiefenbild in Falschfarben (b) Ergebnis des Canny-Kantendetektors (c) Ergebnis des "Fill-Hole"-Algorithmus (d) Labelbild mit markierten Quadern Abb 1.: Laboraufbau bestehend aus Roboter, Kamera und den zu lokalisierenden Objekten Abb. 2: Funktionsprinzip des indirekten Lichtlaufzeitverfahrens Abb. 3: Tiefenbild einer PMD-Kamera, die Farbe kodiert die Tiefeninformation Abb. 5: Ergebnis des Verfahrens. Der 3D-Darstellung der PMD-Aufnahme sind die Referenzpunktewolken mit der gefundenen Orientierung überlagert. Die Farbe der Punktewolken zeigt den ermittelten Objekttyp (80.120 oder 160 mm) an. Die vom Algorithmus vorgeschlagene Greifposition für den Roboter ist in blaugrau eingezeichnet. Abb. 4: 3D-Aufnahme der Roboter-Arbeitsfläche mit zu greifenden Objekten EIN PMD-KAMERA BASIERTES »PICK-AND-PLACE« - SYSTEM Niklas Küppers, Christian Gottwald und Stephan Neser

Transcript of Ein PMD-Kamera basiertes Pick-and- Place- System EiN PMD ... · einer PMD-CamCube 3.0...

Page 1: Ein PMD-Kamera basiertes Pick-and- Place- System EiN PMD ... · einer PMD-CamCube 3.0 Tiefenbildkamera selbstständig Objekte auf einer Arbeitsebne lokalisiert und mit Hilfe eines

KontaktHochschule DarmstadtProf. Dr. Stephan NeserFachbereich Mathematik und NaturwissenschaftenSchöfferstraße 3, 64295 DarmstadtE-Mail: [email protected]

Fachbereich Mathematik und Naturwissenschaften

Ein PMD-Kamera basiertes "Pick-and- Place"-System

Niklas Küppers, Christian Gottwald und Stephan Neser, Fachbereich Mathematik und Naturwissenschaften

Kontakt Hochschule Darmstadt Prof. Dr. Stephan Neser Fachbereich Mathematik und Naturwissenschaften Schöfferstraße 3, 64295 Darmstadt E-Mail: [email protected]

Intelligente „Pick-and-Place“-Systeme sind eine wichtige Komponente moderner Produktionsanlagen. Wir stellen eine Lösung für das Pick-und-Place-Problem vor, die mit Hilfe

einer PMD-CamCube 3.0 Tiefenbildkamera selbstständig Objekte auf einer Arbeitsebne lokalisiert und mit Hilfe eines 6-Achs-Roboterarmes greifen kann. Als Modell-Objekte wurden Holzquader mit einem Querschnitt von 40x40 mm in den Längen 80, 120 und 160 mm verwendet. Datenerfassung PMD-Kameras können mit einem Lichtlaufzeitverfahren neben der Intensitätsinformation auch Entfernungen messen. Dazu beleuchtet die Kamera die Szene mit amplitudenmoduliertem Infrarotlicht und ermittelt dann in jedem Pixel die Phasenverschiebung zwischen ausgesendetem und empfangenem Signal. Aus dieser Phasenverschiebung lässt sich die Entfernung zwischen Objekt und Kamera bestimmen.

3D-Datenverarbeitung & Visualisierung Mit dem Tiefenbild der PMD-Kamera erhält man ein Modell der Oberfläche der aufgenommenen Szene als Menge von 3D-Punkten (Punktewolke). Die Algorithmen für die Verarbeitung dieser Punktwolken wurden in C++ implementiert. Die

Visualisierung der Punktwolken erfolgt in OpenGL mit Hilfe von Vertex-Buffer-Objects (Abb. 4). Segmentierung und Groblokalisierung Die Lokalisierung der Objekte erfolgt zunächst mit klassischen Methoden der 2D-Bildverarbeitung im Tiefenbild: Nach einer Kantenhervorhebung mit dem Canny-Filter füllt ein "Fill-Hole"-Algorithmus alle geschlossenen Konturen auf. Ein Labeling liefert dann die Pixel aller Objekte. Mit Hilfe von Formfaktoren lassen sich dann die Quader von unerwünschten Störobjekten unterschieden (Abb. 3, 4). Feinlokalisierung Nach dem Labeling ist für jedes Objekt die Menge seiner Objektpixel bekannt. Mit den PMD-Entfernungsdaten kann nun eine 3D-Punktewolke für jedes der aufgenommenen Objekte erzeugt werden. Durch Vergleich dieser Daten mit Referenzpunktewolken, lassen sich dann die Position und die Drehlage der erkannten Objekte bestimmen. Dazu wird mit dem "Expectation-Maximation-Iterated-Closest- Point"-Algorithmus (EM-ICP) die relative Rotation und Translation der beiden Punktewolken solange variiert, bis eine optimale Angleichung zwischen Modell und Teilszene erreicht ist. Der Griffpunkt der Objekte wird einmalig über deren Beschaffenheit festgelegt und als Zusatzinformation an das Modell angehängt. Der EM-ICP Algorithmus ist sehr

rechenaufwändig, die CPU-Implementierung benötigte auf einem 2.4 GHz Pentium Dual-Core ca. 70s. Eine EM-ICP- Implementierung auf einer GeForce 680-Grafikkarte (CUDA) verringerte die Rechenzeit auf ca. 1s. Das Endergebnis des Algorithmus zeigt Abb. 6: Die Objekte werden korrekt klassifiziert und lassen sich mit dem Roboter erfolgreich greifen

Fazit und Ausblick Mit dem hier vorgestellten System, konnte eine stabile Lösung zum Picken von Objekten mit einer Tiefenbildkamera vorgestellt werden. Derzeit wird an einer Erweiterung des Systems zum Greifen von Objekten aus Vorratsbehältern gearbeitet (bin-picking). Acknowledgements Diese Arbeit wurde vom Zentrum für Forschung und Entwicklung der Hochschule Darmstadt gefördert Literatur N. Küppers; C. Gottwald, S. Neser: Ein PMD-Kamera basiertes "Pick and Place" System, in Th. Luhmann/Ch. Müller (Hrsg.) Photogrammetrie-Laserscanning Optische 3D-Messtechnik, Beiträge der Oldenburger 3D-Tage 2012, (2012) Video:http://fbmn.h-da.de/home/neser/public_html/publications/3DTage2012_Demo.m4v

Abb. 4: (a) Tiefenbild in Falschfarben (b) Ergebnis des Canny-Kantendetektors

(c) Ergebnis des "Fill-Hole"-Algorithmus (d) Labelbild mit markierten Quadern

Abb 1.: Laboraufbau bestehend aus Roboter, Kamera und den zu lokalisierenden Objekten

Abb. 2: Funktionsprinzip des indirekten Lichtlaufzeitverfahrens

Abb. 3: Tiefenbild einer PMD-Kamera, die Farbe kodiert die Tiefeninformation

Abb. 5: Ergebnis des Verfahrens. Der 3D-Darstellung der PMD-Aufnahme sind die Referenzpunktewolken mit der gefundenen Orientierung überlagert. Die Farbe der Punktewolken zeigt den ermittelten Objekttyp (80.120 oder 160 mm) an. Die vom Algorithmus vorgeschlagene Greifposition für den Roboter ist in blaugrau eingezeichnet.

Abb. 4: 3D-Aufnahme der Roboter-Arbeitsfläche mit zu greifenden Objekten

EiN PMD-KaMEra basiErtEs »PicK-aND-PlacE« - systEM Niklas Küppers, Christian Gottwald und Stephan Neser