📅  最后修改于: 2023-12-03 15:07:35.405000             🧑  作者: Mango
在计算机视觉的任务中,边界框(bounding box)是一种常用的表示目标位置和大小的方式。Python 中有许多图像处理和计算机视觉库可以用来在图像中绘制边界框。
OpenCV 是一款流行的开源计算机视觉库,可以用来处理图像和视频。
在 Linux 上使用以下命令安装:
pip install opencv-python
在 Windows 上使用以下命令安装:
pip install opencv-python-headless
使用 OpenCV 绘制边界框的步骤如下:
import cv2
# 读取图像
img = cv2.imread('image.jpg')
# 指定边界框位置和大小
x,y,w,h = 100,100,200,200
# 在图像上绘制边界框
cv2.rectangle(img, (x,y), (x+w,y+h), (0,255,0), 2)
# 显示图像
cv2.imshow('image', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
原始图像:
绘制边界框后的图像:
Pillow 是一个常用的 Python 图像处理库,它可以用来读取、处理和保存常见的图像格式。
在 Linux 上使用以下命令安装:
pip install pillow
在 Windows 上使用以下命令安装:
pip install pillow
使用 PIL 绘制边界框的步骤如下:
from PIL import Image, ImageDraw
# 打开图像
img = Image.open('image.jpg')
# 创建 ImageDraw 对象并指定要绘制的边界框
draw = ImageDraw.Draw(img)
x,y,w,h = 100,100,200,200
box = (x, y, x+w, y+h)
# 在 ImageDraw 对象上绘制边界框
draw.rectangle(box, outline='green')
# 保存图像
img.save('output.png')
原始图像:
绘制边界框后的图像:
scikit-image 是一个 Python 的图像处理库,它基于 NumPy 数组实现了大量的图像处理算法。
在 Linux 上使用以下命令安装:
pip install scikit-image
在 Windows 上使用以下命令安装:
pip install scikit-image
使用 scikit-image 绘制边界框的步骤如下:
from skimage import io, draw
# 读取图像
img = io.imread('image.jpg')
# 指定边界框位置和大小
x,y,w,h = 100,100,200,200
# 在图像上绘制边界框
rect = draw.rectangle((x,y), (x+w,y+h), shape=img.shape)
img[rect] = (0,255,0)
# 显示图像
io.imshow(img)
io.show()
原始图像:
绘制边界框后的图像: