Praxis der Softwareentwicklung (SS 2018)

In Praxis der Softwareentwicklung wird ein vollständiges Softwareprojekt im Team umgesetzt.

Weitere Informationen zu Praxis der Softwareentwicklung gibt es auf der Homepage der Gesamtveranstaltung.

Projekte

Framework zum Test von Bewegungsmodellen in der Schüttgutsortierung

Schematische Darstellung einer Bandsortieranlage mit installierter Flächenkamera.

Betreuer: Florian Pfaff, Benjamin Noack, Georg Maier, Robin Gruna

Einordnung und Kontext

Bei sogenannten optischen Bandsortieranlagen werden Teilchen auf Basis visueller Eigenschaften klassifiziert. Bei der Anlage, so wie sie vom Fraunhofer IOSB lizenziert wird, wird durch richtiges Timing und gezieltes Aktivieren von Druckluftdüsen eine Klasse der Teilchen „ausgeblasen“, um so die beiden Klassen voneinander zu trennen. Aufgrund von Verzögerungen ist es aber nicht möglich, die Klassifikation und das Ausblasen gleichzeitig zu vollziehen. Deshalb muss die Position der Teilchen nach ihrer Klassifikation prädiziert (vorhergesagt) werden. Hierfür haben wir im Rahmen eines Forschungsprojekts einen Bandsortierer mit einer Flächenkamera ausgestattet. Obwohl Teilchen derselben Klasse visuell kaum zu unterscheiden sind, ist es uns mit speziellen Algorithmen gelungen, zuzuordnen, welche Messung zu welchem Teilchen gehört. Somit kann der Verlauf aller Teilchen nun über die Zeit hinweg verfolgt werden.

Da nun mehrere Beobachtungen eines jeden Teilchens vorliegen, ist es möglich, besser vorherzusagen, wie jedes einzelne Teilchen sich weiter fortbewegen wird. Jedoch hat man für die Vorhersage der künftigen Bewegung eine Auswahl aus vielen Bewegungsmodellen, denen unterschiedliche Annahmen, wie beispielsweise eine konstante Geschwindigkeit (constant velocity), zugrunde liegen. Aufgrund der Vielfalt von Bewegungsmodellen, soll nun ein Tool geschaffen werden, mit dem unterschiedliche echtzeitfähige Modelle untersucht werden können.

Aufgabenstellung

Es soll ein Framework entworfen werden, anhand dessen die Bewegungen der Teilchen unter Verwendung unterschiedlicher Bewegungsmodelle visualisiert und beurteilt werden können. Im Vordergrund stehen soll dabei die Modularität und Erweiterbarkeit. Während im Projekt erste vorgegebene Bewegungsmodelle umgesetzt werden sollen, wird angestrebt, dass auch neue Modelle und Abwandlungen davon einfach hinzugefügt werden können. Im Zuge der Modularität soll auch sichergestellt werden, dass die erstellten Modelle einfach in die bereits verwendete Tracking-Algorithmik integriert werden können.

Unsere Datenbestände umfassen unter anderem Positionsdaten, die anhand einer physikalischen Simulation mittels der diskreten Elemente Methode generiert wurden. Nehmen wir vereinfacht an, dass diese Daten perfekt sind (also eine sogenannte ground truth bilden), so können wir die Bewegung der Teilchen basierend auf den einfachen Modellen mit der ground truth abgleichen. Das Framework soll zum einen erlauben, die tatsächliche Bahn und die vorhergesagte Bahn anzuzeigen. Zum anderen sollen auch die Abweichung berechnet und einem geeigneten Dateiformat ausgegeben werden.

Als Programmiersprache ist C++ vorgegeben. Zur Erstellung der grafischen Benutzerschnittstelle wird die Nutzung von Qt empfohlen. Erfahrung mit Eigen oder vergleichbaren Libraries ist von Vorteil.

Was wird vom Lehrstuhl ISAS und dem Frauhofer IOSB zur Verfügung gestellt?

  • Poolraum mit Rechnern mit ssh-Zugriff
  • GIT-Server und build server (Jenkins)
  • Fachlich kompetente Betreuung


Implementierung einer Datenbank für ein Augmented Reality Mitarbeiter-Assistenzsystem

Betreuer: Christian Tesch

Aufgabenstellung

Seit 2 Jahren entwickeln wir am Lehrstuhl für Intelligente Sensor-Aktor-Systeme in Kooperation mit der Firma PFW GmbH ein Augmented Reality Mitarbeiter-Assistenzsystem zur Unterstützung der industriellen Fertigung von Flugzeugtanks. Das aktuelle System ist bereits in der Lage, einem Mitarbeiter, nach Einscannen der Umgebung, beim Einräumen von neuen Bauteilen in ein Lagersystem, über die Navigation der benötigten Bauteile zum Arbeitsplatz, bis hin zur geführten Montage der Bauteile am realen Tank zu assistieren. Dazu ist momentan ein erstes simples Datenbanksystem implementiert, welches den Fertigungszustand der Tanks aufnimmt und über eine Weboberfläche darstellt. In dem Projekt "Implementierung einer Datenbank für ein Augmented Reality Mitarbeiter-Assistenzsystem" geht es darum, das aktuelle System um ein echtes Datenbanksystem zu erweitern. Dabei sollen zuerst die Schnittstellen Richtung PFW definiert werden (welche Informationen werden, wann, wo, in welcher Form benötigt,...), auf denen aufbauend dann ein Datenbanksystem umgesetzt werden soll. Dieses soll neben den Tanks auch Informationen über das Lagersystem enthalten und in der Lage sein, mehrere Klientensysteme, welche per HoloLens über WLAN eingebunden sind, synchron zu halten.

Als Programmiersprache für das Backend ist C# vorgegeben. Die Auswahl des Datenbanksystems und des Web-Frontends bleibt dem Team überlassen.

Was wird vom Lehrstuhl ISAS zur Verfügung gestellt?

  • Poolraum mit Rechnern mit ssh-Zugriff
  • GIT-Server und build server (Jenkins)
  • Fachlich kompetente Betreuung


Verbindung von Virtual Shared Spaces über weite Entfernungen

Betreuer: Christian Tesch

Aufgabenstellung

Aktuell arbeiten wir gemeinsam mit der Karlsruher Firma PTV an einem Projekt, in dem verschiedene Virtual-Reality(VR)-Klienten (VR Fußgäner, VR Fahrsimulator, ...) in einer gemeinsamen virtuellen Umgebung verbunden werden sollen, um diese zusammen in verschiedene Simulationstools nutzen zu können. Die Einbindung in die Simulationsumgebungen wurde lokal bereits mit einem einzelnen Fußgänger sowie einem Fahrsimulator umgesetzt. Das Ziel dieses Projekts ist es, das System so auszubauen, dass sich mehrere Klienten in einer Umgebung aufhalten können. Diese sollen untereinander sowie mit der Simulation interagieren können. Zuerst soll dies lokal gelöst werden, wobei als zweiter Schritt die Verknüpfung unseres VR-Labors mit einem entfernten VR-Labor bei PTV durchgeführt werden soll.

Als Programmiersprache ist C# vorgegeben. Die Visualisierung erfolgt über die Unity Engine.

Was wird vom Lehrstuhl ISAS zur Verfügung gestellt?

  • Poolraum mit Rechnern mit ssh-Zugriff
  • GIT-Server und build server (Jenkins)
  • Fachlich kompetente Betreuung


Framework for Multi-dimensional Feature Tracking

Betreuer: Ajit Basarur

Background and Idea

Feature tracking is an image processing technique, in which the position of a known feature or template is identified and tracked across a set of frames. The position of template is calculated via normalized cross-correlation, which is mathematically an expensive operation. In order to reduce the computational cost, a given template is approximated before cross-correlation. These approximation methods are not only applied to image but also to multi-dimensional pattern identification problem.

At ISAS, we are working on various template approximation methods. To understand these techniques better, we want to visualize the process of approximation for multi-dimensional templates. For a real-case scenario, up to 3-dimensional template can be considered for visualization. A visual tool aids us in the quick selection of a right approximation technique for a given template. Therefore the idea is to implement a scalable software framework tool for the visualisation of multi-dimensional template approximation.

Objective and Tasks

The visualization tool should support the following:

  • Visualize the process of template approximation (all types of approximations).
  • By design, it should support N-dimensional template approximation.
  • Calculate and summarize the computation cost achieved for each of the approximation.
  • Software framework should consider an optional interface to capture signal and template from external world.

Tools and Process

For this project, students should follow the standard process of software development such as requirements specifications, design, implementation and testing.

Qt/C++ is well-suited for this kind of project. A scalable software framework can be designed, implemented and tested using Qt.

Student Requirements

Student should have solid background on object-oriented programming concepts. Students have an advantage if they have experience using Qt tool.

All project related communication is done only in English.

Ansprechpartner

Ansprechpartner zu Praxis der Softwareentwicklung am ISAS ist Jana Mayer.


Meine Werkzeuge