Eine Java EE App mit einem Ionic Client und nativer Android Schnittstelle. War live testbar auf einem Linux Server, desweiteren ist eine Dockerumgebung geschrieben worden. Ich war dabei für Server und Environment zuständig.
Footnote erkennt mithilfe des AR Frameworks Vuforia echte Objekte und kann diese Dinge aus unserem Leben mit digitalen Informationen verknüpfen und diese so später mithilfe der Kamera wiederkennen und diese Informationen anzeigen.
https://github.com/FireRedDev/Footnote
Gelöste Herausforderungen:
- Kommunikation mit Vuforia
- Schlechte Dokumentation des Vuforia Frameworks
- Ionic & Vuforia Kompatibilitätsprobleme -> native Androidschnittstelle programmiert.
- Berechtigungen, Fileuploads
- Benutzergruppenimplementierung
Auszug aus der Diplomarbeit:
Augmented Reality, Neurale Netzwerke, Smart Devices, Smart Home, Industrie 4.0 und Internet of Things sind Themenfelder, die zurzeit enorm in Bewegung sind. Unternehmen weltweit streben die Integration von Objekterkennung in ihre Produkte an. Dennoch ist es für Entwickler noch schwierig derartige Technologien flexibel einzusetzen, weil die Ver- wendung der Frameworks häufig nicht intuitiv ist und diese teils schlecht dokumentiert sind. Es existieren verschiedene Einschränkungen, was die Speicherdauer bzw. Funktionsweise und Offenheit der Frameworks betrifft. Des Weiteren sind beinahe alle am Markt existierenden Lösungen nicht um eigene Objekte erweiterbar, sie erkennen lediglich vordefinierte Gegenstände.
Das Ziel von Footnote war es, technisch nicht versierten Anwendern die Möglichkeit bereitzustellen, selbst Informationen zu realen Objekten zu speichern. Ein erstes Teilziel war es, Industriemaschinen zu erkennen und Informationen wie Notizen oder Bedienungsanleitungen mit ihnen digital zu verknupfen. Weiters können Benutzer selbst neue reale Objekte hinzufugen, wobei der Fokus daraufgelegt wurde, dass hierfür keinerlei Erfahrung in der Softwareentwicklung nötig ist. Zusätzlich dazu wird Text, falls einer auf den Gegenständen sichtbar ist, erkannt und abgespeichert.
Die Anwendung wurde in Form einer selbst hostbaren Client(Isabella Hundstorfer)-Server(Christopher Gusenbauer) Architektur realisiert. Fur die Objekterkennung wurde aufgrund einer besseren Erkennungsqualität und guter Kompatibilität mit Client/Server Strukturen das Vuforia Framework gewählt, da alternative Frameworks diese nicht im gleichen Ausmaß aufwiesen. Der Client basiert zur plattformübergreifenden Programmierung auf ” Ionic“, die Objekterkennung mit Vuforia wurde nativ in ”Android“ programmiert. Serverseitig wurde aufgrund einer Vielzahl an gut benutzbarer Frameworks und verässlicher Qualität in ” Java Enterprise“ entwickelt. Fur die Texterkennung wird die Engine ¨Tesseract“ benutzt.
In der praktischen Anwendung ist der Client ¨ahnlich einer Notizapp wie beispielsweise ” Evernote“ oder ”Onenote“ mit oben besprochener Funktionalität. Der Benutzer kann nun mit dem fertigen Produkt – der ” Footnote App“ – und seinem mobilen Endgerät reale Objekte, wie z.B. Gemälde, Anlagenteile, Geräte, Sehenswurdigkeiten ¨ und vieles mehr fotografieren und zu diesen realen Dingen digitale Informationen, wie Kunstlerdaten, Entstehungsgeschichte, Wartungs- und Schaltpläne, Bedienungsanleitungen, usw. abspeichern. Diese können in Form von Text, Bildern oder Dateien gespeichert werden.
Die App kann diese dann mithilfe der Kamera des Geräts wiedererkennen und oben erwähnte Informationen virtuell anzeigen. Das Erkennen von Gegenständen der Realität wird bereits in vielen Programmen umgesetzt, Footnote geht aber einen Schritt weiter und ermöglicht es dem Benutzer, selbst Objekte anzulegen, die vom System wiedererkannt werden sollen.