Skip to content

Build and train a working model to classify violence behavior on the sequence of frames, with use of recurrent neural networks, optical flow, image segmentation and machine learning methods.

Notifications You must be signed in to change notification settings

OlaPietka/Violence-Recognition-System

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Violence Recognition System

With use of recurrent neural networks, optical flow, image segmentation and machine learning methods, the trained model is capable of detecting violence on sequence of frames with accuracy of around 88% (with 3 percentage points of error).

Every module is described separately in module directory.

Results

We manage to achieve:

  • 88% of accuracy with our solution
  • prediction every 1.5 second (with 30 FPS and 4 threads on CPU)
  • 3 percentage points of error

Used image transormations

Moduls sample results

Violence Recognition Network that uses VGG16 network as base and LSTM as one of the top layers

Flow Gated Network module based on Violence Detection project

Dangerous Sound Detection Network module for gunshot detection using VGG16 and transformation to spectrograms

Dangerous Item Detection Network based trained with YOLOv3 and translated to Tensorflow library with usage of tool used for translation

System architecture

Sequence view

Main system loop process

image

Deployment diagram

image

Dataset

We used RWF-2000 dataset for training our models.

Directories structure

System configuration

docker-compose.yml - start file with configuration options

  • CAM_ADDRESS - Video stream adress
  • FGN_ENABLED - Enable/disable FGN module
  • VRN_ENABLED - Enable/disable VRN module
  • DIDN_ENABLED - Enable/disable DIDN module

Booting the system

docker-compose up --build - Starting up the containers

localhost:5341- URL adress for Seq

About

Build and train a working model to classify violence behavior on the sequence of frames, with use of recurrent neural networks, optical flow, image segmentation and machine learning methods.

Topics

Resources

Stars

Watchers

Forks

Languages

  • Python 68.7%
  • Jupyter Notebook 30.4%
  • Other 0.9%