3D-Scanning Software (Pandia 3D)
Während meines 6 Monat langen Praktikums bei Pandia 3D arbeitete ich an der Entwicklung einer Software zur 3D-Erfassung und Analyse von Objekten mittels Tiefenkameras. Ziel war es, Punktwolken visuell aufzubereiten und für Anwendungen wie Qualitätskontrolle und Volumenmessung nutzbar zu machen. Das Projekt entwickelte sich im Laufe der Zeit von einer klassischen Desktop-Anwendung hin zu einer Webanwendung mit integriertem 3D-Viewer.
Highlights
- Konzeption und Umsetzung eines Web-3D-Viewers für Punktwolken
- Echtzeit-Visualisierung von 3D-Scandaten im Browser
- Migration einer bestehenden Desktop-Software zur Webarchitektur
- Schnittstellenentwicklung zwischen Frontend und Backend
- Praktische Arbeit mit industriellen 3D-Scanning-Systemen
Projektziel
Ziel war es, eine Software zu entwickeln, die:
- 3D-Daten aus Tiefenkameras erfasst und verarbeitet
- Punktwolken verständlich visualisiert
- eine einfache Bedienung über eine Weboberfläche ermöglicht
- als Grundlage für industrielle Anwendungen dient
Meine Rolle im Projekt
In diesem Projekt übernahm ich mehrere technische Aufgaben und arbeitete eng mit dem Team zusammen.
Meine Schwerpunkte lagen auf:
- Entwicklung eines Web-basierten 3D-Viewers mit Three.js
- Integration von 3D-Daten in die Webanwendung
- Mitarbeit an der Umstellung von Desktop-Software auf eine Webarchitektur
- Umsetzung von Frontend-Komponenten mit Flask, HTML, CSS und Bootstrap
- Analyse und Behebung technischer Probleme im System
- Durchführung von Tests und Messreihen mit realen Daten
Technische Umsetzung
Ein zentraler Bestandteil des Projekts war die Visualisierung von Punktwolken im Browser.
Dafür wurde:
- Three.js als 3D-Framework eingesetzt
- ein eigener 3D-Viewer entwickelt und in die Webanwendung integriert
- 3D-Modelle und Scandaten dynamisch geladen und dargestellt
Zusätzlich arbeitete ich an:
- der Strukturierung von JavaScript-Code (Module vs. klassische Scripts)
- der Einbindung von Frontend-Logik in eine bestehende Softwarearchitektur
- der Zusammenarbeit zwischen Frontend (JS) und Backend (Flask, C++, Python)
Technische Herausforderungen
Während des Projekts traten mehrere Herausforderungen auf:
- Geringe Vorerfahrung im Bereich Webentwicklung
- Unterschiedliche JavaScript-Konzepte (Module vs. globale Scripts)
- Integration neuer Technologien in eine bestehende Codebase
- Synchronisation von Frontend und Backend (Merge-Probleme)
- Stabilitätsprobleme bei der Hardware-Anbindung (USB, Kamerasysteme)
Diese Herausforderungen konnten durch eigenständige Recherche und iterative Verbesserungen gelöst werden.
Weitere Aufgaben & Einblicke
Neben der Softwareentwicklung konnte ich auch Einblicke in weitere Bereiche gewinnen:
- Erstellung und Integration von 3D-Modellen in Blender
- Aufbau und Test von Hardware-Setups mit Tiefenkameras
- Analyse von Messdaten zur Systemverbesserung
- Durchführung von Scans bei potenziellen Kunden
- Einsatz von 3D-Druck zur Entwicklung von Halterungen
Ergebnis
Am Ende des Praktikums entstand ein funktionierender Prototyp einer Web-basierten 3D-Scanning Software mit integriertem Viewer zur Darstellung von Punktwolken.
Das Projekt vermittelte mir praktische Erfahrungen in:
- Webentwicklung (Frontend & Backend)
- 3D-Visualisierung im Browser
- Arbeit mit realen Sensordaten
- Softwareentwicklung im Team
- eigenständigem Lösen technischer Probleme