I am creating a program that uses the “You Only Look Once” (YOLO) object detection system to visually identify handicap parking placards in video footage of cars parking in a handicap parking space. This program can hopefully help prevent the illegal use of handicap parking spaces by individuals who do not display a handicap parking placard in their car.
- darknet (requirement for YOLO): https://pjreddie.com/darknet/install/
- CUDA (allows you to run YOLO with your GPU): https://developer.nvidia.com/cuda-downloads
- OpenCV (allows you to run YOLO on video footage): https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html
- Approximately 50 images of handicap parking passes in cars to use to make the training and test sets
- Using a Linux system is recommended, but this process is still possible on a Windows system
- Use OpenCV Python libraries to change the images to black and white using Gaussian Thresholding. This will allow the final program to identify handicap parking placards of multiple different colors.
- Use the BBox Label Tool to draw a box around a handicap parking pass in images of cars.
- Convert the coordinates returned by the BBox Label Tool to the correct YOLO format.
- Separate these files into a training set and a test set. Create a file called train.txt that contains a list of the file paths of the training set images, and a file called test.txt that contains a list of the file paths of the test set images.
- Create two configuration files for YOLO: obj.data and obj.names. Adjust yolo-obj.cfg (the third configuration file) to match your settings and number of classes.
- Use these configuration files and the training set to train YOLO to identify handicap parking passes. Do this by typing the following command into the terminal: ./darknet detector train obj.data yolo-obj.cfg darknet53.conv.74
- Test the accuracy of your program with the test set.
- Use the pre-trained version of YOLO to identify cars in video footage. If a car is present in the video footage for an extended amount of time, assume it is a parked car. Only look for handicap parking passes in parked cars.
- Code methods that record statistics such as the percentage of cars that park illegally in a specific handicap parking space each day.