Jump label

Service navigation

Main navigation

You are here:

Main content

Projektgruppe: Smart Mirror

 

PG-Einzelpräsentation

09.01.2019 11:00 Uhr, OH16 Raum E18

Motivation

Magic_Mirror

Abb. 1: Magic Mirror (Quelle: https://forum.magicmirror.builders/topic/9113/my-full-length-smart-mirror/12)

Moderne Systeme zur Mustererkennung, welche zum Beispiel auf Tiefen Neuronalen Netzen basieren, sind schon längst Bestandteil vieler Anwendungen im Bereich der Industrie, Medizin und Sicherheitstechnik. Fortschritte in den Bereichen der Mustererkennung und Künstlichen Intelligenz (KI) kommen aber eher langsam bei Konsumenten an. Die etabliertesten Beispiele hierfür sind Gesichtserkennungsverfahren oder Fingerabdruckerkennung auf Smartphones sowie aktuelle Sprachassistenten von diversen Herstellern. Dabei stellt die Rechenleistung, die benötigt wird um aktuelle Mustererkennungsverfahren auf kleinen und mobilen Geräten zu verwenden, eine besondere Herausforderung dar.
Die Bereiche Smart Home und Internet of Things sind derzeit die größten Antreiber, um künstliche Intelligenz und smarte Gerätesteuerung in die Wohnungen von Konsumenten zu bringen. Solche Verfahren der Mustererkennung sollen sich unbemerkt in ihre Umgebung einfügen (Ubiquitäre Systeme), um nicht zu viel Aufmerksamkeit auf sich zu ziehen und genau im richtigen Moment passende Informationen zu liefern. Ein Spiegel ist in diesem Sinne ein Dekorationsgegenstand, der in allen Haushalten zu finden ist. Ein Anwendungsszenario könnte also folgendermaßen aussehen:

Morgens im Bad werden bereits beim Fertigmachen für die Arbeit die neuesten Nachrichten aus den eigenen Lieblingsthemen wie Politik, Wirtschaft, Sport und Kultur im In- und Ausland unaufdringlich am Rand des Spiegelbildes eingeblendet. Da Sie viel in sozialen Netzwerken aktiv sind, werden auf der anderen Seite des Spiegels die neuesten Mitteilungen aus Facebook und Twitter unter den Terminen des heutigen Tages angezeigt. Bevor man nun die Wohnung verlässt, um sich auf den Weg zur Arbeit zu machen, lohnt sich ein Blick in den Spiegel im Flur. Sie fahren mit den öffentlichen Verkehrsmitteln zur Arbeit und hier werden deswegen die aktuellen Abfahrtspläne und Verspätungen relevanter Buslinien angezeigt. Außerdem bekommen Sie den Hinweis, die leichte Jacke, die sie tragen, gegen eine dickere auszutauschen, da der Wetterbericht für heute niedrige Temperaturen und Regen voraussagt.

An diesem Beispiel sieht man, dass viele interessante Anwendungsgebiete abgedeckt werden können. Nützliche Anwendungen können somit den Alltag erleichtern, sowohl privat als auch im Büro.

Vor dem Hintergrund, dass die Hardware relativ günstig ist, kann jede/-r Teilnehmer/-in der Projektgruppe sich sein selbst implementiertes System mit geringen Kosten für den Privatgebrauch nachbauen. Die Ergebnisse der Projektgruppe sind also keine teuren Prototypen.

Aufgabe

 Raspberry_Pi_w_Camera

Abb. 2: Raspberry Pi mit Kamera Modul (Quelle Produktfoto: Amazon)

Die Teilnehmer/-innen sollen einen Spiegel, welcher mit einer einseitig durchsichtigen Scheibe ausgestattet ist, mit Elektronik und Sensoren ausrüsten. Die Hardware besteht dabei aus einem Einplatinencomputer (Raspberry Pi), einer Kamera, einem Bewegungssensor, einem Bildschirm und einigen Knöpfen. Die Aufgabe der Projektgruppe kann grob in drei Blöcke eingeteilt werden: Im ersten Block soll die gesamte Hardware in Betrieb genommen werden. Dazu gehört die Installation des Raspbian Betriebssystems, das Testen der Kamera und Aufnahme von Bildern und Videos als auch die Auswertung von Signalen, die vom Bewegungssensor erzeugt werden.
Sobald sich die Studierenden mit der Funktionsweise der Hardware vertraut gemacht haben, soll in Block zwei das grundlegende Betriebssystem in Verbindung mit den zusätzlichen Spiegelfunktionen implementiert werden. Dabei sollen über ein geeignetes Raster mehrere Widgets platziert werden können, was die individuelle Anpassung der Oberfläche an den Benutzer ermöglicht. Die Implementierung der Widgets mit entsprechenden API Schnittstellen von zum Beispiel den örtlichen Verkehrsbetrieben, Wetteranbietern oder Twitter soll ebenso erfolgen wie die Darstellung dieser Informationen auf dem Monitor. Dabei stehen zwei verschiedene Varianten zur Verfügung: Entweder der Fokus liegt auf der Implementierung eines Betriebssystems, mit einem tieferen Einblick in den Prozess der Softwareentwicklung, oder auf dem Schreiben von zusätzlichen Modulen für das Open-Source-Projekt Magic Mirror², welches bereits eine solide Basis für den Spiegel zur Verfügung stellt.
Der dritte Block der Projektgruppe soll die Mensch-Maschine-Interaktion thematisieren. Hier soll eine Personen- und Gesichtsdetektion umgesetzt werden, welche zum Beispiel über HOG-Deskriptoren die Kopf- und Schulter-Kontur einer Person erkennt, um anschließend mit weiteren Verfahren die Lage der Augen zu bestimmen. Diese Information kann dann verwendet werden, um das aufgenommene Bild zu normieren und zusätzliche Informationen, wie zum Beispiel die Identität, zu bestimmen. Da der Raspberry Pi nur über begrenzte Rechenleistung verfügt, sollen hierbei klassische Methoden zur Gesichtserkennung  verwendet werden. Im Laufe des Projektes soll allerdings auch die Möglichkeit untersucht werden, ob moderne Mustererkennungsverfahren basierend auf neuronalen Netzen auf einem solch kleinen Rechner lauffähig sind und wie die Netzarchitektur verändert werden muss, um dies zu erzielen. Zusammen mit der Gesichtserkennung soll eine Datenbank angelegt werden, in der Benutzer ihre individuelle Konfiguration der Widgets ablegen können. Diese soll dann bei einer Identifikation der Person geladen und angezeigt werden. Um nicht bei jedem Vorbeilaufen die Erkennung auszulösen, soll neben der Personendetektion auch die Blickrichtung der Augen geschätzt werden. Diese kann dann genutzt werden, um die Informationen anzuzeigen, wenn der Benutzer in den Spiegel blickt. Zur Umsetzung dieser Machine-Learning-Algorithmen kann auf das Python Paket OpenCV zurückgegriffen werden.

Zusammengefasst besteht also die Herausforderung darin, das Zusammenspiel der Hardware zu organisieren, ein System für den Betrieb des Spiegels zu implementieren, als auch klassische und moderne Mustererkennungsverfahren auf einem mit begrenzter Rechenleistung ausgestatteten Computer anzuwenden.

 

Teilnahmevoraussetzungen

Folgende Kenntnisse sind für die Teilnahme an der Projektgruppe notwendig:

  • Grundkenntnisse in der Programmierung (Python bevorzugt)
  • Grundkenntnisse im Umgang mit Unix basierten Betriebssystemen

Folgende Kenntnisse sind für die Teilnahme an der Projektgruppe hilfreich, werden jedoch nicht vorasugesetzt:

  • Grundkenntnisse in der Mustererkennung

Die Grundlagen für hilfreiche Kenntnisse werden im Laufe des Projekts vermittelt.

Sonstiges

Alle Informationen zu Projektgruppen im Sommersemester 2019 finden Sie hier.



Sub content

Contact

M. Sc. Philipp Oberdiek
Tel.: 0231 755-4643
philipp.oberdiek(at)tu-dortmund.de
M. Sc. Marco Dürr
Tel.: 0231 755-6052
marco.duerr(at)tu-dortmund.de