Hot Topics in Computer Vision

In dem Projekt werden die Teilnehmer an ein aktuelles forschungs- oder industrierelevantes Thema herangeführt. Es ist nicht beabsichtigt einen festgelegten Bereich in voller Breite zu untersuchen. Stattdessen werden die Teilnehmer mit der vollen Komplexität eines begrenzten Themas konfrontiert und die Eigeninitiative gefördert. Dies ermöglicht einen Einblick in die Forschungs- und Entwicklungsprojekte des Fachgebiets.

Bitte beachten Sie: Die Unterlagen zu unseren Vorlesungen und Übungen sind nur aus dem Netzwerk der Bauhaus-Universität Weimar erreichbar.

Neural Bauhaus Style Transfer

Neural Bauhaus Style Transfer


Whereas typical deep learning models only have discriminative capabilities -- basically classifying or regressing images or pixels -- generative adversarial networks (GANs) [1] are capable of generating, i.e. producing or synthesizing new images. A whole movement has emerged around the CycleGAN [2,3] approach, which tries to apply the style of one image set (say the paintings of Van Gogh) onto another (say landscape photographs). The applicability of this approach for the transfer of Bauhaus style onto objects or buildings in images or whole images should be explored. At the end of the project a minor exploration on a seemingly different, but well-related problem takes place: In how far is the obtained GAN capable of augmenting a dataset of structural defect data.


Necessary requirements:

- IAOR passed
- good python knowledge (-> examples see below)


Optional skills:

- deep learning
- pytorch

Reference:
[1] Goodfellow, Ian, et al. "Generative adversarial nets." Advances in neural information processing systems. 2014.
[2] Zhu, Jun-Yan, et al. "Unpaired image-to-image translation using cycle-consistent adversarial networks." Proceedings of the IEEE international conference on computer vision. 2017.
[3] https://junyanz.github.io/CycleGAN/


Python Examples:
In case you relatively quickly can answer the following python questions, you're good to go.

1) What does the 'self' refer to?
def compute_difference(self, x, y)...

2) What will be the output?
mat = np.array([[1,2,3],[4,5,6]])
print(mat[1,2])


3) Was the example above coded in python 2 or 3?

4) Does that code run? Why?
mat = np.array([[1,2,3],[4,5,6]])
print(mat[...,0])


5) Does that code run? Why?
mat = np.array([[1,2,3],[4,5,6]])
x,y = 5,3
print(mat[0,x/y])


6) How many elements does arr have?
arr = range(1,11,3)

7) What will be the last element of arr?
arr = [elem**2 for elem in range(5) if elem%2==1]

Deep Earth CAM

Deep Earth CAM: Localization of Land Cover Classes within Multi-Spectral Time-Varying Satellite Imagery [slides]

Information about the global land use can offer key insights for the tasks of sustainable development and supply chain management. Such tasks include, among others, keeping track of deforestation and fresh water supply dynamics.

A part of Copernicus Earth observation programme in partnership with European Space Agency, Sentinel2 L1C satellite imagery offers an abundance of global periodic data in the visible and the near infrared parts of the light spectrum. By analyzing such multi-spectral imagery, it is possible to differentiate between different classes of land use.

Building up on the most recent achievements of Deep Learning, this project sets the practical goal of localizing classes of CORINE Land Cover 2018 dataset in multi-spectral satellite imagery at scale.

In this project, students will be able to:

- Acquire excellent understanding of bleeding-edge Deep Learning architectures (DLa);
- Learn how to build, fine-tune and accelerate DLa;
- Learn how to explain and use internal states of DLa in practice;
- Learn how to conduct and present applied research.

Requirements:

No formal background in machine learning or optimization is necessary!

Understanding of only the following topics will be tested in the beginning of the project:

Basic concepts in image analysis:
- Common image formats
- Color spaces and conversions

Elements of signal processing:
- Convolution & cross-correlation operator

Elements of differential calculus:
- Derivative, partial derivative, gradient
- Criteria of differentiability

Elements of statistics:
- Normal, Binomial and Bernoulli distribution
- Mean, standard deviation & variance
- Mean square error, root mean square error

Basic concepts in C/C++:
- Types, type safety
- Precision and numerical stability
- Memory allocation and alignment
- Pointer, reference

Main supervisor: Anton Frolov
Max. number of students:
3-5 students (max 2 bachelors)
Fitness:
bachelor or master, all relevant study programmes (CS4DM, DE, HCI)