I m working on a project that I have to use eigenface but I have some uncertainty and I dont know how to deal with it. There are some tutorials about it on internet but I can't understand what exactly they mean.
This is what i know:
First of all you have to make image matrix to a vector. So you have to attach next rows one after another to the first row.
Then if we have many images of one person, we add up every certain index of all images and divide it count of those images. so
mean[1]= image1[1]+image2[1]+..../images count
Questions:
After that we have make deviation image. First question is we do it for every row image? So:
divImage1[1]=image1[1]-mean[1];
So we have to make covariance matrix of deviation image; so:cov(image1)=cov( transpose(devImage1)* devImage);
Next question is: it's a big matrix.
How should I deal with it? I read that you can just calculate subImage of it. Or as it's a symmetric matrix, you just have to calculate befor diagonal elements. but im not sure its the main idea
So I have to calculate eigenvector of this matrix. And this is our eigenface. So we have one eigenface for every image of one person?
Next question is: I don't know when they give us a new image how we should work with these eigenfaces to recognize that is some one?