OpenCV Einbettung für Cassandra

Startete:2012
Ansprechpartner:Ralf Reulke, Kristian Manthey, Dominik Rueß
Mitarbeiter:Kristian Manthey, Dominik Rueß, Silvio Tristram, Christian Kaptur, Sourabh Bodas, Konstantinos Amplianitis, Kevin Buchwinkler, Malte Müller-Rowold

Die Firma external link Hella Aglaia Mobile Vision GmbH entwickelt und vertreibt intelligente, visuelle Sensorsysteme. Ein Werkzeug, welches zur schnellen Entwicklung von (prototypischen) Bildverarbeitungsalgorithmen dazu hausintern verwendet wird, ist Cassandra. Cassandra ist in C++ implementiert und auf den Automotive-Bereich spezialisiert. Cassandra wurde in der Version 11 umgestaltet: Multi-Prozessor-Systeme werden deutlich besser unterstützt, die Synchronisierung von Datenquellen wurde verbessert, die neue, durchgängige Parallelisierung der Verarbeitung nutzt die vorhandenen Hardware-Ressourcen jetzt optimal aus und viele weitere, neue Features kamen hinzu. In der Zukunft soll Cassandra in einer Community-Version veröffentlicht werden. Mit dieser können Studenten und Mitarbeiter aus akademischen Berufszweigen Bildverarbeitungsalgorithmen entwickeln und testen.
Aus einem Baukasten algorithmischer Lösungen können vorhandener Komponenten (sog. Stationen) entnommen und kombiniert werden, wodurch viele Standard-Bildverarbeitungsprobleme ohne jegliche Programmierkenntnisse erlernt und ausgetestet werden können. Der Baukasten ist beliebig erweiterbar um Eingen- und Fremdanteile. Für die Implementierung benutzerspezifischer Stationen stellt das Entwicklungsframework eine umfangreiche C++ API bereit.

Mit der frei verfügbaren Bibliothek external link OpenCV existiert eine sehr umfassende Computer Vision Plattform. Diese Plattform wird in die Version 11 von Cassandra eingebettet. Unsere Aufgabe bestand darin, die prozeduralen Bibliotheksfunktionen von OpenCV zu logischen Anwendungsfällen in Form der Cassandra Stationen zu aggregieren, die dem Benutzer standardisierten Schnittstellen, eine interaktive Bedienung sowie die Parametrierung bei Laufzeit bieten. Hierzu entwickelten wir teilweise neue Konzepte der Integration.
Das OpenCV-Modul core wurde bereits von Hella Aglaia nach Cassandra portiert. Wir fügten die Module calib3d, features2d, video analysis und object detection hinzu. Mit den Erfahrungen unserer Arbeitsgruppe werden außerdem sinnvolle Anwendungsszenarien und Benutzer-Anleitungen erstellt.

Mit dieser Eweiterung wird Cassandra als Bildverarbeitungsentwicklungstool für die Allgemeinheit interessant, nicht nur für den Automotive-Bereich.
Die Software kann über folgenden external link link downloaden.

First input image Second input image

Cassandra Stations

Matches result
Abbildung 1: Ergebnis eines Cassandra Graphen. In der obersten Reihe sind die Eingangsbilder dargestellt. Darunter ein entsprechender Cassandra-Graph, der signifikante Punkte berechnet, zwischen zwei Bildern zuordnet und darstellt. In der letzten Reihe ist das Ergebnis zu sehen.
Um Bilder zu vergrößern, bitte anklicken.

© 2017 - Computer Vision, Institut für Informatik, HU Berlin - - Impressum