메뉴 건너뛰기

OBG

Programming

Python
2014.01.16 00:49

OpenCV 이용한 템플릿 매칭

MoA
조회 수 1250 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

템플릿 매칭(Template Matching) = 큰 이미지에서 특정 작은 이미지를 찾는 알고리즘


import cv2
import numpy as np
from matplotlib import pyplot as plt

img = cv2.imread('messi5.jpg',0)
img2 = img.copy()
template = cv2.imread('template.jpg',0)
w, h = template.shape[::-1]

# All the 6 methods for comparison in a list
methods = ['cv2.TM_CCOEFF', 'cv2.TM_CCOEFF_NORMED', 'cv2.TM_CCORR',
            'cv2.TM_CCORR_NORMED', 'cv2.TM_SQDIFF', 'cv2.TM_SQDIFF_NORMED']

for meth in methods:
    img = img2.copy()
    method = eval(meth)

    # Apply template Matching
    res = cv2.matchTemplate(img,template,method)
    min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)

    # If the method is TM_SQDIFF or TM_SQDIFF_NORMED, take minimum
    if method in [cv2.TM_SQDIFF, cv2.TM_SQDIFF_NORMED]:
        top_left = min_loc
    else:
        top_left = max_loc
    bottom_right = (top_left[0] + w, top_left[1] + h)

    cv2.rectangle(img,top_left, bottom_right, 255, 2)

    plt.subplot(121),plt.imshow(res,cmap = 'gray')
    plt.title('Matching Result'), plt.xticks([]), plt.yticks([])
    plt.subplot(122),plt.imshow(img,cmap = 'gray')
    plt.title('Detected Point'), plt.xticks([]), plt.yticks([])
    plt.suptitle(meth)

    plt.show()

https://opencv-python-tutroals.readthedocs.org/en/latest/py_tutorials/py_imgproc/py_template_matching/py_template_matching.html

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 Tool/etc Programming 게시판 관련 2 MoA 2014.11.01 1714
146 API/MFC UpdateDialogControls MoA 2013.09.05 803
145 API/MFC MFC에서 생성,사용되는 파일 확장자 MoA 2013.08.30 667
144 API/MFC 로그 클래스 및 업데이터 MoA 2013.08.30 952
143 Site 검색엔진 개발자 그룹 MoA 2013.08.30 283
142 API/MFC CFile을 이용한 저장/불러오기 MoA 2013.08.27 1251
141 API/MFC DLL 생성 시 주의 MoA 2013.08.22 2684
140 C/C++ C++11 A cheat sheet MoA 2013.08.21 313
139 Tool/etc 앱 디자인의 발견 - 메모 서비스를 생각하다 MoA 2013.08.17 280
138 API/MFC 리스트 컨트롤에 체크박스 추가 MoA 2013.08.14 1196
137 JAVA/Android XML 파싱하기 MoA 2013.08.06 7062
136 API/MFC Legacy MFC 어플리케이션을 MFC feature pack으로 포팅 MoA 2013.07.30 539
135 Tool/etc 예외 처리 가이드 (Slide) MoA 2013.07.28 348
134 Tool/etc Design Patterns Quick Reference MoA 2013.07.28 360
133 Site GOF 디자인패턴 정리 MoA 2013.07.28 351
132 Tool/etc Coding conventions MoA 2013.07.28 674
131 Library ChartFX 7.0 MFC에서 사용하기 MoA 2013.07.28 588
130 Tool/etc 에디트 플러스, VS 2008 컴파일 환경 설정 MoA 2013.07.28 282
129 STL/Boost 정적 배열과 STL vector 속도 비교 MoA 2013.07.28 558
128 Library pthread MoA 2013.07.28 287
127 API/MFC HWND와 HINSTANCE MoA 2013.07.28 342
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 ... 15 Next
/ 15
위로