IAM

Check out our latest research on weakly-supervised 3D shape completion.

TAG»COMPUTER VISION«

ARTICLE

Denoising Variational Auto-Encoder in Torch

Based on the Torch implementation of a vanilla variational auto-encoder in a previous article, this article discusses an implementation of a denoising variational auto-encoder. While the theory of denoising variational auto-encoders is more involved, an implementation merely requires a suitable noise model.

More ...

ARTICLE

Bernoulli Variational Auto-Encoder in Torch

After formally introducing the concept of categorical variational auto-encoders in a previous article, this article presents a practical Torch implementation of variational auto-encoders with Bernoulli latent variables.

More ...

ARTICLE

Variational Auto-Encoder in Torch

After introducing the mathematics of variational auto-encoders in a previous article, this article presents an implementation in LUA using Torch. The main challenge when implementing variational auto-encoders are the Kullback-Leibler divergence as well as the reparameterization sampler. Here, both are implemented as separate nn modules.

More ...

ARTICLE

Denoising Variational Auto-Encoders

A variational auto-encoder trained on corrupted (that is, noisy) examples is called denoising variational auto-encoder. While easily implemented, the underlying mathematical framework changes significantly. As the second article in my series on variational auto-encoders, this article discusses the mathematical background of denoising variational auto-encoders.

More ...

ARTICLE

Categorical Variational Auto-Encoders and the Gumbel Trick

In the third article of my series on variational auto-encoders, I want to discuss categorical variational auto-encoders. This variant allows to learn a latent space of discrete (e.g. categorical or Bernoulli) latent variables. Compared to regular variational auto-encoders, the main challenge lies in deriving a working reparameterization trick for discrete latent variables — the so-called Gumbel trick.

More ...

ARTICLE

The Mathematics of Variational Auto-Encoders

As part of my master thesis, I made heavy use of variational auto-encoders in order to learn latent spaces of shapes — to later perform shape completion. Overall, I invested a big portion of my time in understanding and implementing different variants of variational auto-encoders. This article, a first in a small series, will deal with the mathematics behind variational auto-encoders. The article covers variational inference in general, the concrete case of variational auto-encoder as well as practical considerations.

More ...

ARTICLE

PointNet Auto-Encoder in Torch

Recently proposed neural network architectures, including PointNets and PointSetGeneration networks, allow deep learning on unordered point clouds. In this article, I present a Torch implementation of a PointNet auto-encoder — a network allowing to reconstruct point clouds through a lower-dimensional bottleneck. As loss during training, I implemented a symmetric Chamfer distance in C/CUDA and provide the code on GitHUb.

More ...

ARTICLE

Discussion and Survey of Adversarial Examples and Robustness in Deep Learning

Adversarial examples are test images which have been perturbed slightly to cause misclassification. As these adversarial examples are usually unproblematic for us humans, but are able to easily fool deep neural networks, their discovery has sparked quite some interest in the deep learning and privacy/security communities. In this article, I want to provide a rough overview of the topic including a brief survey of relevant literature and some ideas on future research directions.

More ...

ARTICLE

A C++ Implementation of Mesh-to-Mesh Distance

In 3D vision, a common problem involves the comparison of meshes. In 3D reconstruction or surface reconstruction, triangular meshes are usually compared considering accuracy and completeness — the distance from the reconstruction to the reference and vice-versa. In this article, I want to present an efficient C++ tool for computing accuracy and completeness considering both references meshes as well as reference point clouds.

More ...

ARTICLE

Mesh Voxelization into Occupancy Grids and Signed Distance Functions

Triangular meshes are commonly used to represent various shapes in computer graphics and computer vision. However, for various deep learning techniques, triangular meshes are not well suited. Therefore, meshes are commonly voxelized into occupancy grids or signed distance functions. This article presents a C++ tool allowing efficient voxelization of (watertight) meshes.

More ...