Demonstrator für eine personalisierbare Gestenerkennung die direkt im System trainierbar ist.
Das Fraunhofer IMS forscht an einer personalisierbaren künstlichen Intelligenz (KI), welche die Möglichkeit bietet, dass sich Geräte mittels Trainings auf Ihren Nutzer einstellen bzw. optimiert werden können. Da das KI-Softwareframework AIfES in der Lage ist, künstliche neuronale Netze (KNN) auf z.B. Mikrocontrollern zu trainieren, ist die technische Grundlage hierfür bereits gelegt.
Das AIfES Entwicklerteam hat unseren Demonstrator zur Gestenerkennung als Basis genutzt, um das Potential einer personalisierbaren KI zu zeigen. Dieser Demonstrator wurde bereits auf Messen präsentiert und auf dem AIfES YouTube Kanal ist ein Video verfügbar, dass die Funktionalitäten demonstriert. Der Demonstrator kann in die Luft geschriebene Zahlen erkennen und einen entsprechenden Befehl kabellos an einen Roboterarm senden. Ein Nachteil hierbei ist, dass die Gesten von dem Nutzer so ausgeführt werden müssen, wie sie vortrainiert wurden. Für eine intuitive Benutzung ist es vorteilhaft, wenn man individuelle Gesten direkt in dem System eintrainieren kann, ohne dass ein PC oder ein anderes Gerät nötig ist. Genau dies wurde mit dem neuen Demonstrator umgesetzt.
Für die Realisierung wurde das Arduino Nano 33 BLE Sense Entwicklungsboard genutzt. Für die Gestenerkennung nutzten wir nur die Beschleunigungswerte des integrierten 9-Achsen iNEMO inertial module (IMU). Um dem Nutzer ein Feedback während des Trainings geben zu können, wurde ein OLED Display eingesetzt. Zur Bedienung wurde ein einfacher Taster integriert, welcher mit den anderen Komponenten auf einem individuell gefrästen PCB aufgebracht wurde, um die Nutzung zu verbessern.
Der Nutzer kann den Demonstrator beim Start in den Lernmodus versetzen. In diesem Modus wird der Nutzer durch den Trainingsablauf geleitet, wo er Trainingsdaten für bis zu zehn Gesten aufnehmen kann. Die Anzahl der trainierbaren Gesten ist hierbei durch den Speicher des Mikrocontrollers begrenzt. Jede Geste sollte hierbei ca. vier Mal wiederholt werden, um einen Trainingserfolg zu ermöglichen. Nach jeder ausgeführten Geste werden die Rohdaten ausgewertet und nur die nötigen Merkmale als Trainingsdaten zwischengespeichert. Der spezielle Algorithmus zur Merkmalsextraktion wurde hierbei vom AIfES Team entwickelt und ermöglicht eine enorme Datenreduktion. Diese Merkmale bilden die späteren Inputs für das sehr kompakte KNN. Nachdem alle gewünschten Gesten durchgeführt wurden, berechnet AIfES die nötige Netzstruktur, bildet zur Laufzeit das passende KNN und trainiert dieses von Grund auf. Die Netzstruktur ist abhängig von der Gestenanzahl, da jede Geste eine Klasse bildet und diese jeweils durch ein Output Neuron des KNN abgebildet wird. Nach dem Training kann der Lernerfolg über den Lernfehler verifiziert werden und die Netzstruktur, sowie die optimierten Gewichte, werden abgespeichert. Das Training von beispielsweise drei Gesten benötigt auf dem Arduino Nano 33 BLE Sense ca. 2 Sekunden, wobei der ADAM Algorithmus in AIfES genutzt wird.
Nach dem Training ist der Demonstrator im Inferenz Modus, um Gesten zu erkennen. Die Erkennung einer Geste benötigt ca. 20-100 ms auf der genutzten Hardware, dies ist abhängig davon, wie lang eine Geste ist, bzw. wie viele Messwerte aufgenommen werden. Eine Demovideo zu diesem Demonstrator wird in Kürze auf dem AIfES YouTube Kanal verfügbar sein.
Mögliche Anwendungen:
- Erkennung von komplexen Gesten und Bewegungen
- Auswertung von Bewegungsabläufen
- Freihändige Steuerung von Maschinen
- Intuitive Steuerung von Wearables
- Automatische Steuerung von medizinischen Geräten
- HMI für Spieleanwendungen
- Smart Building-Anwendungen