Coming from Atlanta, we hear about robberies and carjackings very often on and near campus so we decided to leverage the camera network on campus and use it to track vehicles.
What it does
The program uses security and traffic cameras and combines it with computer vision technologies to track vehicles and maintain a live database with its license plate number, color, and other labels that might describe the vehicle (like make model etc). When you need to search for a specific vehicle, you can input the details on the web app and the program will find the closest matches in the database based on the similarity index algorithm that we developed. This will give information about the path of the vehicle and will allow strategic placement of police cars to intercept it.
How we built it
We use opencv to detect for motion in the traffic camera footage. Once motion is detected, opencv captures an image and runs it on the Google cloud vision api to get labels that best describe the image and extract the license plate text from it. The program itself is in Python. The front end is created using react and material UI components. It syncs multiple video sources so you can see a live view. It takes arguments to search the database for matches.
Challenges we ran into
Creating a data structure to store all the data returned from the Google vision api. For the program to be useful, the searches have to be very quick so we had to store the data such that it was accessible as efficiently as possible so we stored all data in the for of a graph. Another challenge we ran into was choosing the label descriptions that are useful.
Accomplishments that we're proud of
It works! (opencv is prety cool to be honest)
What we learned
A lot about computer vision and the different technologies using CV such as opencv and the Google api.
What's next for !getaway
Talking to campus authorities and making the idea a reality!