cv2.rectangle详解
时间: 2023-11-06 19:23:45 浏览: 316
cv2.rectangle是OpenCV库中的一个函数,用于在图像上绘制矩形。该函数的语法为cv2.rectangle(image, start_point, end_point, color, thickness),其中image是要绘制矩形的图像,start_point是矩形的左上角坐标,end_point是矩形的右下角坐标,color是矩形的边框颜色,thickness是矩形边框的厚度。该函数还可以通过指定负数的thickness参数来填充矩形。
相关问题
cv2.ellipse
cv2.ellipse是OpenCV中的一个函数,用于在图像上绘制椭圆形。函数的语法为:cv2.ellipse(image, center, axes, angle, startAngle, endAngle, color, thickness)。其中,image是目标图片,center是椭圆的中心坐标,axes是椭圆的长短轴长度,angle是椭圆的偏转角度,startAngle和endAngle是圆弧的起始角度和终止角度,color是绘制的颜色,thickness是绘制的线条的粗细。 [3<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [opencv绘图函数(cv2.line(), cv2.circle(), cv2.rectangle(),cv2.ellipse() cv2. cv2.putText() )](https://blog.csdn.net/weixin_36670529/article/details/104001980)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [详解opencv库函数ellipse()](https://blog.csdn.net/weixin_51995147/article/details/128479278)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
python cv2 matchtemplate详解
在图像处理和计算机视觉中,模板匹配是一种常见的技术,它可以用于在一张图像中查找另一张小图像的位置。在OpenCV中,cv2.matchTemplate()函数可以用于实现模板匹配。下面是该函数的详细解释。
```python
cv2.matchTemplate(image, templ, method[, result[, mask]])
```
参数说明:
- image:输入图像,即待搜索的图像(大图像)。
- templ:模板图像,即要在输入图像中查找的小图像。
- method:匹配方法,可选值包括:cv2.TM_SQDIFF、cv2.TM_SQDIFF_NORMED、cv2.TM_CCORR、cv2.TM_CCORR_NORMED、cv2.TM_CCOEFF、cv2.TM_CCOEFF_NORMED。具体含义可以参考OpenCV官方文档。
- result:输出的匹配结果图像,数据类型为浮点型。
- mask:可选的蒙板图像,用于指定搜索区域。
返回值:
- res:匹配结果矩阵,即每个像素的匹配得分。
使用cv2.matchTemplate()函数的基本流程如下:
1. 加载原始图像和模板图像。
2. 使用cv2.matchTemplate()函数进行模板匹配,得到匹配结果矩阵。
3. 根据匹配结果矩阵找到最佳匹配位置。
下面给出一个简单的例子:
```python
import cv2
import numpy as np
# 加载原始图像和模板图像
img = cv2.imread('original.jpg')
template = cv2.imread('template.jpg')
# 获取模板图像的宽度和高度
w, h = template.shape[:2]
# 使用cv2.matchTemplate()函数进行模板匹配
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, (0, 0, 255), 2)
# 显示结果
cv2.imshow('Result', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的例子中,我们首先加载了原始图像和模板图像,然后使用cv2.matchTemplate()函数进行模板匹配,得到匹配结果矩阵。接着,我们根据匹配结果矩阵找到最佳匹配位置,并在原始图像中标注出来。最后,将结果显示出来。
阅读全文