We develop a violence detection system using deep learning and Flask. The system processes video footage, identifies violent behavior, and sends an alert email. We created a unique dataset comprising 1000 videos, evenly split between violence and non-violence categories, providing a balanced basis for model training. Frames were extracted from each video, resized to standard dimensions, and normalized, forming the feature set for our models. We employed various models including VGG19, VGG16, MobileNet-v2+LSTM, ResNet-50, and CNN+LSTM. Our best performing model was CNN+LSTM with an accuracy of 98%, closely followed by MobileNet-V2+LSTM at 95%. We developed a Flask application as an interface for our system, enabling real-time violence detection and enhancing user interaction. Our system identifies violent incidents, sends alert emails with detected frames and also violence location, and significantly improves response times.
The results are visualized in a bar chart, making it easy to compare the performance of the different models. Each bar represents a model, and the height of the bar corresponds to the accuracy of that model.
Home page of our flask application
when we run our project then we can show this interface
This is the Preview page of our Flask application
On our flask application we have feature where we can preview any uploaded video
In this interface we can see realtime result of violence of non-violence from each frame
On our application we have a submit button. when we press this button then our model starting to detect violence or non violence from the uploaded video
Automate Mail alert system
When our model detect violence and count 10 violence frame for safety then it will send a mail to the author with violence situation and location
For trail I use laptop's webcam
This is the main feature of our project that is detect violence or non violence from webcam