School Shield

by Shreyas Kar

Why I built School Shield?

It was a cold winter morning inside Marshall County High School in Kentucky. At 7:57 AM as students were gathering in an open area prior to the start of classes, a 15-year-old student opened fire with a handgun, killing two 15 year olds at the scene. The alleged perpetrator's gun was seen by a camera in the weight room beforehand and that discovery happened when the investigators were looking at the camera footage. The eyewitness accounts suggested that the perpetrator's eyes were "lifeless" suggesting emotion is something of importance. That inspired me to create an application to detect the violent objects and combine it with the emotion to alert the nearby adults in the school for a possible violence. I realized that cameras were equipped in the school and we learned many things about the incident after the disaster. If somehow these video feeds can be analyzed live and meaningful insight can be obtained realtime and authorities are alerted before the incidents, there is a greater chance of averting these harmful incidents and saving numerous innocent lives.

What is School Shield?

My "School Shield" app detects violence from the live video feed and sends an alert to the nearest teachers and security officials. Specifically, emotions and weapons are detected to determine if a violent incident is about to take place. The app detects the dangerous objects like guns, knives, sharp long objects and combines with emotion of a prospective perpetrator to send an alert to nearby teachers and security officers and automatically sounds alarms.

The live video feed from the camera is fed through the machine learning based convolutional neural network developed by me, having 10 alternate convolutional and max-pooling layers followed by two fully connected layers to classify if the detected object is one of the knives, guns, other sharp objects or fist and simultaneously detect the emotion of the person involved in that frame. If a violent object is detected with more than 70% confidence an alert is sent to the nearest teacher and security officers in the school using Python-based Notify library and if the detected object is with 40% to 70% confidence for being a violent object, then the emotion comes into play. If the emotion is detected as angry, sad, or fear for more than 60% confidence a text and email alert is triggered. These alert confidence levels are configurable. Each camera is tagged along its location inside a database and the system knows who the teachers are supposed to be nearby that point as per the class schedule.