ComputerVision
-
좋은 매칭 선별컴퓨터 비젼(Computer Vision)/특징점 검출과 매칭 2022. 2. 22. 15:22
선별 방법 1. 가장 좋은 매칭 결과에서 distance 값이 작은 것 N개를 사용 cv2.DMatch.distance 값을 기준으로 정렬 후 상위 N개 선별 ... matcher = cv2.BFMatcher_create() matches = matcher.match(desc1, desc2) # 좋은 매칭 결과 선별 matches = sorted(matches, key=labmda i: i.distance) # 거리별 오름차순 정렬 good_matches = matches[:80] # 상위 80개만 선별 # 특징점 매칭 결과 영상 생성 dst = cv2.drawMatches(src1, kp1, src2, kp2, good_matchers, None) ... 선별 방법 2. (SIFT에서 제안된 방법) 가..
-
특징점 기술컴퓨터 비젼(Computer Vision)/특징점 검출과 매칭 2022. 2. 22. 11:37
기술자(descriptor, feature vector) 특징점 근방의 부분 영상을 표현하는 실수 또는 이진 벡터 OpenCV에서는 2차원 행렬(np.ndarray)로 표현 행 개수: 특징점 개수 열 개수: 특징점 기술자 알고리즘에 의해 정의됨 실수 기술자 주로 특징점 부근 부분 영상의 방향 히스토그램을 사용 특징점 근방 부분 영상의 주 방향 성분을 계산하여 보정 보정된 사각형 영역을 4x4구역으로 분할 -> 각 구역에서 8방향 히스토그램을 구함 16x8 = 128 차원의 실수 벡터 생성 (알고리즘 마다 다름) SIFT, SURF, KAZE 등이 있음 L2 Norm을 사용하여 유사도 판단 이진 기술자 이진 테스트(binary test)를 이용하여 부분 영상의 특징을 기술 특징점주변 부분 영상을 잘라내어 ..