로그인

검색

Python
2014.01.16 00:49

OpenCV 이용한 템플릿 매칭

MoA
조회 수 2774 추천 수 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 8011
138 API/MFC 리스트 컨트롤에 체크박스 추가 MoA 2013.08.14 3019
137 JAVA/Android XML 파싱하기 MoA 2013.08.06 7816
136 API/MFC Legacy MFC 어플리케이션을 MFC feature pack으로 포팅 MoA 2013.07.30 1658
135 Tool/etc 예외 처리 가이드 (Slide) MoA 2013.07.28 1691
134 Tool/etc Design Patterns Quick Reference MoA 2013.07.28 1418
133 Site GOF 디자인패턴 정리 MoA 2013.07.28 1431
132 Tool/etc Coding conventions MoA 2013.07.28 2480
131 Library ChartFX 7.0 MFC에서 사용하기 MoA 2013.07.28 1898
130 Tool/etc 에디트 플러스, VS 2008 컴파일 환경 설정 MoA 2013.07.28 1585
129 STL/Boost 정적 배열과 STL vector 속도 비교 MoA 2013.07.28 2039
128 Library pthread MoA 2013.07.28 1335
127 API/MFC HWND와 HINSTANCE MoA 2013.07.28 2071
126 Tool/etc 컨텍스트 스위칭 (Context Switching) MoA 2013.07.28 2413
125 API/MFC __cdecl , __pascal, __stdcall MoA 2013.07.28 2012
124 C/C++ fopen 함수가 Multi Thread 에서 안전한가? MoA 2013.07.28 2123
123 C/C++ memset vs for 초기화. 속도 차이가 얼마나 날까? 2 MoA 2013.07.28 2347
122 API/MFC unsigned char <-> 유니코드(unicode) 및, string 변환 매크로 - USES_CONVERSION MoA 2013.07.28 3158
121 Tool/etc Redmine 설치 MoA 2013.07.28 1753
120 API/MFC MFC 클래스 멤버함수 설명서 MoA 2013.07.28 2526
119 Graphic Direct3D 9 compile MoA 2013.07.28 1393
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 11 12 13 ... 15 Next
/ 15