mini project- face recognition

14
Mini Project- Face Recognition Author: University of Hertfordshire Date created: Date revised: 2009 Abstract The following resources come from the 2009/10 BSc (Hons) in Multimedia Technology (course number 2ELE0075) from the University of Hertfordshire. All the mini projects are designed as level two modules of the undergraduate programmes. The objectives of this project are to demonstrate abilities to: Handle camera setup, calibrate and capture still and video faces Pre-process images and extract features Perform face recognition by a) using existing methods and b) trying new techniques. This project requires the students to apply their abilities to handle image capture hardware and software. Since this is an active area of research, students will need to perform literature survey and discuss ( through brainstorm sessions) their performance characteristics. In addition, they will need to design and implement pre-processing and recognition codes leading to face recognition. Contents Section 1. Project Specification................................2 Section 2. Project Introduction.................................4 Section 3 Project Day 1 Activity Briefing Sheet.................5 Section 4. Project Day 2 Activity Briefing Sheet................6 Credits......................................................... 9 © University of Hertfordshire 2009 This work is licensed under a Creative Commons Attribution 2.0 License .

DESCRIPTION

The following resources come from the 2009/10 BSc (Hons) in Multimedia Technology (course number 2ELE0075) from the University of Hertfordshire. All the mini projects are designed as level two modules of the undergraduate programmes. The objectives of this project are to demonstrate abilities to: • Handle camera setup, calibrate and capture still and video faces • Pre-process images and extract features • Perform face recognition by a) using existing methods and b) trying new techniques. This project requires the students to apply their abilities to handle image capture hardware and software. Since this is an active area of research, students will need to perform literature survey and discuss ( through brainstorm sessions) their performance characteristics. In addition, they will need to design and implement pre-processing and recognition codes leading to face recognition.

TRANSCRIPT

Page 1: Mini Project- Face Recognition

Mini Project- Face Recognition

Author: University of HertfordshireDate created:Date revised: 2009

AbstractThe following resources come from the 2009/10 BSc (Hons) in Multimedia Technology (course number 2ELE0075) from the University of Hertfordshire. All the mini projects are designed as level two modules of the undergraduate programmes.

The objectives of this project are to demonstrate abilities to:

Handle camera setup, calibrate and capture still and video faces Pre-process images and extract features Perform face recognition by a) using existing methods and b) trying new

techniques.

This project requires the students to apply their abilities to handle image capture hardware and software. Since this is an active area of research, students will need to perform literature survey and discuss ( through brainstorm sessions) their performance characteristics. In addition, they will need to design and implement pre-processing and recognition codes leading to face recognition.

ContentsSection 1. Project Specification..........................................................................................2Section 2. Project Introduction...........................................................................................4Section 3 Project Day 1 Activity Briefing Sheet..................................................................5Section 4. Project Day 2 Activity Briefing Sheet.................................................................6Credits................................................................................................................................9

In addition to the resources found below there are supporting documents which should be used in combination with this resource. Please see:Mini Projects - Introductory presentation. Mini Projects - E-Log.Mini Projects - Staff & Student Guide.Mini Projects - Standard Grading Criteria.Mini Projects - Reflection.

© University of Hertfordshire 2009 This work is licensed under a Creative Commons Attribution 2.0 License.

Page 2: Mini Project- Face Recognition

Mini Project- Face Recognition

Section 1. Project Specification1. Learning Outcomes assessed (as taken from the DMD)

All Learning Outcomes specified in the Definitive Module Documentation are assessed as part of this mini-project, the specific Learning Outcomes are:

Knowledge and Understanding

Be able to analyse and breakdown problem tasks into manageable steps.

Integrate previous and concurrent learning and to use it to solve technology-based problems.

Be able to describe and implement the project life-cycle appropriately.

Be able to select appropriate Multimedia Technology, techniques and software for a given situation.

Skills and Attributes

Produce a solution to a defined Media and Broadcast Technology problem.

Carry out a simple critical evaluation of their solution.

Demonstrate an ability to work effectively in a team, small group and individually.

Demonstrate an ability to manage time and resources effectively.

2. Project Title: Face Recognition

3. Project Objectives: (technical, specific to this project)

To demonstrate abilities to: Handle camera setup, calibrate and capture still and video faces Pre-process images and extract features Perform face recognition by a) using existing methods and b) trying new

techniques

4. Project Summary: (50 words max)

This project requires the students to apply their abilities to handle image capture hardware and software. Since this is an active area of research, students will need to perform literature survey and discuss ( through brainstorm sessions) their performance characteristics. In addition, they will need to design and implement pre-processing and recognition codes leading to face recognition.

5. Introductory Lecture (2hrs) Content: General concepts and ideas of face recognition How to carry out research whilst brainstorm and analyse performance

characteristics Design, develop and test existing codes and create new techniques

6. Preparation Session (3hrs):Image capture hardware and software and introduction to face recognition

7. Day 1 Tasks: Literature search on face recognition algorithms Plan face database creation and organisation Brainstorming ideas on selection of techniques and face database creation

Page 2 of 9

Page 3: Mini Project- Face Recognition

Mini Project- Face Recognition

Generate system flow diagrams for implementation

8. Day 2 Tasks: Perform dry run of existing codes Code and test new algorithms Fine tune and evaluate the system developed

9. Facilitator guidance (key ideas to draw out from students):

Day 1: Identifying user requirements clearly through user analysis; Producing proper Flow Chart, Navigation Diagram and Storyboard

Day 2: Implementing the animation according to the design; Making sure all the user requirements have been met

10. Required Resources: Lab Facilities and Teaching SupportLab Resources: Stereo cameras, associated software, internet connection

1. PC Workstations with digital capture facilities, video editing software and/or MATLAB®.

2. Sufficient storage access for media files.3. Ph.D. student assistantship to help with the cameras (calibration, setup and

capture).

Teaching Resources: Tutorial exercises4. Preparatory session; tutorials for understanding domain knowledge5. Day 1, briefing pack containing instructions for the day with source materials.6. Day 2, briefing pack containing instructions for the day with source materials.

Page 3 of 9

Page 4: Mini Project- Face Recognition

Mini Project- Face Recognition

Section 2. Project Introduction

This project requires you to apply your abilities to handle image capture hardware and software. Since face recognition is an active area of research, you will need to perform a literature survey and discuss (through brainstorm sessions) the relative performance of each of the techniques that you have investigated. You will then be in a position to design and implement pre-processing and recognition code to perform face recognition. As a starting point, it is necessary that you familiarise yourselves with some of the basic concepts of image processing.

As a way of introducing yourself to the topic of Image processing, and to prepare yourself for this miniproject, work your way through the numbered points below, using any source of information you like (Wikipedia is a good place to start!), to familiarise yourself with each topic.

The histogram as a means of displaying data.

Characteristics of the Digital Image.

Definition and arrangement of pixels in a 2D image.

Concepts of image intensity and spatial resolution.

Point Operations: Where the new pixel intensity is derived from the current pixel intensity.

Neighbourhood Operations: Where the new pixel intensity is derived from the intensities of the neighbouring pixels as well as the intensity of the pixel itself.

Spatial Filters:In particular high-end low pass filters such as median filtering.

Image Morphological Operations: Shrinking/Erosion & Growing/Dilation, and Opening and Closing, all of which are perimeter operations.

Multiple Image operations: It is possible to compare the same pixel position in two images and add or subtract them, or take the maximum, minimum, average or difference, then repeating this for each pixel position to produce a new image.

When you feel comfortable with the above topics, please move on to the practical part of this session in which you will first perform video capture and then familiarise yourselves with a powerful software tool called “MATLAB” as you use it to pre-process the images to prepare them for the feature extraction and face recognition algorithms.

Page 4 of 9

Page 5: Mini Project- Face Recognition

Mini Project- Face Recognition

Section 3. Project Day 1 Activity Briefing Sheet

Scope of the project: This work involves the creation of a stereo face database for purpose of recognizing faces. The database will serve as input to Stereo Imaging Based Face Recognition System for the mini project carried out by Level 2 BSc students in the School of Electronic, Communication and Electrical Engineering, University of Hertfordshire.

Details of project: Two types of stereo cameras namely the STH-MDCS2-VAR-C and the STH-MDCS2-VARX-C stereo rigs will be installed on two different PCs. These cameras will be calibrated and verified, ready for the project.

A video sequence of each subject (person) is required to be captured under the following varying situations:

STH-MDCS2 with lens 6mmSTH-MDCS2 with lens 3.5mmSTH-MDCS2 with lens 12mmAverage time require per subject: ~10mins.

Estimated number of sample set: Number of students x Number of profiles = 11 x 10 = 110

Duration of project: Week #1: Image processing techniques using MATLAB®. Week #2: Video Capture and Face Database creation. Week #3: Face recognition – design and development.

Week #2: AM – Lecture,PM – Video capture, pre-process and face database creation.

Task for students: Save all face image samples on the local drive

Name the samples for each subject as 1.bmp, 2.bmp, etc.

Upload entire database onto server.

Use sample codes to extract features for the database. (PM session)

Assessment: Week 2 contributes to 10% of your overall assessment. This requires completion of the above tasks.

Page 5 of 9

Page 6: Mini Project- Face Recognition

Mini Project- Face Recognition

Section 4. Project Day 2 Activity Briefing Sheet

Tasks for todayMorning Session1. Face database (DB) extension using your faces captured with stereo camera.

2. Building 2 pre-processing tasks on images as a sequential operation.

3. Building 2 feature extraction tasks on (2) as a sequential operation.

Afternoon Session4. Building recognition tasks on (3).

5. Planning and performing different tests on the DB.

6. Upload results.

Detailed Tasks 1. Face database (DB) extension using your faces captured with stereo camera.

Choose 10 appropriate views from the video sequence. Add this to the existing 2 face DB you already have. There must be sufficient overlap between the samples chosen, yet they should look different from the previous sample. Higher marks awarded for right choice of samples chosen.

2. Building 2 pre-processing tasks on images as a sequential operation.

By sequential operation it is meant that the task must be carried out on the previous operation results and not on the original face images. For example, in Figure above, Pre-processing2 (block3) must be carried out on the results of Pre-processed1 Images (block2) and NOT on the Face DB (block1). Higher marks awarded for such careful operation.

Page 6 of 9

Face DB Pre-Processing 1 Pre-Processing 2

Feature Extraction 1

Feature Extraction 2

Feature DB

Testing Results

Page 7: Mini Project- Face Recognition

Mini Project- Face Recognition

3. Building 2 feature extraction tasks on (2) as a sequential operation.

Follow instruction in 2.

4. Building recognition tasks on (3).

How do you test an image?

Firstly, a test image is called a query image. Choose a query image of your choice.The query image must be compared with very image in your DB. Whichever matches the best is your result.

How do you perform this matching?

Subtract query from each DB image. Whichever image produces the minimum difference is the resulting match.

Use MATLAB® codes for subtracting 2 images. Try Help on MATLA. Resulting image is a matrix:

200 150 200 150

200 150 200 150

200 150 200 150

200 150 200 150

Query Image DB Image

Difference Image

Generate a single number that indicates how different the two images (DB and Query) are:

Column Total:

Repeat Column Total:

Page 7 of 9

200 200 200 200

200 200 200 200

200 200 200 200

200 200 200 200

0 50 0 50

0 50 0 50

0 50 0 50

0 50 0 50

0 50 0 50

0 50 0 50

0 50 0 50

0 50 0 50

0 200 0 200

400

Page 8: Mini Project- Face Recognition

Mini Project- Face Recognition

The smaller this value the better is the match.

Generate such numbers by comparing the query with all images in the DB.

Tabulate this result. The one that produces the minimum is the best match. Identify that image.You will need to write your own code for this task of subtracting 2 images and arriving at this single number.

All results of matching must be stored in appropriate directories.

5. Planning and performing different tests on the DB.

Perform the following tests:You may need to have separate directories for DB and Query images.

a. Test1: Test all known samples. Samples are different views of the same person.

b. Test2: Test some unknown samples for each subject. Subject means person.

c. Test3: Test unknown subject by taking some images of your classmates.

Expected Results:a. Test1: Very good performance.

b. Test2: Should still recognise well.

c. Test3: Should reject these images.

Tabulate your results for each of the above tests.

Report writing guidelines:

You may use the following headings, but can change them as you need to.

1. Introduction to face recognition.

2. Tasks involved. Capture, pre-processing, feature extraction, recognition, etc.

3. Expand each of the heading in today’s task.

4. Comment well on the results that you have achieved.

5. Tabulate results properly.

6. What did you achieve in these sessions.

Page 8 of 9

Page 9: Mini Project- Face Recognition

Mini Project- Face Recognition

CreditsThis resource was created by the University of Hertfordshire and released as an open educational resource through the Open Engineering Resources project of the HE Academy Engineering Subject Centre. The Open Engineering Resources project was funded by HEFCE and part of the JISC/HE Academy UKOER programme.

© University of Hertfordshire 2009

This work is licensed under a Creative Commons Attribution 2.0 License.

The name of the University of Hertfordshire, UH and the UH logo are the name and registered marks of the University of Hertfordshire. To the fullest extent permitted by law the University of Hertfordshire reserves all its rights in its name and marks which may not be used except with its written permission.

The JISC logo is licensed under the terms of the Creative Commons Attribution-Non-Commercial-No Derivative Works 2.0 UK: England & Wales Licence.  All reproductions must comply with the terms of that licence.

The HEA logo is owned by the Higher Education Academy Limited may be freely distributed and copied for educational purposes only, provided that appropriate acknowledgement is given to the Higher Education Academy as the copyright holder and original publisher.

Matlab® Simulink ® are trade marks of The MathWorks, Inc.

Page 9 of 9