3D-Kameradaten
Verbesserte 3D-Sicht
Mit der Optimierung von 3D-Anwendungen steigt die Komplexität im Umgang mit Kamerahardware und deren Daten. IDS bietet mit dem Ensenso SDK 2.2 und den neuen 5-MP-Kameramodellen Lösungen, die den Umgang mit 3D-Daten vereinfachen. Mit weiter verbesserter Hardware und Software unterstützt IDS damit die Entwicklung leistungsfähigerer 3D-Anwendungen.
Der Umgang mit 3D-Kameras und deren Daten ist komplex und erfordert viel Vorbereitung und Einrichtungszeit bei der Erarbeitung einer Anwendung. Gerade in Mehrkameraanwendungen oder in Verbindung mit der Robotik sind aufwändige Kalibrierungen von mehreren Koordinatensystemen notwendig, bevor die Daten effektiv verwendbar sind. Durch die starke Systemabhängigkeit müssen diese Tätigkeiten oft direkt am Zielsystem erarbeitet werden. Auch die eigentliche Anwendungsentwicklung (Bildverarbeitung oder Software-Algorithmen) muss noch oft direkt am System entwickelt werden, um brauchbare Daten zu generieren. Für Anwendungen mit größeren Arbeitsräumen sind zudem das Sichtfeld und die Auflösung vieler 3D-Kameras nicht ausreichend. Diese Anforderungen sind in die Entwicklung des neuen Ensenso SDK 2.2 und der neuen 5-MP-Variante der Ensenso-X-Serie von IDS eingeflossen.
Die 3D-Kameras sind sowohl für statische als auch für bewegte Anwendungen geeignet. Für den Griff in die Kiste (Bin Picking) oder für hochgenaue Objekt-Vergleiche optimiert ihre Flexview-Technologie in Verbindung mit den SC-Algorithmen (Sequenz-Korrelation) die Ergebnisgenauigkeit der Kameramodelle N35, X36 1,3 MP, X36 5 MP. Dazu projiziert ein beweglich gelagerter Hochleistungsprojektor ein Zufallsmuster auf das Prüfobjekt, wodurch Bildmaterial mit unterschiedlicher Oberflächenstruktur des Prüfobjekts erzeugt wird. Die SC-Algorithmen berechnen daraus die 3D-Objektdaten, die von jedem weiteren Bildpaar (bis zu 16) profitieren, um die Genauigkeit zu erhöhen.
Auch für Anwendungen mit bewegten Objekten, etwa auf fortlaufenden Transportbändern, oder Fälle, wo sich die Kamera selbst bewegt, ist Ensenso mit den Kamera-Modellen N30, X30 1,3 MP, X30 5 MP vorbereitet. Optimierte SGM-Algorithmen (Semi-Global-Matching) können auch aus einem einzigen aufgenommenen Bildpaar bereits eine Genauigkeit der Tiefeninformationen erzielen.
Größere Augen mit weiterem Sichtfeld
Mit der Integration zweier Sony-IMX264-5-MP-Bildsensoren steigt die 3D-Bildauflösung der Ensenso-3D-Kamerafamilie gegenüber der bisherigen 1,3-MP-Variante um etwa 35 Prozent bei gleichzeitigem Gewinn an Sichtfeld von etwa 20 Prozent. Um eine bepackte Euro-Palette mit einem Volumen von 120 mal 80 mal 100 Zentimeter komplett zu erfassen, kann der Abstand zwischen Kamera und Prüfobjekt damit von 1,5 Meter auf nur noch 1,25 Meter verringert werden. In Verbindung mit dem geringeren Pixelrauschen der Sony-Sensoren ergibt sich eine Verbesserung der errechneten Tiefeninformation von vorher 0,43 Millimeter auf 0,2 Millimeter.
Leistungsstärkere Sensoren verursachen natürlich größere Datenmengen und dadurch potenziell längere Verarbeitungszeiten, bis Ergebnisse vorliegen. Referenzuntersuchungen mit einem 5-MP-Modell bestätigten die etwa viermal längeren Bearbeitungszeiten für das Matching der Bilder eines Bildpaares beziehungsweise der Zeit, bis zu einem vollständigen 3D-Bild. Dennoch liegen die Zeiten für die vollständige 3D-Bildberechnung einer Sequenz-Korrelation mit 16 hochauflösenden 5-MP-Bildpaaren bei nur etwa 2,5 Sekunden. Für die meisten Anwendungen sind diese Zeiten vollkommen ausreichend.
Um den größeren Datenmengen und den damit verbundenen Zeiteinbußen trotzdem entgegenzuwirken, wurden wichtige Berechnungen für Cuda optimiert. Die zusätzliche Rechenkapazität von Nvidia-Grafikprozessoren beschleunigt die Verarbeitungsprozesse je nach eingesetzter GPU und der Parametrierung der entsprechenden Algorithmen etwa um das Fünffache. Mit der Cuda-Unterstützung werden 3D-Anwendungen somit auch für das Embedded Umfeld interessant.
Mehrere Kameras in einer Anwendung
Die Ensenso-Software-Bibliotheken bieten nützliche Funktionen zur Verwendung mehrerer Kameras in einer Anwendung. Durch verschiedene Ansichten und Positionen müssen die Koordinatensysteme mehrerer Kameras aufeinander oder mit Festpunkten in der realen Welt abgeglichen und auf ein einheitliches Objekt-Koordinatensystem kalibriert werden. Wenn Kameras mit einem Roboter zusammenarbeiten sollen und dessen Bewegungen mit den Kameradaten koordiniert werden müssen, kann ebenfalls eine Hand-Augen-Kalibrierung durchgeführt werden. Ein integrierter Kalibrierungs-Wizard unterstützt den Anwender bei der Durchführung. Außerdem ermöglicht das SDK auch die Integration und Kalibrierung von monokularen 2D-uEye-Kameras in einer Anwendung. Die Qualität von Prüf- und Messergebnissen in 3D-Anwendungen lässt sich durch Fähigkeiten der 2D-Kameras signifikant verbessern. Wo Stereo-Kameras in Grenzbereichen Schwierigkeiten aufweisen Objekte zu identifizieren, unterstützen 2D-Kameras idealerweise durch Kantendetektion oder Farberkennung. Des Weiteren ermöglichen 2D-Kameras auch die Erfassung zusätzlicher Informationen wie Inhalte von Barcodes. Die Ensenso-Software unterstützt deshalb die Integration beider Technologien.
Anwendungsentwickler dürften vor allem von den Erweiterungen „File Cameras“ und „Virtual Cameras“ profitieren. Zur Verbesserung von Algorithmen und Abläufen ist es unabdinglich identische Daten mehrfach debuggen zu können. Eine Filekamera verhält sich am System wie eine reale Kamera, mit dem Unterschied, dass deren Bildmaterial aus einem lokalen Ordner mit gespeicherten Datensätzen stammt. So können Anwendungssequenzen immer wieder mit den Daten simuliert werden, ohne auf das reale System zugreifen oder Situationen nachstellen zu müssen. Das ist ebenso ein ideales Hilfsmittel zur Fehlerermittlung: Anwender können problematische Datensätze speichern, um sie Bildverarbeitungsspezialisten zur Verfügung zu stellen.
Mit „virtuellen Kameras“ lassen sich Simulationen in einer Offline-Umgebung durchführen, um Datenqualität, Vollständigkeit, Auflösung und Rauschen einer Szene mit verschiedenen Kameramodellen zu bewerten. Dazu können Objekte im STL- oder PLY-Format importiert, gerendert und beliebig positioniert werden. So können Leistungsbewertungen über verschiedene Varianten eines Prüfprozesses durchgeführt werden, ohne ein reales System aufbauen zu müssen.
Heiko Seitz / as









