9-1. 코너 검출
코너(Corner)
평탄한 영역(flat) 또는 에지(edge) 영역보다 변별력이 높은 편이며, 영상의 이동 및 회전 변환에 강인함
OpenCV에서는 다양한 코너 검출 방식을 지원한다
그 중 아래 3가지 방식을 알아보았다.
| 해리스 (Harris) |
추적하기 좋은 특징 (Good Features to Track) |
FAST (Features from Accelerated Segment Test) |
|
| 특징 | - | 해리스 코너 검출 방법을 기반으로 향상된 방법 | 해리스, GFTT 방법보다 매우 빠르게 동작 |
| 검출 방식 | 영상 내부 작은 영역이 모든 방향에 대해 변화가 큰 경우 코너로 규정 코너 응답 함수 R을 반환 하여 R(x,y)가 충분히 크면 코너로 구분 |
코너 품질 함수를 정의 후 가장 값이 큰 순서대로 정렬하여 반환 | 주변 16개 픽셀 값 크기를 분석하여 기준 픽셀(p)보다 충분히 밝거나 충분히 어두운 픽셀이 n개 연속으로 나타나면 코너로 인식 (n은 보통 9) (링크) |
| 함수 | cv2.cornerHarris(src, blockSize, ksize, k, dst, borderType) -> dst | cv2.goodFeaturesToTrack(image, maxCorners, qualityLevel, minDistance, corners, mask, blockSize, useHarrisDetector, k) -> corners | cv2.FastFeatureDetector_create(threshold, nonmaxSuppression, type) -> <FastFeature Detector Object> <FastFeature Detector Oject>.detect(image) -> keypoints |
| 함수 인자 설명 | src는 단일채널 8비트 또는 실수형 입력 영상 dst는 src와 같은 크기의 numpy.float32 형식의 해리스 코너 응답 계수 blockSize는 코너 응답 함수 계산에서 고려할 이웃 픽셀 크기로 보통 2~5로 지정 ksize는 미분에 사용될 소벨 연산자를 위한 커널 크기로 보통 3으로 지정 k는 해리스 코너 검출 상수로 보통 0.04~0.06으로 지정 borderType는 가장자리 픽셀 확장 방식으로 기본값은 cv2.BORDER_DEFAULT |
image는 단일채널 8비트 또는 실수형 입력 영상 maxCorners는 최대 코너 개수로 0보다 작거나 같으면 무제한으로 지정 qualityLevel는 코너점 결정을 위한 값으로 보통 0.01~0.1 minDistance는 코너점 사이의 최소 거리 mask는 마스크 영상 blockSize는 코너 검출을 위한 블록 크기로 기본값은 3 useHarrisDetector는 해리스 코너 방법 사용 영부로 기본값은 False k는 해리스 코너 검출 시 사용할 k값 corners는 검출된 코너점 좌표로 numpy.float32와 (N,1,2)의 numpy.ndarray 형태 |
threshold는 중심 픽셀 값과 주변 픽셀 값과의 차이 임계값으로 기본값은 10 nonmaxSuppression은 비최대 억제 수행 여부로 기본값은 True type는 코너 검출 방법으로 기본값은 cv2.FAST_FEATURE_DETECTOR_TYPE_9_16 image는 그레이스케일 영상 keypoints는 검출된 코너점 정보로 cv2.KeyPoint 객체를 담은 리스트. 객체의 pt 멤버를 이용하여 좌표를 추출하는데 pt[0]이 x 좌표, pt[1]이 y좌표 |
| 코너 검출 반복성 | FAST 방법의 검출률이 대체로 높은 가운데 노이즈에 민감하다.![]() |
||

인증 타임
특징점 검출 전 저번 에지 검출 방식에 이어서 코너 검출 방식에 대하여 배워 보았다. 다양한 함수를 지원하고 방식별로 지정할 파라미터도 다양하여 입력 영상에 따라 코너 검출하는데 있어 적당한 방법과 파라미터 찾는게 중요해 보인다.

#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #OpenCV를 활용한 컴퓨터비전과 딥러닝 올인원 패키지 Online
패스트캠퍼스(FastCampus) 강의 둘러보러 가기
↓ ↓ ↓
패스트캠퍼스 [직장인 실무교육]
프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.
fastcampus.co.kr
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'남돈내배 > 2022_FastCampus_환급이벤트' 카테고리의 다른 글
| 패스트캠퍼스 챌린지 37일차 - Ch9. 특징점 검출과 매칭 (0) | 2022.03.01 |
|---|---|
| 패스트캠퍼스 챌린지 36일차 - Ch9. 특징점 검출과 매칭 (0) | 2022.02.28 |
| 패스트캠퍼스 챌린지 34일차 - Ch8. 영상 분할과 객체 검출 (0) | 2022.02.26 |
| 패스트캠퍼스 챌린지 33일차 - Ch8. 영상 분할과 객체 검출 (0) | 2022.02.25 |
| 패스트캠퍼스 챌린지 32일차 - Ch8. 영상 분할과 객체 검출 (0) | 2022.02.24 |
