This application is an automated system of traffic monitoring to detect violations. As of now, helmet violations detection is supported, but in future I am planning to add wrong side driving detection. The program automatically generates traffic violation tickets (or challans) based on registration details added to the database.
Demonstration of the application along with the explanation of the source code is shown in this video.
This project is based on three currently existing git repos:
Each of the above repos have been modified to suit my application and can be found in their respective directories with the original README and LICENSE. Since the first repo is licensed under GPL v3.0, this repo will also be licensed under GPL v3.0. Refer to LICENSE file for details.
Follow these instructions:
I) Initial installation and Downloading Large Files (>100 MB)
$ git clone https://github.com/sriramcu/yolov3_traffic_violations
$ cd yolov3_traffic_violations
$ chmod +x setup.sh
$ ./setup.sh
II) Set up API key for ANPR
Get your ANPR API key from here. Name this file as api_key.txt and place it in the current folder(yolov3_traffic_violations).
$ python3 yolov3_helmet_detection_gui.py
Above command launches the GUI from where you can run the program.
Helmet Not Detected (popup indicates violation, shown in challan below)
Challan (ticket) generated by the program.
That's all for now. But much more is still to come in the future! Stay tuned.