Skip to content

MaxiG-ai/trashAI

Repository files navigation

trashAI

Felix Schaefer, 5638170; Maximilian Graf, 9114848

Repository for Course AI in WiSe 2022 at DHBW Mannheim.

Overview

Ziel war es, mit einm RaspberryPi aufgenommene Fotos lokal zu klassifizieren. Dafür wurde mit Tensorflow ein Image Classifier trainiert und anschließend in ein Tensorflow lite Modell umgewandelt. Diese wurde auf dem RaspberryPi ausgeführt.

Vorgehen

  • Ein passender Trainingsdatensatz wurde online gesucht (Quelle)
  • Training eines eigenen CNNs, dabei wurde berücksichtigt und getestet: (EigenesModel.ipynb)
    • verschiedene Modell-Architekturen (Layer Arten und Aufbau)
    • Drop-outs
    • Image Augmentation
  • Transfer Learning auf Grundlage des ResNet50 (TransferLearning.ipynb)
  • Konvertierung in Tensorflow lite Modell
  • Hardware Setup: RaspberryPi mit Kamera und GPIO Button einrichten
  • Script zur Aufnahme von Bilder mit RapsberryPi
  • Tensorflow lite Model für Vorhersage verwendet

Model Perfomance

Eigenes Model: ca. 65% val accuracy
Transfer Learning: ca. 85% val accuracy

Hardware

  • Raspberry Pi
  • Camera Module
  • lots of braincells

Getting started

  • Extract ./data/dataset-resized.zip into ./data/
  • Create new folder ./images/
  • Prepare python enviroment according to requirements.txt
  • Run Notebook of your choice, set attributes according to your desired exports (eg. Images, Model, TF_lite model, ...)
    • For custom model run EigenesModel.ipynb
    • For transfer learning run TransferLearning.ipynb
  • Conver the choosen model to TFlite by setting convert_model = False in the corresponding notebook block
  • For RaspberryPi deployment see: https://github.com/maximilian-graf2019/trashAI_pi

Resources

Added Notes:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published