2012-02-21 2 views
3

선생님의 템플릿 매칭을 수행하기 위해 XML Classifiers.But 메신저에 붙어 face.Anyone 방법 MatchTemplate 기능을 사용하는 방법을 가르쳐주십시오 인식하는 방법에 대한 다음 단계 ...방법 software.I가 HaarCascade를 사용하여 얼굴을 감지 할 수 있었다 얼굴 인식을하고 내가 Emgu CV.I에 새로운 오전</p> <p>, Emgu CV

은 내가 ... 우선이 코드를 이해 didnt는

Image<Gray, Byte> templateImage = new Image<Gray, Byte>(bmpSnip); 
Image<Gray, float> resultImage = sourceImage.MatchTemplate(templateImage,Emgu.CV.CvEnum.TM_TYPE.CV_TM_CCOEFF_NORMED); 

float[,,] matches = resultImage.Data; 
for (int x = 0; x < matches.GetLength(1); x++) 
{ 
for (int y = 0; y < matches.GetLength(0); y++) 
{ 
double matchScore = matches[y, x, 0]; 
if (matchScore > 0.75) 
{ 
Rectangle rect = new Rectangle(new Point(x,y), new Size(1, 1)); 
imgSource.Draw(rect, new Bgr(Color.Blue), 1); 
} 
} 

인터넷에이 코드를 발견 이 모든 코드가 작동하지 않습니다 .... 둘째로 누군가가 그것을 correctl하는 방법을 알고 있다면 y ... 코드를 게시하십시오 .....

+0

를? Google에서 무엇을 발견했으며 사람들이 볼 수있는 소스 코드가 무엇입니까? 빠른 구글은 템플릿 매칭뿐만 아니라 사람들이 마주 치게되는 문제들에 관한 질문들에 대해 상당히 많은 히트를 보여줍니다. – Brian

+0

일부 링크에서는 Eigen faces를 사용해야한다고 말합니다 ... 일부 사람들은 MatchTemplate 함수를 직접 사용할 수 있다고 말합니다. MatchTemplate()을 사용하고 Face를 인식하는 것에 대한 코드를 게시하면 매우 유용합니다. –

답변

3

MatchTemplate 메서드는 개체를 정의 기능과 일치시키기 위해 예비 설계되었습니다. 얼굴은, 당신과 나는 MatchTemplate에서 사용되는 FFT 방법에 대한 특징을 정의 할 수 있지만 정의 기능은 단순히 얼굴 인식에 충분하지 않습니다. Surya는 비교가 재미있을 것이므로 정확합니다. 가장 좋은 방법은 템플릿 얼굴 이미지의 영역과 카메라의 인식 된 얼굴을 일치시키는 것입니다. 예를 들어 눈의 위치를 ​​취하여 MatchTemplate을 같은 위치에 적용하고 이러한 특성을 평균적으로 받아 전체 정확도를 추정합니다.

본질적으로 중요한 문제는 실행 시간입니다. MatchTemplate은 얼굴이 많은 데이터베이스를 사용하여 실시간 처리가 가능하도록 데이터 세트를 크게 줄이지 않습니다.

고유 인식자는 훨씬 안전하고 효율적인 방법입니다. 그것은 당신 자신의 알고리즘을 생성하는 것보다 훨씬 더 신뢰할 수 있으며 훨씬 더 빠릅니다. 그것을 구현하는 방법에 여기 내 문서를 참조하십시오 :이 도움이

http://www.codeproject.com/Articles/261550/EMGU-Multiple-Face-Recognition-using-PCA-and-Paral

희망,

건배, 당신은 시도 것을

크리스

+0

That 's 정말로 훌륭한 기사! 지난 몇 시간 동안 샘플 코드에 대한 해킹을 해왔습니다. 분명히 들어간 모든 노력에 감사드립니다. – RedFilter

+0

환호성 RedFilter 대단히 감사합니다. 알 수없는 얼굴을 인식하고 싶다면 코멘트를 확인해주십시오. 내가 어떻게 환호하는지 언급합니다. – Chris

관련 문제