OpenCV는 두 영상에서 추출한 특징점의 매칭 결과를 한눈에 확인할 수 있도록 매칭 결과 영상 생성 기능을 제공합니다. drawMatches() 함수는 두 매칭 입력 영상을 가로로 이어 붙이고, 각 영상에서 추출한 특징점과 매칭 결과를 다양한 색상으로 표시한 결과 영상을 생성합니다. drawMatches() 함수 원형은 다음과 같습니다.
void drawMatches(InputArray img1, const std::vector<KeyPoint>& keypoints1, InputArray img2, const std::vector<KeyPoint>& keypoints2, const std::vector<DMatch>& matches1to2, InputOutputArray outImg, const Scalar& matchColor = Scalar::all(-1), const Scalar& singlePointColor = Scalar::all(-1), const std::vector<char>& matchesMask = std::vector<char>(), DrawMatchesFlags flags = DrawMatchesFlags::DEFAULT); |
|
• img1 |
첫 번째 입력 영상 |
• keypoints1 |
첫 번째 입력 영상에서 검출된 특징점 |
• img2 |
두 번째 입력 영상 |
• keypoints2 |
두 번째 입력 영상에서 검출된 특징점 |
• matches1to2 |
첫 번째 입력 영상에서 두 번째 입력 영상으로의 매칭 정보 |
• outImg |
출력 영상 |
• matchColor |
매칭된 특징점과 직선 색상. 만약 Scalar::all(-1)을 지정하면 임의의 색상으로 그립니다. |
• singlePointColor |
매칭되지 않은 특징점 색상. 만약 Scalar::all(-1)을 지정하면 임의의 색상으로 그립니다. |
• matchesMask |
매칭 정보를 선택하여 그릴 때 사용할 마스크. 만약 std::vector<char>()를 지정하면 모든 매칭 결과를 그립니다. |
• flags |
매칭 정보 그리기 방법. DrawMatchesFlags 열거형 상수를 지정합니다. |