If you've been on Cal Poly's campus you know that the parking situation is deplorable. Trying to park during business hours is a hassle, and parking permits of all tiers are absurdly expensive. Even if one is willing to pay, there's no guarantee they'll be able to get it: the passes are distributed on a lottery system due to such high demand. It was this everyday problem that led us to begin thinking about how we could use IOT, large format data acquisition, and machine learning to create a solution.

What it does

The FlexPass relies on usage data of parking lots taken on five minute intervals over the course of a year. It begins as a find my car app where users can login to our portal and authenticate with a pre-shared password to receive information on where in the parking garage their license plate was last recognized.

This find my car app is used as a means for large format data acquisition. A new neural network requires copious amounts of data to create accurate predictions, and the usage of this app is what allows the FlexPass to optimize parking for businesses using it. Once the neural network is trained, it will be able to predict usage months in advance, with increasing accuracy as the app continues to be used. These predictions allow for users with lower urgency to find parking at times predicted to have lower usage.

How we built it

The find my car app uses five raspberry pis with attached piCam's as an example for a parking garage with four floors. The pis repeatedly run Automatic License Plate Recognition, averaging and comparing a multitude of different images and analyses for increased accuracy. When a pi is sure its acquired the correct license plate, it submits the plate with a timestamp its own ID (based on its installation location) to Google FireStore.

Once the data is in Google FireStore, it can be queried by our web interface created with Javascript authentication. The data is also logged for usage in our neural network model. The demonstration model was built by simulating parking lot usage with a Python script and generated with Kares and TensorFlow.

Challenges we ran into

Two major challenges were the vision processing capabilities of the raspberry pis, and creating properly "human looking" randomized data to train our demonstration model.

What's next for FlexPass

We plan on speaking with parking services at the next IHC Advocacy Board to see if they'd be willing to try our product on one parking garage.

Built With

Share this project: