Denis Bose

Software-Entwickler

Goslar, Deutschland
Erfahrungen
Jan. 2022 - Nov. 2022
11 Monaten
Goslar, Deutschland

Software-Entwickler

Heidelberger Druckmaschinen

  • Project: Druckinspektion
  • Implementierung von Funktionen und Optimierungen für einen Algorithmus zur Erkennung von Defekten auf den bedruckten Druckstoffen einer Offsetdruck-Maschine
  • Implementierung eines Verfahrens zu Erkennung von Schmier-Effekten
  • Integration der Algorithmen in die vorhandene Inspektionssoftware
  • Kenntnisse: C++, OpenCV
Sept. 2021 - Dez. 2021
4 Monaten
Berlin, Deutschland

Software-Entwickler

Strabag ISS GmbH

  • Project: Blind Detection
  • Portierung und Erweiterung eines Algorithmus zur Detektion einer abgedeckten Überwachungskamera auf ein aktuelles SDK
  • Implementierung neuer Funktionen für eine Video Management System
  • Kenntnisse: C++, Linux, Docker, C#
  • Eingesetzte Produkte: Windows
Mai 2021 - Okt. 2021
6 Monaten
Darmstadt, Deutschland

Software-Architekt

Carl Zeiss SMT GmbH

  • Project: Particle Detection
  • Entwicklung eines Prototyps um Defekte und Partikel auf einer Photomaske zu identifizieren. Die Bilder der Photomaske werden mit einem Elektronenrastermikroskop aufgenommen.
  • Kenntnisse: C#, C++, OpenCV
  • Eingesetzte Produkte: Git, Azure, Windows
Jan. 2021 - Mai 2021
5 Monaten
Gaggenau, Deutschland

Software-Entwickler

Precitec GmbH & Co. KG

  • Project: Image Stitching
  • Implementierung von Filtern für eine Steuerungssoftware zur Steuerung von Laserschweißanlagen.
  • Analyse eines bestehenden Algorithmus zur Erstellung einer großen Fotografie aus mehreren kleineren Aufnahmen.
  • Ausarbeitung von Maßnahmen zur Optimierung des Algorithmus und zur Minimierung von auftretenden Artefakten.
  • Kenntnisse: C++, Mercurial, KDevelop
Okt. 2019 - Dez. 2020
1 Jahr 3 Monaten
Hamburg, Deutschland

Software-Entwickler

Minebea Intec GmbH

  • Project: CUPS embedded
  • Für ein Wäge-Terminal, mit einer Linux Yocto Distribution als Betriebssystem, wurde die CUPS Druckersystemsoftware in das User-Interface integriert.
  • Anpassung des Yocto-Rezeptes für CUPS und die verwendeten CUPS-Filter.
  • Implementierung/Wartung einer Software zur Erstellung von Etiketten (im XML-Format), welche auf dem Wäge-Terminal in ein druckbares PDF-Format konvertiert werden.
  • Implementierung eines embedded PDF-Renderers, welcher als Input ein proprietäres XML-Format hat und hieraus ein PDF-Dokument erstellt, welches mit Hilfe der CUPS-Druckersystemsoftware von beliebigen Druckern verarbeitet werden kann.
  • Kenntnisse: C++, Qt, Python
  • Eingesetzte Produkte: Eclipse, Yocto
Apr. 2019 - Okt. 2019
7 Monaten
Lichtenfels, Deutschland

Software-Entwickler

Concept Laser GmbH

  • Project: Überwachung eines 3D-Druckes
  • Implementierung einer QM-Software zur optischen Überwachung des Pulver-Bettes eines 3D-Metaldruckers mittels einer Kamera, um die einzelnen Prozessschritte zu dokumentieren. Zusätzlich wurden Bildverbesserungsmaßnahmen durchgeführt.
  • Kenntnisse: OpenCV, C++, Scrum, Jenkins, Windows
  • Eingesetzte Produkte: Git, OPC UA
Jan. 2019 - Apr. 2019
4 Monaten
München, Deutschland
Remote

Software-Entwickler

ASM Assembly Systems GmbH & Co. KG

  • Project: Remote Stations-Software
  • Erstellung einer Softwareschnittstelle als Windows Service zur Auslesung von Daten von Siplace Bestückautomaten im Projekt „Remote Stations-Software“ mit dem Ziel, die installierte Software, die Softwareversion der Stationssoftware und die Errordaten über LAN auslesen und an einen im LAN befindlichen Rechner übermitteln kann.
  • Kenntnisse: C#, WCF, REST, Windows
Feb. 2018 - Feb. 2019
1 Jahr 1 Monate
München, Deutschland

Software-Entwickler

Identt GmbH

  • Project: ID-Card Reader
  • Implementierung eines Prototyps zur Auslesung einer ID-Karte mittels einer Kamera. Das aufgenommene Bild wird in einem ersten Schritt so aufbereitet, dass die Datenfelder mit einem üblichen OCR-Tool (Tesseract) ausgelesen werden können. Zusätzlich wird ein Tool implementiert, um den Algorithmus an unterschiedliche ID-Karten anzupassen.
  • Kenntnisse: OpenCV, Python, C++, C#
  • Eingesetzte Produkte: Tesseract
Juni 2017 - Apr. 2018
11 Monaten
München, Deutschland

Software-Entwickler

AMAN digital.Media.Solutions

  • Project: Trouble-Shooter
  • Für Teile eines komplexen verteilten Systems musste nachträglich eine Entwicklungsumgebung aufgesetzt werden, mit der der Code effizient debugged werden kann. Es haben sich Fehler eingeschlichen, die über loggen nur schwer identifiziert werden konnten. Die Applikation wurde in C#/Mono und PHP geschrieben und in einem Docker-Container gehosted.
  • Entwicklung von Cloud-Services
  • Datenbankentwicklung
  • Entwicklung von automatisierten Tests
  • Kenntnisse: Docker, Git, Scrum, Python, SQL, C++, Eclipse, C#
Okt. 2016 - März 2017
6 Monaten
München, Deutschland

Software Architekt, Software-Entwickler

Securiton GmbH (Festanstellung)

  • Project: Linux Embedded (Rolle: Software Architekt, Zeitraum: Okt 2016 - Mär 2017)

  • Algorithmen zur automatisierten Überwachung werden auf Kameras verschiedener Hersteller (HikVision, Hanwha, Axis) portiert. Auf diesen Kameras läuft ein Linux Embedded mit unterschiedlicher Hardware-Architektur. Die Applikation zur Ausführung der Algorithmen soll auf den Kamera-Plattformen identisch sein. Entwickelt wurde nach SCRUM.

  • Konfigurieren von Eclipse für verschiedene Targets

  • Erstellung von Shell-Skripten um Build-Prozesse zu automatisieren

  • Integration des TFS in die Linux Entwicklungsumgebung

  • Entwurf einer einheitlichen Architektur für verschiedene Kamerahersteller

  • Erstellung einer Plattformunabhängigen Library für die Targets (ARM, Intel, Linux, Windows)

  • Aufsetzen einer effizienten Desktop Entwicklungs- und Debugging-Umgebung

  • Streamen der Videos von der Kamera in die Desktop-Entwicklungsumgebung

  • Kenntnisse: Posix, TFS, Eclipse, C++, Video

  • Eingesetzte Produkte: ARM, Embedded Linux, HTTP

  • Project: CoreTester-GUI (Rolle: Software-Entwickler, Zeitraum: Okt 2016 - Nov 2016)

  • Entwicklung einer einfachen GUI für ein Test-Framework in C#.

  • GUI mit Windows Forms entwickelt

  • Kenntnisse: Microsoft Visual Studio

  • Eingesetzte Produkte: Windows-Forms

Jan. 2016 - Sept. 2016
9 Monaten
München, Deutschland

Software-Entwickler

Mühlbauer AG (Festanstellung)

  • Project: Foto-Vergleich
  • Es soll die Druckqualität von gelaserten Fotos überprüft werden. Besondere Anforderungen: Die Skalierung der Bilder schwankt, die Laser lasern die Bilder nicht in der gleichen Helligkeit.
  • Grauwert-Kalibrierung anhand eines bekannten Farbmustern durchführen
  • Foto durch Korrelator lokalisieren
  • Exakte Skalierung des gelaserten Fotos bestimmen
  • Foto entsprechend der errechneten Skalierung skalieren
  • Foto ggf. in einen anderen Farbraum transformieren (LBP, Canny, Sobel, HSV)
  • Referenz-Foto mit gelasertem Foto vergleichen
  • Gefundene Defekte klassifizieren
  • Kenntnisse: C++, OpenCV, Windows
Jan. 2015 - Dez. 2015
1 Jahr

Software-Entwickler

privat

  • Project: Optical Character Recognition (Zeitraum: Jan 2015 - Dez 2015)

  • Entwicklung einer größen- und fontinvarianten OCR für normale Zeichen mit Hilfe einer Support Vector Machine. Der OCR-Algorithmus lässt sich in einen Einlern- und einen Erkennungsteil unterteilen.

  • Einlernen - Es werden künstlich Zeichen mit unterschiedlichen Fonts erstellt

  • Einlernen - Die künstlichen Zeichen werden auf eine einheitliche Größe skaliert

  • Einlernen - Gradienten der Zeichen werden berechnet

  • Einlernen - Mit den errechneten Gradienten wird eine Support Vector Machine trainiert

  • Erkennung - Es wird nach Blobs im Bild gesucht

  • Erkennung - Die gefundenen Blobs werden auf eine einheitliche Größe skaliert

  • Erkennung - Gradienten der Blobs werden berechnet

  • Erkennung - Die Gradienten der Blobs werden mit der Support Vector Machine als Buchstaben klassifiziert

  • Kenntnisse: OpenCV, Support Vector Machine, Machine Learning

  • Project: OCR GUI (Zeitraum: Aug 2015 - Dez 2015)

  • Entwickeln einer GUI in WPF, um die OCR zu konfigurieren.

  • Kenntnisse: WPF

Mai 2014 - Sept. 2014
5 Monaten
München, Deutschland

Software-Entwickler

Mühlbauer AG

  • Project: GUI Design
  • GUI-Design mit Microsoft Foundation Classes (MFC)
  • Eingesetzte Produkte: MFC
Jan. 2013 - Juni 2013
6 Monaten
München, Deutschland

Software-Entwickler

Mühlbauer AG (Festanstellung)

  • Project: ISO 1831
  • Es soll sichergestellt werden, dass die Druckqualität der Machine Readable Zone (MRZ) in Reisepässen ISO 1831 entspricht. Die Vorlagen der Zeichen werden aus dem OCR-B TrueType Font generiert.
  • Überprüfung des Kontrastes des schwarzen Zeichenbereichs
  • Überprüfung der minimalen Strichbreite eines Zeichens
  • Überprüfung der maximalen Strichbreite eines Zeichens
  • Überprüfung des Kontrastes des Skeletts eines Buchstabens
  • Überprüfung auf Dreck im hellen Bereich eines Buchstabens
  • Überprüfung auf Flecken im schwarzen Bereich eines Buchtstabens
  • Überprüfung der korrekten Ausrichtung eines Buchstabens
  • Überprüfung der korrekten Größe eines Buchstabens
  • Kenntnisse: C++, OpenCV, Qt
Jan. 2013 - Mai 2013
5 Monaten
München, Deutschland

Software-Entwickler

privat

  • Project: Android Game
  • Entwickelt wurde ein Retro-Spiel (Asteroids) für Android.
  • Einfache 2d-Darstellung der bewegten Objekte
  • Sound-Integration
  • Benutzer-Interaktion
  • Eingesetzte Produkte: Android, Eclipse
Jan. 2012 - Aug. 2012
8 Monaten
Oberhaching, Deutschland

Software Entwickler

Mühlbauer AG (Festanstellung)

  • Project: Dotted OCR
  • Ein vorhandener Algorithmus zur Erkennung einer Seriennummer bestehend aus perforierten (dotted) Zeichen, wie sie in Reispässen verwendet werden, erkennt oft falsche Zeichen. Es soll ein neuer Algorithmus konzeptioniert und implementiert werden. Der Algorithmus soll größen- und rotationsinvariant sein.
  • Der Algorithmus lässt sich in zwei Phasen aufteilen, der Einlernphase und der Erkennungsphase:
  • Einlernen - Segmentierung der Dots mit einer adaptiven Schwelle
  • Einlernen - Normierung der Dots eines Buchstabens / Herausrechnen der Skalierung
  • Einlernen - Pro Zeichen existiert eine Menge an Koordinaten (normalerweise zwischen 5-10), welche einen perforierten Buchstaben beschreiben
  • Erkennung - Segmentierung der Dots mit einer adaptiven Schwelle
  • Erkennung - Clustern der Dots durch morphologische (dilate + erode) Operationen, um die Dots einzelner Buchstaben zusammenzufassen
  • Erkennung - Translation der Dots eines Buchstabens in den Koordinatenursprung
  • Erkennung - Normierung der Dots eines Buchstabens / Herausrechnen der Skalierung
  • Erkennung - Bestimmung einer Rotation, um den Buchstaben aus der Erkennungsphase auf den Buchstaben aus der Einlernphase zu matchen
  • Der neu entworfene Algorithmus ist skalierungs- und rotationsinvariant und hat keine Fehlerkennung. Des Weiteren kann er flexibel konfiguriert werden, mit Focus auf Performance oder Erkennungsgüte auch bei schlechter Bildqualität.
  • Kenntnisse: OpenCV, C++
Jan. 2011 - Mai 2011
5 Monaten
München, Deutschland

Debugger

Electrobit GmbH (Festanstellung)

  • Project: ADTF
  • Die Daten aus einer Kamera zur Verkehrszeichenerkennung werden mit den Daten aus einem Navigationssystem fusioniert. Im Display eines Fahrzeuges wird das erkannte/gültige Verkehrszeichen dargestellt. Wenn auf Testfahrten ein falsches Zeichen erkannt wird, wird das dazu aufgenommene Video zur Analyse an den Entwickler geschickt.
  • Szenen-Analyse mit ADTF
  • Kenntnisse: ADTF, C++, ADAS
Jan. 2010 - Sept. 2010
9 Monaten
Braunschweig, Deutschland

Software-Entwickler

Masterarbeit

  • Project: Objekterkennung in Videos
  • Implementierung modelbasierter Algorithmen zur Erkennung und Lagebestimmung von Objekten in Videos.
    1. Algorithmus - Erstellung eines 3D-Modells
    1. Algorithmus - On the fly Berechnung von Key-Points auf dem 3D-Modell inklusive der 3D-Koordinaten
    1. Algorithmus - Zur Laufzeit wird nach Key-Points im Bild gesucht
    1. Algorithmus - In einer RANSAC Prozedur werden die Key-Points im aktuellen Bild auf die Key-Points des Modells gematched
    1. Algorithmus - Die Position relativ zur Position der Kamera wird berechnet
    1. Algorithmus - Erstellung eines geometrischen Linien-Modells des zu erkennenden Objektes
    1. Algorithmus - Im Bild wird mit Hilfe der Hough-Transformation nach Linien gesucht
    1. Algorithmus - Es wird nach einer Transformation gesucht, die die Linien des Modells auf die Linien im Bild transformiert
    1. Algorithmus - Es wird überprüft, ob die transformierten Linien zu den Linien im Bild passen
  • Kenntnisse: OpenCV, Mathematica
Nov. 2008 - Dez. 2009
1 Jahr 2 Monaten
Braunschweig, Deutschland

Software-Entwickler

Linearis3D GmbH

  • Project: Binär Codierte Marken (Zeitraum: Nov 2008 - Jul 2009)

  • Implementierung eines Algorithmus zur Erkennung von binär codierten Marken (Kreise) für die Kalibrierung eines Photogrammetrie-Sytemes.

  • Im Bild werden mit Hilfe quadratischer Optimierung Kreise gesucht

  • Kreise mit einem geringen quadratischen Fehler werden auf eine binäre Kodierung untersucht

  • Hierzu wird relativ zum Kreisradius nach hellen Blobs gesucht

  • Blobs an bestimmten Stellen um den Kreis entsprechen einzelnen Bits

  • Die errechnete binäre Zahl wird durch eine Prüfsumme überprüft

  • Project: Stereo-System (Zeitraum: Jan 2009 - Dez 2009)

  • Entwicklung eines Videobasierten Stereo-Systems inklusive einer GUI in C#.

  • Erkennen von Markern in den Bildern zweier kalibrierter Kameras

  • Zuordnen der Marker in den Bildern

  • Berechnung der 3D-Koordinaten durch Bündel-Ausgleichung

  • Live Darstellung der Kamera Bilder in einer GUI

  • Darstellung der 2D- und 3D-Koordinaten in einer Tabelle und als 3D-Modell mit OpenGL

  • Kenntnisse: C#, Windows Forms, OpenGL

  • Project: Ansteuerung von Industriekameras (Zeitraum: Jan 2009 - Apr 2009)

  • Ansteuerung und Integration von Industriekameras in ein Software-Projekt.

  • Integration von AVT Kameras

Okt. 2008 - Aug. 2009
11 Monaten
Braunschweig, Deutschland

Software-Entwickler

Projektarbeit / Paper

  • Project: Sparse Bundle Adjustment Speedup Strategies
  • Mit Hilfe eines Tools (Bundler) werden Kameras ohne Verwendung von Markern kalibriert. Dieser Prozess wird durch Parallelisierung und Splitting der Videos beschleunigt.
  • Das Video der zu kalibrierenden Kamera wird in mehrere Teile zerlegt
  • Jedes Teilvideo enthält Bilder, die in allen Teilvideos enthalten sind
  • Mit Hilfe des Bundlers werden die externen Kameraparameter berechnet
  • Anhand der in allen Videos enthaltenen Bilder werden die verschiedenen Kamera-Positionen in ein Koordinatensystem transformiert
  • Eingesetzte Produkte: Qt
Apr. 2008 - Sept. 2008
6 Monaten
Braunschweig, Deutschland

Tester

David GmbH (Hiwi)

  • Project: Definition von Softwaretests
  • Definition von Regressionstests.
Jan. 2006 - Sept. 2006
9 Monaten
Lorem ipsum dolor sit amet

Bachelorarbeit

  • Project: Börsendaten per DAB
  • Implementierung des DAB-MOT Protokolls und einer GUI zur Visualisierung von Börsendaten in Java.
  • Über einen Web-Service werden in Echtzeit Börsendaten abgefragt. Die Börsendaten werden auf einen Server des NDR hochgeladen, von wo sie in das DAB Signal eingespeist werden.
  • Kenntnisse: Java 1.5, Axis, Web Services, SOAP
Zusammenfassung

Ich verfüge über umfangreiche Erfahrungen in der Softwareentwicklung mit C++, C#, Java und Matlab. Mein bisheriger Schwerpunkt liegt im Bereich Computer Vision und Bildverarbeitung. Ich habe mehrere Algorithmen für anspruchsvolle Bildverarbeitungs-Aufgabenstellungen konzeptioniert und implementiert. Darüber hinaus kann ich praktische Erfahrungen im Bereich Machine Learning und der Embedded Linux Entwicklung vorweisen. Ich verfüge über eine schnelle Auffassungsgabe und löse algorithmische Probleme empirisch auf kreative Art und Weise. Meine fundierten Kenntnisse ermöglichen es mir, mich schnell in neue Bereiche einzuarbeiten.

Sprachen
Deutsch
Muttersprache
Englisch
Verhandlungssicher
Ausbildung
Okt. 2006 - Sept. 2010

Technische Universität Braunschweig

MSc Informatik, Vertiefung Robotik, Verteilte Systeme, Programmierung und Reaktive Systeme, Schwerpunkt Bildverarbeitung und · Informatik · Braunschweig, Deutschland

Okt. 2002 - Sept. 2006

Universität Osnabrück

BSc Mathematik/Informatik, Allgemeine, praktische und theoretische Informatik, Grundlagen der Mathematik · Mathematik/Informatik · Osnabrück, Deutschland

Zertifikate & Bescheinigungen

ISTQB: Certified Tester

Technische Universität Braunschweig

Sie suchen Freelancer?Passende Kandidaten in Sekunden!
FRATCH GPT testen
Weitere Aktionen