Polyhx-Team name: Shev-Peng-Li-Guo
Montreal, the so-called Paris of North America, is one of the main touristic attractions in Canada. With around 10 million tourists visiting Montreal and a population of 4 million, it is easy to see why parking is becoming a greater challenge more than ever before. Therefore, we have created an app that makes the understanding of multiple parking panels easy.
What it does
Proper park’s purpose is to translate multiple parking signs into an easily read format so that restrictions are respected and parking tickets are avoided. By snapping a picture of the parking panels, the mobile app deciphers the rest for you.
How we built it
We had some previous experience with applications like phonegap and Xamarin, but we were never really impressed with any non-native mobile development tools. This time we tried to test our luck and went with React Native which ended up paying off big time. We managed to very easily create a beautiful application for both iOS and Android and link it to our back-end using packages that we are familiar from using node.js. Our back-end was more of a challenge. First we had to analyze the photo we received from the phone. At first, we tried to use an LSTM based OCR processing tool called Tesseract. It seemed to work properly only half the time, so we tried to find something better. The big problem with OCR is that all the good systems are proprietary so we had to go with Azure's OCR offering. It works quite well. After getting the text out of the image we had to process it. We had made an attempt at vectorizing the words we got and tried creating a conditional random field model. The problem is that they mostly ignore the order of words, so it didn't work for us. Something like an LSTM would have probably worked better, but we didn't have enough data and it was outside the scope of this hackathon. So we resorted to designing a hand made tool-set that we used to process the words. Overall from a technical perspective the whole process works quite well.
Challenges we ran into
It was a challenge to find the right program to analyze the pictures. Even after finding Azure, it was a problem to have the right words printed in the right sequence.
Accomplishments that we're proud of
It was a nice challenge to use React Native for the first time and to create an app both for Android and iOS. It was unlike anything we have ever used before since none of us have tried creating a mobile app before.
What we learned
We are particularly proud of the website that was made entirely from scratch. It was a particularly nice experience to visually create the site the way we wanted it to look.
What's next for Proper Park
We would like to add a time table that represents better the allowed parking times in a week, instead of telling you if you can park right now or not. It would also be nice to be able to decipher more complicated panels that contain, for example, reserved residential parking spaces.