Inspiration
Parking for students at Duke is an absolute nightmare. Imagine spending 45 minutes circling a lot as you struggle to find that one free spot. That is every Duke students' constant state of parking. With very limited space for student parking, we try and find the closest spot possible, because no one wants to walk fifteen minutes in the cold or dark
What Does it Do?
Spot the Spot identifies what parking spots are currently in use and identities how many and where the free spots are. This allows an individual to know exactly where there is a free spot for them to take, eliminating the need to waste gas and time by circling lots.
How Did We Build It?
Mechanical: A custom harness was created so a camera setup could be successfully mounted to a Duke lamp post in order to get a live feed of a Duke parking lot. The harness was designed in SolidWorks and 3D printed. Somehow, it fit first try. Go us!
Programming:
Website: The website was built using Velo by Wix. It utilizes a map with live-updating buttons to showcase how many spots are open per lot. Depending on which side of campus you are on, you can select east or west to see lot openings. If you select a button with open spots or a lot from the lot menu, you can see the lot feed for that specific lot.
Server The server takes in images sent by the Raspberry Pi via post requests. From there, it saves the image, reprojects it to have an even view of every spot in the parking lot, and classifies each parking space individually. Each parking space has an ID, so it can mark it as taken or free. It uses a Tensorflow model trained from Google Colab for predictions, OpenCV for image processing, and Flask to run the server.
Raspbery Pi The Raspbery Pi has a simple job: take pictures and send them. The pictures are taken using Motion (a terminal application) and sent to the server using Python. It uses a USB webcam to take the pictures.
What Challenges Did We Run Into?
One big challenge was training the neural network properly. We needed data, and to get data we needed to have everything else set up. Everyone on the team is fairly new to the creation of neural networks, so navigating around underfitting and NaN values was a big task.
We also had challenges learning Velo by Wix. In the time of the hackathon, we were unable to design an interface that integrated with the server. However, after some trial and error, we were able to create a functional (enough) webpage.
What Accomplishments Are We Proud Of?
We are proud of ourselves for learning to use new tools in order to create our final product. We taught ourselves to use Velo by Wix overnight in order to create an interactive website for Spot the Spot. We also created a working neural network, a program to scan paper like a QR code to normalize and reproject it, and we 3d printed a harness and a number of model cars. And, most importantly, we had a good time.
What Did We Learn?
We learned that created a neural network overnight is very difficult. Furthermore, we learned to use Flask in Python in order to set up a server for our webpage, and how to use Velo by Wix.
What's Next for Spot The Spot?
Next for Spot the Spot is improving the neural network and expanding its capabilities to not rely on daylight and work on larger parking lots from different angles. Ideally, multiple cameras could be set up to monitor different areas of larger parking lots. When creating the neural network, we trained at an idealized angle, so additionally training and programming is absolutely necessary. Spot the Spot can be expanded outside of Duke. We could sell the product to other universities and parking lots / garages (such as Disney) to have a more seamless experience, with geolocation to automatically detect which parking lot someone is entering. All the company needs to do is list and label their parking spots on our maps and set up our cameras. Then they can let their employees and customers find easy places to park knowing which lots are full.
Built With
- motion
- python
- raspberry-pi
- solidworks
- tensorflow
- velo
- wix

Log in or sign up for Devpost to join the conversation.