Template Matching is a method for searching and fnding the location of a template image in a larger image. OpenCV comes with a function cv2.matchTemplate()
for this purpose. It simply slides the template image over the input image (as in
2D convolution) and compares the template and patch of input image under the
template image. Several comparison methods are implemented in OpenCV. It
returns a grayscale image, where each pixel denotes how much does the neigh-
bourhood of that pixel match with template.
If input image is of size (WxH) and template image is of size (wxh), output
image will have a size of (W-w+1, H-h+1). Once you got the result, you can use
cv2.minMaxLoc() function to fnd where is the maximum/minimum value.
Take it as the top-left corner of rectangle and take (w,h) as width and height
of the rectangle. That rectangle is your region of template.
Here, as an example, we will search for Mario's coins in his photo.
Code:
output:
0 Comments