如何使用Python中的图像处理库(如PIL或OpenCV)来加载一张图片,并在其上绘制图形?
时间: 2024-12-04 16:21:40 浏览: 21
在Python中,可以使用Pillow(PIL的分支)或OpenCV这两个流行的图像处理库来进行基本的图片操作,包括加载图片和绘制图形。以下是使用它们的简单步骤:
**使用Pillow(PIL):**
```python
from PIL import Image, ImageDraw
# 加载图片
img = Image.open('image.jpg')
# 创建一个ImageDraw对象,用于绘制
draw = ImageDraw.Draw(img)
# 绘制一个矩形
draw.rectangle([(50, 50), (150, 150)], fill='red') # (x1, y1, x2, y2), 可选颜色fill和outline
# 显示或保存绘图结果
img.show() # 如果你想实时查看
# img.save('output_image_with_rectangle.jpg', 'JPEG')
```
**使用OpenCV(cv2):**
```python
import cv2
# 加载图片
image = cv2.imread('image.jpg')
# 创建一个掩码或绘图矩阵
mask = np.zeros(image.shape[:2], dtype="uint8") + 255 # 黑色背景,白色图形
# 使用OpenCV的点、线、矩形等函数绘制图形
cv2.rectangle(mask, (50, 50), (150, 150), (0, 0, 255), 2) # 红色矩形
# 将绘制的图形与原始图像合并
result = cv2.addWeighted(image, 0.7, mask, 0.3, 0)
# 显示或保存结果
cv2.imshow('Image with rectangle', result)
cv2.waitKey(0) # 等待用户按键,然后关闭窗口
cv2.destroyAllWindows()
```
阅读全文