Face recognition using eigenface

조회 수: 8 (최근 30일)
Halim
Halim 2012년 5월 1일
댓글: michael scheinfeild 2014년 3월 17일
hello, i'm been working face regonition using eigenface, how do i know the input doesn't same with database, actually it will show others database image. Is there any others solution that it doesn't found your input in database..

채택된 답변

Image Analyst
Image Analyst 2012년 5월 2일
I'm not sure that I understand what you're saying. So, you have a database and for every face in there, you have the weights of the eigenfaces that it is comprised of. Then you take a test face and get its weights. Then you do some sort of comparison between the test weights and the weights of all the faces in the database. One of those in the database will be the closest to your test face. If it's close enough (and you define how close that is) then you can say "the face is in the database" else you say "the face is not in the database." I think that's basically how it works, but I have no idea what you did and why you can't make a decision on whether or not your test face is in there.
  댓글 수: 1
Halim
Halim 2012년 5월 2일
sorry...im new in matlab, im try to understand how eigenface work. thank for the answers...i want to know how to define that the input face is not in database

댓글을 달려면 로그인하십시오.

추가 답변 (2개)

Julie
Julie 2012년 5월 8일
Hello, I'm trying to get started on eigenfaces in Matlab.
I read in images 100 x 100 grey level with imread. Turned each one into single column of data 10,000 data points long. Created a matrix A with four columns (four images) of data 10,000 rows long. I then tried to use
[COEFF, SCORE, latent] = princomp(A);
but it gives me :
_Error using svd
Out of memory. Type HELP MEMORY for your
options.
Error in princomp (line 86)
[U,sigma,coeff] = svd(x0,econFlag); % put in
1/sqrt(n-1) later
Error in face1 (line 37)
[COEFF, SCORE, latent] = princomp(A);_
----------------
size(A) = 4 x 10000
I just wanted to try four pictures before moving on to get fussy about the face images but it's already telling me it's out of memory.
Please help. I know people use Matlab to do Eigenfaces. What am I doing wrong ?
Help please.
  댓글 수: 3
Nattawat Siri
Nattawat Siri 2012년 6월 12일
I'm study in this methodology for Age prediction.I think I can help you with the problem
eigenvector can product covariance matrix follow expression,
[Eig D]=A*A'
so, A =covariance matrix from
A= all of Face images in a column vector minus by mean of class
if you are more detail ,I advise you see this page . http://www.mathworks.com/help/techdoc/ref/eig.html
michael scheinfeild
michael scheinfeild 2014년 3월 17일
IF YOU HAVE 50 IMAGES n*n SO each image you do operation img(:) you have matrix (n=100) 10000*50=A if you try C (A*A') IT IMPOSSIBLE 10000*10000 , INSTEAD do the transopse C=A'*A is size of 50*50 you have 50 eigen vectors and 50 eigen valuse to reach the hhigher diomension eigen lamda = smalleig*A (the eigen face !!!)

댓글을 달려면 로그인하십시오.


michael scheinfeild
michael scheinfeild 2014년 3월 11일
you can transpose N*M*M*N = COV M*N*N*M

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by