Ordina Crowd Analytics

Dit is het eerste project gemaakt in samenwerking met een bedrijf. Aan het einde van het tweede jaar NMCT maakt de hogeschool een lijst met voorgestelde projecten van bedrijven die moesten gerealiseerd worden in vier weken tijd. Kleine groepjes van studenten mochten hun favorieten kiezen en wij hadden het geluk om gepaard te worden met Ordina. Ordina is het grootste IT consultancy bedrijf van de Benelux en is gekend als één van de beste plaatsen om te werken. Maar wat is nu toch die "crowd analytics" of in het Nederlands "menigte analyses". Wel, het doel van het project was om gebruik te maken van Microsoft Cognitive Services om interessante statistieken te verkrijgen van een evenement (een expo, een huwelijk, een tentoonstelling, ...) en deze op een verstaanbare manier weer te geven. Op deze manier zouden organisatoren van evenementen inzichten krijgen waar de zwakke plaatsen zich bevinden en wat voor soort mensen hun evenementen bezoeken. Langs de andere kant, kunnen bezoekers kijken welke standjes ze bezochten en hoe ze zich daar voelden. Hoe werkt dit allemaal? Ontdek het door verder te lezen of door het filmpje te bekijken!
Klant : OrdinaDatum : Juni 2018Technologieën : ASP.NET, Azure Functions, Blob Storage, C#, Cognitive Services, CosmosDb, CSS, HTML, IoT Hub, JavaScript, MSSQL, Raspberry Pi, UWP
Wanneer een bezoeker aankomt op een evenement, kan hij of zij zich registreren aan de booth. Dit is eigenlijk een touchscreen met een webcam en een Raspberry Pi waarop een UWP app draait. De gebruiker maakt een account aan en enkele foto's worden genomen. Deze foto's worden naar Azure gestuurd om een model te trainen zodat mensen op het evenement herkend kunnen worden. Op deze manier worden de mensen die zich niet registreren aan de booth, niet herkend en volgt het project bijgevolg de GDPR wetgeving. Zodra een gebruiker rondwandelt op het evenement, nemen Raspberry Pis en webcams foto's op vooraf ingestelde intervallen en slaan deze op in een Blob opslag terwijl ze een signaal sturen naar de IoT Hub. Een Azure Function luistert naar de IoT Hub en laadt de prentjes van de Blob opslag om hen vervolgens naar de Microsoft Cognitive Services, meer bepaald de Face API te sturen. De function vergelijkt de bekomen resultaten met de gezichten van de mensen die zich registreerden aan de booth. Als de persoon herkend is, wordt alle data zoals locatie, emotie, geslacht en leeftijd opgeslagen in een CosmosDb. Dit onderdeel werd uitgevoerd door twee mensen die voor Smart Technology Creator studeerden, waaronder mijzelf.
Het laatste stukje werd gedaan door twee andere mensen gespecialiseerd in Web & App ontwikkeling. Zij haalden de data van de CosmosDb en presenteerden dit op een mooie website geschreven in ASP.NET Core. Administrators en bezoekers kunnen inloggen op dezelfde website, maar afhankelijk van de rol van het account, krijgen ze verschillende dashboards te zien. Administrators krijgen een overzicht van alle evenement die ze georganiseerd hebben. Ze kunnen nieuwe evenement aanmaken, huidige evenementen wijzigen en oude evenement verwijderen. Maar belangrijker is dat ze de details van elk evenement kunnen bekijken. Deze details omvatten niet enkel de datum, locatie en beschrijving maar ook de statistieken van het evenement. Omdat alles wordt opgeslagen op een CosmosDb, kunnen deze statistieken eender wat zijn. Wij hebben ervoor gekozen om het bezoekersaantal (enkel van geregistreerde bezoeker, want niet-gevolgde bezoekers worden niet verwerkt, om de GDPR te blijven volgen), geslacht, leeftijd en gemiddelde emoties weer te geven. Administrators kunnen zelfs nog meer details te zien krijgen door de statistieken van één bepaalde locatie of standje te bekijken. Op deze manier kunnen ze zien welke standjes de meeste bezoekers lokten en waar de bezoekers het gelukkigst waren. Een bezoeker kan inloggen met het account dat ze aanmaakten aan de booth. Zij kunnen zien welke evenement ze bezochten en hoe ze zich daarbij voelden. Bovendien kunnen ze zien hoeveel tijd ze spendeerden aan welke locaties of standjes, in het geval ze de naam van een bedrijf waarmee ze gebabbeld hebben vergeten zijn bijvoorbeeld. Zoals je kan zien, zijn het aantal mogelijkheden oneindig!