* ATTENTION: all the images that are not in the original database will be delete after the exhibition! |
0 Comments
When I was presenting my first version to the professors, they mentioned that is it difficult for the visitor to know that I want them to put their head near the hole, it will be better to have something to tell them what to do such as a chin rest.
The design of the box:
- For the exhibition, it will be better to use a separate monitor and camera inside the box and hide the computer somewhere else (maybe under the table). Because it is challenging to adjust the position of the computer screen without changing the camera angle, which made it difficult to show what I want. - The lights inside the box are too bright and can't be adjusted. I should use adjustable lights so that I can change the brightness based on the environment. - For a long exhibition, a paper box is not stable and very easy to break. It will be better to use wood or plastic board for the exhibition. The program and code: - The OpenCV face detection is not very accurate sometimes, for example, it might detect an object as a human face. - The Eigenface face recognition also needs to be more precise, especially while the visitor is back. Sometimes it cannot find the right face. For example, if the visitor visited the box for the second time, the closest face might not be his/her previously saved face. - Maybe try the FFT +Eigenface method. After I created my own database, I combined it with the Eigenfaces code to test the result and also some other factors such as the distance. Distance: Based on many tests I had done, the distance between the Visitor's face and the Closest's face are usually above 2200 at my home and office(As the pictures above shown), especially when the lighting and the distance between the visitor to the camera doesn't change.
But when I set-up the box, I will need to check the distance again because the lighting and environment really affect the distance a lot.
For my database, I decided to use the average faces from different countries instead of the real faces database. I found all those average faces online, and most of them are created with the with the Galton’s method(also called composite portraiture) which was devised by Sir Francis Galton in the 1800s. When Sir Francis Galton created those average faces he was doing a study about anthropology and statistics. Around 100 years later this database has been used by the psychologists to study the psychology of facial attractiveness, according to that the average faces are considered more attractive. Which means people that look like the average faces tend to be more attractive. part of my database For my database, I only needed the eyes, nose, mouth, ears, and part of the faces since my program is designed to detect just this area of the face. Thus, I cropped all the average faces into the format I needed like the pictures above. (squared images less than 30kb that included eyes, nose, mouth, ears) References:
http://faceresearch.org/students/averageness Face Place For the final installation, I'm going to use the database from Face Place (a database of human faces by race and gender) but recreate it. To make the result more accurate, I had done some tests with the Eigenface programme. Here are some images from the database I used for the test, all the photos have the same background color and also the same dimension(280*200). Then I added a new face (Taylor Swift), with a black background and larger dimension, into this database. After I ran the programme, the new face can barely be analysis by the application as the image below show. Then I changed the background color and dimension of the new face with Preview (same as the other faces), and the result is totally different: As the image below shown, I then compared another image (changed to green background) of Taylor Swift in different hairstyle and mack-up, although the distance is big, it still got the correct result. To get a more accurate result with the Eigenface, the faces inside the database must have:
For the facial recognition part, I used the Eigenface method to recognize visitors' faces with my database and combined it with the previously OpenCV programme I made so it can detect LIVE faces and do the recognition. As the image above shown (in this example there were five faces in the original database), the programme will take a picture of the visitor's face whenever it detects a face and compares it with the database. (The first three lines of this image shows the progress of facial recognition which I will not show in the final installation.) After comparing LIVE image with the database:
The video below is a simple example I made to show how it works and I also had used it to find the distance between the same visitor so that I can add the 3rd function above in the final:
|
AuthorCategories
All
Archives |