FinalPPT (Do Not Edit)

Download as pdf or txt
Download as pdf or txt
You are on page 1of 21

VIDEO-SURVILLANCE-AND-TRACKING-SYSTEM

USING FACIAL RECOGNITION

Presented by: Under the guidance of


Gourav r [4VV20CS042] Dr. RAMAKRISHNA HEGDE
Hrithik k Gowda [4VV20CS053]
Associate Professor, Department of Computer Science & Engineering
Iftheqar Ahmed [4VV20CS054]
Keerthan K [4VV20CS059]
ABSTRACT & INTRODUCTION

CCTV cameras are widely used for monitoring public and private areas, ensuring
constant surveillance.

When someone goes missing, CCTV footage becomes essential for search teams.

It provides clear evidence of where the person was last seen, helping to map out
their movements and potential routes.

However, manually going through this footage can be slow and tiresome.

That's where our project, "The Third Eye," comes in. We're dedicated to simplifying
this process, making it quicker and real-time.
SYSTEM ARCHITECTURE

Server: Backend:
Apache (Part of Flask) Python
Web Framework: OpenCV (for image processing)
Flask (Python) Database:
Frontend: SQLite3
Jinja (part of Flask) CSV files
HTML
CSS
Bootstrap 5 (Frontend Framework)
Software Requirements

Python 3.11
Flask Web Framework
Web Browser

Hardware Requirements

Device capable of accessing a web browser (e.g., Laptop,


Phone)
CCTV Cameras
Server with a web server such as Gunicorn, uWSGI, or
Apache with mod_wsgi
Work Flow

Image of the Missing Video stream from CCTV


Person Cameras

Save to logs

Detect the face from the Faces are extracted from


uploaded picture the Frames

If Match is
Found
Find the encodings of the Store the Data Base with Face Compare the Find the Encodings of the
face Face Encodings encodings Face Encodings face
Workflow

Obtain the CCTV footage, comprising a series of frames, with each frame
representing an image captured at a defined rate per second.

Analyze each frame individually to identify any faces present within it.

Utilize face detection algorithms to accurately locate and extract facial features
from the detected faces.

Compare the extracted facial features of each detected face against the stored facial
data of the missing person within the database.
Workflow

Implement facial recognition techniques to determine the likelihood of a match


between the detected faces and the facial data of the missing person.

Repeat the process for each frame in the CCTV footage to comprehensively search
for the missing person across all captured images.

If the match is found, the timing and location is logged in the database.
find faces encode Store in
[1,2,9,5,8,................]
faces db

exists in db
Check if
find faces encode [8,5,7,9,,6,...............]
faces [1,2,9,5,8,................]
face_recognition Library

The process of extracting Face


Encodings relies on the
face_recognition library.

It is constructed using dlib's cutting-


edge face recognition technology.

This model is constructed with deep


learning techniques and boasts an
impressive accuracy rate of 99.38%
on the Labeled Faces in the Wild
benchmark dataset.
Dlib

Dlib is a modern C++ toolkit containing


machine learning algorithms and tools for
creating complex software in C++ to solve real
world problems.
When a missing persons image is added, the face_recognition library is used to
encode the image and store it in database

The Application generates frames from the camera using openv, and face
recognition has been integrated.

The face_recognition library is utilized to perform face detection and recognition.

For each frame captured, faces are detected using the face_recognition function and
encoded using the face_recognition function.
The encoded faces are compared with the known faces stored in the database to
identify any matches

Once a match is found, a rectangle is drawn around the recognized face, and the
database is updated accordingly, marking the person as found.
Labeled Faces in the Wild

Labeled Faces in the Wild is created and


maintained by University of Massachusetts.

Labeled Faces in the Wild is a public


benchmark for face verification, also known
as pair matching. No matter what the
performance of an algorithm on LFW, it
should not be used to conclude that an
algorithm is suitable for any commercial
purpose.
The Application

Login Page

We've set up a simple login page


using SHA-256 encryption.

Admins logging in will be directed to


the admin dashboard.

Regular users will be directed


straight to the logs page, limiting
their access to major actions.
The Application

Dashboard

The admin has access to the dashboard.

The dashboard features a camera feed.

Various options are available on the


dashboard, including adding a new user.

Another option allows for registering a


missing person.
The Application

Add Users

The admin has the ability to add a


new user.

During the user creation process,


the admin can designate the user's
role as either "User" or "Admin".
The Application

Manage Users

The admin can elevate a


regular user to the admin role.

Additionally, the admin has


the authority to remove users
from the system.
The Application

Logs

The logs contain detailed


information about the last known
location of a missing person,
updating every second to provide
a brief overview of their
movements.

Normal users have access to the


same dashboard, but without
access to additional features.
The Application

Missing Register

A clear picture of the missing


person is included.
Their name is added for
identification purposes, facilitating
their addition to our logs.
Scope for further improvements

Utilize Python's multithreading concept to create separate threads for each camera,
enhancing efficiency and reducing memory consumption.

Implement validation during the upload of a missing person's picture to ensure that the
image contains only a single person.

Verify the picture to confirm whether it contains a single individual before proceeding
with the upload process.

Currently, These improvements couldn't be implemented currently


due to hardware constraints
Thank You

You might also like