Face Recognition

completemiscreantΔιαχείριση Δεδομένων

28 Νοε 2012 (πριν από 4 χρόνια και 8 μήνες)

348 εμφανίσεις

Smiling
Faces



02/28
/2010


Page
1

of
3

Filename: 2010_Spring_CS4893_Smiling Faces_Work Plan_Ver 1.00


2010_Spring_CS4893_Smiling Faces_

Work Plan

Version:
1.00

Introduction

The main purpose of our project is to build a Face Recognition application. Face Recognition is the
process of matching a
n image of a

person’s face to a
nother

image


of that person s
tored in some sort
of a record (i.e. database, physical file, etc).
Our application will capture an image of a person from live
video camera, detect his/her face, and try to search for it and match it against an image in a database.

Previous
implementatio
ns of Face Recognition software have

had
problems recognizing faces due to
variation in Pose (angle of a person’s face), Illumination (lighting), and Expression (of a face).
Thus our
objective is to first build a prototype that can successfully recognize f
aces in a controlled (constant pose,
illumination, expression) environment.

Objective

A prototype must be constructed using OpenCV face recognition algorithms. After a working prototype
has been constructed, our team must find ways to improve face recogni
tion algorithms and improve the
accuracy, efficiency of

the

recognition process.
The process of building the prototype can be broken
down into the following five components (not needed to be built in any
specific
order).



Building an
Image Database



Captur
ing

an image from live video camera



Processing an image in order to detect a face



Matching the captured image against
the image database



Creating a User interface to control the application

Constraints



The image database must be built using an open source
database



The application must be compatible to be run on any windows operating system



A user guide/ manual must be created for the application



Only open source face detect and recognition algorithms can be used



The application and the image database should

be operable

with minimal maintenance

in the
future

after the Spring 2010 semester


for educational purposes

Smiling
Faces



02/28
/2010


Page
2

of
3

Filename: 2010_Spring_CS4893_Smiling Faces_Work Plan_Ver 1.00

Strategy for Action

Our first task is to build a working prototype.

Most of our coding will be done using C, C++ programming
language due to its e
ase of implementation with OpenCV face recognition library, efficiency, and
performance capabilities.

After that more research must be done in order to improve the face
recognition algorithms and build
more

accurate face recognition software.
The improvem
ents and the
method for researching them have yet to be discussed with our sponsor Dr. Hung.

Bellow is our plan of
action for each component of our application

prototype.

Image Database

A computer image is basically an array of pixels (a picture element).

For the prototype appl
ication all
captured images will be stored in an Extens
ive Markup Language (XML) file, for the initial testing. After
the entire prototype has been asse
mbled (including UI)

the image storing process will be done using
PostgreSQL data
base application
; instead of using

an

XML file
.

The current OpenCV face recognition algorithms already have a specific format for storing the image
data in an XML file. This format will be used to design and create the PostgreSQL database.

Image Capture

A Logitech C905 USB 2.0 Webcam provided by our sponsor, Dr. Hung, will be used to capture an image.
The computer controls, signal to capture the image will be coded by using an Open Source C
++ Video
library that integrates easily with Visual Stu
dio Windows

Forms applications

used for creating our User
Interface.

Face Detection and Image Processing

After an image is captured it will be processed using OpenCV face detection algorithms in order to
detect a face and isolate it into a separate image.
The algori
thm used for face detection is Haarcascade
classifier, which can detect a face or facial features that are specified.
Along with Haar algorithm, native
OpenCV functions will be used to process the image.

Face Recognition

The OpenCV algorithm used for this

component is called EigenFace and Principal Component Analysis
(PCA). There are two steps that are needed in order to match an image against the images in the
database. First, the OpenCV recognition code and the algorithm must be trained with the stored i
mages
in the database. After the algorithm is trained it is ready to be used to match a captured image against
the images that were trained to it.
Both of these steps will be done using native OpenCV functions, C++
pre
-
built functions, and OpenCV EigenFace

algorithm.

User Interface

User Interface will be designed and built using Visual Studio 2008 Windows forms applications. It will
contain controls to take an image, store it in the database, or match it against
a

stored image. The video
capture feed will
be inserted into the User interface, as we
ll as recognized image display.

Smiling
Faces



02/28
/2010


Page
3

of
3

Filename: 2010_Spring_CS4893_Smiling Faces_Work Plan_Ver 1.00

Timeline

Events

Due Date:

Prototype with out UI

8
-
Feb

Video Capture implementation with UI

23
-
Feb

Prototype with UI

integrated

8
-

March

Design Documents UML, Use Cases, Test Cas
es

8
-
March

Database Design document ERD plus PostgreSQL Database creation

15
-
March

Complete Prototype with database

integrated

22
-

March

Prototype testing of all the test cases

22
-

March

Research Improvement Methods

29
-
March

Integrated

Product with Im
provements and UI polish

12
-

April

Full product black box testing

1
2
-
April

Final product with bug fixes from black box testing

19
-
April

Complete Software inserted into a distributable package (i.e. CD)

19
-
April

Draft Presentation

26
-

April


Budget

As

of now the only monetary budget determined is the cost of Video camera. We will be
using

the

Logitech C905 USB 2.0 WebCam
, which will cost $89.99 + shipping

& handling.

This purchase has

already

been approved by our sponsor.