Projects

Learning JuliaLang: Some example implementations in Julia

March 2020 • julialang, examples, learning

Code for some small projects that I implement with the programming language Julia in order to learn that language. It’s an ongoing effort.

Read on…

Synthetic music video: kiriloff – Fortschritt

Project illustration

July 2018 • music, video, visualization, synthesis, python

A synthesized music video of the piece Fortschritt from kiriloff programmed in Python. It uses aubio for onset detection in the audio signal. Input video clips are alienated by drawing Voronoi diagrams derived from a sample of feature points from a binarized frame of the input clip.

Read on…

webwatch.py

February 2017 • python, scraping, notification

A minimal and easy to use website monitoring script. Get notified when certain parts of a website have been changed.

Read on…

Circular decimal places / integer sequences visualization with d3.js

Project illustration

October 2016 • javascript, d3, visualization

A visualization tool that animates integer sequences, like those from OEIS. Some of them are quite beautiful. I realized this project in order to learn the excellent visualization library d3.js. It uses the older d3.js v3.x API.

Read on…

Python and Java Implementations for Linde-Buzo-Gray / Generalized Lloyd Algorithm

Project illustration

January 2016 • clustering, python, java

Implementation of the Generalized-Lloyd or Linde-Buzo-Gray Algorithm for vector quantization in Python and Java.

Read on…

Small Facebook Discussion Analysis Toolkit

December 2015 • facebook, scraping, language processing, python, php

The Small Facebook Discussion Analysis Toolkit is a collection of tools to (semi-)automatically collect and analyze data from online discussions on Facebook groups and pages. This means that posts and comments (including their hierarchical structure and some metadata) are collected using either the Facebook API for public groups and pages or by parsing Facebook’s HTML files for closed groups and pages. The data is saved in a JSON format and can be used for different analyses. By now, only counting nouns in all the posts and comments in German language is supported.

Read on…

ZwoSchlagzeilen Twitter-Bot

Project illustration

October 2015 • python, twitter, language processing

@ZwoSchlagzeilen is a Twitter-Bot that mixes recent headlines of leading German newspapers and posts one of them each hour. Sometimes it produces funny results. It is basically the German variant for the American archetype @TwoHeadlines.

Read on…

ogles_gpgpu: GPGPU for mobile devices and embedded systems using OpenGL ES 2.0

Project illustration

January 2015 • gpgpu, imageproc, mobile development, embedded systems, ios, android, opengl

Based on the results of my master’s thesis, I created a small library for GPGPU on mobile and embedded systems, such as Android and iOS. It enables fast, GPU-powered image processing by using OpenGL ES 2.0 shaders.

Read on…

ocv_ar: OpenCV based Augmented Reality library

Project illustration

August 2014 • augmented reality, opencv, imageproc, mobile development, ios, cocos2d, opengl

This library implements a simple but powerful Augmented Reality solution based on OpenCV. It is derived from the explainations from the book Mastering OpenCV with Practical Computer Vision Projects (Baggio et al., 2012) and borrows some ideas and code from ArUco. Based on ocv_ar is also a framework for lightweight mobile Augmented Reality with Cocos2Docv_ar-cocos2d. I developed both things as part of my work at the INKA research group.

Read on…

Master’s thesis: Parallel Computing for Digital Signal Processing on Mobile Device GPUs

May 2014 • gpgpu, imageproc, mobile development, android, opengl, opencl, renderscript

In my master’s thesis I analyzed the potentials of general purpose computing on graphics processing units (GPGPU) on mobile devices such as smartphones or tablets. The question was, if and how the GPU on such devices can be used to speed up certain algorithms especially in the fields of image processing. GPU computing technologies such as OpenCL, OpenGL shaders, and Android RenderScript are assessed in the thesis.

Read on…

Peer-To-Peer Multiplayer Game Bomberman via WebRTC

August 2013 • webrtc, javascript

An HTML5/Javascript implementation of the popular game Bomberman that utilizes WebRTC peer-to-peer communication features for real-time multiplayer-gaming without an intermediate server. It can be understood as a showcase for the possibilities of real-time communication via RTCDataChannels.

Read on…

Tutorial on AVR-C programming with ATtiny MCUs

Project illustration

June 2013 • avr-c, attiny, mcu, arduino

A tutorial about how to move from programming Arduinos to ATtiny MCUs. Includes instructions for writing AVR-C code and setting up the programmer device.

Read on…

Orbit.io iPad Synthesizer

Project illustration

June 2012 • ios, audio, cocos2d, c++

For our “Master Project” we should plan, design and create a software project over the time-span of two semesters. We choose to create a software synthesizer app for the iPad, which enables the user to easily create loop-based musical patterns and melodies.

Read on…

Building a Portable Low Cost Tangible User Interface Based on a Tablet Computer

Project illustration

April 2012 • ios, computervision, imageproc

For our second “Indepenent Coursework”, I have written a paper about how to build a “Portable Low Cost Tangible User Interface Based on a Tablet Computer.” It evolved from the idea, that tablet computers can be used to create a table-top Tangible User Interface (TUI) providing an user interface with physical objects to interact with.

Read on…

Real-time audio synthesis on iOS devices

April 2011 • ios, audio, synth

I have written a paper about real-time “audio synthesis possibilities on mobile devices using the Apple iPhone and iPad.” for my first “Independent Coursework” in my master’s course. In the paper, a set of software libraries for real-time audio synthesis on iOS devices are analyzed and compared.

Read on…

Processing Prototypes for Visualization course

April 2011 • processing, visualization

Some small prototypes that were created during the course master’s course Visualization taught by Prof. Klaus Jung. The programs were written with Processing.

Read on…

PmWiki software addons (recipies)

June 2010 • pmwiki, php, web

Small extensions that I developed for the open-source wiki-software PmWiki.

Read on…

Synesthesia software synthesizer

Project illustration

May 2010 • gui, audio, synth, java, supercollider, osc

This program is a prototype of a novell graphical user interface for a software synthesizer.

Read on…

Loopuino – A simple loop station with Arduino and SuperCollider

Project illustration

February 2010 • arduino, audio, supercollider

This project consisting of two Arduino controllers and some SuperCollider code forms a live and wire-less controllable loop station.

Read on…

Traxi Game

Project illustration

October 2008 • c++, game, 3d, opengl, network, tcp

A 3D skill game that was developed as student project for the bachelor’s course in Computer graphics.

Read on…