IDS Imaging Development Systems
3D-Daten direkt von der Kamera
Die Verlagerung rechenintensiver Prozesse weg vom Industrie-PC hinein in die Kamera verbessert sowohl Geschwindigkeit als auch Genauigkeit der Datenverarbeitung. Doch was bringt die integrierte Datenverarbeitung im Detail?
Sollen große Volumina oder mehrere Objektansichten durch 3D-Kameras automatisiert geprüft werden – etwa an ständig laufenden Produktions-straßen der Automobilbranche –, müssen aufgrund der vorgegebenen Taktzeiten hochauflösende 3D-Ergebnisdaten schnell erzeugt und verarbeitet werden. Stereokamerasysteme mit großen 5-MP-Sensoren und variablen Baselines liefern die idealen Ausgangsdaten, produzieren jedoch auch enorme Datenmengen. In solch hochperformanten 3D-Anwendungen werden Schnittstellen und CPU-Leistung so schnell zum limitierenden Nadelöhr. Die Herausforderung ist also, sowohl die Datenraten als auch die Leistungs-anforderungen an Systemkomponenten zu reduzieren, ohne dabei die Datenqualität einzuschränken. Gleichzeitig sollen die Systeme platzsparend und effizient arbeiten.
Bei Machine-Vision-Anwendungen mit 3D-Kameras, die nach dem Prinzip des räumlichen Sehens (Stereo Vision) arbeiten, werden Kamerabilder mit hoher Auflösung und Framerate verarbeitet, um den weiterführenden Prozessen Ergebnisdaten schnellstmöglich zur Verfügung zu stellen. Die Berechnung der dreidimensionalen Daten – sogenannte ‚Punktewolken‘ – aus dem Bild-material der Stereokameras erfordert mehrere aufwendige Prozessschritte. Bislang übernehmen leistungsstarke Industrie-PCs diese Aufgabe. Mit steigenden Anforderungen an Qualität und Geschwindigkeit der Ergebnis-daten verwenden moderne 3D-Stereokameras hochauflösende 2D-Kameras mit Gigabit-Ethernet-Schnittstelle. Doch die Übertragung der 2D-Ausgangsdaten zum verarbeitenden IPC erfordert eine optimale Auslastung der Netzwerk-Bandbreite, um Zeitverzug oder Datenverlust zu vermeiden. Abgesehen davon muss die Verarbeitungsleistung der IPC-Hardware stetig mitwachsen, um das Gesamtsystem nicht einzuschränken.
Durch die Verlagerung der rechenintensiven Prozesse der Stereo-Vision-Vorverarbeitung in die Kamera selbst müssen die hochauflösenden 2D-Rohdaten nicht mehr zu einem Host-PC übertragen werden. Das reduziert die Netzwerk-Last und zugleich die Anforderungen an die Rechenleistung der Peripherie-Komponenten.
© IDSDie Performance solcher 3D-Kamera-systeme lässt sich durch den Einsatz
hochwertiger Komponenten noch steigern. Dank wechselbarer 2D-Kameras ist der flexible Aufbau etwa der ‚Ensenso X‘-Serie von IDS nicht an bestimmte Datenschnittstellen und Sensorauf-lösungen gebunden und kann mit den Bedürfnissen an Geschwindigkeit, Objektgrößen und Qualität weiter wachsen. Aber: Hochauflösende, schnelle GigE-Kameras, speziell geschirmte Kabel, hochperformante Netzwerk-Technik und leistungsstarke PC-Hardware sind für manche Anwendung schlicht zu hochpreisig. Außerdem muss für diese Peripherie ausreichend Platz zur Verfügung stehen.
Daher verfolgt IDS mit den Embedded-3D-Kameras ‚Ensenso XR‘ mit integrierter Datenverarbeitung einen anderen Ansatz. Nach dem Prinzip des Internet of Things (IoT) hat jede einzelne Komponente in einem verteilten System eine bestimmte Aufgabe und erzeugt Ergebnisse, die von anderen Systemen direkt weiterverwendet werden. Im Fall einer 3D-Kamera sind das dreidimensionale Koordinaten von Bildpunkten eines realen Objekts.
Onboard 3D-Verarbeitung
Die reduzierten Leistungsanforderungen an Netzwerk-Peripherie und IPC-Hardware vereinfachen den gesamten Aufbau einer 3D-Applikation.
© IDSDurch ein in der Projektoreinheit der ‚Ensenso XR‘ integriertes SoC (System-on-Chip) führt die Kamera die 3D-Prozesse inklusive der Stereoanalyse selbst aus. Nach einer Korrektur der Linsenverzerrung werden die 2D-Ausgangsbilder durch eine virtuelle Drehung der Kameras in ein achs-paralleles Stereosystem überführt (Rektifikation), was alle nachfolgenden Analysen stark erleichtert. Die Matching-Algorithmen für stehende beziehungs-weise bewegte Szenen durchsuchen anschließend die aufgenommenen Bildpaare nach korrespondierenden Bildpunkten. Aufgrund der unterschied-lichen Perspektiven der Kameras ergeben sich für diese Bildpunkte unter-schiedliche horizontale Verschiebungen in der Bildebene, die als ‚Disparität‘ bezeichnet werden. Durch die geometrischen Beziehungen im parallelen Stereosystem stellt diese Disparität nach Anwendung von Strahlensätzen und dem Wissen über bekannte Systemparameter – zum Beispiel Brennweiten, Pixelgrößen und die Basislänge des Stereosystems – ein Maß für die Raum-tiefe eines 3D-Punktes in Millimeter dar. Diese zeit- und rechenintensiven Pixeloperationen werden parallelisiert durch ein unterstützendes FPGA in der Kamera ausgeführt.
Modelle der ‚XR36‘-Serie können in Verbindung mit der ‚FlexView2‘-Technologie (siehe nächste Seite) bis zu 16 schnell aufeinanderfolgende Bildaufnahmen für den 3D-Datensatz einer stehenden Szene verarbeiten, ohne dass es zu einem zusätzlichen Zeitverzug durch die Übertragung der Roh-daten zum Host-PC kommt. Mit der Verschiebung des Projektormusters durch ‚FlexView2‘ ergeben sich mit jedem Bildpaar andere 3D-Punkte, die zu einer hochauflösende 3D-Darstellung beitragen.
Zur Reduzierung der Datenrate überträgt die Kamera nur die ‚Disparity Map‘. Das 16-Bit-1-Kanalbild ist wesentlich kleiner als eine vollständige ‚Punkte-wolke‘, die mit Farb-Overlay als 32-Bit RGB-Bild zu Buche schlägt. Die einfache Konvertierung lässt sich ohne viel Rechenlast am Industrie-PC vom ‚Ensenso SDK‘ durchführen.
Neue Selbstständigkeit
Die höhere Selbstständigkeit der ‚Ensenso XR‘-Stereokamera im Vergleich zu anderen 3D-Kameras wird damit nicht nur bezüglich der Geschwindigkeit zu einem wichtigen Auswahlkriterium für 3D-Anwendungen. Die reduzierten Leistungsanforderungen an Netzwerk-Peripherie und IPC-Hardware verein-fachen den gesamten Aufbau einer 3D-Applikation und senken die Kosten speziell in Mehrkamerasystemen. Darüber hinaus ermöglicht eine zusätzliche WLAN-Schnittstelle neben der kabel-gebundenen Gigabit-Ethernet-Verbindung den temporären Zugriff auf Daten und Parameter bei Einrichtung und Wartung. Die Projektoreinheit verfügt über ein integriertes Frontlicht, das bei der Kalibrierung der Arbeitsumgebung unterstützt oder die Bildqualität der 2D-Kamerabilder verbessert, wenn das Umgebungslicht nicht ausreicht oder keine externe Beleuchtung verfügbar ist. Insgesamt eröffnet die integrierte Datenverarbeitung der ‚Ensenso XR‘-Serie der 3D-Kameratechnik interessante neue Anwendungsfelder.
Höhere 3D-Auflösung durch verschiebbare Musterprojektion
‚Ensenso‘-Kameras arbeiten nach dem Prinzip des räumlichen Sehens, das dem menschlichen Sehvermögen nachempfunden ist: Dabei betrachten zwei Kameras eine Szene aus unterschiedlichen Positionen. Obwohl der Bild-Inhalt beider Kamerabilder identisch scheint, weisen sie Unterschiede in der Lage der betrachteten Objekte auf. In einem Bildvergleich suchen spezielle Algo-rithmen nach Bildpunkten und visualisieren ihre Verschiebung (Disparity) in einer Karte mit allen gefundenen Unterschieden (Disparity Map). Da Abstand und Betrachtungswinkel der Kameras sowie die Brennweite der Optiken bekannt sind, kann die ‚Ensenso‘-Software diese Abweichungen mittels Triangulationsverfahren in bekannte Längen konvertieren und damit die 3D-Koordination des Objektpunkts für jeden einzelnen Bild-Pixel bestimmen.
Da das klassische Verfahren direkt von Lichtverhältnissen und den Texturen der Objekte in der Szene abhängig ist, haben wenig texturierte beziehungs-weise spiegelnde Oberflächen direkte Auswirkungen auf die Qualität der resultierenden 3D-Punktewolke: Können nur wenige markante Bildpunkte erkannt, verglichen und örtlich bestimmt werden, entstehen unvollständige Tiefeninformationen der Szene.
Dieses klassische Stereo-Vision Verfahren verbessern die Kameras mit speziellen Techniken. Ein lichtstarker Projektor projiziert auch bei schwierigen Lichtverhältnissen mittels einer Pattern-Maske mit zufälligem Punktemuster eine kontrastreiche Textur auf das abzubildende Objekt und ergänzt somit die auf dessen Oberfläche nicht oder nur schwach vorhandenen Strukturen. Mittels der Hilfsstrukturen auf der Objektoberfläche erkennen die Algo-rithmen beim Bildvergleich eine viel höhere Anzahl an Bildpunkten, inklusive ihrer Positionsänderung, woraus eine vollständigere, homogenere Tiefeninformation der Szene resultiert.
Mit einer verschleißarmen Piezo-Mechanik lässt sich die Position der Pattern-Maske im Lichtstrahl zusätzlich linear in sehr kleinen Schritten verschieben. Ergo verschiebt sich die projizierte Textur auf der Objektoberfläche der Szenenobjekte ebenfalls und erzeugt damit zusätzliche, variierende Informationen auf glänzenden, dunklen oder volumenstreuenden Ober-flächen. Bei statischen Szenen können durch diese ‚FlexView‘-Technik mehrere Bildpaare mit unterschiedlichen Texturen aufgenommen werden, die kombiniert in einer höheren Anzahl von Bildpunkten resultieren. Die größere Auflösung ermöglicht die Berechnung detaillierterer Disparitätsbilder und Punktewolken, was sich in einer höheren Robustheit der 3D-Daten auf schwierigen Oberflächen widerspiegelt.
Mit nur drei bis fünf Bildpaaren kann so die X-, Y- und Z-Auflösung bereits verdoppelt werden. Das nochmals verbesserte ‚FlexView2‘ nutzt ein leicht modifiziertes Projektionsmuster. Hierbei wird das zufällige Punktmuster in regelmäßigen Abständen von Streifen mit Grauverläufen durchbrochen. Diese Streifen ermöglichen eine präzisere Subpixel-Interpolation bei der Stereo-zuordnung. Bei Verwendung von acht und mehr Bildpaaren kann die X-, Y- und Z-Auflösung im Vergleich zu ‚FlexView1‘ um abermals das Doppelte gesteigert werden.
















