opencv画矩形(opencv画矩形框)

简介:

OpenCV是一个非常流行的计算机视觉库,它可以用于处理图像和视频等多媒体数据。本文将详细介绍如何在OpenCV中画矩形。

多级标题:

一、在图像中画矩形的基本方法

二、在视频中画矩形的方法

三、在摄像头实时画矩形的方法

一、在图像中画矩形的基本方法:

画矩形可以使用OpenCV中的cv2.rectangle()函数,在给定的图像上绘制矩形。cv2.rectangle()函数有五个参数——图像、矩形左上角坐标、矩形右下角坐标、矩形颜色和矩形线宽。下面是一个简单的画矩形的代码示例:

```

import cv2

# 读取图片

img = cv2.imread('test.jpg')

# 画矩形

cv2.rectangle(img, (100,100), (200,200), (0,0,255), 2)

# 显示图片

cv2.imshow('image', img)

cv2.waitKey(0)

cv2.destroyAllWindows()

```

代码解释:先读取一张名为test.jpg的图片,然后在(100,100)到(200,200)的区域中画出一个红色的矩形,线宽为2。最后显示图片并等待键盘输入,按任意键关闭显示窗口。

二、在视频中画矩形的方法:

在视频中画矩形的方法与在图像中画矩形的方法类似,只需要用cv2.VideoCapture()函数读取视频文件,然后在每个视频帧上画出矩形即可。下面是一个简单的画矩形的视频代码示例:

```

import cv2

# 打开视频文件

cap = cv2.VideoCapture('test.avi')

while(cap.isOpened()):

# 读取视频帧

ret, frame = cap.read()

# 画矩形

cv2.rectangle(frame, (100,100), (200,200), (0,0,255), 2)

# 显示视频帧

cv2.imshow('video', frame)

if cv2.waitKey(1) & 0xFF == ord('q'):

break

# 释放资源

cap.release()

cv2.destroyAllWindows()

```

代码解释:打开名为test.avi的视频文件,然后读取每一帧并在每个视频帧上画出矩形。按键盘上的"q"键停止播放,最后释放资源并关闭窗口。

三、在摄像头实时画矩形的方法:

在摄像头实时画矩形的方法与在视频中画矩形的方法类似,只是需要使用cv2.VideoCapture(0)函数来连接电脑上的默认摄像头。下面是一个简单的摄像头实时画矩形的代码示例:

```

import cv2

# 打开摄像头

cap = cv2.VideoCapture(0)

while(True):

# 读取视频帧

ret, frame = cap.read()

# 画矩形

cv2.rectangle(frame, (100,100), (200,200), (0,0,255), 2)

# 显示视频帧

cv2.imshow('video', frame)

if cv2.waitKey(1) & 0xFF == ord('q'):

break

# 释放资源

cap.release()

cv2.destroyAllWindows()

```

代码解释:打开计算机上默认的图像采集设备并捕获帧,然后在每个帧上画出矩形,并显示在屏幕上。按键盘上的"q"键停止播放。最后释放资源并关闭窗口。

以上是Opencv画矩形的三种方法,希望读者能够根据自己的需求将其灵活运用。

标签列表