news 2026/7/7 20:23:04

无人机滑坡分割数据集 无人机自然灾害实例分割检测数据集 YOLOV8 SEG分割模型如何训练无人机滑坡落石实例分割数据集

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
无人机滑坡分割数据集 无人机自然灾害实例分割检测数据集 YOLOV8 SEG分割模型如何训练无人机滑坡落石实例分割数据集

1

1

1

1

1

1

1

1

1


📊 滑坡数据集核心信息表

信息类别具体内容
数据集名称滑坡实例分割数据集(Instance Segmentation Dataset)
总图像数量6709 张
标注格式实例分割(Instance Segmentation),支持 YOLO 或 Mask R-CNN 等模型
标注方式多边形(Polygon)标注,用于精确勾勒滑坡区域边界
图像分辨率统一预处理为640×640(原始尺寸可能不同,已拉伸至该大小)
数据集划分已自动划分,未设置测试集
- 训练集(Train Set)5917 张(占比 88%)
- 验证集(Valid Set)792 张(占比 12%)
- 测试集(Test Set)0 张(尚未划分)
预处理操作✅ Auto-Orient(自动定向)
✅ Resize: Stretch to 640×640(拉伸至固定尺寸)
适用任务地质灾害检测、滑坡识别、遥感影像分析、智能预警系统
典型场景山区道路、山坡、采石场、水库周边等易发滑坡区域

🔍 补充说明

  • 标注精度高:使用多边形(Polygon)而非矩形框,适合不规则滑坡区域。
  • 无测试集:当前未划分测试集,建议从验证集中分出 10%~15% 作为独立测试集以评估泛化能力。
  • 图像来源:多为航拍或卫星遥感图像,包含山体、植被、道路等复杂背景。
  • 可转换格式
    • 可导出为YOLOv8 分割格式.txt+ mask)
    • 或转换为COCO 格式用于训练 Faster R-CNN / Mask R-CNN
    • 支持直接导入Ultralytics YOLOv8进行实例分割训练

📁 推荐目录结构(若导出为本地文件)

landslide_dataset/ ├── images/ │ ├── train/# 5917 张 .jpg│ └── val/# 792 张 .jpg├── labels/ │ ├── train/# 对应 .txt 文件(含 mask 或 bbox)│ └── val/ └── dataset.yaml

📄 示例dataset.yaml(适用于 YOLOv8)

train:./images/trainval:./images/valtest:./images/test# 可留空或后续补充nc:1names:['landslide']

✅ 若为实例分割任务,需使用YOLOv8-seg模型:

model=YOLO('yolov8s-seg.pt')


YOLOv8 实例分割(Instance Segmentation)训练代码,适用于您提到的滑坡、


✅ 一、前提条件

  1. 数据集格式:必须为YOLO 分割格式(每张图对应一个.txt标签文件,含归一化多边形坐标)

  2. 目录结构

    your_dataset/ ├── images/ │ ├── train/ │ └── val/ ├── labels/ │ ├── train/ # .txt 文件,格式:class_id x1 y1 x2 y2 ... xn yn │ └── val/ └── dataset.yaml
  3. 安装依赖

    pipinstallultralytics opencv-python

📄 二、dataset.yaml配置(以滑坡为例)

# dataset.yamltrain:./images/trainval:./images/val# test: ./images/test # 可选nc:1# 类别数names:['landslide']# 类别名称(与标签中的 class_id=0 对应)

⚠️ 注意:YOLO 分割标签中,第一列为类别 ID,后续为归一化的多边形顶点坐标(x, y),成对出现,数量可变。

示例labels/train/xxx.txt内容:

0 0.452 0.612 0.467 0.631 0.489 0.625 0.475 0.602 ...

🚀 三、YOLOv8 分割训练代码(train_seg.py

# train_seg.pyfromultralyticsimportYOLOdefmain():# 加载 YOLOv8 分割预训练模型model=YOLO('yolov8s-seg.pt')# 可选: yolov8n-seg, yolov8m-seg, yolov8l-seg# 开始训练results=model.train(data='dataset.yaml',# 数据配置文件epochs=100,# 训练轮数imgsz=640,# 输入图像尺寸(可设为 1280 提升精度)batch=16,# 批次大小(根据 GPU 显存调整)name='landslide_seg_v8s',# 实验名称optimizer='AdamW',lr0=0.001,weight_decay=0.0005,hsv_h=0.015,# 色调增强hsv_s=0.7,hsv_v=0.4,degrees=10.0,# 旋转translate=0.1,scale=0.5,fliplr=0.5,# 左右翻转mosaic=0.8,# Mosaic 增强(对小目标有效)mixup=0.2,copy_paste=0.3,# Copy-Paste 增强(强烈推荐用于分割!)close_mosaic=10,# 最后10轮关闭 Mosaicdevice=0,# GPU 编号,'cpu' 表示使用 CPUworkers=4,save=True,save_period=10,exist_ok=False,verbose=True)if__name__=='__main__':main()

🔍 四、推理与可视化(detect_seg.py

# detect_seg.pyfromultralyticsimportYOLOimportcv2# 加载训练好的最佳分割模型model=YOLO('runs/segment/landslide_seg_v8s/weights/best.pt')defdetect_image(image_path,conf_thres=0.3):results=model(image_path,conf=conf_thres)# 绘制带掩码的检测结果annotated=results[0].plot()# 自动叠加 mask + bbox + labelcv2.imshow("Segmentation Result",annotated)cv2.waitKey(0)cv2.destroyAllWindows()# 或保存# cv2.imwrite("output_seg.jpg", annotated)# 示例detect_image("test_landslide.jpg")

📊 五、评估分割性能(evaluate_seg.py

# evaluate_seg.pyfromultralyticsimportYOLO model=YOLO('runs/segment/landslide_seg_v8s/weights/best.pt')metrics=model.val(data='dataset.yaml',split='val')print(f"mAP@0.5 (Box):{metrics.box.map50:.4f}")print(f"mAP@0.5 (Mask):{metrics.seg.map50:.4f}")# 关键指标!print(f"mAP@0.5:0.95 (Mask):{metrics.seg.map:.4f}")print(f"Precision (Mask):{metrics.seg.mp:.4f}")print(f"Recall (Mask):{metrics.seg.mr:.4f}")

重点关注metrics.seg.map50:这是实例分割任务的核心评价指标。


💡 六、关键技巧(针对分割任务)

技巧说明
启用copy_paste将目标从一张图“粘贴”到另一张,极大提升稀疏目标(如滑坡)的泛化能力
使用高分辨率imgsz=1280可更好保留滑坡边界细节
避免拉伸变形若原始图像比例差异大,建议使用letterbox(YOLO 默认),而非 stretch
检查标签格式确保.txt中坐标是归一化(0~1)偶数个数值

📦 七、输出结果说明

训练完成后,结果保存在:

runs/segment/landslide_seg_v8s/ ├── weights/best.pt # 最佳模型(按 mAP50-mask 选择) ├── results.csv # 训练指标日志 ├── results.png # 损失 & mAP 曲线图 └── val_batch0_labels.jpg # 验证集预测 vs 真实对比图(含掩码)

🌐 应用场景

  • 地质灾害监测(滑坡、泥石流)
  • 农业遥感(作物分割、病害区域提取)
  • 海上搜救(落水人员轮廓分割)
  • 城市规划(建筑物、道路提取)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 13:24:51

4、WSH 5.6 新特性全解析

WSH 5.6 新特性全解析 1. 以编程方式访问标准流 在脚本执行过程中,我们可以通过 Exec 方法获取运行脚本的状态信息,该方法会返回 WshScriptExec 对象。下面为你展示在 Jscript 和 Vscript 中使用 Exec 方法的示例代码: // Jscript var argJob = WshShell.Exec(&qu…

作者头像 李华
网站建设 2026/7/7 13:52:33

6、Windows Script Host (WSH) 对象模型全解析

Windows Script Host (WSH) 对象模型全解析 1. WSH 对象模型概述 要访问 Windows Script Host(WSH)的功能,可通过对象模型来实现。该对象模型提供了访问 WSH 各部分属性和方法的途径。WSH 对象模型包含 14 个对象,根对象是 WScript 对象,这些对象实际上是 COM 接口,可分…

作者头像 李华
网站建设 2026/7/7 3:51:18

10、网络脚本安全与ADSI技术详解

网络脚本安全与ADSI技术详解 在计算机系统中,脚本执行的安全性一直是网络管理员关注的重点。当涉及到允许用户在本地计算机和网络上运行脚本时,管理员们往往会有所担忧。不过,WSH 5.6 提供了一系列安全特性,在一定程度上缓解了这些担忧。 WSH 5.6 安全特性 WSH 5.6 的安…

作者头像 李华
网站建设 2026/7/7 11:41:36

16、活动目录搜索全解析

活动目录搜索全解析 1. 过滤器比较运算符 在活动目录搜索中,过滤器的比较运算符起着关键作用,以下是常用的比较运算符及其描述: | 运算符 | 描述 | | — | — | | = | 等于 | | ~= | 约等于 | | <= | 小于或等于 | | >= | 大于或等于 | | & | 逻辑与比较…

作者头像 李华
网站建设 2026/7/7 18:24:02

Excalidraw乐观锁机制:提升并发编辑体验

Excalidraw 乐观锁机制&#xff1a;提升并发编辑体验 在如今远程协作成为常态的背景下&#xff0c;多个用户同时编辑同一份文档早已不是新鲜事。无论是写代码、填表格&#xff0c;还是画流程图&#xff0c;我们越来越依赖那些“实时同步”的工具来保持团队节奏一致。但你有没有…

作者头像 李华
网站建设 2026/7/7 15:10:59

Flink源码阅读:Checkpoint机制(上)

前文我们梳理了 Flink 状态管理相关的源码&#xff0c;我们知道&#xff0c;状态是要与 Checkpoint 配合使用的。因此&#xff0c;本文我们就一起来看一下 Checkpoint 相关的源码。写在前面 在Flink学习笔记&#xff1a;如何做容错一文中&#xff0c;我们介绍了 Flink 的 Chec…

作者头像 李华