我有一个文件夹,里面有相同名称的json和jpg图片,json是用label标注的,我想以带有原始标注的方式查看图片
时间: 2024-03-16 13:40:58 浏览: 143
您可以使用Python中的Pillow包和json包来实现这个功能。首先,您需要读取json文件并提取标注信息,然后使用Pillow包中的Image模块加载图像并在图像上绘制标注信息。
以下是一个示例代码,可以帮助您实现这个功能:
```python
from PIL import Image, ImageDraw
import json
import os
# 指定文件夹路径
folder_path = "your_folder_path"
# 循环读取文件夹中的文件
for file_name in os.listdir(folder_path):
# 如果是json文件,就读取标注信息
if file_name.endswith(".json"):
with open(os.path.join(folder_path, file_name), "r") as f:
labels = json.load(f)
# 如果是jpg文件,就加载图片并绘制标注信息
elif file_name.endswith(".jpg"):
image_path = os.path.join(folder_path, file_name)
with Image.open(image_path) as img:
draw = ImageDraw.Draw(img)
for label in labels:
# 在图像上绘制矩形框
draw.rectangle(label["box"], outline="red")
# 在图像上绘制标注类别
draw.text(label["box"][:2], label["category"], fill="red")
# 显示带有标注信息的图像
img.show()
```
这段代码会循环读取文件夹中的每个文件,如果是json文件,就读取标注信息,如果是jpg文件,就加载图片并在图像上绘制标注信息。最后,显示带有标注信息的图像。
阅读全文