얼굴 인식 응용 프로그램을 위해 VS2010에서 OpenCV C++를 사용하고 있습니다. 그것을 위해, 나는 SURF, BruteForceMatcher를 사용했습니다.C++을 사용하여 SURF OpenCV를 사용하여 가장 일치하는 항목을 찾는 방법은 무엇입니까?
BFMatcher matcher;
vector<DMatch> matches;
//match: execute the matcher!
matcher.match(descriptors1,descriptors2, matches);
이 메서드를 호출하면 정확히 무슨 일이 발생하는지 알고 싶습니다. 제스처가 "일치"이면 일치하는 키 포인트로 벡터가 채워집니다.
그리고
어쨌든 나는 좋은 상대를 만나이 "일치"벡터가 사용할 수 있습니까?
현재, 나는 최소 거리 및 최대 거리를 얻기 위해이 같은 일을 해요 :
for(int i = 0; i < descriptors1.rows; i++)
{
double dist = matches[i].distance;
if(dist < min_dist) min_dist = dist;
if(dist > max_dist) max_dist = dist;
}
내 위의 방법이 정확하다면, 어떻게 이미지를 일치 여부를 확인하기 위해 최소 거리 및 최대 거리를 사용할 수 있습니다 .
감사합니다.
누구든지 나를 찾아 낼 수 있다면 감사 할 것입니다. 감사합니다. .
감사합니다. J-X320, 빠른 응답을위한 mada. knnMatch() 메서드를 사용해 보았습니다. 그리고 그것은 나에게 좋은 결과를 줬다. 감사. – posha