Projekt 1 Prototypischer Aufbau eines Experimentalsystems zur Schüttgutsortierung

Einleitung:

Bei optischen Sortierern werden Schüttgutteilchen auf Basis visueller Eigenschaften getrennt, indem die Teilchen einer Klasse durch gezieltes Öffnen von Druckluftventilen „ausgeblasen“ werden. Hierzu erforscht das ISAS geeignete Bildverarbeitungs- und Partikeltrackingverfahren. Alternativ zu Druckluftdüsen können auch mechanische Aktoren verwendet werden, welche die Teilchen z. B. durch einen mechanischen Stoß ausschleusen (siehe z. B. diese Tomatensortiermaschine). Zur Evaluation der vom ISAS entwickelten Verfahren soll in diesem Praktikum ein Experimentalsystems bestehend aus mechanischen Aktoren aufgebaut werden, wobei auf einen Prototyp eines Aktors und des Gesamtsystems zurückgegriffen werden kann. Im Rahmen des Praktikums sollen das Design der Aktoren angepasst, diese z. B. mittels 3D-Druck gefertigt und in das Gesamtsystem integriert werden. Des Weiteren soll eine Ansteuerung für die Aktoren entwickelt, diese mit der Bildverarbeitungssoftware des Sortierers verbunden und das Experimentalsystem anschließend erprobt werden.

Aufgaben:

  • Erstellung eines Konzepts zur Integration der Aktoren nach dem Vorbild des gegebenen Prototyps in das Gesamtsystem
  • Überarbeitung (falls nötig) und prototypische Fertigung der Aktoren aus Zukaufteilen und 3D-Druckteilen
  • Integration der gefertigten Aktoren in das Gesamtsystem
  • Implementierung einer Ansteuerung für die Aktoren (z. B. über Arduino) und Verbindung mit dem bestehenden Code zur Schüttgutsortierung
  • Erprobung der Aktoren und des Gesamtsystems, iterative Verbesserung des Experimentalsystems

Voraussetzungen:

  • Gute Kenntnisse in Python
  • Vorkenntnisse in CAD-Software und 3D-Druck sowie im Umgang mit Arduinos vorteilhaft
Praktikum_SS22_Projekt1

Projekt 2 Zeiteffiziente semantische Segmentierung zum Schüttguttracking

Einleitung:

Bei optischen Sortierern werden Schüttgutteilchen auf Basis visueller Eigenschaften getrennt, indem die Teilchen einer Klasse durch gezieltes Öffnen von Druckluftventilen „ausgeblasen“ werden. Hierzu erforscht das ISAS geeignete Bildverarbeitungs- und Partikeltrackingverfahren. Für die Sortierung ist insbesondere die Bildsegmentierung zur Partikelklassifikation und -positionsbestimmung in wenigen Millisekunden essentiell. In diesem Praktikum soll untersucht werden, wie eine Segmentierung in möglichst kurzer Rechenzeit zuverlässig umgesetzt werden kann. Hierzu sollen verschiedene klassische Verfahren wie auch CNNs möglichst rechenzeiteffizient implementiert und verglichen werden. Auf Vorarbeiten kann hierbei zurückgegriffen werden. Insbesondere soll der Einfluss der Wahl der Programmiersprachen und der Einsatz der Verfahren auf GPUs untersucht werden.

Aufgaben:

  • Einarbeitung in klassische Bildverarbeitungsverfahren und CNNs zur simultanen semantischen Segmentierung und Positionsbestimmung
  • Implementierung der Verfahren unter Berücksichtigung der zeitlichen Anforderungen, z. B. auf der GPU, mit Hilfe geeigneter Programmiersprachen und/oder unter Verwendung von Bildverarbeitungsbibliotheken wie OpenCV
  • Training der CNNs mit Hilfe eines vorhandenen gelabelten Schüttgutdatensatzes
  • Erprobung der Verfahren und Vergleich bzgl. Segmentierungsgüte und Rechenzeit, iterative Anpassung und Verbesserung der Verfahren

Voraussetzungen:

  • Gute Kenntnisse in Python
  • Vorkenntnisse in Bildverarbeitung, Tensorflow und C++ vorteilhaft
Praktikum_SS22_Projekt2

Projekt 3 Virtual Reality Simulation eines Roboterarms für haptisches Feedback

Einleitung:

Mit aktuellen VR-Headsets wird bereits ein hohes Maß an Immersion erreicht. Um dies noch weiter zu steigern, bietet sich beispielsweise der Einsatz von gezieltem Kraftfeedback an der Hand der benutzenden Person an. Aus diesem Grund wird am ISAS derzeit an einer raumgroßen, neuartigen Mensch-Maschine-Schnittstelle in Form eines Roboterarms geforscht, welche präzise Kräfte und Momente am Endeffektor einregeln kann. Um die notwendigen Softwarekomponenten risikolos und ohne das reale System testen zu können, wird eine Simulationsumgebung benötigt, welche das dynamische Verhalten des physikalischen Systems sowie Sensoren und Aktoren simuliert. Darüber hinaus soll mittels einer geeigneten Extended-Reality-Anwendung Entwicklern die Möglichkeit gegeben werden, mit einem digitalen Zwilling der echten Anlage zu interagieren.

Aufgaben:

  • Identifikation und Modellierung der relevanten Effekte von Sensoren, Aktoren und Mechanik
  • Implementierung einer echtzeitfähigen Simulation des Roboterarms
  • Modellierung des Benutzerverhaltens
  • Integration in ein bestehendes Extended-Reality-Framework

Voraussetzungen:

  • Grundkenntnisse in Modellbildung und -identifikation
  • Gute C++- und ROS-Kenntnisse
  • Vorkenntnisse zu Virtual oder Augmented Reality Technologien vorteilhaft
Praktikum_SS22_Projekt3

Projekt 4 Audio Quellenlokalisierung mit Mikrofon-Array

Einleitung:

In vergangenen Praktika und Abschlussarbeiten wurde am Institut ein Sound-Lokalisierungssystem aufgebaut. Dieses besteht aus einem beweglichen Lautsprecher und vier Linux-Beagle-Boards, jeweils mit einem Mikrofon-Array. Der Lautsprecher spielt jede Sekunde ein "Klack"-Geräusch ab, welches später in den Mehrkanal-Sounddateien wieder identifiziert werden kann. Aus den Zeitunterschieden der Signalankunftszeiten und der Schallgeschwindigkeit lässt sich die Position des Lautsprechers errechnen. Aktuell können Mehrkanal-Wavedateien aufgenommen und abgespeichert werden; viele „Low-Level-Interna“ sind also bereits erledigt.

Aufgaben:

  • Verifizierung der Lokalisierung anhand HTC Vive Tracking System
  • Einbeziehen der Schall-Einfallsrichtung
  • Automatisierte Synchronisation der lokalen Zeiten untereinander

Voraussetzungen:

  • Grundkenntnisse in Matlab oder Python
Praktikum_SS22_Projekt4

Projekt 5 Sample Reduktion mittels Optimalem Transport

Einleitung:

Als Sample Reduktion bezeichnet man die Approximation einer Menge von Samples durch weniger Samples. Dabei soll möglichst wenig Information verloren gehen und die Zielmenge möglichst optimal angenähert werden. Solche Verfahren können zum Beispiel in sample-basierten Filtern, wie dem Partikelfilter, eingesetzt werden, um die Anzahl an Samples klein zu halten und die berechneten Dichten trotzdem gut anzunähern. Meist werden dazu randomisierte Algorithmen eingesetzt. Eine Möglichkeit dies deterministisch zu optimieren ist die Modellierung als location-allocation-Problem. Dieses hat seinen Ursprung in der Unternehmensplanung, um bei gegebenen Bedarf optimale Standorte für Lagerhallen oder Fabriken zu finden. Dies ist für große Problem-Instanzen nur mit hohem Rechenaufwand exakt zu lösen, weshalb verschiedene Algorithmen und Heuristiken entwickelt wurden um schnell eine möglichst gute Lösung zu finden. Einige dieser Verfahren sollen nun für die Sample Reduktion soweit nötig adaptiert und zur Evaluation implementiert werden.

Aufgaben:

  • Literaturrecherche/Einarbeitung zu Lösungsverfahren für location-allocation Probleme
  • Implementation eines oder mehrerer Verfahren
  • Vergleich der Verfahren mit bestehendem Ansatz
  • Optional: Laufzeitoptimierung der implementierten Verfahren

Voraussetzungen:

  • Grundkenntnisse in Linearer Optimierung
  • Programmiererfahrung in C++, Python oder Julia 
Praktikum_SS22_Projekt5

Projekt 6 Hand Gesture Recognition for Augmented Reality Applications (wird auf Englisch gehalten!)

  • Ansprechperson:

Einleitung:

Augmented Reality applications are becoming more sophisticated as HMD capabilities increase. An important field of research is how to use hand tracking to improve interactions with virtual interfaces. The most common approach currently is to interpret hands simply as cursors, with fingers for clicking buttons. However, depending on the context, it can be much faster and intuitive to just do a hand gesture. For example, a dialog can be spawned by opening a hand, be accepted with an OK sign, or just get swatted away if unneeded. These interactions are not only context sensitive, but must also take into account that different users will do them in different ways, while also having varying hand sizes, reaction times, and so on. This raises the need for a catalog of hand gestures associated to different contexts that can be used by a wide range of users.

Aufgaben:

  • Read and process ROS messages from a Microsoft Hololens 2
  • Create a framework to recognize different hand gestures from 3D hand joint positions
  • Use cues from the scene (where we are looking at) to determine the possible gestures
  • Evaluate the framework with different users

Voraussetzungen:

  • Programming skills in C++, Python or C#
  • Basic knowledge in machine learning
  • Basic knowledge of (or eagerness to learn) how to process ROS data
Praktikum_SS22_Projekt6 transforminteractive.com
Source: transforminteractive.com