Skip to content

andreaspapav/sapient-platform

Repository files navigation

SAPIENT Platform - The intelligent way of monitoring CCTVs

CCTV ANALYSIS FOR CAMDEN COUNCIL

The area of Camden its well known for its high levels of criminal activity. The project assigned to our team is related with the CCTV monitoring of the whole Camden Borough. Our client is the Camden Council and they have asked us to develop a software that will use AI(Artificial Intelligence) as well as ML(Machine Learning) to monitor all their CCTVs in order to notice any anti-social behaviour captured by the cameras.

Our solution is to build three different types of image recognitions, which are Posture, Face and Item. And then, we will apply machine learning to them in order to train the machine to recognise the behaviour and the appearance of objects. After that, we will integrate them into a web application in order to show that the combination of machine learning and image recognitions that we built is truely functional. Finally, we will train the neural network and make it smarter and more accurate over time.

Our achievement is a web application allowing the machine to perform the image recognition (posture, face and item) on the image, video and live video uploaded by users.

Key Features

Posture Recognition API

Developed a posture recognition which can recognise any amount of humans in the frame and the postures of sitting, standing and laying.

Face Recognition API

Added the face recognition api as it could be used to seperate each person captured in the video footage as an individual. Its used in order to track down people moving in the same area over time as it can be considered suspicious behaviour. In the future it can be used with association to the police database in order to track down wanted fugitives.

Object Recognition API

The most important feature in the web application, used to recognize objects in the video footage. Any dangerous or suspicious objects, knife or guns, will be flagged and notify the users in order to pay attention on the specific camera.

Deployment Manual for AzureVM Integration

This session has 4 sections to deploy:

1.AzureVM
2.Linux Server Configuration
3.Posture Recognition Installation
4.Face/Item Recognition Installation

AzureVM

Login to the Azure Dashboard, and deploy a ubuntu virtual machine. In details, please make sure the following:
1.open the port for ssh, http and https
2.GPU family virtual machine
3.Attaching an additional block storage disk to the VM

Linux Server Configuration

After you start running the Ubuntu virtual machine, make sure you first refresh the apt-get repository, and then install the followings:
1.php
2.Anaconda
3.swig
4.apache2
5.essential-tools
6.ffmpeg

After the installation, perform the followings:

1.git clone out 'sapient-platform' repository
2.setting the default directory of the apache to be '/var/www/sapient/Web'
3.sudo chown www-data:www-data /var/www/
4.sudo chmod 755 -R /var/www/
5.adding your current user to www-data group

Posture Recognition

The following is the installation guide:
1.conda create -n posture python=3.6 pip
2.source activate posture
3.pip install -r requirements.txt (inside the tf-pose-estimation directory)
4.pip install tensorflow
5.pip install opencv-python pandas sklearn numpy
6.cd tf_pose/pafprocess
7.swig -python -c++ pafprocess.i && python setup.py build_ext --inplace

Face & Item Recognition

The following is the installation guide:
1.source activate posture
2.pip install -r requirements.txt
3.pip install google-cloud-vision
4.export GOOGLE_APPLICATION_CREDENTIALS="/var/www/sapient/FaceItem/service-account-file.json"

Deployment Manual for Local Integration Using Flask

Install all the requirements found in the 'requirements_pip.txt' on your system or virtual env then pull our Flask Implementation version repository, https://github.com/jasonshaoshun/OpenCV_Web . Installation instructions can be found on the README file of this repository.

Demo Video

IMAGE ALT TEXT HERE

This is our video demo created in order to demonstrate the feautres of our software to our client.

About

Image Recognition Open-Source Software using AI and ML

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published