8-3. 템플릿 매칭(1): 이해하기
템플릿 매칭(Template Matching)
찾을 대상이 되는 작은 영상 단위를 템플릿(Tamplate, 또는 패치)이라고 부르며, 이와 일치하는 부분을 입력 영상에서 찾는 기법
최소값, 최대값 찾는 함수로 cv2.minMaxLoc을 사용한다.

템플릿 매칭 함수: cv2.matchTemplate(image, templ, method, result, mask) -> result
image는 8-bit or 32-bit 입력 영상
templ는 템플릿 영상으로 image보다 크기가 작고 타입은 같은 영상
method는 cv2.TM_으로 시작하는 비교 방법 플레그. 상세한 내용은 아래 그림 참고
result는 비교 결과 행렬(numpy.float32 타입을 가진 numpy.ndarray). image의 크기가 (W, H), templ의 크기가 (w, h)이면 result의 크기는 (W - w + 1, H - h + 1)



8-4. 템플릿 매칭(2): 인쇄체 숫자 인식
인식(Recognition)
감지된 물체를 여러 다른 클래스 중에서 가장 유사한 클래스로 분류하는 것
숫자 인식 방법
1. 템플릿 생성: Consolas 폰트로 쓰여진 숫자 영상을 0부터 9까지 [100x150] 크기로 정규화하여 bmp 파일로 저장
2. 숫자 외곽선 list 생성 후 사각형 생성
3. 사각형 기준으로 부분 영상 추출 -> 크기 정규화
4. 템플릿 매칭 함수로 0-9까지 비교 후 최댓값을 가장 높은 매칭 템플릿으로 선정
5. 선정된 템플릿 숫자로 결과 영상에 출력


인증 타임
템플릿 매칭의 경우 다양한 템플릿을 보유해야만 더 높은 정확도로 인식 할 수 있다고 느꼈다.
전자회로 영상에서 부품을 템플릿으로 인식하는 방식은 매우 흥미로웠는데 실제 카메라로 보드를 인식하고 부품 이름 입력 시 해당 부품이 사용되었는지를 실시간으로 찾아주는 프로그램을 만들어보면 재미있을거 같다.


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