Projekte im Wintersemester 2014/15
Table of contents
Extraktion von Merkmalen aus Bildern mit Hilfe von Restricted Boltzmann Machines
Prof. Kai Barthel, Nico Hezel
Künstliche Neuronale Netze und insbesondere Restricted Boltzmann Machines (RBMs) erfreuen sich immer größerer Beliebtheit bei der Analyse von digitalen Bildern. Der Vorteil von RBMs ist ihr einfacher Aufbau und ihre Fähigkeit mit ungelabelten Daten trainiert werden zu können. Für RBMs ist es nicht wichtig zu wissen, was das Trainings- bzw. Klassifikationsziel ist. Das einzige was RBM’s während eines Trainings versuchen, ist eine gute Repräsentation bzw. Reproduktion der Eingangsdaten zu erzeugen.
Forscher versuchen schon seit Jahren die essentiellen Informationen von Bildern mit mathematischen Vorschriften zu beschreiben. Die entstandenen Ansätze sind meist sehr spezifisch und häufig nur für bestimmte Problemstellungen einsetzbar. Außerdem erzeugen die meisten Verfahren große Mengen unnötiger Daten.
Inhalt dieses Projektes ist es, die Merkmale, die von den RBMs erzeugt werden, zu analysieren, um eventuelle Parallelen zu existierenden mathematischen Modellen zu finden oder neue aufzuzeigen. Dabei ist die Visualisierung der Ergebnisse genauso wichtig wie das Anwenden der neuesten Algorithmen im Bereich der Restricted Boltzmann Machines (convolutional RBM, pooling, dropout, parallel tempering). Das Ziel dieses Projekts besteht darin, den inhaltlichen Erkennungsprozess für Bilder zu optimieren bzw. kompaktere Beschreibungsformen für Bilder zu gewinnen.
Einführende Informationen sind u.a. hier zu finden:
- The Next Generation of Neural Networks http://www.youtube.com/watch?v=AyzOUbkUf3M
- Large image databases and small codes for object recognition http://www.youtube.com/watch?v=bakKQFEFLCA
- Bay Area Vision Meeting: Unsupervised Feature Learning and Deep Learning http://www.youtube.com/watch?v=ZmNOAtZIgIk
Morphing reloaded
Prof. Tobias Lenz
Anfang der 90ern war der Morph-Effekt sehr populär in der Computergrafik. Weltweite Bekanntheit erreichte er durch das Musikvideo "Black or White" von Michael Jackson. Dabei werden - mit aus heutiger Sicht primitiven Mitteln - zwei Bilder nicht nur farblich ineinander überführt (blending), sondern auch geometrisch aneinander angepasst (warping). Ursprünglich war dieser zweite Schritt mit viel manuellem Aufwand verbunden und wurde daher vorwiegend für Standbilder von Gesichtern genutzt, in denen markante Punkte einfach zu identifizieren waren (Nasenspitze, Augen, Mundwinkel, ...). Heute, 20 Jahre später, ist die Technik deutlich weiter und es gilt auszuprobieren, wie gut sich dieser klassische Effekt auf in Echtzeit bewegte 3D-Skelettdaten einer Kinect übertragen lässt.
Das Projekt beinhaltet die Auseinandersetzung mit Technik (Kinect ansteuern), einfache Geometrie (Gelenkpunkte "warpen"), Bildanalyse (Abgrenzung der Person z.B. aus Tiefenbild erkennen) und Elemente der Echtzeit-Computergrafik (Ergebnisdarstellung).
Next Generation E-Commerce
Hajo Eichler
Ein Traum der endlich wahr werden soll! Immer niedrige Latenzen, egal ob bei 10 oder 10.000 Besuchern. Doch allein durch riesige Serverfarmen lässt sich dieses Ziel nicht erreichen, von den Kosten ganz abgesehen. Es liegt also im Aufgabenbereich der Software, die vorgegebenen Ressourcen effizient auszunutzen und dabei nicht auszufallen.
In diesem Softwareprojekt sollen verschiedene Ansätze untersucht werden um moderne E-Commerce Szenarien abzubilden. Dabei kann es sich um den selbstbestellenden Kühlschrank, die Einbindung von Google Glass oder die Nutzung von iBeacons handeln, die den Kunden ein einzigartiges Shoppingerlebnis bieten. Eine hohe Skalierbarkeit wie auch eine erweiterbare Architektur soll dabei im Vordegrund stehen.
Folgende Herangehensweisen bezüglich Softwaredesign sollen betrachtet werden:
- Parallele Verarbeitung
- Event getriebene Programmierung
- Caching
- Streaming von Daten
Die dabei verarbeitenden Daten können verscheidene Strukturen aufweisen, z.B. komplexe Kategoriebäume oder Massen von Produktdaten. Die Applikation soll in ihren UI Eigenschaften so implementiert sein, dass sie sowohl im Desktop Browser als auch auf den unterschiedlichsten mobilen Endgeräten zum Einsatz kommen kann.
Eine Umsetzung kann in nodeJS oder Java 8 bzw. Scala mittels des Play! Frameworks erfolgen. Das Projekt soll als Open Source Software über GitHub der Allgemeinheit zur Verfügung gestellt werden.
Game Programming in Zusammenarbeit mit dem Studiengang Game Design
Prof. David Strippgen
Die Studierenden des Game Design Studiengangs entwerfen Spiele-Ideen und Spiele-Welten, die in einer Projektphase zum Leben erweckt werden sollen. Dazu ist die praktische Mitarbeit von IMI-Studierenden nahezu unumgänglich (und sehr gefragt). Sie werden die technische Realisierbarkeit der Ideen kritisch begleiten und informatisch umsetzen. Diese Aufgabe ist typisch für eine mögliche Position als Spiele-Entwickler im Informatikbereich der aktuellen Spieleindustrie.
Die vorhandenen Projekten werden größtenteils mit der Game Engine "Unity" umgesetzt. Eine Kenntnis der Engines wird nicht vorausgesetzt, eine zügige und engagierte Einarbeitung aber schon. Die Projektteilnehmer werden in jeweils eine Development-Unit für die beiden Engines verteilt (eigene Präferenzen werden dabei berücksichtigt). Die beiden Teams sind eine Mixtur aus Bachelor und Master-Studierenden.
Es wird viele Projekte geben, die separat vorgestellt werden, dann lernen sich die IMIs und die GDs kennen und formen Teams. Genauere Informationen kommen später.