A big data project for monitored parking
Guided by Dr Dan Feldman
Consider a scenario of a driver entering a parking with his car, he can’t know if there is a free spot to park in, so he may waist a lot of time searching for a free spot. In a realistic settings, a solution approach was given by marking the free spots with a green light on top of it, or by red light if it has been taken. The limit of this approach is that meanwhile the driver is going to park in a “free spot”, someone else can precede him.
With the advent of the technology and the spread of using robots in daily lives, we aim at exploit this progress to offer a better solution for the challenge of finding a free spot in a parking area. Computer vision and object recognition methods in specific have been got a reliable degree of maturity that can be used for developing a system based on it. To meet our goal and to serve the drivers with a better parking solutions, we simulate the real life settings in a laboratory terms. A robot would place a car, and a mounted camera (somewhere in the parking area) would “search automatically” for free spots, reserve it and notify the driver.
1- We first detect the free spots on the parking.
2- Compute the distance between the robot and all free spots.
3- Navigate the robot to the nearest free spot to park in.
1- Before the navigation starting, We take an image to the parking, fix it by smoothing to avoid noises.
2- Detect all the blobs in the taken image.
3- Detect the free spots by computing the histogram of each blob, If we detect a many pixels which aren’t white so we can use it as indication that this spot is not free.
4- Compute the centriod of each free spot for navigations usage.
5- Find the nearest free spot from the robot by computing the euclidean distance between robot and all the centroids.
6- Navigate the robot to park on the nearest spot which found in previous step while running two threads, a thread used for navigation while the other usid for tracking.
The code was written in Python, Based on the following modules: