Praktikum “Visual Computing”
Sommersemester 2020

Übersicht

Themengebiet

In diesem Praktikum möchten wir Methoden aus dem maschinellen Lernen, der Mustererkennung (Computer Vision) und/oder der Computer Graphik einmal praktisch ausprobieren. Auch für Teilnehmer/innen, die (nur) die Vorlesung “Modellierung 1” belegt haben, gibt es einen speziellen Themenvorschlag.

Organisatorisches und Ablauf

Das Praktikum soll im September 2020 stattfinden, wobei eine Kollision mit dem gleichnamigen Seminar vermieden werden wird. Da keine Anwesenheitspflicht besteht, kann mit der Arbeit auch bereits im August begonnen werden (die Betreuung muss dann aber gesondert abgesprochen werden).

Konzept des Praktikums

In diesem Praktikum wird eine kleine Projektaufgabe in einem kleinen Team (2-3 Studierende) bearbeitet. Dabei werden Methoden aus der Forschungsliteratur nachimplementiert, die schon etabliert sind (man bentutzt die schon länger) und es werden einige Experimente mit dem Code durchgeführt. Es gibt dann auch die Möglichkeit Varianten und eigenen Verbesserungsideen zu implementieren, um so der Forschung in dem Gebiet etwas näher zu kommen (etwas ganz neues, großes findet man in der Regel dabei noch nicht heraus, aber es ist natürlich nicht ausgeschlossen).

Die Bearbeitungszeit der Aufgaben ist auf zwei Wochen in Vollzeit (8h/Tag, 10 Tage) ausgelegt, und es wird erwartet, dass sich alle Teilnehmenden in diesem Umfang engagieren (wie stark die Lösung dabei wird, hängt vom Team ab; Kriterium für die erfolgreiche Teilnahme ist Engagement und erreichen eines minimalen Ergebnisses).

Die Aufgabe wird in 2-3 “Ausbaustufen” gestellt. Dabei muss die erste erfolgreich gelöst worden sein; die weiteren machen die Aufgabe interessanter. Wie bereits zuvor gesagt, ist das Ziel nicht Punkte oder Features zu sammeln, sondern sich aktiv mit den Ideen auseinanderzusetzen. Einfach nach erreichen der ersten Ausbaustufe aufzuhören reicht nicht für das Bestehen; man muss über die gesamte Projektlaufzeit aktiv weiterarbeiten (selbst wenn am Ende nur die erste Stufe erreicht wird).

Online Praktikum

Aus gegebenem Anlass findet die Veranstaltung “rein virtuell/digital/online” statt (digital: es wäre das erste Informatikpraktikum, das nicht digital wäre; gemeint ist natürlich die Kommunikation, ohne persönliche Treffen 😉). Alle Aktivitäten werden online organisiert. Da die Praktikumsthemen in Zweier- oder Dreiergruppen bearbeitet werden sollen, steht zur Findung der Gruppen ein Teams-Channel “Praktikum Gruppe gesucht” bereit. Hier sollten Sie sich sofort nach dem Lesen dieser Webseite nach Mitstreiter/innen umsehen. Zögern Sie nicht, aktiv auf Kommilitonen/innen zuzugehen. Auch Sucheanfragen (“bin noch alleine”) können gepostet werden. Bestehende Zweiergruppen sind aufgefordert, neue Mitglieder aufzunehmen und falls das nicht mehr möglich ist sollten sich Dreiergruppe zwei Zweiergruppen aufteilen. Nutzen Sie die Gelegenheit, neue Kontakte zu knüpfen.

Sobald die Gruppe etabliert ist, sollte Sie sich ein Thema aussuchen (natürlich können Sie auch gezielt Mitstreiter für ein Thema anfragen und danach Gruppen bilden). Um das Thema verbindlich auszuwählen und die Gruppen zu registrieren, sollten jede Gruppe, die sich für ein Thema entschieden hat, die Auswahl in den Teams-Channel “Themenauswahl Praktikum” posten.

Die Aufgaben können prinzipiell jederzeit bearbeitet werden; während der offiziellen Laufzeit des Praktikums werden aber Sprechstunden (mindestens 3-4mal innerhalb der vorgesehenen zwei Wochen) angeboten, in denen die Aufgabe und die Lösungswege genauer diskutiert werden. Bei einer Bearbeitung außerhalb der offiziellen Bearbeitungszeit geschieht dies nach “best-effort” (also keine Garantien).

Die gesamte Bearbeitungszeit sollte etwa zwei Wochen in Vollzeit entsprechen. Die Zeiteinteilung obliegt natürlich den teilnehmenden Studierenden.

Am Ende des Praktikums müssen die Lösungen allen Teilnehmenden in einer MS-Teams-Videokonferenz vorgestellt werden (Präsentation ca. 5min, kein großer Aufwand verlangt). Außerdem muss ein Praktikumsbericht angefertigt werden, in dem die wesentlichen Ergebnisse formlos dokumentiert werden. Auch hier bestehen, anders als im Seminar, keine formalen Vorgaben (außer Quellen zu nennen und Zitate kenntlich zu machen, siehe Seminar-Seite). Sinnvoll ist, etwa ein zwei-seitiges PDF zu erstellen, mit vielen Ergebnisbildern und etwas erläuterndem Text. Es ist auch zulässig eine Email mit Multimedia-Material (z.B. einem Video) einzureichen.

Praktikumsaufgaben - zur Auswahl

Im Praktikum stehen drei Themen zur Auswahl, entsprechend für die Schwerpunkte Deep Learning, Computer Graphik / Vision, und Modellierung 1.

Im Folgenden wird zunächst die grobe Richtung der Aufgabenstellung dargestellt. Genauere Details werden ergänzt, sobald die Themenauswahl feststeht (für den Fall das nicht alle Themen ausgewählt werden, spart das einiges an Arbeit). Es ist auch möglich, ein eigenes Thema vorzuschlagen - melden Sie sich als Gruppe beim Dozenten.

Modellierung: Rekonstruktion von 3D Modellen aus Punktwolken

Rekonstruktion aus Punktwolken
Abbildung: Rekonstruktion von
Oberflächen aus 3D Punktwolken

Zusammenfassung: Die Aufgabe in diesem Projekt besteht darin, aus einer gegebenen 3D Punktwolke ein Dreiecksnetz zu rekonstruieren. Hierzu benutzen wir künstliche Daten, die bereits als Dreiecksnetze (mit richtig orientierten Normalen) vorliegen, und samplen diese mit zufälligen Punkten ab. Danach benutzen wir implicit moving least-squares (IMLS), um eine implizite Funktion zu rekonstruieren, welche schließlich mit marching cubes in ein Dreiecksnetz verwandelt wird.

Sollte dies alles funktionieren, versuchen wir, die Methode zu verbessern, indem per iterative reweighting scharfe Kanten besser rekonstruiert werden (reduziertes gewicht für Punkte, die nicht auf der Ebene beim IMLS liegen).

Wer Lust hat, kann auch eine globale implizite Funktion mit einer finite-Differenzen-Lösung rekonstruieren. Damit lassen sich auch irregulär abgetastete Punkwolken handhaben; der Implementationsaufwand ist aber deutlich höher.

Hier gibt es weitere Details zu diesem Thema

Deep Learning: Generative Bildmodelle mit Autoencoder / GANs

Generative Bildmodelle für Gesichter
Abbildung: Generative Bildmodelle

Zusammenfassung: Gegeben eine Datenbank von Bildern (zum Beispiel Porträts von berühmten Personen) soll ein generatives Modell erstellt werden, mit dem neue Bilder erzeugt werden können. Dies soll in drei Schritten erfolgen:

Der letzte Schritt wird als optional angesehen (wenn man nicht so weit kommt, macht das nichts; es ist recht schwer, erfolgreich ein GAN zu bauen).

Hier gibt es weitere Details zu diesem Thema

Computer Vision: Bildrekonstruktion mit inhaltsbasierten Priors

Bildrekonstruktion
Abbildung: Bildrekonstruktion

Zusammenfassung: Einfache Bildrekonstruktionsverfahren auf Basis von L2/L1-Norm-regularisierten Gradienten haben wir schon in der Vorlesung Modellierung 1 (und den Übungen dort) behandelt. Nun machen wir die Sache etwas “fancier”: Wir benutzen Selbstähnlichkeiten im Bild zur Rekonstruktion. Das ganze in zwei Schritten:

Auch hier ist der zweite Schritt optional in dem Sinne, das man es versuchen sollte; falls es nicht klappt, ist es aber trotzdem möglich zu bestehen.

Zeitplan

Hier sind die nächste Schritte. Beachten Sie bitte unbedingt die genannten Fristen!

MS-Teams

Die gesamte Kommunikation findet über den MS-Teams-Kanal “Praktikum Visual Computing SoSem 2020” statt. Sie können sich in diesem Kanal mit dem Anmeldecode anmelden, den Sie via Reader-Email erhalten haben. Wichtige Nachrichten werden ggf. via Reader-Mail verschickt, um sicherzustellen, dass alle Teilnehmenden diese erhalten.

Geben Sie den Code in Ihrem MS-Teams Client (Web oder App) ein, um Zugang zu bekommen. Es sind keine weiteren Bestätigungen notwendig.







Datenschutz     Impressum