Skip to content
This repository was archived by the owner on Jan 31, 2019. It is now read-only.

Commit db954fa

Browse files
committed
Updated changelog, readme and todo
1 parent e27368f commit db954fa

File tree

3 files changed

+79
-22
lines changed

3 files changed

+79
-22
lines changed

README.md

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,65 @@
11
# COMP4932-Assignment3
22
COMP4932 Assignment 3 : Facial Recognition
33

4+
# About
5+
Face recognizer program. This is a program that uses your computers webcam to find a face, currently the best face inside the face space, to then find in the library of faces (prerequisite).
6+
7+
# Table of Contents
8+
* [Controls](#controls)
9+
* [Usage](#usage)
10+
* [Adding Faces](#adding-faces)
11+
* [Finding Faces](#finding-faces)
12+
* [FAQ](#faq)
13+
* [References](#references)
14+
* [Library](#library)
15+
* [Viola-Jones](#viola-jones)
16+
* [EigenFaces](#eigen-faces)
17+
* [License](#license)
18+
19+
# Controls
20+
1. Ctrl-Shift-C : Finds the best face in the image (the one that looks like the best face)
21+
2. Ctrl-Shift-F : Finds the face that we captured in the face [library*](#library) and displays the recration of it.
22+
23+
# Usage
24+
25+
## Adding faces
26+
> You will need to complete this 3 times, having your face within the box.
27+
> - Top of the head at the top of the box
28+
> - Bottom of the chin at the bottom
29+
> - Equal gaps on both sides of the head
30+
31+
1. First capture the face with [Ctrl-Shift-C](#short-keys)
32+
2. Add the face to the library with [Ctrl-Shift-C](#short-keys)
33+
3. Name the file `tempXX.bmp` where `XX` is the next number in the series of images
34+
35+
[FAQ](#faq)
36+
37+
## Finding faces
38+
1. Refresh the cameras in the list.
39+
- This will get all the webcams/cameras currently plugged in
40+
2. Select a resolution from the dropdown below it
41+
- Fastest results is to use a lower resolution as it is faster at finding the faces
42+
3. First capture the face with [Ctrl-Shift-C](#short-keys)
43+
4. Then test if the found face is in the [library*](#library) using [Ctrl-Shift-F](##short-keys)
44+
- It will then display the found face & average face reconstructed.
45+
46+
# FAQ
47+
_Question_
48+
The program keeps crashing after adding faces. Why is it doing this?
49+
> Most likely you have not added the correct amount of images. You must add *3* (no more, no less) images of your face for the program to work. Any more or any less and the program will throw an exception.
50+
51+
# References
52+
53+
## Library
54+
When talking about library, I am stating that the image library of the faces must be preset with your face to be 'recognized' by the software. The image must follow the [format](#format) of the faces to be searched for the program to work correctly.
55+
## Viola-Jones
56+
When talking about Viola-Jones I am referencing the method of Viola-Jones.
57+
[Wiki](https://en.wikipedia.org/wiki/Viola%E2%80%93Jones_object_detection_framework)
58+
[Slides-shortened](http://www.cs.ubc.ca/~lowe/425/slides/13-ViolaJones.pdf)
59+
# Eigen Faces
60+
The face finder method used is based on the paper found [here](https://en.wikipedia.org/wiki/Eigenface).
61+
[EigenFaces paper](http://www.face-rec.org/algorithms/PCA/jcn.pdf)
62+
463
# License
564
MIT License
65+
> *Note*: The Viola-Jones library used can be found [here](https://github.com/accord-net/framework) under [Accord-Vision](https://github.com/accord-net/framework/tree/development/Sources/Accord.Vision).

changelog.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
# Changelog
22
> YYYY-MM-DD HH:MM {Changes}
33
4+
2016-04-13 19:30 Added student's code and and finding the face comparing the face space
5+
2016-04-12 11:23 Using Viola-Jones method/library to find the face
6+
2016-04-11 09:33 Using AForge to get the video camera
47
2016-04-07 12:47 Added comments to ImageTool. Moved functions into ImageTool. Removed ImageChanger class (moved into ImageTool).
58
2016-04-06 23:58 Fixed moved functions to data class. Added toolstrip menu and extra button disable functions.
69
2016-04-06 12:11 Added .gif image support.

todo.md

Lines changed: 16 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,24 @@
11
# TODO
22
> Most of my TODO's for the project will be in the Visual Studio Task list. This is just an overview of the projects to do
33
4-
- [ ] Brute Force: **(20%)**
5-
- See notes in notebook on how to implement
6-
- Comment the shit outta this part
7-
- Basically search each point and try to find a space
8-
- Ask Tyler & Dimitry for some help
9-
- [ x ] Optimize face space: **(10%)**
10-
- thread?
11-
- searching?
12-
- [ x ] Motion tracking & Head tracking: **(20%)**
13-
- Differences between two images
14-
- Find the face based on the "blob"
15-
- see headtracking.gif for example of the "face" blob
16-
- "face" is a small blob ontop of a "body" a larger blob
17-
- Ask Tyler for some help
18-
- [ ] Background elimitation: **(10%)**
19-
- Haar?
20-
- I don't know what to do about this one. Just find the face and smooth out the edges?
21-
- I know I have to apply a filter
22-
- [ ] Integration of code provided: **(20%)**
23-
- basically we have to use this. Just get it working and this is done
4+
- [] Brute Force: **(20%)**
5+
- Search the entire image, 256x256 rectangle, then check to see if that is a face
6+
- [x] Optimize face space: **(10%)**
7+
- Viola-Jones
8+
- [x] Motion tracking & Head tracking: **(20%)**
9+
- Using Viola-Jones
10+
- Searches the image initially to find the face first,
11+
- Then remembers where the face is and searches locally around it to see if it is still in the image
12+
- [] Background elimitation: **(10%)**
13+
- Use AForge's Gaussian blur on the found face to eliminate the background
14+
> Maybe other methods as weel.
15+
- [x] Integration of code provided: **(20%)**
16+
- Get previous student code working with the face found
2417

2518
## Thoughs
2619
> Basic ideas and just a notepad for thoughts on the project
2720
28-
1. Find the best face
21+
1. [x] Find the best face
2922
- Instead of using just rekt[0], use rekt[i], looping through the faces and finding the best
3023

3124
for(int i = 0; i < rects.Lenght; i++){
@@ -39,4 +32,5 @@
3932
}
4033
}
4134

42-
> What functions do I need to call here? What am I actually calculating?
35+
> What functions do I need to call here? What am I actually calculating?
36+
2.

0 commit comments

Comments
 (0)