模板匹配目标跟踪定位
时间: 2023-11-30 20:04:07 浏览: 32
模板匹配是一种常用的目标跟踪定位方法,其基本思想是在图像中寻找与给定模板最相似的区域。下面是一个简单的模板匹配的例子:
假设我们有一张图片和一个模板,我们想要在图片中找到与模板最相似的区域。可以使用OpenCV库中的matchTemplate函数实现模板匹配。具体步骤如下:
1.读取图片和模板
```python
import cv2
img = cv2.imread('image.jpg', 0)
template = cv2.imread('template.jpg', 0)
```
2.使用matchTemplate函数进行模板匹配
```python
res = cv2.matchTemplate(img, template, cv2.TM_CCOEFF_NORMED)
```
3.找到最大匹配值的位置
```python
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
top_left = max_loc
bottom_right = (top_left[0] + w, top_left[1] + h)
```
其中,w和h分别为模板的宽度和高度。
4.在图片中标记出匹配的区域
```python
cv2.rectangle(img, top_left, bottom_right, 255, 2)
```
完整代码如下:
```python
import cv2
img = cv2.imread('image.jpg', 0)
template = cv2.imread('template.jpg', 0)
w, h = template.shape[::-1]
res = cv2.matchTemplate(img, template, cv2.TM_CCOEFF_NORMED)
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
top_left = max_loc
bottom_right = (top_left[0] + w, top_left[1] + h)
cv2.rectangle(img, top_left, bottom_right, 255, 2)
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)