Info

Challenge: Bildarchivierung
Teamname: getCoolTeamName();
Produktname: BauVision Database

Was kann die App?

BauVision database ermöglicht es, die während eines Bauprojektes entstehenden Bilder effizient zu verwalten und zielgerichtet zu durchsuchen.

Das Problem:

Im Laufe eines Bauprojektes entstehen sehr viele Bilder, welche den Bauprozess dokumentieren. Diese sind zu zahlreich, um sie als Mensch einzeln zu durchsuchen. Für eine zielgerichtete Suche müssen die Bilder gelabelt sein. Ein manuelles Labeln einzelner Bilder erscheint unzweckmäßig, da mit erheblichem Zeitaufwand verbunden.

Die Lösung:

Die BauVision database erkennt mittels KI, was auf den Bildern abgebildet ist, und nimmt automatisch eine entsprechende Kategorisierung vor. Der Bilddatensatz kann anschließend unter gleichzeitiger Verwendung verschiedenster Filter durchsucht werden.   Konkret stellen sich bei der Kategorisierung eines Bildes die folgenden Fragen:

  • WAS ist abgebildet?
    • Hinzufügen von Schlagworten zu den Bildern, beispielsweise Trockenbau, Fenster, Deckenansicht
    • Schlagworte werden nach dem Hochladen automatisch von der Bilderkennungs-KI zugewiesen -> nicht manuell, Arbeitsersparnis!
    • Gefilterte Suche im Bilddatensatz mit einem oder mehreren Schlagworten
  • WANN wurde das Bild aufgenommen?
    • Jedes Bild erhält ein automatisch generiertes Zeit-Label in der Datenbank (Datum und Uhrzeit)
    • Einlesen von Metadaten, sofern vorhanden (im gegebenen Datensatz nicht vorhanden)
    • Automatische erkennung von Datumsstempeln im Bild durch Bilderkennungs-KI (haben wir probiert - da die Ergebnisse nicht so gut waren, haben wir uns dann entschieden, andere Prioritäten zu setzen)
    • Filterfunktion nach Zeitraum von bis

Zukünftige Features

  • WELCHES Projekt?
    • Beim Hochladen eines Bilddatensatzes wählt der Nutzer aus, zu welchem Projekt er diesen hinzufügen möchte
    • Automatische Zuordnung zu Bauphasen anhand von Datum und zugeordneten Schlagworten wäre denkbar
  • WO wurde das Bild aufgenommen?
    • Automatische Verortung eines Bildes in Bauplänen (z.B. im Grundriss)
    • Auslesen von Positions-Metadaten, falls vorhanden
    • Erkennen von Strukturen im Bild und Abgleich mit einem 3D-Modell des Bauwerks
    • Siehe Challenge Bauüberwachung
  • WER hat das Foto erstellt?
    • Automatische generierung eines Labels, von welchem Account das Bild hochgeladen wurde
    • Sind hochladende und fotografierende Person identisch? Ansonsten wäre Zuordnung mittels Metadaten denkbar

Technische Umsetzung

  • Webapp
    • Auf Basis von Flask und HTML, CSS, Javascript (https://appseed.us/product/atlantis-dark/flask/)
    • Backend steuert Datenbank an SQLLite, Filterfunktionen der verschiedenen, klassifizierten Kategorien
    • Backend steuert ML Model an und klassifiziert Bilder
  • Bilder klassifizieren
    • Wir haben MobileNetV2 Modell als multi label Klassifikator vortrainiert mit ImageNet1000 V2 gewählt. Das Modell wird durch Trainingsdaten finegetunt und dann die Parameter werden direkt in die App geladen
    • Für das Training benutzen wir PyTorch und für das Modell benutzen wir Modell Zoo von torchvision.models
    • Als Trainingsplatform benutzen wir Google Colab Pro
    • Das Trainingsskript wird in einem Jupyter Notebook zusammengefasst
  • Datumsstempel erkennen
    • Testen mit verschiedenen Parametern bei pytesseract
    • zweite Iteration mit Zuschneiden von Bildern auf den Datumsstempel

Das Team

Patrick Gerard - Julia Yukovich - Calvin Tanama - Felix Rutsch
Wir kannten uns gegenseitig vorher nicht und haben uns nur für diesen Hackathon zusammengefunden.

Challenges im Team

Remotework (Zeitverschiebung), Rechenpower (ML-Modell), Tech-Stack (keiner ist wirklich fit mit modernen Frontend Technologien)

GitHub

https://github.com/grumpyp/SDaCathon-2022

Youtube

https://youtu.be/R1AHgH-Vd1I

Built With

Share this project:

Updates