Customer Counter

Inspiration

Ich suchte nach einer praktischen Lösung, die für Kunden günstig ist, aber viel bietet. Die Inspiration kam bei einem kürzlichen Restaurantbesuch, bei dem sich alle Mitarbeiter in Hinterräumen aufhielten. Ich wartete eine Weile und dachte darüber nach, wie viel Geld dieses Restaurant wohl verlieren würde, wenn Kunden wie ich diese Art von Service nicht mehr tolerieren würden.

Was die App kann

Die App wird mit einer Kamera geliefert, die in einem Geschäft platziert wird. Wenn Kunden das Geschäft betreten, benachrichtigt ein Monitor im Hinterraum Mitarbeiter über wartende Kunden. Mit der Customer Counter-App wissen sie stets, wie viele Kunden in der Warteschlange stehen. Wenn es also mal wirklich hektisch wird, können weitere Mitarbeiter zur Kasse gehen. Auch gibt es Berichtsfunktionen. Die App stellt ein Webseitenkonto bereit, auf dem Berichte mit Daten wie der durchschnittlichen Anzahl von Kunden pro Stunde, Tage mit den längsten Warteschlangen usw. verfügbar sind. Mit diesen Kennzahlen können Geschäftsbesitzer bestimmen, wie viele Mitarbeiter an bestimmten Tagen und zu bestimmten Zeiten eingesetzt werden sollten.

Entwickelt von: Jason Condello

Entwicklung

Die Deeplens führt Lambda auf Greengrass aus. Das Gesichtserkennungsmodell verarbeitet die eingehenden Bidler und bestimmt die Wahrscheinlichkeit, dass ein Gesicht im Sichtfeld existiert. Das Model sendet eine SNS-Benachrichtigung. Ich habe eine IoT-Regel, die vom SNS ausgelöst wird und einen Eintrag zur SQS-Warteschlange hinzufügt. Es gibt eine als .NET WinForm-App entwickelte Client-App, die auf dem Gerät des Kunden ausgeführt wird. Sie zeigt die aktuelle Anzahl der Kunden an. Außerdem werden alle Daten in einer MS SQL-Datenbank auf RDS protokolliert. Eine .NET-Webseite auf einer EC2-Instance rendert Berichte für den Kunden.

Herausforderungen

Ich hätte es bevorzugt, dass die Datenbankeinträge direkt von einer Lambda-Funktion zu RDS übertragen werden. Ich hatte mich jedoch ursprünglich für MS SQL statt für MySQL entschieden und musste später feststellen, dass die Verbindung von Lambda über einen Adapter eine ziemliche Herausforderung ist. IIch entschloss mich, die Daten der Einfachheit halber durch den Client protokollieren zu lassen. So konnte ich mehr auf andere Projektaspekte konzentrieren. Es gab mit der Kamera zahlreiche Probleme, die bei einigen sicherlich Kopfschmerzen verursacht haben dürften.

Erfolge, die mich stolz machen

Ich habe viel gelernt. Als ich zur re:Invent ging, war ich noch ein völliger AWS-Neuling. Ich hatte es für Webseiten- und Datenbankhosting verwendet, aber nie viele andere der coolen Services verwendet. Jetzt habe ich eine gute Kenntnis der vielen Tools, die AWS bietet.

Was ich gelernt habe

Ich konnte viel über AWS und Deep Learning lernen. Meine App zeigt nicht wirklich, dass ich viel mit Deep-Learning-Modellen gearbeitet habe, doch damit habe ich Stunden verbracht. Darunter gab es viele Dinge, von denen ich noch nie gehört hatte. Anfangs war das also ziemlich einschüchternd.

Die Zukunft für Customer Counter

Weitere Verbesserungen. Bessere Modellnutzung. In Geschäften überall!

Entwickelt mit

Lambda
greengrass
amazon-web-services
deeplens
rds
ec2
ms-sql
.net

Jetzt testen

Das Archiv für dieses Projekt ist privat.