智慧光伏巡检光伏板/太阳能电池板缺陷检测数据集多模态版 【适用场景】工业缺陷检测、多模态图像融合RGBThermal、无人机巡检算法、YOLO/R-CNN系列目标检测。【数据亮点—科研加分项】 做单一RGB检测太卷了试试这个多模态数据双模态数据包含 可见光RGB航拍原图 红外热成像Infrared/Thermal细节图。一对多映射一张宏观RGB大图对应多张微观红外切片图非常适合研究跨模态检索或融合算法。精准标注已打好标签见图标注了光伏板的热斑、裂纹等缺陷位置Class 0/1…省去手动标注的痛苦。真实场景基于真实光伏电站的无人机巡检视角非合成数据论文说服力强。【关于用途】适合做 YOLOv8-Thermal、YOLO-Multimodal 等改进算法。适合做 图像配准Registration或 图像融合光伏板/太阳能电池板缺陷检测数据集多模态RGB红外一、数据集完整信息表项目详细描述数据集名称光伏板/太阳能电池板缺陷检测数据集多模态版数据模态可见光RGB图像 红外热成像Thermal图像双模态数据来源真实光伏电站无人机航拍采集非合成数据核心任务光伏板缺陷检测热斑、裂纹等、多模态图像融合、图像配准标注状态已完成精准标注含缺陷位置、类别标签缺陷类型热斑、裂纹等结构化缺陷Class 0/1/…数据特点一对多映射1张RGB全景图 → 多张红外微观切片图适用算法YOLOv8-Thermal、YOLO-Multimodal、R-CNN、多模态融合算法适用场景工业缺陷检测、光伏电站无人机巡检、跨模态检索支持框架YOLOv8/v9/v10/v11、MMDetection、Detectron2 等二、YOLOv8 多模态RGBThermal缺陷检测 完整训练代码1. 数据集配置文件solar_multimodal.yaml# 光伏板多模态缺陷检测数据集配置train:./images/train# 训练集路径RGB/红外均可val:./images/val# 验证集路径test:./images/test# 测试集路径# 缺陷类别数根据你的标注修改nc:2# 缺陷类别名称names:0:normal1:defect2. 环境一键安装conda create-nsolar_defectpython3.10conda activate solar_defect pipinstalltorch torchvision --index-url https://download.p.org/whl/cu118 pipinstallultralytics opencv-python pillow tqdm pandas3. 训练代码支持单模态/多模态train_solar.pyfromultralyticsimportYOLOimporttorchdeftrain_solar_defect():# 核心参数配置 DATA_YAMLsolar_multimodal.yaml# 模型可换 yolov8s.pt / yolov8s-seg.pt / yolov11s.ptMODELyolov8s.ptEPOCHS150BATCH16IMGSZ640DEVICE0iftorch.cuda.is_available()elsecpu# 加载模型 modelYOLO(MODEL)# 开始训练 model.train(dataDATA_YAML,epochsEPOCHS,batchBATCH,imgszIMGSZ,deviceDEVICE,workers8,projectsolar_defect_detection,nameyolov8_solar_rgb_thermal,exist_okTrue,patience20,# 早停optimizerAdamW,# 优化器lr00.001,# 学习率augmentTrue,# 数据增强mixup0.15,# 多模态增强mosaic1.0,close_mosaic15,saveTrue,save_period10,plotsTrue# 训练曲线可视化)print(✅ 光伏板缺陷检测模型训练完成)print(最优模型路径solar_defect_detection/xxx/weights/best.pt)if__name____main__:train_solar_defect()4. 红外/多模态图像推理代码detect_solar.pyfromultralyticsimportYOLOimportcv2importos# 配置 MODEL_PATHsolar_defect_detection/yolov8_solar_rgb_thermal/weights/best.pt# 支持图片、视频、文件夹、红外热成像图SOURCEthermal_infrared_image.jpgCONF_THRESH0.25OUTPUT_DIRsolar_defect_outputos.makedirs(OUTPUT_DIR,exist_okTrue)# 加载模型 modelYOLO(MODEL_PATH)# 开始检测 resultsmodel.predict(sourceSOURCE,confCONF_THRESH,iou0.45,imgsz640,saveTrue,showTrue,save_txtTrue,projectOUTPUT_DIR,namedefect_results)# 打印缺陷结果forresinresults:defect_numlen(res.boxes)print(f 检测到光伏板缺陷数量{defect_num})forboxinres.boxes:cls_idint(box.cls)conffloat(box.conf)print(f缺陷类别{cls_id}置信度{conf:.2f})cv2.destroyAllWindows()print(f✅ 检测完成结果保存到{OUTPUT_DIR})5. 模型精度评估代码val_solar.pyfromultralyticsimportYOLO# 加载最优模型modelYOLO(solar_defect_detection/yolov8_solar_rgb_thermal/weights/best.pt)# 验证集评估metricsmodel.val(datasolar_multimodal.yaml,imgsz640,batch16,conf0.001,iou0.6,plotsTrue)# 输出指标print(*60)print( 光伏板缺陷检测模型评估结果)print(fmAP0.5{metrics.box.map50:.4f})print(fmAP0.5:0.95{metrics.box.map:.4f})print(f精确率(P){metrics.box.precision.mean():.4f})print(f召回率(R){metrics.box.recall.mean():.4f})print(*60)6. 多模态图像融合RGBThermal增强代码fusion.pyimportcv2importnumpyasnpdeffusion_rgb_thermal(rgb_path,thermal_path,save_pathfusion.jpg):RGB 红外热成像 图像融合# 读取图像rgbcv2.imread(rgb_path)thermalcv2.imread(thermal_path)# 统一尺寸h,wrgb.shape[:2]thermalcv2.resize(thermal,(w,h))# 转灰度gray_thermalcv2.cvtColor(thermal,cv2.COLOR_BGR2GRAY)gray_thermalcv2.applyColorMap(gray_thermal,cv2.COLORMAP_JET)# 加权融合fusioncv2.addWeighted(rgb,0.5,gray_thermal,0.5,0)# 保存融合图cv2.imwrite(save_path,fusion)print(f✅ 多模态图像融合完成{save_path})returnfusion# 使用if__name____main__:fusion_rgb_thermal(rgb.jpg,thermal.jpg)三、运行步骤直接照做即可把数据集整理为images/train val testlabels结构新建solar_multimodal.yaml配置类别运行train_solar.py训练运行detect_solar.py测试缺陷检测运行val_solar.py查看精度运行fusion.py实现RGB红外融合以上文字及代码仅供参考学习使用。
光伏板/太阳能电池板缺陷检测数据集(多模态版) 【适用场景】工业缺陷检测、多模态图像融合(RGB+Thermal)、无人机巡检算法、YOLO/R-CNN系列目标检测
发布时间:2026/5/25 11:54:30
智慧光伏巡检光伏板/太阳能电池板缺陷检测数据集多模态版 【适用场景】工业缺陷检测、多模态图像融合RGBThermal、无人机巡检算法、YOLO/R-CNN系列目标检测。【数据亮点—科研加分项】 做单一RGB检测太卷了试试这个多模态数据双模态数据包含 可见光RGB航拍原图 红外热成像Infrared/Thermal细节图。一对多映射一张宏观RGB大图对应多张微观红外切片图非常适合研究跨模态检索或融合算法。精准标注已打好标签见图标注了光伏板的热斑、裂纹等缺陷位置Class 0/1…省去手动标注的痛苦。真实场景基于真实光伏电站的无人机巡检视角非合成数据论文说服力强。【关于用途】适合做 YOLOv8-Thermal、YOLO-Multimodal 等改进算法。适合做 图像配准Registration或 图像融合光伏板/太阳能电池板缺陷检测数据集多模态RGB红外一、数据集完整信息表项目详细描述数据集名称光伏板/太阳能电池板缺陷检测数据集多模态版数据模态可见光RGB图像 红外热成像Thermal图像双模态数据来源真实光伏电站无人机航拍采集非合成数据核心任务光伏板缺陷检测热斑、裂纹等、多模态图像融合、图像配准标注状态已完成精准标注含缺陷位置、类别标签缺陷类型热斑、裂纹等结构化缺陷Class 0/1/…数据特点一对多映射1张RGB全景图 → 多张红外微观切片图适用算法YOLOv8-Thermal、YOLO-Multimodal、R-CNN、多模态融合算法适用场景工业缺陷检测、光伏电站无人机巡检、跨模态检索支持框架YOLOv8/v9/v10/v11、MMDetection、Detectron2 等二、YOLOv8 多模态RGBThermal缺陷检测 完整训练代码1. 数据集配置文件solar_multimodal.yaml# 光伏板多模态缺陷检测数据集配置train:./images/train# 训练集路径RGB/红外均可val:./images/val# 验证集路径test:./images/test# 测试集路径# 缺陷类别数根据你的标注修改nc:2# 缺陷类别名称names:0:normal1:defect2. 环境一键安装conda create-nsolar_defectpython3.10conda activate solar_defect pipinstalltorch torchvision --index-url https://download.p.org/whl/cu118 pipinstallultralytics opencv-python pillow tqdm pandas3. 训练代码支持单模态/多模态train_solar.pyfromultralyticsimportYOLOimporttorchdeftrain_solar_defect():# 核心参数配置 DATA_YAMLsolar_multimodal.yaml# 模型可换 yolov8s.pt / yolov8s-seg.pt / yolov11s.ptMODELyolov8s.ptEPOCHS150BATCH16IMGSZ640DEVICE0iftorch.cuda.is_available()elsecpu# 加载模型 modelYOLO(MODEL)# 开始训练 model.train(dataDATA_YAML,epochsEPOCHS,batchBATCH,imgszIMGSZ,deviceDEVICE,workers8,projectsolar_defect_detection,nameyolov8_solar_rgb_thermal,exist_okTrue,patience20,# 早停optimizerAdamW,# 优化器lr00.001,# 学习率augmentTrue,# 数据增强mixup0.15,# 多模态增强mosaic1.0,close_mosaic15,saveTrue,save_period10,plotsTrue# 训练曲线可视化)print(✅ 光伏板缺陷检测模型训练完成)print(最优模型路径solar_defect_detection/xxx/weights/best.pt)if__name____main__:train_solar_defect()4. 红外/多模态图像推理代码detect_solar.pyfromultralyticsimportYOLOimportcv2importos# 配置 MODEL_PATHsolar_defect_detection/yolov8_solar_rgb_thermal/weights/best.pt# 支持图片、视频、文件夹、红外热成像图SOURCEthermal_infrared_image.jpgCONF_THRESH0.25OUTPUT_DIRsolar_defect_outputos.makedirs(OUTPUT_DIR,exist_okTrue)# 加载模型 modelYOLO(MODEL_PATH)# 开始检测 resultsmodel.predict(sourceSOURCE,confCONF_THRESH,iou0.45,imgsz640,saveTrue,showTrue,save_txtTrue,projectOUTPUT_DIR,namedefect_results)# 打印缺陷结果forresinresults:defect_numlen(res.boxes)print(f 检测到光伏板缺陷数量{defect_num})forboxinres.boxes:cls_idint(box.cls)conffloat(box.conf)print(f缺陷类别{cls_id}置信度{conf:.2f})cv2.destroyAllWindows()print(f✅ 检测完成结果保存到{OUTPUT_DIR})5. 模型精度评估代码val_solar.pyfromultralyticsimportYOLO# 加载最优模型modelYOLO(solar_defect_detection/yolov8_solar_rgb_thermal/weights/best.pt)# 验证集评估metricsmodel.val(datasolar_multimodal.yaml,imgsz640,batch16,conf0.001,iou0.6,plotsTrue)# 输出指标print(*60)print( 光伏板缺陷检测模型评估结果)print(fmAP0.5{metrics.box.map50:.4f})print(fmAP0.5:0.95{metrics.box.map:.4f})print(f精确率(P){metrics.box.precision.mean():.4f})print(f召回率(R){metrics.box.recall.mean():.4f})print(*60)6. 多模态图像融合RGBThermal增强代码fusion.pyimportcv2importnumpyasnpdeffusion_rgb_thermal(rgb_path,thermal_path,save_pathfusion.jpg):RGB 红外热成像 图像融合# 读取图像rgbcv2.imread(rgb_path)thermalcv2.imread(thermal_path)# 统一尺寸h,wrgb.shape[:2]thermalcv2.resize(thermal,(w,h))# 转灰度gray_thermalcv2.cvtColor(thermal,cv2.COLOR_BGR2GRAY)gray_thermalcv2.applyColorMap(gray_thermal,cv2.COLORMAP_JET)# 加权融合fusioncv2.addWeighted(rgb,0.5,gray_thermal,0.5,0)# 保存融合图cv2.imwrite(save_path,fusion)print(f✅ 多模态图像融合完成{save_path})returnfusion# 使用if__name____main__:fusion_rgb_thermal(rgb.jpg,thermal.jpg)三、运行步骤直接照做即可把数据集整理为images/train val testlabels结构新建solar_multimodal.yaml配置类别运行train_solar.py训练运行detect_solar.py测试缺陷检测运行val_solar.py查看精度运行fusion.py实现RGB红外融合以上文字及代码仅供参考学习使用。