利用python实现将一张图片上的“外置SD卡分区”红框标注出来
时间: 2024-09-27 08:02:31 浏览: 27
在Python中,结合OpenCV和PIL(Python Imaging Library)等库可以实现对图片进行处理并标注出特定区域,比如"外置SD卡分区"的红框。这里我们可以假设你已经有了一个已经识别出的SD卡分区位置的数据。以下是一个简单的示例:
```python
import cv2
from PIL import Image, ImageDraw
# 加载图片
img = cv2.imread('sd_card_image.jpg')
# 图片转为RGB格式(因为OpenCV默认是BGR)
img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
# 创建一个PIL Image对象
image_pil = Image.fromarray(img_rgb)
# 创建一个画笔对象
draw = ImageDraw.Draw(image_pil)
# 分区的位置数据(这里假设为一个矩形,可以用元组表示左上角(x, y), 右下角(x+w, y+h))
partition_position = (100, 100, 500, 300) # 示例位置
# 标注红框
color = 'red'
width = 2 # 红框线宽
draw.rectangle(partition_position, outline=color, width=width)
# 将PIL Image对象转回OpenCV格式
img_drawn = cv2.cvtColor(np.array(image_pil), cv2.COLOR_RGB2BGR)
# 显示或保存带有标注的图片
cv2.imshow("SD Card Partition", img_drawn)
cv2.waitKey(0)
cv2.destroyAllWindows()
阅读全文