Inspiration

Having spent long periods of time (sometimes 30-40 minutes) looking for parking spots in large parking lots, we wanted to come up with a program that would let us know if there were any available spaces ahead of time so we could find a parking spot quickly.

What it does

Using a camera over a parking lot, the software was supposed to scan the lot, highlight any available spots in green (and increase a counter of available spots simultaneously), and generate an animated image of the lot with the green spaces shown.

How we built it

We used OpenCV and its Java library to train the program to detect a fully open position (differentiating between regular and handicap parking). This required hundreds to thousands of positive images (pictures of empty spaces) and twice to three times as many negative images (images that were similar, but weren't fully empty spaces). The software would then take a test image and highlight the available spaces accordingly.

Challenges we ran into

The biggest challenge (and reason for incompletion) we faced when developing this program was generating an XML file with the training data to teach it to detect open parking spots. The original images we had cropped were of different dimensions (which doesn't work with OpenCV), so we used an open source of cropped images of similar proportions. Unfortunately, the training process to generate the XML file requires 1-4 days to complete.

Accomplishments that we're proud of

Completing the basic functionality of face detection using OpenCV.

What we learned

How to use OpenCV once we had an XML file with the training data.

What's next for ScanPark

Completing an accurate set of training data and finding a way to implement this software in the algorithms for fastest routes in directions (taking into account amount of time needed to find a parking spot as well as traffic and distance) in programs like Google Maps.

Built With

Share this project:

Updates