컴퓨터 비젼(Computer Vision)/특징점 검출과 매칭
-
좋은 매칭 선별컴퓨터 비젼(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. 14:54
특징점 매칭 (Feature Point Matching) 두 영상에서 추출한 특정점 기술자를 비교하여 서로 유사한 기술자를 찾는 작업 특징점 매칭간 무조건 특징점을 매칭하기에 좋은 특징점 매칭을 찾는 필터링 과정이 필요 (밑에 예시보면 확인 가능) 특징 벡터 유사도 측정 방법 실수 특징 벡터: L2 Norm 이진 특징 벡터: Hamming Distance OpenCV 특징점 매칭 클래스 BFMatcher: Brute-Force FlannBasedMatcher: Fast Library for Approximate Nearest Neighbor (K-D Tree) 특징점 검출 알고리즘 객체 생성 cv2.DescriptorMatcher.match(queryDescriptors, trainDescriptors,..
-
특징점 기술컴퓨터 비젼(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)를 이용하여 부분 영상의 특징을 기술 특징점주변 부분 영상을 잘라내어 ..
-
특징점 검출컴퓨터 비젼(Computer Vision)/특징점 검출과 매칭 2022. 2. 21. 18:09
코너 검출 방법의 문제점 이동, 회전 변환에 강인 크기 변화에 취약 용어 특징점(feature point) = 키포인트(keypoint) = 관심점(interest point) 기술자(descriptor) = 특징 벡터(feature vector) 크기 불변 특징점 검출 방법 SIFT, KAZE, AKAZE, ORB 등 다양한 특징점 검출 방법에서 스케일 스페이스 (scale-space), 이미지 피라미드 (image pyramid)를 구성하여 크기 불변 특징점을 검출 OpenCV 특징점 검출 클래스 특징점 검출 알고리즘 객체 생성 cv2.SIFT_create(, ...) -> retval cv2.KAZE_create(, ...) -> retval cv2.AKAZE_create(, ...) -> retv..
-
코너 검출컴퓨터 비젼(Computer Vision)/특징점 검출과 매칭 2022. 2. 21. 13:35
코너 객체의 뾰족한 부분 영상의 고유한 특징을 지님 코너의 특징 평탄한 영역과 에지 영역은 고유한 위치를 찾기 어려움 코너는 변별력이 높은 편이며, 영상의 이동, 회전 변환에 강인함 코너 검출 방법 해리스(Harris) 영상 내부 작은 영역이 모두 방향에 대해 변화가 큰 경우 코너로 규정 cv2.cornerHarris()를 이용하며 코너 응답 함수 R을 반환, R이 충분히 크면 코너로 구분 Local Maxima가 아닌 값이 검출 될 수 있음 Fast Features To Track Harris 코너 검출 방법의 향상된 버전 NMS 수행 cv2.goodFeaturesToTrack()을 사용하며, 이는 코너점 자체를 반환 FAST(Features from Acclerated Segment Test) 주변 ..