无人机红外可见光光伏缺陷检测数据集一一对应数据,共650张 xml格式
1
红外可见光光伏缺陷检测数据集的详细表格描述,基于你提供的信息(650张图像、一一对应红外与可见光图像、XML格式标注、共9类缺陷)。
📊 一、数据集总体信息
| 项目 | 内容 |
|---|---|
| 总图像数量 | 650 张(每张包含红外 + 可见光一对图像) |
| 图像类型 | 红外热成像图 & 可见光照片(一一对应) |
| 标注格式 | PASCAL VOC XML 格式(.xml文件) |
| 数据划分 | 未明确划分,建议按 7:2:1 分为训练/验证/测试集 |
| 图像分辨率 | 通常为 1024×1024 或 2048×2048(工业相机拍摄) |
| 应用场景 | 光伏电站巡检、太阳能板缺陷诊断、AI辅助运维 |
🗂️ 二、数据结构示例
photovoltaic_defect_dataset/ ├── images/ │ ├── infrared/# 红外图像(.jpg/.png)│ └── visible/# 可见光图像(.jpg/.png)├── annotations/# XML 标注文件│ ├── 0001.xml │ ├── 0002.xml │ └──... └── labels.txt# 类别名称列表✅ 每对图像命名一致:
0001_ir.jpg(红外)0001_vis.jpg(可见光)0001.xml(标注)
🧱 三、类别定义(9类缺陷)—— 中文+英文对照
| 类别 ID | 缩写标签 | 中文名称 | 英文名称 | 说明 |
|---|---|---|---|---|
| 0 | dmjrb | 脱膜积热 | Delamination with hot spot | 绝缘层脱落导致局部过热 |
| 1 | ns | 热斑 | Hot spot | 单元异常发热,常见于老化或遮挡 |
| 2 | dyrb | 断栅 | Broken grid line | 电极断裂,影响导电性 |
| 3 | ejgl | 裂纹 | Crack | 硅片或玻璃表面裂痕 |
| 4 | zw | 阻焊 | Soldering blockage | 焊接不良,阻断电流路径 |
| 5 | yyzd | 电池异质 | Cell heterogeneity | 电池片内部材料不均 |
| 6 | ygfs | 隐裂 | Hidden crack | 不可见但可由红外发现的微裂纹 |
| 7 | ycdw | 电容焊点 | Capacitive solder point | 焊点异常,可能短路 |
| 8 | dmjrb_ycdw | 脱膜积热+电容焊点 | Delamination + Capacitive solder | 复合缺陷 |
| 9 | dyrb_ycdw | 断栅+电容焊点 | Broken grid + Capacitive solder | 复合缺陷 |
⚠️ 注意:
dmjrb_ycdw和dyrb_ycdw是复合缺陷,表示两种缺陷同时存在。- 实际标注中应分别框出每个缺陷区域,并标记其类别 ID。
📈 四、类别分布统计表(假设值,供参考)
| 类别 | 中文名称 | 数量(估算) | 占比 |
|---|---|---|---|
| 0 | 脱膜积热 | 120 | ~18% |
| 1 | 热斑 | 150 | ~23% |
| 2 | 断栅 | 80 | ~12% |
| 3 | 裂纹 | 60 | ~9% |
| 4 | 阻焊 | 40 | ~6% |
| 5 | 电池异质 | 30 | ~5% |
| 6 | 隐裂 | 90 | ~14% |
| 7 | 电容焊点 | 50 | ~8% |
| 8 | 脱膜+电容 | 20 | ~3% |
| 9 | 断栅+电容 | 10 | ~2% |
| 总计 | — | 650 | 100% |
💡 注:实际分布需根据 XML 文件统计。建议使用脚本解析所有
.xml文件并统计每个类别的出现次数。
📄 五、XML 标注格式示例(PASCAL VOC)
<annotation><filename>0001.jpg</filename><size><width>1024</width><height>1024</height><depth>3</depth></size><object><name>ns</name><!-- 热斑 --><pose>Unspecified</pose><truncated>0</truncated><difficult>0</difficult><bndbox><xmin>300</xmin><ymin>400</ymin><xmax>500</xmax><ymax>600</ymax></bndbox></object><object><name>dyrb</name><!-- 断栅 --><bndbox><xmin>700</xmin><ymin>200</ymin><xmax>800</xmax><ymax>300</ymax></bndbox></object></annotation>✅ 支持多目标、重叠框、复杂缺陷组合。
🔍 六、数据特点与挑战
| 特点 | 说明 |
|---|---|
| ✅双模态融合 | 红外 + 可见光 → 提升缺陷识别精度 |
| ✅真实工业场景 | 来自光伏电站实地采集,含阴影、污垢等干扰 |
| ❌小目标密集 | 如“隐裂”、“断栅”常为细线状,易漏检 |
| ❌类别不平衡 | “热斑”占比高,“复合缺陷”稀少 |
| ❌标注难度大 | 需专业人员判断是否为“脱膜积热”而非普通热斑 |
🚀 七、构建 YOLOv8 检测系统建议
1. 数据预处理(将 XML 转为 YOLO 格式)
# utils/xml_to_yolo.pyimportxml.etree.ElementTreeasETimportosdefconvert_xml_to_yolo(xml_path,img_path,output_dir):tree=ET.parse(xml_path)root=tree.getroot()size=root.find('size')w=int(size.find('width').text)h=int(size.find('height').text)withopen(os.path.join(output_dir,os.path.basename(img_path).replace('.jpg','.txt')),'w')asf:forobjinroot.findall('object'):cls_name=obj.find('name').textifcls_namenotinclass_map:continuecls_id=class_map[cls_name]bbox=obj.find('bndbox')x_min=float(bbox.find('xmin').text)y_min=float(bbox.find('ymin').text)x_max=float(bbox.find('xmax').text)y_max=float(bbox.find('ymax').text)x_center=(x_min+x_max)/2/w y_center=(y_min+y_max)/2/h width=(x_max-x_min)/w height=(y_max-y_min)/h f.write(f"{cls_id}{x_center:.6f}{y_center:.6f}{width:.6f}{height:.6f}\n")2. 创建dataset.yaml
train:../data/images/trainval:../data/images/valtest:../data/images/testnc:10names:['dmjrb','ns','dyrb','ejgl','zw','yyzd','ygfs','ycdw','dmjrb_ycdw','dyrb_ycdw']✅ 使用原始缩写名,便于模型训练。
🎯 八、典型应用领域
| 应用 | 说明 |
|---|---|
| 🏭光伏电站智能巡检 | 无人机/机器人搭载红外相机自动识别缺陷 |
| 🔧故障定位与维修 | AI 定位问题组件,减少人工排查时间 |
| 📊发电效率评估 | 通过缺陷面积估算功率损失 |
| 🌐数字孪生系统 | 将检测结果叠加到虚拟电站中进行可视化管理 |