Institut für
Robotik und Prozessinformatik

Deutsch   English

Kamera- und Hand-Auge-Kalibrierung

Projekt abgeschlossen.

Projektbeschreibung

Um eine Videokamera für quantitative Messungen einzusetzen, wie sie z.B. bei der Objekterkennung und Objektlagebestimmung gefordert werden, müssen die internen und externen Parameter der Kamera sehr genau bekannt sein. Als interne Parameter bezeichnet man die lageunabhängigen Parameter wie z.B. die Brennweite, die Hauptpunktlage oder Verzeichnungsparameter. Als externe Parameter versteht man die Lage, also Position und Orientierung der Kamera im Raum.
Bei der Kamerakalibrierung werden die Parameter aus den Aufnahmen von speziellen Kalibrierkörpern, deren Abmessungen sehr genau bekannt sein müssen, berechnet. Zur Berechnung der Parameter muss das Abbildungsverhalten der Videokamera durch ein mathematisches Modell, das die Parameter beinhaltet, beschrieben werden. Da aufgrund von Messfehlern diese Berechnungen nie exakt sind, spricht man bei den dafür eingesetzten Verfahren von Parameterschätzverfahren, die bei bekannten Messfehlern auch die Parameterfehler mitschätzen.

kalib_body.jpg
Kalibrierkörper im Arbeitsraum eines Roboters

Methoden

Am Institut wurde eine Software entwickelt, die für die Parameterschätzung verschiedene Kameramodelle verwendet. Außerdem kann die Parameterschätzung simultan für verschiedene Lagen der gleichen Kamera durchgeführt werden. Darüber hinaus können alle eingehenden Messfehler statistisch berücksichtigt werden, also nicht nur die Pixelfehler, sondern auch die Fertigungstoleranzen des Kalibrierkörpers. Zur Optimierung der konkurrierenden Eigenschaften Rechenzeit und Genauigkeit wurden verschiedene Verfahren implementiert und miteinander verglichen.
Zur Beurteilung der Genauigkeit kann das Residuenbild berechnet werden, in dem die Pixelabweichungen zwischen den im Bild gesehenen Passpunkten und deren mit den geschätzten Parametern berechneten Bilder dargestellt wird.

dsc_camcalib_2.gif
Typisches Residuenbild (50-fache Vergrößerung)

Ist die Videokamera an der Hand eines Roboters montiert, so tritt ein weiteres Kalibrierproblem auf: Welche relative Lage hat die Kamera zur Roboterhand? Dies ist wichtig, damit die externen Kameraparameter nicht immer wieder neu kalibriert werden müssen, wenn sich der Roboter bewegt.
Die Ermittlung dieser relativen Lage bezeichnet man als Hand-Auge-Kalibrierung. Es wird dazu die Hand mit der Videokamera in mehrere Roboterposen gefahren und jeweils eine Kamerakalibrierung durchgeführt. Dadurch sind dann für jede Roboterpose die relative Lage der Kamera zum Kalibrierkörper und aus der Roboterkinematik die relative Lage der Hand zur Roboterbasis bekannt. Nachfolgendes Bild veranschaulicht die dabei relevanten Transformationen.

dsc_frames_eng.gif
Relevante Transformationen

Aus den relativen Lagen von je zwei Roboterposen können Gleichungen zusammengestellt werden, in denen nur die Hand-Auge-Transformation unbekannt ist. Erst mindestens drei Roboterposen in geeigneter Stellung liefern genug Information zur Berechnung der relativen Lage. Zusammen mit den nichtlinearen Nebenbedingungen liefern die Parameterisierungen der relativen Lagen ein nichtlineares Gleichungssytem, aus dem mit einem Parameterschätzverfahren die Hand-Auge-Transformation ermittelt werden kann.
Am Institut wird und wurde Software entwickelt, die verschieden detaillierte, bei der Hand-Auge-Kalibrierung auftretende Messfehler mitberücksichtigt. Werden die relativen Lagen der Hand zur Roboterbasis nicht als exakt angesehen, so liefert die Parameterschätzung auch verbesserte relative Lagen der Hand zur Basis.
Bei der statistischen Messfehlerbetrachtung wurde festgestellt, dass die Hand-Auge-Kalibrierung und die Kamera-Kalibrierung nicht getrennt werden darf, da hierdurch die starken Korrelationen der internen Kameraparameter mit der relativen Hand-Auge-Transformation unberücksichtigt bleiben.

It took 0.32s to generate this page.