学习网站模板,企业网站导航栏高度,零基础学网页设计,节约化网站群建设情况电力施工作业安全行为检测图像数据集#xff0c;图片总共 2300左右#xff0c;标注为voc(xml)格式#xff0c;包含高空抛物#xff0c;未佩戴安全带#xff0c;高处作业无人监护等。 电力施工作业安全行为检测图像数据集
数据集描述
这是一个专门用于电力施工作业安全行…电力施工作业安全行为检测图像数据集图片总共 2300左右标注为voc(xml)格式包含高空抛物未佩戴安全带高处作业无人监护等。 电力施工作业安全行为检测图像数据集
数据集描述
这是一个专门用于电力施工作业安全行为检测的图像数据集。数据集总共包含大约2300张图片涵盖了多种常见的不安全行为目的是帮助训练计算机视觉模型识别电力施工现场中的潜在安全隐患。
类别 数据集中标注的行为类别主要包括但不限于
高空抛物未佩戴安全带高处作业无人监护其他不安全行为如不戴头盔、不穿防护服等
标注格式
数据集中的标注采用了VOCVisual Object Classes格式每个图像文件都有一个对应的XML文件其中包含了图像中每个对象的位置信息边界框坐标和类别标签。
图像来源
图像数据来源于真实的电力施工现场涵盖了不同的时间和天气条件确保了数据集的多样性和实用性。
数据集结构
典型的VOC数据集结构如下
1dataset/
2├── Annotations/
3│ ├── img_0001.xml
4│ ├── img_0002.xml
5│ └── ...
6├── ImageSets/
7│ ├── Main/
8│ │ ├── train.txt
9│ │ ├── val.txt
10│ │ └── test.txt
11├── JPEGImages/
12│ ├── img_0001.jpg
13│ ├── img_0002.jpg
14│ └── ...
15└── labels/
16 ├── train/
17 │ ├── img_0001.txt
18 │ ├── img_0002.txt
19 └── val/
20 ├── img_0001.txt
21 ├── img_0002.txt
应用场景
该数据集可以用于训练和评估机器学习模型特别是在电力施工领域的安全监管方面。具体应用场景包括但不限于
自动识别施工现场的安全隐患。协助现场管理人员及时发现并纠正不安全行为。提升施工人员的安全意识。
示例代码 下面是一个使用Python和相关库如OpenCV、PyTorch等来加载和展示数据集的简单示例代码
1import os
2import cv2
3import xml.etree.ElementTree as ET
4from PIL import Image
5import numpy as np
6import torch
7from torchvision import transforms
8
9# 数据集路径
10dataset_path path/to/dataset/
11
12# 加载图像和标签
13def load_image_and_label(image_path, annotation_path):
14 # 读取图像
15 image Image.open(image_path).convert(RGB)
16 # 解析XML文件
17 tree ET.parse(annotation_path)
18 root tree.getroot()
19 objects []
20 for obj in root.findall(object):
21 name obj.find(name).text
22 bbox obj.find(bndbox)
23 xmin int(bbox.find(xmin).text)
24 ymin int(bbox.find(ymin).text)
25 xmax int(bbox.find(xmax).text)
26 ymax int(bbox.find(ymax).text)
27 objects.append([xmin, ymin, xmax, ymax, name])
28 return image, objects
29
30# 展示图像
31def show_image_with_boxes(image, boxes):
32 img np.array(image)
33 for box in boxes:
34 xmin, ymin, xmax, ymax, name box
35 cv2.rectangle(img, (xmin, ymin), (xmax, ymax), (0, 255, 0), 2)
36 cv2.putText(img, name, (xmin, ymin - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)
37 cv2.imshow(Image with Boxes, img)
38 cv2.waitKey(0)
39 cv2.destroyAllWindows()
40
41# 主函数
42if __name__ __main__:
43 images_dir os.path.join(dataset_path, JPEGImages)
44 annotations_dir os.path.join(dataset_path, Annotations)
45
46 # 获取图像列表
47 image_files [f for f in os.listdir(images_dir) if f.endswith(.jpg)]
48
49 # 随机选择一张图像
50 selected_image np.random.choice(image_files)
51 image_path os.path.join(images_dir, selected_image)
52 annotation_path os.path.join(annotations_dir, selected_image.replace(.jpg, .xml))
53
54 # 加载图像和标签
55 image, boxes load_image_and_label(image_path, annotation_path)
56
57 # 展示带有标注框的图像
58 show_image_with_boxes(image, boxes)
这段代码演示了如何加载图像和其对应的XML标注文件并在图像上绘制边界框和类别标签。您可以根据实际需求进一步扩展和修改这段代码以适应您的具体应用场景。