Navigate with ease, locate open spots quickly, and get notified about busy lots. Find parking stress-free, save time, and reduce carbon emissions with our parking lot tracker. Join us in creating a greener future, one parking spot at a time.
git clone https://github.com/sunami09/parkingprocessing.git
pip3 install -r dependencies.txt
python3 main_.py-
Starting Page
- The program starts and a pop-up window appears.
-
Learn More
- It gives you a brief description of what Spottr does.
-
Try Out!
- It gives you option to select from:
-
Parking Spot Detection
- It detects all the spot that are available and marks them as green while others red.
-
- Our system requires video footage of parking lots from a top/bird's-eye view.
- We conducted an internet search to find the necessary videos for our project.
-
- We utilized the OpenCV library to read, write, and display the videos.
- We created two Python files, 'ParkingSpaceMarker.py' and 'main.py'.
-
- As running a for-loop was inconvenient due to irregular spacing in the parking lots, we manually marked the spots using rectangular boxes.
- We then stored these coordinates in a binary file for 'main.py' to utilize and mark the spots on the video.
-
- We read the binary file and marked the parking spots as empty or occupied on the video.
- To increase focus and reduce distractions, we converted the RGB image to grayscale.
- We applied Gaussian blur to reduce visual noise such as shadows and reflections and to detect the edges of the parking spots more accurately.
- We then used adaptive thresholding to segment the foreground and background and create a binary image based on pixel intensity due to poor lighting conditions in the footage.
- We applied median blur to further smooth the image and reduce salt-and-pepper noise.
- We used dilation to fill small gaps and reduce the risk of false negatives.
- Finally, we counted the number of non-zero pixels in the binary image to determine which parking spots were occupied or available.
-
- We utilized the tkinter library to create a more user-friendly interface instead of command-line interaction.



