https://www.youtube.com/watch?v=HiT5dHDHZEk
- Problem Statement
- Solution Architecture
- Features that constitute the solution
- Why use AWS for this project?
- End to End Product Demo
- Challenges Faced
- References
- Contact Me
The idea of project is to detect violence and perform analytics on it. We support violence being detected 2 forms:
- Realtime violence detection on surveilance cameras
- Violence detection on recorded videos.
On detection of violence,we wish to alert the police in a timely manner and also push these crime events to the backend data storage and perform analytics on them to gain insights.
The architecture has 3 main features:
- Live monitoring for real time surveilance
- Uploaded video violence detection for recorded videos
- Analytics using Lex bot and Kibana
-
The Live Monitoring feature continuously monitors the video stream from a IP surveillance camera. It uses the deep learning model that we trained using AWS sagemaker. When violence is detected in the live stream it alerts to the Police with the URL of the camera and the location of the camera using AWS Simple Email Service. When the user wishes to stop the monitoring, the violent frames that we captured during the monitor are stored in S3 and the S3 URL is sent as evidence in another email using the AWS Simple Notification Service.
-
The Uploaded Video Violence detection feature intends to reduce the human effort in detecting violence in long cumbersome videos. It pretty much follows the same flow except that the video is uploaded from the users system,also additionally this feature uses AWS Rekognition to find the type of crime if violence was detected. Both the above features pushes the crime metadata to Elasticsearch. This acts as the data source for analytics using lex bot on which we serve the customers with customized crime analysis graphs.
-
Finally we have also provided a Kibana dashboard with summary statistics on the entire crime data and the users can create new visualizations, edit existing visualizations with custom filters etc.
1)First of all our business logic and the webserver is hosted on EC2. EC2 provides on demand infrastructure that is optimized for deep learning workloads.
2)Sagemaker takes care of the infrastructure that is required for training and testing heavy deep learning models.
3)The data we mostly deal with are Frames and Videos and S3 proves to be one of the best for blob type storage.
4)The most critical feature of the project is the alert system. It can really make or break the purpose of saving lives. Hence it needs to be highly available and scalable and This is where SNS and SES come to the resque.
5)Data ingestion into Elasticsearch need not be real time hence we decouple it from business logic and make asynchronous and event driven using SQS and lambda triggers.
6)Lex with its NLU capabilities helps us serve the users with analytics by making the entire user experience interactive.
https://www.youtube.com/watch?v=F7TO270YHhY
- The major challenge was hyperparameter tuning to reduce the false positivity rate to the minimum.
- Building a highly available alerting mechanism.
- Leveraging the NLU capabilities of Amazon Lex.
https://www.kaggle.com/datasets/odins0n/ucf-crime-dataset https://www.kaggle.com/datasets/mohamedmustafa/real-life-violence-situations-dataset https://data.cityofnewyork.us/Public-Safety/NYC-crime/qb7u-rbmr
https://appsource.microsoft.com/en-us/product/web-apps/oddityaibv1590144351772.violence_detection?tab=overview https://www.abtosoftware.com/blog/violence-detection https://zeroeyes.com
Please feel free to contact me for anything in pertinance to the project.
Contact Method | |
---|---|
Personal Email | rahulvasan30@gmail.com |
School Email | rs7671@nyu.edu |
https://www.linkedin.com/in/rahul-vasan/ |