Kamera kalibrieren

Mit diesem Tool können Sie Kalibrierdaten ermitteln, d. h. eventuelle Linsenverzerrungen des Geräts, mit dem die Bilddaten eingezogen wurden, sowie die Position der Kamera in Bezug auf die Bildebene. Die Kalibrierdaten können dann verwendet werden, um die Bilder mit dem Tool Bild entzerren zu entzerren. Sie können auch direkt in den Tools der Kategorie Messen oder Positionsbestimmung verwendet werden. Weitere Informationen zum Einrichten einer Kamera für MERLIC finden Sie unter Bildeinzug.

Dieses Tool wird mit einem Trainingsmodus verwendet. Dabei wird zunächst ein Training mit festgelegten Parametern durchgeführt. In diesem Fall besteht das Training darin, die Kalibrierdaten zu bestimmen.

Aufbau des Tools

Das Toolboard ist in den Trainingsbereich auf der linken Seite der Toolbar und das Grafikfenster auf der rechten Seite unterteilt. Der Trainingsbereich ermöglicht einen Wechsel zwischen dem Verarbeitungsmodus, um ein Bild einer Kalibrierplatte auszuwählen, und dem Trainingsmodus, um die Kalibrierdaten zu trainieren. Im Grafikfenster wird das Bild des derzeit aktiven Modus angezeigt, der blau hervorgehoben wird. Zusätzlich zu den Parametern oben links stellt das Tool den Parameter Kalibrierplattenbeschreibung oben rechts im Tool bereit.

Kalibrierplattenbeschreibung

Trainingsbereich

Grafikfenster

Vorgehensweise zum Durchführen des Trainings

Um ein Training durchzuführen, ziehen Sie ein Bild einer Kalibrierplatte aus einer Datei oder aus einem Kameragerät ein. Fügen Sie das Tool „Kamera kalibrieren“ ein. Verbinden Sie das Bild mit dem „Bild“-Parameter des Tools „Kamera kalibrieren“ und wählen Sie es als Trainingsbild aus. Das Training wird automatisch gestartet. Ausführliche Informationen finden Sie unter Vorgehensweise zum Durchführen des Trainings.

Vorschau des Trainingsergebnisses

Um eine Vorschau der Trainingsergebnisse zu erhalten, während der Verarbeitungsmodus aktiv ist, können Sie den Parameter „Kameraeinstellungsmodus“ auf 1 festlegen.

Kameraeinstellung

Wenn eine Kameraeinstellung erforderlich ist, fügen Sie den Parameter „Kameraeinstellungsmodus“ hinzu und legen Sie ihn auf 1 fest, um bei jedem Ausführungszyklus der MERLIC Anwendung eine Kalibrierung durchzuführen. Verwenden Sie das Bild nach Abschluss der Kameraeinstellung als Trainingsbild und legen Sie den Parameter „Kameraeinstellungsmodus“ auf „0“ fest. Dadurch sparen Sie auch Ausführungszeit. Wenn der Parameter „Kameraeinstellungsmodus“ auf 1 festgelegt ist, wird das Training auch bei jeder Änderung eines Parameters automatisch gestartet.

Trainingsbild auswählen

Das Bild oben auf der linken Seite im Toolboard zeigt das momentan geladene Bild, das Bild darunter das Trainingsbild.

Beim Einfügen des Tools wird das aktuelle Verarbeitungsbild automatisch als Trainingsbild verwendet und das Training ausgeführt. Sie können auch die folgenden Schritte ausführen, um das Trainingsbild zu ändern:

  1. Führen Sie die Anwendung in Einzelschritten aus, bis das gewünschte Bild im Grafikfenster und somit im „Verarbeitungsbereich“ angezeigt wird.
  2. Klicken Sie auf die Schaltfläche im Trainingsbereich auf der linken Seite, um das aktuelle Trainingsbild durch das Bild im „Verarbeitungsbereich“ zu ersetzen. Der Trainingsmodus wird automatisch aktiviert und das neue Trainingsbild wird im Grafikfenster angezeigt.

Kalibrierergebnisse

Nachdem das Trainingsbild geladen wurde, zeigt MERLIC die erkannten Kalibriermarken an. Sofern die Kalibrierung mit den Standardparametereinstellungen erfolgreich war, werden Kalibrierergebnisse bereitgestellt. Wenn „Kameraeinstellungsmodus“ auf „0“ festgelegt ist, basieren die Toolergebnisse immer auf dem letzten erfolgreichen Training.

Nach der Kalibrierung liegt der Ursprung des Weltkoordinatensystems, d. h. die Position [0,0], im „Kalibrierursprung“. Es handelt sich um ein rechtsgängiges System, d. h., eine Drehung entgegen dem Uhrzeigersinn von 90 Grad führt von der X-Achse zur Y-Achse.

Die Kalibrierdaten können dann in nachfolgenden Tools verwendet werden, beispielsweise um das Bild mit Bild entzerren zu entzerren. Dieses Tool bietet außerdem die Möglichkeit, eine ROI zu verwenden, um eine bekannte Länge in einem Bild zu definieren und somit die Pixelgröße in einem bestimmten Abstand zur Kamera zu bestimmen. Dieses Tool führt lediglich eine Kalibrierung in einer Messebene durch. Durch Verwendung einer ROI können Sie eine Bezugslänge für Objekte definieren, die parallel zur Kalibrierplatte auf einer anderen Ebene liegen.

Kalibrierplatte

Zum Kalibrieren der Kamera ist eine Kalibrierplatte erforderlich. Sie können Kalibrierplatten verschiedener Größen und Materialien von Ihrem MERLIC-Händler erhalten. Für Anwendungen, die eine Hintergrundbeleuchtung erfordern, stehen transparente Kalibrierplatten zur Verfügung. Es ist auch möglich, zusätzlich zu den im Unterverzeichnis „calib“ gespeicherten Dateien anwendungsspezifische Beschreibungsdateien für nicht standardisierte Kalibrierplatten zu erhalten.

Wenn Sie Kalibrierplatten lediglich für Testzwecke benötigen, können Sie Kalibrierplatten in den Größen 20 mm, 40 mm, 80 mm und 160 mm aus dem Dokument „test_calibration_plates.pdf“ drucken, das sich im Verzeichnis „calib“ der MERLIC-Installation befindet, z. B. „%PROGRAMFILES%\MVTec\MERLIC-5.7\calib\“.

Gedruckte Kalibrierplatten sind nicht genau und können eine echte Kalibrierplatte nicht ersetzen. Achten Sie beim Drucken von Platten für Testzwecke darauf, dass der Drucker auf „tatsächliche Größe“ oder „100%“ eingestellt ist und das Dokument nicht skaliert oder an die Seitengröße angepasst wird.

Regeln für gute Kalibrierergebnisse:
  • Verwenden Sie eine Kalibrierplatte, die groß genug ist, um einen Großteil des Bildes zu füllen.
  • Der kleinste Durchmesser der kreisförmigen Markierungen sollte 20 Pixel betragen.
  • Die weißen Teile der Kalibrierplatte sollten einen Grauwert von mindestens 100 aufweisen.
  • Der Kontrast zwischen dem Vordergrund und dem Hintergrund der Kalibrierplatte, d. h. die hellen bzw. dunklen Teile, sollte besser als 100 Grauwerte sein.
  • Verwenden Sie eine Beleuchtung, bei der die Kalibrierplatte mit homogenen Grauwerten dargestellt wird.
  • Die Bilder dürfen nicht überbelichtet werden, d. h., sie dürfen im Histogramm keinen Höchstwert bei 255 haben.

Parameter

Standardparameter

Bild:

Dieser Parameter stellt das für die Kalibrierung der Kamera verwendete Bild dar, wenn der Parameter „Kameraeinstellungsmodus“ auf 1 festgelegt ist. Mit diesem Parameter verbundene Bilder können als Trainingsbilder festgelegt werden.

Bei der Verwendung eines Farbbilds als Eingabebild für dieses Tool wird nur der erste Kanal, d. h. der rote Kanal, für die Verarbeitung verwendet.

Einheit:

Verwenden Sie diesen Parameter, um die Einheit der „Kalibrierdaten“ von der Kalibrierplatte (standardmäßig „mm“) in die gewünschte Einheit für die Toolergebnisse zu konvertieren. Sie können den Wert über die zugehörige Verbindungsstelle ändern. Die Ergebnisse können abhängig von der ausgewählten Einheit geringfügig abweichen. Wenn eine „Referenz ROI“ oder eine ROI mit einem bestimmten „Abstand in der Welt“ eingefügt wurde, wird „Einheit“ ignoriert.

Wert

Beschreibung

nm

Die Kalibrierungsinformationen werden in nm angegeben.

μm

Die Kalibrierungsinformationen werden in μm angegeben.

mm

Die Kalibrierungsinformationen werden in mm angegeben.

cm

Die Kalibrierungsinformationen werden in cm angegeben.

m

Die Kalibrierungsinformationen werden in m angegeben.

Punkt

Die Kalibrierungsinformationen werden in Punkt angegeben.

Pica

Die Kalibrierungsinformationen werden in Pica angegeben.

Zoll

Die Kalibrierungsinformationen werden in Zoll angegeben.

Fuß

Die Kalibrierungsinformationen werden in Fuß angegeben.

Yard

Die Kalibrierungsinformationen werden in Yard angegeben.

Zusätzliche Parameter

Referenz ROI:

Dieser Parameter enthält die grafische Darstellung des Referenzabstands, d. h. einen Abstand einer bekannten Länge, der verwendet werden kann, um einen Maßstab für eine bestimmte Einheit und die entsprechende Pixelgröße zu definieren. Er wird als ROI angezeigt.

Standardmäßig ist keine „Referenz ROI“ definiert. Wenn Sie eine „Referenz ROI“ für die Kalibrierung verwenden möchten, müssen Sie den Parameter mit einem geeigneten ROI-Ergebnis eines vorherigen Tools verbinden, damit eine „Referenz ROI“ an dieses Tool übergeben wird, oder mit den verfügbaren ROI-Schaltflächen eine neue „Referenz ROI“ im Bild zeichnen. Nachdem eine „Referenz ROI“ definiert wurde, muss die bekannte Länge mit dem Parameter „Abstand in der Welt“ eingegeben werden.

Mit diesem Tool kann nur eine einzige ROI verwendet werden. Wenn die „Referenz ROI“ mehrere ROIs enthält, wird nur die zuletzt erstellte ROI für die Verarbeitung verwendet. Wird die „Referenz ROI“ durch eine kreisförmige ROI dargestellt, wird der Durchmesser des Kreises als Referenzabstand verwendet. Wird ein (achsenparalleles) Rechteck als „Referenz ROI“ verwendet, wird die Hauptlänge entlang der jeweiligen Orientierung als Referenzabstand verwendet.

Dies ist nützlich, wenn Sie Elemente messen möchten, die sich nicht auf derselben Ebene befinden wie die Kalibrierplatte.

Abstand in der Welt:

Dieser Parameter legt den tatsächlichen realen Abstand fest, der einem festgelegten Referenzabstand entspricht, der über die „Referenz ROI“ dargestellt wird. Die „Referenz ROI“ definiert eine benutzerdefinierte Einheit, die für nachfolgende Messungen verwendet wird.

Wenn das Anwendungsobjekt in einem anderen Abstand zur Kamera positioniert wird, können Pixelgröße und Verzerrung bestimmt werden. Nehmen Sie nach der erfolgreichen Kalibrierung ein Bild eines Objekts in der Messebene der Anwendung auf. Verwenden Sie eine Geradenstück-ROI, um einen bekannten Abstand zu markieren, und geben Sie die Werte in der Parameterverbindungsstelle für „Abstand in der Welt“ ein. Die Festlegung der „Einheit“ ist optional, weil MERLIC intern Pixel für die Berechnung verwendet. Sie sollten die Einheit jedoch immer auf einen geeigneten Wert festlegen, z. B. „m“, wenn Sie metrische Ergebnisse von der Messung erwarten.

Kameraeinstellungsmodus:

Dieser Parameter definiert den Modus für die Kameraeinstellung. Wenn der „Kameraeinstellungsmodus“ aktiviert ist (1), wird die Kamera bei jedem Ausführungszyklus von MERLIC kalibriert. Dies kann in Anwendungen mit Live-Bildern nützlich sein, um die Kamera einzurichten. Sie können im Verarbeitungsmodus auch eine Vorschau der Trainingsergebnisse anzeigen. Andernfalls wird die Kalibrierung nur einmal durchgeführt, um Ausführungszeit zu sparen. Der Parameter ist standardmäßig auf 0 festgelegt.

Trainingsparameter

Standard-Trainingsparameter

Kalibrierplattenbeschreibung:

Dieser Trainingsparameter enthält die Beschreibungsdatei der Kalibrierplatte, die für das Training verwendet wird. Die Form der Kalibrierplatte ist genau bekannt. Sie enthält ein bis fünf Finder Pattern (Suchmuster), die in hexagonaler Anordnung platziert sind, d. h. eine Marke und dessen sechs Nachbarn, wobei entweder vier oder sechs Marken ein Loch besitzen. Jedes Finder Pattern ist unverwechselbar und kann für die Bestimmung der Orientierung der Kalibrierplatte und der Position des Finder Pattern auf der Kalibrierplatte verwendet werden. Für das Training der „Kalibrierdaten“ muss mindestens ein Finder Pattern vollständig sichtbar sein.

Ergebnisse

Standardergebnisse

Kalibrierdaten:

Dieses Ergebnis enthält die ermittelten Kalibrierdaten, die für die Korrektur eventueller Linsenverzerrungen sowie der Position der Kamera in Bezug auf die Bildebene erforderlich sind.

Kalibrierfehler:

Dieses Ergebnis stellt den durchschnittlichen Rückprojektionsfehler der Kalibrierung dar. Es wird in Pixeln ausgegeben und liefert allgemeine Informationen darüber, ob die Optimierung erfolgreich war. Es wird aus dem Trainingsbild erzeugt, wenn Sie „Kameraeinstellungsmodus“ auf 1 festlegen. Andernfalls wird es aus dem Verarbeitungsbild erzeugt.

Ein „Kalibrierfehler“ in der Größenordnung von 0,1 Pixeln bedeutet, dass die Optimierung gut zu den Beobachtungsdaten passt. Wenn der „Kalibrierfehler“ den Wert von 0,1 Pixel deutlich überschreitet, war die Kalibrierung nicht erfolgreich.

Kameraschwenk:

Dieses Ergebnis gibt den Neigungswinkel der Kamera in Grad aus, d. h. den Winkel zwischen Kamera und Kalibrierplatte. Die Neigung wird als reelle Zahl im Wertebereich von 0° bis 90° ausgegeben. Eine „Kameraschwenk“ von 0° bedeutet, dass die Kamera senkrecht zur Kalibrierplatte steht. Beträgt die „Kameraschwenk“ 90 °, liegt die Kamera parallel zur Kalibrierplatte. Diese Informationen können verwendet werden, um die Kamera während des Aufbaus zu justieren.

Kameradrehung:

Dieses Ergebnis gibt die Drehung der Kamera in Grad aus, d. h. die Drehung im Hinblick auf die Ausrichtung der Kalibrierplatte. Die Drehung wird als reelle Zahl im Wertebereich von -180° bis 180° ausgegeben. Die folgende Tabelle beschreibt, wie die Kalibrierplatte gedreht werden kann.

Kameradrehung

Beispielbild

Beschreibung

Kameradrehung = 0

Die Kalibrierplatte ist nicht gedreht:

  • Die ermittelte „X Achse“ (rot dargestellt) verläuft horizontal nach rechts.
  • Die „Y Achse“ (grün dargestellt) verläuft vertikal nach oben.

Kameradrehung > 0

Die Kalibrierplatte ist im Uhrzeigersinn gedreht:

  • Die ermittelte „X Achse“ und die „Y Achse“ der Kalibrierplatte sind ebenfalls im Uhrzeigersinn gedreht.
  • Die ausgegebene „Kameradrehung“ ist > 0.

Das Beispielbild zeigt eine Kalibrierplatte, die um 40° im Uhrzeigersinn gedreht wurde. Die bestimmte „X Achse“ (rot) und „Y Achse“ (grün) veranschaulichen die Orientierung der Kalibrierplatte. Die resultierende „Kameradrehung“ im Beispiel ist 40.

Kameradrehung < 0

Die Kalibrierplatte ist gegen den Uhrzeigersinn gedreht:

  • Die ermittelte „X Achse“ und die „Y Achse“ der Kalibrierplatte sind ebenfalls gegen den Uhrzeigersinn gedreht.
  • Die ausgegebene „Kameradrehung“ ist < 0.

Das Beispielbild zeigt eine Kalibrierplatte, die um 40° gegen den Uhrzeigersinn gedreht wurde. Die bestimmte „X Achse“ (rot) und „Y Achse“ (grün) veranschaulichen die Orientierung der Kalibrierplatte. Die resultierende „Kameradrehung“ beträgt „-40 Grad“.

Beträgt die „Kameradrehung“ 180° oder -180°, kann es passieren, dass das Ergebnis zwischen -180° und 180° springt. Die Informationen der „Kameradrehung“ können verwendet werden, um die Kamera während des Aufbaus zu justieren.

Toolstatus:

Toolstatus“ gibt Informationen zum Status des Tools aus und kann daher für die Fehlerbehandlung verwendet werden. Weitere Informationen zu den verschiedenen Toolstatus-Ergebnissen finden Sie unter Toolstatus-Ergebnis.

Zusätzliche Ergebnisse

Kalibrierursprung:

Dieses Ergebnis gibt den Ursprung der verwendeten Kalibrierplatte aus, d. h. den Mittelpunkt des Koordinatensystems. Die Ausgabe erfolgt als punktförmige ROI.

Maximaler lokaler Fehler:

Dieses Ergebnis zeigt den maximalen Fehler zwischen jeder Marke und ihrer Rückprojektion. Daher wird der Abstand zur entsprechenden rückprojizierten Marke bestimmt. Anschließend wird die maximale Abweichung als reeller Wert in Pixeln ausgegeben.

Maximaler globaler Fehler:

Dieses Ergebnis zeigt den maximalen globalen Fehler. Aus diesem Grund wird der Abstand zwischen der Marke in der oberen linken und der Marke in der unteren rechten Ecke bestimmt und mit dem entsprechenden Abstand in der Rückprojektion verglichen. Anschließend wird die maximale Abweichung als reeller Wert in Pixeln ausgegeben.

Marken:

Dieses Ergebnis enthält die Konturen der Kalibriermarken, die aus dem Verarbeitungsbild extrahiert wurden. „Marken“ liefert abhängig von der Einstellung für den Parameter „Kameraeinstellungsmodus“ unterschiedliche Ergebnisse.

Wenn „Kameraeinstellungsmodus“ auf 1 festgelegt ist, gibt „Marken“ die aus dem Verarbeitungsbild extrahierten Kalibriermarken aus. Dies kann für einen Vergleich der Kalibrierdaten von Nutzen sein. Falls im Verarbeitungsbild keine Kalibrierplatte angezeigt wird, können keine Kalibriermarken extrahiert werden, sodass „Marken“ leer ist.

Wenn „Kameraeinstellungsmodus“ auf „0“ festgelegt ist, ist „Marken“ leer, weil keine Kalibrierung für das Verarbeitungsbild durchgeführt wird.

X Achse:

Dieses Ergebnis stellt die ermittelte X-Achse dar. Das Ergebnis wird als Kontur ausgegeben und rot dargestellt.

Y Achse:

Dieses Ergebnis stellt die ermittelte Y-Achse dar. Das Ergebnis wird als Kontur ausgegeben und grün dargestellt.

Verarbeitungszeit:

Dieses Ergebnis gibt die Dauer der letzten Ausführung des Tools in Millisekunden aus. Das Ergebnis wird als zusätzliches Ergebnis bereitgestellt. Es ist daher standardmäßig ausgeblendet, kann aber über die Schaltfläche neben den Toolergebnissen angezeigt werden. Weitere Informationen finden Sie im Abschnitt Verarbeitungszeit in der Tool-Referenz-Übersicht.

Trainingsergebnisse

Standardtrainingsergebnisse

Marken - Training:

Dieses Ergebnis gibt die Konturen der gefundenen Kalibriermarken aus.

Kalibrierfehler - Training:

Dieses Ergebnis gibt den Kalibrierfehler in Pixeln aus.

Anwendungsbeispiele

Dieses Tool wird in den folgenden MERLIC-Vision-App-Beispielen verwendet:

  • calibrate_for_ruler_changed_distance.mvapp
  • calibrate_for_ruler_distorted.mvapp
  • calibrate_for_ruler_simple.mvapp