智慧无人机巡检 无人机视角 太阳能光伏板目标检测数据集 4700 张
【内容】无人机航拍采集,包含太阳能光伏板检测,图片清晰标注,适合yolo目标检测模型训练
【格式】支持yolo格式输出,数据集已标注好,直接可用
📊 数据集信息表
| 字段 | 内容描述 |
|---|---|
| 数据集名称 | 无人机视角太阳能光伏板目标检测数据集 |
| 图像数量 | 4,700 张 |
| 采集视角 | 无人机航拍视角(可见光) |
| 目标类别 | 太阳能光伏板 |
| 图像质量 | 图片清晰,分辨率高,包含不同光照、排列角度及背景环境,适合复杂场景训练 |
| 标注格式 | YOLO 格式(.txt文件,包含归一化中心坐标x y w h) |
| 适用任务 | 目标检测、光伏电站巡检、无人机遥感图像分析 |
| 使用建议 | 数据已标注完毕,可直接用于 YOLOv5/v8/v11 等主流检测模型训练 |
🚀 YOLOv8 训练代码
由于您的数据集包含4,700 张图片,这是一个中等规模的数据集,非常适合训练一个高精度的模型。考虑到光伏板在航拍图中通常呈现规则排列且背景可能较为复杂(如屋顶、沙漠、水面),建议使用YOLOv8m或YOLOv8s模型。
1. 准备工作:配置文件
请确保您的数据集目录结构如下,并创建solar_panel.yaml文件:
Solar_Dataset/ ├── images/ │ ├── train/ (约 3700 张) │ └── val/ (约 1000 张) ├── labels/ │ ├── train/ │ └── val/ └── solar_panel.yamlsolar_panel.yaml内容:
path:./Solar_Dataset# 数据集根目录train:images/trainval:images/val# 类别数量nc:1# 类别名称names:0:solar_panel2. 训练脚本 (train_solar.py)
这段代码针对航拍视角的特点进行了优化,例如开启了旋转增强(degrees),因为无人机拍摄的角度可能不是正北朝上。
fromultralyticsimportYOLOimporttorchimportosdeftrain_solar_model():# 1. 设备配置device='0'iftorch.cuda.is_available()else'cpu'print(f"🚀 正在使用设备:{device}")# 2. 加载模型# 推荐使用 yolov8m.pt,在精度和速度之间取得平衡# 如果显存较小或追求极快速度,可改为 'yolov8s.pt'model=YOLO('yolov8m.pt')# 3. 训练参数配置results=model.train(data='solar_panel.yaml',# 数据配置文件epochs=200,# 训练轮数 (4700张图建议 100-300 轮)imgsz=640,# 输入图像尺寸batch=16,# 批次大小 (根据显存调整)device=device,workers=4,# 数据加载线程数# --- 优化器设置 ---optimizer='AdamW',# AdamW 收敛更稳定lr0=0.001,# 初始学习率lrf=0.01,# 最终学习率# --- 针对航拍视角的增强 ---# 无人机拍摄角度多变,开启旋转增强非常重要degrees=45.0,# 旋转角度 (+/- 45度),适应不同朝向的光伏阵列translate=0.1,# 平移scale=0.5,# 缩放 (适应不同飞行高度)shear=10.0,# 剪切 (模拟倾斜拍摄)# 颜色变换 (适应不同天气光照)hsv_h=0.015,# 色调hsv_s=0.7,# 饱和度hsv_v=0.4,# 亮度# Mosaic 增强 (对密集排列的光伏板检测非常有效)mosaic=1.0,# Mosaic 增强概率mixup=0.05,# MixUp 增强概率# --- 其他设置 ---patience=100,# 早停机制project='runs/solar_detect',# 项目保存路径name='pv_panel_v1',# 实验名称exist_ok=False)print("✅ 训练完成!模型保存在 runs/solar_detect/pv_panel_v1/weights/best.pt")# 4. 验证模型metrics=model.val()print(f"📊 mAP50:{metrics.box.map50:.4f}")print(f"📊 mAP50-95:{metrics.box.map:.4f}")if__name__=='__main__':train_solar_model()💡 关键参数解析
degrees=45.0:这是针对无人机航拍数据最重要的参数。地面拍摄通常水平,但无人机可能从任意角度拍摄光伏板阵列。开启旋转增强可以让模型学会识别不同倾斜角度的光伏板。mosaic=1.0:光伏板通常是密集排列的。Mosaic 增强会将 4 张图片拼接成 1 张,增加背景复杂度的同时,让模型在一次训练中查看更多样本,显著提升密集小目标的检测能力。scale=0.5:模拟无人机在不同高度飞行。高空拍摄的光伏板很小,低空拍摄则很大,缩放增强能提高模型对不同尺寸目标的适应性。
运行此代码后,您将获得一个专门用于检测太阳能光伏板的.pt模型文件,可直接用于后续的无人机自动巡检系统。