Blockseminar: Künstliche Neuronale Netze in der Bildverarbeitung WS 2017/2018


Dozent: Axel Schaffland, M.Sc.; Prof. Dr. Oliver Vornberger
Typ: Blockseminar
Termine: Erster Termin im Oktober zu Beginn des Wintersemester 17/18 zur Vorstellung und Vergabe der Themen, sowie zur Bestimmung des Blocktermins. Blocktermin im Dezember, an dem die Themen präsentiert werden.
Anforderungen: Präsentation von ca. 60 Minuten und Paper mit etwa 4000 Worten.
ECTS: 3

Alle Themen sind vergeben. Als passiver Teilnehmer können Sie gerne teilnehmen.

Ziel des Kurses ist es, neuronale Netze und ihre Anwendung im Bereich Computer Vision zu erlernen. Dazu sollen zuerst die Problemstellungen der Computer Vision vorgestellt und ein Grundverständnis von künstlichen neuronalen Netzen entwickelt werden, bevor Lösungen mittels neuronaler Netze für diese Problemstellungen präsentiert werden. Der erste Teil des Blockseminars ist an die Vorlesung Convolutional Neural Networks for Visual Recognition der Stanford University angelehnt.

Während der Blocktermine berichten die aktiven Teilnehmer über ein von ihnen vorbereitetes Thema aus der unten gezeigten Themenliste. Selbstdefinierte Themen sind nach Absprache auch möglich.

Spätestens 14 Tage nach dem Vortragstermin wird eine schriftliche Ausarbeitung erwartet. Vorträge sollten etwa 60 Minuten dauern und mit etwa 4000 Worten je Teilnehmer ausgearbeitet werden. Wird ein Thema also von 2 Personen bearbeitet, hält jede einen Vortrag von 15 Minuten und schreibt ein Paper von 4000 Worten.

Studenten aller Fachbereiche mit Neben- oder Vertiefungsfach Informatik sind als aktive oder passive Teilnehmer willkommen. Aktive Teilnehmer erhalten einen benoteten Seminarschein über 3 ECTS-Credits.

Als aktiver oder passiver Teilnehmer tragen Sie sich bitte in stud.ip für diese Veranstaltung ein.

Als aktiver Teilnehmer schicken Sie bitte zusätzlich eine Email bis zum 26.10.2017 an axschaffland[at]uos[.]de und nennen Sie Ihre Wunschthemen (1., 2., 3. Wahl) aus der Themenliste.

Themenliste:

  1. * Einführung Computer Vision
    Der Vortrag führt in den Bereich Computer Vision ein und gibt Motivation und Anwendungsbeispiele. Es wird eine kurze Übersicht über Kameras, Pixel, Farben und Kernel gegeben. Ferner werden die Themen Segmenation, Template Matching, Erkennung von Strukturen, Objekten sowie Gesichtern sowie lokale Features (SIFT) und ihre Anwendung vorgestellt. Lehrbuch: Computer Vision Algorithms and Applications.

  2. * Bildklassifikation
    Der Vortrag stellt das Thema Image Classification und dessen Probleme (Semantic Gap, Verdeckung, Beleuchtung, Deformation...) vor. Es werden k- nächster Nachbar und lineare Klassifikatoren wie Multiclass SVMs und der Softmax Klassifikator präsentiert. Weiterhin wird auf die loss function und auf Optimierungsstrategien (Gradient Descend) eingegangen. Stanford Lecture 2 und 3 (Jan 6, Jan 11)

  3. * Einführung künstliche neuronale Netze
    Der Vortrag beschäftigt sich zuerst mit Backpropagation und erklärt wie Gradienten mit Hilfe der Kettenregel rückpropagiert werden. Darauf werden Struktur und Architektur künstlicher neuronaler Netze, Neuronen und Aktivierungsfunktionen vorgestellt. Stanford Lecture 4 (Jan 13)

  4. * Künstliche neuronale Netze Teil 2
    Der Vortrag beschäftigt sich mit dem Training neuronaler Netze. Es wird auf die Themen Datenvorverarbeitung, Initialisierung von Gewichten, Normalisierung, Regulierung, loss functions, Aktualisierung der Parameter, Optimierung der Hyperparameter und Dropout eingegangen. Stanford Lecture 5 und 6 (Jan 20, Jan 25)

  5. * Convolutional Neural Networks und Bildklassifikation
    Der Vortrag stellt Convolutional Neural Networks(CNN) vor und vergleicht sie mit normalen Fully-Connected Networks. Es werden die verschieden Ebenen der CNNs (Convolutional Layer, Pooling Layer, Normalization und Fully-Connected Layer), CNN Architekturen und Beispiele (AlexNet, VGGNet...) aus der ImageNet Challenge zur Bildklassifikation vorgestellt. Stanford Lecture 7 (Jan 27)

  6. * Bibliotheken für Artificial Neural Networks
    In diesem Vortrag werden die verschiedenen Frameworks wie TensorFlow, Caffe, Torch... vorgestellt und verglichen. Die praktische Umsetzung eines frei wählbaren Problems aus dem Bereich der Bildverarbeitung mittels einer dieser Bibliotheken soll vorgestellt und live gezeigt werden. Stanford Lecture 11 und 12 (Feb 17, Feb 22)

  7. * Introspektion, Kunst, Bildbearbeitung und NNs
    Der Vortrag zeigt wie sich NN zur Analyse visualisieren lassen und stellt das deepdream-Framework, den Neural Algorithm of Artistic Style und die daraus hervorgegangene Apps vor. Weiterhin wird gezeigt wie NNs zur Bildbearbeitung verwendet werden können (Deep Style Transfer, Deep Image Matting, Superresolution, Image Enhancement)

  8. * NNs für Object Recognition
    Der Vortrag zeigt wie sich NNs für Lokalisation, Objekterkennung und Instance Segmentation nutzen lassen. Beispielarchitekturen können faster R-CNN und YOLO(You Only Look Once) sein. Grundlage können auch die folgenden Paper bilden:

  9. * CNNs für Face Recognition
    Der Vortrag zeigt wie sich CNNs für Gesichtserkennung nutzen lassen. Grundlage können die folgenden Paper bilden:

  10. * CNNs für Content Based Image Retrieval
    Der Vortrag zeigt wie sich CNNs für Content Based Image Retrieval nutzen lassen. Grundlage soll das folgende Paper bilden:

  11. - ANNs für Image Registration
    Der Vortrag zeigt wie CNNs zur Bildregistrierung nutzen lassen. Grundlage können die folgenden Paper bilden:

  12. * CNNs für Medical Computer Vision
    Der Vortrag zeigt wie sich CNNs und Deep Leaning in der medizinischen Bildanalyse anwenden lassen. Grundlage können die folgenden Reviewpaper sein:

  13. * AutoEncoder und Segmentation
    In diesem Vortrag sollen Autoencoder und ihre Anwendung in der Bildverarbeitung (Komprimierung, ...) vorgestellt werden. Ferner soll SegNet als Beispiel für eine Encoder-Decoder Architektur zur Bildsegmentation präsentiert werden.

  14. - GANs und CANs zur Bilderzeugung und für Bild zu Bild Translationen
    Der Vortrag stellt Generative Adversarial und Conditional Adversarial Nets vor und zeigt wie sie sich für Image Generation und Image-to-Image Translation verwenden lassen. Grundlage bilden die folgenden Seiten: