Embedded System II im WS 24/25
AI on the Edge

Plakative Kurzfassung

Vom Training eines neuronalen Netzes auf dem PC zum Einsatz auf einem µC.
Anwendungen: Computer Vision am High End, Activity Detection am Low End

Langfassung

Mit AI On the Edge ist sehr allgemein die Nutzung von Methoden der Künstlichen Intelligenz (AI) vor Ort, d.h. im Gerät selbst, gemeint.
Eine Verbindung zu einem Server gibt es dabei nicht, so dass die gesamte Informationsverarbeitung lokal (On The Edge) stattfinden muss.

Der Begriff Künstliche Intelligenz ist im Rahmen des Moduls viel zu weit gefasst.
Tatsächlich geht es um den Einsatz von Klassifikatoren[1] unter zwei sehr unterschiedlichen Anforderungen an die Ressourcen Rechen­leistung, Speicher- und Energiebedarf.

Tabelle 1 zeigt die vorgesehenen Themen anhand ausgewählter Anwendungsfälle.

Anwendungsfall  

(auch im Labor durchgeführt)

Hardware

Lernziele

 

Objekterkennung und Objektverfolgung

 

Beispiel:

Erkennung und Orts­be­stim­mung von Personen in einer laufenden Kamera­aufzeichnung (Object Tracking)

Mikrokontroller mit spezieller Hardware für die Auswertung neuronaler Netzwerke

Entwicklung:

Modellwahl eines neuronalen Netzes, Modelltraining, Modell­transformation

 

Einsatz:

Aufsetzen einer Video-Verarbeit­ungskette, Integration mit­tels Middleware in die Firm­ware des µC

Aktivitätserkennung und Aktivitätsbestimmung

 

Beispiel:

Grobe Erkennung der aus­ge­führten Aktivität durch einen Beschleunigungssensor am Objekt

Sensor mit spezieller Hard­ware für einen Klassifikator (in der Regel kein neuronales Netz)

Entwicklung:

Möglichkeiten und Grenzen ex­trem kleiner und sparsamer Klas­si­fikatoren, Wahl einer passenden Methode, Trainings­ablauf

 

Einsatz:

Integration in den Sensor

Tabelle 1: Inhalt ES-II (Planung im SS24)

Für beide Anwendungsfälle gibt es erst seit Kurzem geeignete Hardware.
Für den ersten Fall wird voraussichtlich ein µC des Typs STM32MP257 (ST) oder i.MX 8M Plus bzw. i.MX 95 (beide von NXP) eingesetzt werden.

Für den zweiten Fall sind zwei Vertreter mit unterschiedlich aufgebauten Klassifikatoren der MEMS-Sensorfamilien LSM6, LIS2 oder IMS330 (alle ST) vorgesehen.

Nicht explizit behandelt werden Anwendungsfälle, bei denen der Klassifikator als einfaches Programm ohne Unterstützung durch die Hardware realisiert werden kann.
Das ist die gängige Lösung für zeit- oder energieunkritische Anwendungen wie beispielsweise eine Objekterkennung in einem Standbild oder der Erkennung einiger Schlüsselwörter in einer laufenden Audioaufzeichnung.



[1] Ein Klassifikator bestimmt, ob eine Eingabe (z.B. ein Bild) eine bestimmte Eigenschaft (z.B. „enthält ein Fahrrad“) aufweist. Dafür gibt es verschiedene Methoden. Ein prominentes Beispiel sind neuronale Netze.


Unterlagen zur Modulvorstellung am 27. April

Der Foliensatz ist als Video zusammengestellt.
Ohne Pausen oder eingebettete Videos wird jede Folie für 5 Sekunden angezeigt.
Sie können ja nach Bedarf anhalten oder vor- und zurückspringen.
In dem Video auf Folie 9 (Beginn bei Sekunde 35) sind einige Fehler enhalten.
Beispiel: Im Schaufenster links stehen Puppen, keine Personen.
Sie könnten sich das Video ein paarmal ansehen und nach weiteren Fehlern suchen.
Ab Sekunde 47 läuft das Video noch einmal, dann mit Anmerkungen.
Folien als Video, ohne Ton