SDaCathon 2022 Bildarchivierung von Hack10
Teamname: Hack10 Projektname: SDaCathon 2022 Bildarchivierung Challenge: Bildarchivierung Teammitglieder: Fahri Korkmaz, Raphael Seliger, Kadim Özdemir GitHub Repository: https://github.com/Korkmatik/SDaCathon-2022
Wir haben den kompletten Code, das Mockup und die KI während des Hackathons entwickelt. Icons haben wir von Flaticon verwendet und nicht selbst erstellt. Als Daten haben wir die zur Verfügung gestellten Daten verwendet und keine eigenen Daten eingesetzt.
Screenshot
Projekte anzeigen
Die Projektansicht zeigt angelegte Projekte an. Auf der linken Seite ist ein Navigationsmenü, um zwischen den Funktionalitäten der Applikation zu wechseln. Mit dem Klick auf ein Projekt gelangt man in das Bildarchiv des Projektes.

Bildarchivierung
In der Bildarchivierung werden alle Bilder zu einem Projekt angezeigt. Die Bilder können mittels Eigenschaften und nach Objekten gefiltert werden. Auch ist über diese View möglich, neue Bilder hochzuladen (mittels des "Hochladen"-Buttons). Die hochgeladenen Bilder werden dann von einer KI klassifiziert, sodass ein Filtern nach Objekten und Eigenschaften möglich ist. (Aktuell funktioniert nur das Filtern nach Objekten)

Nach Bildern Filtern
In der Bildarchivierungssicht ist es möglich nach Bildern zu filtern. Es funktioniert aktuell nur das Filtern nach Objekten und nicht das Filtern nach Eigenschaften. Auf der Linken Seite im Navigationsmenü sind entsprechende Checkboxes und Buttons mit dem man das Label auswählen kann, das man zum Filtern verwendet. In der Hauptansicht (Mitte) wird vor den Bildern dargestellt, welcher Filter angewendet wurde. Hier in diesem Fall ist es "Kabel".

Inspiration
Wir haben diese Challenge ausgewählt, da wir davon ausgegangen sind, dass wir davon am meisten lernen, denn wir haben wenig Wissen darüber gehabt, wie Image Classification gemacht wird.
What it does
Man kann Projekte für jedes Bauprojekte anlegen. Danach kann man für jedes Bauprojekt Bilder hochladen. Die Bilder werden dann klassifiziert, um nach Objekten und Eigenschaften Filtern.
How we built it
- KI: Aktuell ein CNN, das mit den gelabelten Trainingsdaten trainiert wurde (Supervised-Learning), Tensorflow, Keras, Numpy, Jupyter Notebooks
- Backend: Python, FastAPI, welche REST API Schnittstellen anbietet
- Frontend: Vue, Vite, Tailwind CSS, Typescript
Challenges we ran into
- Das Entwickeln der KI, da wir keine Ahnung davon haben
- KI gibt für jedes Bild lediglich "Kabel" aus
- Ein Teammitglied wurde krank und deshalb waren wir nur zu zweit
Accomplishments that we're proud of
- Das erkennbar ist, was die App macht, auch wenn das Klassifizieren der Bilder nicht wirklich funktioniert
- Gelernt, was CNNs (Convolutional Neural Networks) und GANs (Generative Adversarial Networks) sind und wie sie funktionieren
- Ein Teammitglied hat zum ersten mal bei einem Hackathon mitgemacht und für ihn war es eine Interessante Erfahrung, mal ein Projekt unter beschränkten Zeitbedingungen durchzuführen. Normalerweise hat man für so ein Projekt deutlich mehr Zeit.
What we learned
- Generative Adverserial Networks
- CNNs
- Vue
- FastAPI
- Arbeiten über Zeitdruck, sodass man sich nur auf das Entwickeln des Minimal Viable Products konzentrieren muss
What's next for Hack10 Bildarchivierung
- Aktuell ist die KI ein CNN, wir wollten es als Semi-Supervised GAN ausprobieren aber hatten nicht mehr genug Zeit. Laut Papern, ist ein GAN akkurater als ein Semi-Supervised CNN
- Im Frontend fehlt noch Projekte anlegen
- Filtern nach Eigenschaften
- Responsive UI
- Struktur der UI sinnvoller gestalten
- Neue Labels selbst hinzufügen
- Anonymisierung von Menschengesichtern auf Bildern
Built With
- fastapi
- python
- tensorflow
- typescript
- vue
Log in or sign up for Devpost to join the conversation.