Summary

The projects fit more or less accurately into the following areas:

Industrial Image Processing, Communication Technology, Fire Protection & Suppression, Nuclear Industry, Software Industry, Artificial Intelligence, Science (general), CAD, CAE, Avionics, Navy, Defence, Automotive, Measuring Instruments, Semiconductors, Embedded Systems

Here is a selection of Clients & Partners. I prefer long term contracts.

Open Source

GitLabGitLab     (Minor contributions to doxygen, kdevelop and boost)

Endress (2020 - )
Build Systems

Streamlining of non-trivial development pipelines for embedded systems.

Keywords: Development Pipelines, CI, Graph Theory
Technologies: Python, CMake (lang.), C++, C#, Visual Studio Extensions/SDK
Tools: Visual Studio, VSCode, Wing IDE, Git, Ninja, Jenkins
OS: Windows
Platforms: PC, ARM
Osram (2019)
Optical Surface Inspection

Algorithm development and implementation for defect detection on PCB's

Keywords: Printed Circuit Boards, Feature Detection, Pattern Matching, Machine Learning
Technologies: Python, C++, C#
Software: OpenCV and other Imaging libraries, PyTorch, LibTorch, dlib
Tools: Brain™, Visual Studio, Wing IDE, Subversion, Git
Hardware: Laser Triangulation Scanners, Cameras (DALSA, Basler, IDS)
OS: Windows, Linux (ML models)
Platforms: PC
Besi (2018)
Nanoscale Image Processing

Algorithm development for semiconductor client

Keywords: Computational Geometry, Morphology (math.), 3D Image Processing, PDEs, Inpainting
Technologies: Python, C++
Software: OpenCV and other imaging libraries, Boost, Qt, pybind11
Tools: Brain™, Qt Creator, Wing IDE, Git, Bitbucket (comm.), Jenkins, Jira, CMake
OS: Linux
Platforms: PC
BMW (2016 - 2018)
3D Visualization (manufacturing)

TBS

Keywords: Raytracing, Photorealistic Rendering, CAD, Product & Manufacturing Information, non-trivial build and deployment environment
Technologies: C++, Python (2 & 3), XML (XPath/Parsing/Encoding), PLMXML, JT
Software: Qt, Boost, OpenInventor, Intel, Collage Embree Raytracer, various support libraries (file format handling and distributed rendering for the most part)
Tools: Visual Studio, Intel C++ Compiler, Subversion, Git, CMake, GCC (mingw) chain, NSIS, Bitbucket (comm.), Jenkins
OS: Windows, Linux (minor)
Platforms: PC
Pointcab (2015)
Laser Scanning Software

Addressing various aspects of point-cloud processing. Design & implementation of several native OpenGL data viewers, embedded in a Qt application. Data model for the visualization of large (exceeding main memory) sets of 3D points. GLSL shader programming.

Keywords: Sparse Voxel Octrees (SVO), Morton Code, Out-of-Core Processing (OoC)
Technologies: C++, Qt, OpenGL, GLSL, Python
Domain API's: OGRE, OpenSceneGraph, OpenCV, glm
Tools: Visual Studio, Qt Creator, NVIDIA Nsight, Git, CMake, Jira/Redmine
OS: Windows
Hardware: PC
Thales (Kiel)
-- Kiel --
(2014)
Naval Communication System

Scripting assistance for significant existing C++/Qt application. Includes scripting of the C++/Qt components themselves, adding script debugging support, a class browser with versatile filter capabilities for identifying 'script-worthy' entities buried deeper in code, and finally some GUI programming based on Qt.

Technologies: C++, Qt, QML, Python
Tools: Eclipse, Qt Creator, Visual Studio, Jira, SVN, Git, CMake, qmake
OS: Windows**, (Linux)
Hardware: PC
Thales (Koblenz)
-- Koblenz --
(2013 - 2014)
Small Arm Trainer

Implementing Video Capturing & Serialization, Data Encryption, Object Recognition and more (conf.)

Technologies: C++ (finally, some real demand for C++11 here - std::thread, lambdas, move semantics), C#, Lua, DirectX 11
Domain API's: CryEngine (comm. license, non-trivial own modifications of the engines source code - that means maneuvering inside ~4.5 MLOC), Boost, Crypto++, ffmpeg, OpenCV
Tools: Visual Studio 2012/2013, TFS, git, CMake, clang
OS: Windows**
Hardware: Company product range, PC
Testo AG (2010 - 2013)
WPF Thermal Video Module

Touching some interesting areas of Infrared Image Processing using native and managed Windows programming; Video acquisition/serialization; Hot-/Cold-Spot detection; Camera hardware control and more

Technologies: C++, C#, WPF, DirectX (Direct3D), .NET Interop (C++/CLI), Multithreading (non-trivial managed/unmanaged/OpenMP conglomerate), COM (Shell Extensions, WIC), OpenGL
Domain API's: ffmpeg, OpenCV, Boost
Tools: Visual Studio 2010, Git, SVN/Subversion, GNU toolchain (mingw), VMware, Understand (SciTools), Sparx Enterprise Architect, CMake, NUnit, Google C++ Testing Framework
OS: Windows**
Hardware: Thermal Imaging Cameras, PC
Sprinkcad (2010)
3D Visualization of Piping Systems
Technologies: DirectX (Direct3D), COM, ATL, C++, C#, XML Schema (XSD), COM/.NET Interop
Tools: Visual Studio 2008, Understand (SciTools), Git, Sparx Enterprise Architect, NetBeans, VMware
OS: Windows**
Euroavionics (2007 - 2009)
Helicopter Navigation System

Notable accomplishments:

  • Porting mid-sized (at that time) application (~100 kLOC) from Linux to Windows (preserving common code base)
  • Integration of Jeppesen avionics databases + visualization (custom-built OpenGL backend)
  • Implementation / Design (C++ / OpenGL / GLSL):
  • Visualization and behavior of advanced military airspace ensembles;
  • Hardware-accelerated real-time intervisibility algorithms
  • Introducing qmake-based build system
Technologies: C++, OpenGL, GPU programming (Cg, GLSL), x86 Assembler (SIMD)
Tools: Visual Studio 2005/2008, Sparx Enterprise Architect, StarTeam, VMware, GNU toolchain
OS: Windows**, Linux
Hardware: Company product range, PC
Role: Senior Developer
Areva (2005 - 2008)
QA & Design System for Nuclear Fuel Assemblies

Complete conception, design and implementation

Technologies: C++, Python, XML, Fortran, UML, Qt, PyQt, SQL, HDF5, Basic Grid Computing (torque),
Virtualization (VMware - mimicking cluster environment for distributed components)
Tools: Visual Studio, Sparx Enterprise Architect, ClearCase, Subversion
OS: Windows**, HP-UX, Linux
Hardware: Opteron Cluster, PC
Trolltech (Company defunct.. see (2004 - 2005)
Qt's PDF Paintengine Backend

Design and implementation

Tyco (Fire & Security) (2004 - 2005)
Proprietary CAD Application

Training (C++, Qt) of customer employees; Software and algorithmic design; Implementation of 3D routines and core algorithms; Technical planning and coordination

Technologies: C++, OpenGL, Qt, Python, SQL
Tools: Visual C++/.NET, Subversion, ArchiCAD
OS: Windows**
Rohde & Schwarz (2001 - 2003)
Remote Control of Radio Receiver Network

Spectrum Monitoring Software; The task involved GUI programming (Qt), Multithreading and Network Programming for distributed applications in heterogeneous environments (mixed TCP/IP / IEC-BUS networks); Driver software with high degree of hardware programming.

Technologies: C++, TCP/IP, IEC-BUS, XML, UML, Boost
Tools: Visual C++, Qt, ClearCase, Rational Rose, Visio
OS: Windows**
Role: Senior Developer
Bruker AXS (2001)
Graph-based Support Library

Design and development of a helper library for a X-ray fluorescence software.

Technologies: C++
Tools: Borland C++, Visual C++
OS: Windows**
DFG (1999 - 2000)
Automatic Image Segmentation

Included nontrivial topics: medieval fonts and mathematical formulas, neural net based OCR. From a programmers point of view: C++ with heavily used template based techniques

Technologies: C++, Qt, gtk
Tools: CVS, Insure++, Visual C++, khoros, gimp, sniff, kdevelop
OS: Linux, Windows**
Role: Project Lead and Senior Development (Conception, Design and Implementation)
Company defunct. (1998 - 1999)
Evaluation of Aerial Images

Wavelet compression, Handling of large data sets, Superresolution algorithms

Technologies: C++, Qt, gtk
Tools: CVS, Insure++, Visual C++, khoros, gimp, sniff
OS: IRIX, Linux, Windows**
Role: Project Lead and Senior Development
Rosenthal (1997 - 1998)
Ceramical Surface Error Detection

The project covered the entire cycle involving image acquisition (linescan cameras) up to the implementation of non-classic (neural network) and classic image processing algorithms on PC/PIC based hardware platforms

Technologies: C++,Qt, gtk
Tools: Visual C++, khoros, gimp, sniff
OS: Unix, Linux, Windows**
Role: Technical Lead and Senior Developer