The Trafpoint Project
First of all, if you want to see a full presentation of it here it is :
To summarize what we developed during this project, it’s basically 4 separate application that works together. The point is that we are gathering data from people that are either entering or leaving a commercial transportation vehicle. It can be for example a bus. Then we use the time and positions between the entering, and the leaving to calculate how much the passenger is accumulating in environmental savings, by comparing with how much each passenger would otherwise pollute using a car. This information is used to build up an environmental profile that can be shared on facebook. This will create a gamification element where passengers can compete to get the best profile. Different rankings can also give different benefit, such as ticket discounts.
Here is a more in-depth explanation of the different applications we made, and what purpose they serve.
The Applications
The mobile application (Android)
We made an app using MEAN-stack (MongoDB, Express.js, Angular.js, Node.js) and Ionic. The app uses it’s bluetooth to communicate with Estimote beacons that are placed by the doors of the bus (or whatever vehicle) to detect whether the person using the app is leaving or entering the bus. When the person enters, the app starts logging positions. When the person leaves, it stops logging positions and publishes the complete travel to the cloud backend. There, the environmental profile is updated and the person get the updated profile back so that she/he can share it to Facebook.
Here are some images from the application :
The computer-vision application
We figured that we wanted to count not only those who had the app installed on their phones, but everyone entering or leaving the bus. To be able to do this, we used a Wifi-enabled Raspberry Pi , an off-the-shelf webcamera and we made some software with Python and OpenCV where we basically counted the motion flow through a hysteresis to detect if a person was leaving or entering the bus. The detection was sent to our backend, It worked! And you can see it being demonstrated in the youtube video above. Here are some screenshots :
The administrator application
We also made an application for administrator users, that has special privileges. This web-based application used the same backend as the mobile app, but it GUI was more tailored for larger screens. It was, like the mobile app, based on MEAN-stack, but not Ionic. From this application, the user could look at statistics and also how the statistics were changing with time. This was to revealing trends in the data. For example ; are some bus-stops more popular than others, and does it correlate with shopping campaigns in the malls? Such information can be useful for marketing purposes, but also for more practical things, such as city planning. Where should we build that new busstop, so that the flow of people crossing the streets is minimized?
The BigData application
To process the data, we made a Hadoop cluster. To get the best learning-experience we used 4 cheap home-computers with Centos Linux for our cluster. Not what you would use in a production environment, but good enough for building experience with Hadoop. To set it up we used Ambari. For doing mapreduce jobs we used Pig.
The Infrastructure
Both for developing and hosting the server application, we used Microsoft Azure. It is easy to set up servers, networks and resources using Azure, so that’s what we prefer. As I already said, we built the bigdata application on-premises, but we have also made Hadoop-clusters using Azure previously.
Financing and partners
For this project, we worked together with 7Sense and Flemming Sveen (marketing research and project- and business advisors in this case). It starting with a meeting initialized by IKT Telemark and Telemark Fylkeskommune. It had a budget of 600 KNOK whereas 300 KNOK was financed by Innovation Norway through the NCE MNT project.
Thank you everyone for your contribution.
What now ?
So we developed these technologies, now what? To be completely honest, we’re not sure. We can not commercialize it alone, we are too small and we don’t have the financial means to do that. Want to talk with us about this? Feel free to contact us 🙂
Thanks for reading.