当前位置: 首页 > news >正文

海上搜救(SAR)小目标检测打造 海上搜救小目标检测数据集 深度学习YOLOv8 的完整训练代码 无人机航拍+水上漂浮物检测(人、船、冲浪板等)海上搜救检测数据集

AFO数据集(Aerial Dataset of Floating Objects)
专为海上搜救(SAR)小目标检测打造
2021年发布,波兰AGH科技大学出品
无人机航拍+水上漂浮物检测(人、船、冲浪板等)

3647张图像,39991个标注目标
分辨率720p~4K(1280×720~3840×2160)
50段无人机航拍视频,人工标注
数据集划分:训练集2787张(76.4%),测试集514张(14.1%),验证集339张(9.3%)
三、标注类别(9类)

• human(人)

• boat(船)

• bouy(浮标)

• kayak(皮划艇)

• sailboat(帆船)

• wind/sup-board(冲浪/桨板)

• small_obj(小物体)

• large_obj(大物体)

• object(通用物体)


AFO数据集(Aerial Dataset of Floating Objects)基本信息

项目描述
数据集名称AFO(Aerial Dataset of Floating Objects)
发布时间2021年
发布机构波兰AGH科技大学
应用场景海上搜救(SAR)中的小目标检测
图像来源无人机航拍
图像数量3647张
视频来源50段无人机航拍视频(人工抽帧并标注)
标注目标总数39,991个
分辨率范围720p 至 4K(1280×720 ~ 3840×2160)
数据集划分训练集:2787张(76.4%)测试集:514张(14.1%)验证集:339张(9.3%)

标注类别(共9类)

类别编号类别名称说明
0human漂浮的人
1boat船只
2bouy浮标
3kayak皮划艇
4sailboat帆船
5wind/sup-board冲浪板或桨板
6small_obj小型漂浮物体(未具体分类)
7large_obj大型漂浮物体(未具体分类)
8object通用漂浮物体(模糊或难以识别类型)

目标检测训练代码示例(基于YOLOv8)

以下是一个使用 Ultralytics YOLOv8 框架训练 AFO 数据集的代码样例。假设数据已按标准 YOLO 格式组织(每张图像对应一个.txt标注文件,包含归一化坐标和类别索引)。

fromultralyticsimportYOLOimporttorch# 检查 GPU 是否可用device=0iftorch.cuda.is_available()else'cpu'print(f"Using device:{device}")# 加载预训练模型(可选:'yolov8n.pt'、'yolov8s.pt' 等)model=YOLO('yolov8s.pt')# 使用 small 模型平衡速度与精度# 定义数据配置文件(需提前创建 afo.yaml)# 示例 afo.yaml 内容见下方说明# 开始训练results=model.train(data='afo.yaml',# 数据集配置文件路径epochs=100,# 训练轮数imgsz=1280,# 输入图像尺寸(建议使用高分辨率以检测小目标)batch=16,# 批次大小(根据 GPU 显存调整)optimizer='AdamW',# 优化器选择lr0=0.001,# 初始学习率momentum=0.937,# 动量weight_decay=0.0005,# 权重衰减hsv_h=0.015,# 数据增强:色调hsv_s=0.7,# 饱和度hsv_v=0.4,# 明度degrees=10.0,# 旋转增强translate=0.2,# 平移增强scale=0.5,# 缩放增强flipud=0.5,# 上下翻转fliplr=0.5,# 左右翻转save=True,# 保存最佳模型save_period=10,# 每10轮保存一次project='afo_detection',# 输出目录name='exp1',# 实验名称exist_ok=False,workers=8# 数据加载线程数)# 可选:在测试集上评估metrics=model.val()# 可选:导出为 ONNX 格式用于部署model.export(format='onnx')
示例afo.yaml配置文件内容(保存在项目目录中)
# afo.yamltrain:/path/to/afo/images/trainval:/path/to/afo/images/valtest:/path/to/afo/images/test# 类别数量nc:9# 类别名称names:-human-boat-bouy-kayak-sailboat-wind/sup-board-small_obj-large_obj-object

说明

  • 请确保将图像和标签按 YOLO 格式组织,标签文件为.txt,每行格式为:class_id center_x center_y width height(归一化坐标)。
  • 推荐使用高分辨率输入(如imgsz=12801920)以提升对小目标的检测能力。
  • 可结合 Mosaic、MixUp 等数据增强策略进一步提升模型鲁棒性。

如需完整数据预处理脚本(如从原始标注转换为 YOLO 格式),可进一步提供标注格式(如 COCO 或 PASCAL VOC),我可协助转换。

这是为您整理的AFO 数据集(Aerial Dataset of Floating Objects)的结构化技术文档,包含详细的数据集参数表格以及基于YOLOv8的完整训练代码。


🌊 AFO 数据集技术概览

该数据集由波兰 AGH 科技大学于 2021 年发布,专为解决海上搜救(SAR)任务中小目标检测难点而设计。数据源自无人机航拍,涵盖了复杂海况下的多种漂浮物。

1. 数据集基础信息
属性详细描述
全称Aerial Dataset of Floating Objects (AFO)
发布机构波兰 AGH 科技大学
发布时间2021年
核心场景海上搜救、无人机航拍监测、小目标检测
图像总量3,647 张
标注目标39,991 个(高密度标注)
分辨率720p ~ 4K (1280 × 720 1280 \times 7201280×7203840 × 2160 3840 \times 21603840×2160)
视频源50 段人工标注的无人机航拍视频
2. 数据集划分
划分集合图像数量占比
训练集2,787 张76.4%
测试集514 张14.1%
验证集339 张9.3%
3. 标注类别 (9类)
ID类别名称中文描述备注
0human人员搜救核心目标
1boat船只普通机动船
2bouy浮标航标或警示浮标
3kayak皮划艇小型人力船
4sailboat帆船带帆船只
5wind/sup-board冲浪/桨板极小目标,检测难点
6small_obj小物体未分类的小型漂浮物
7large_obj大物体未分类的大型漂浮物
8object通用物体模糊或难以具体分类的目标

💻 模型训练代码 (基于 YOLOv8)

针对 AFO 数据集**小目标多、背景复杂(海浪干扰)**的特点,以下代码配置了较高的输入分辨率(1280)和针对性的数据增强策略。

1. 准备工作:afo.yaml配置文件

请在代码同级目录下创建afo.yaml文件,内容如下:

# AFO Dataset Configurationpath:/path/to/AFO_Dataset# 数据集根目录train:images/train# 训练集图像路径 (相对路径)val:images/val# 验证集图像路径test:images/test# 测试集图像路径# 类别数量nc:9# 类别名称列表names:0:human1:boat2:bouy3:kayak4:sailboat5:wind/sup-board6:small_obj7:large_obj8:object
2. Python 训练脚本 (train_afo.py)
fromultralyticsimportYOLOimporttorchimportosdeftrain_afo_model():# 1. 设置设备# 自动选择 GPU,如果没有则使用 CPUdevice='0'iftorch.cuda.is_available()else'cpu'print(f"🚀 使用设备:{device}")# 2. 加载模型# 建议使用 YOLOv8s 或 YOLOv8m,平衡小目标检测精度与速度# 如果是极小目标,也可以尝试 YOLOv8l,但速度会变慢model=YOLO('yolov8s.pt')# 加载预训练权重# 3. 开始训练# 针对 AFO 数据集的高分辨率和小目标特性进行参数微调results=model.train(data='afo.yaml',# 数据集配置文件路径epochs=100,# 训练轮数 (建议 100-300)imgsz=1280,# 输入尺寸:AFO 包含 4K 图像,建议设为 1280 以保留小目标特征batch=16,# 批次大小 (根据显存调整,显存不足改为 8 或 4)device=device,# 指定设备workers=8,# 数据加载线程数# --- 优化器设置 ---optimizer='AdamW',# AdamW 通常比 SGD 收敛更快lr0=0.001,# 初始学习率lrf=0.01,# 最终学习率 (lr0 * lrf)momentum=0.937,# 动量weight_decay=0.0005,# 权重衰减# --- 针对小目标的数据增强 ---# 增加 Mosaic 增强概率,提升对遮挡和背景的鲁棒性mosaic=1.0,# Mosaic 增强概率 (0-1)mixup=0.1,# MixUp 增强概率copy_paste=0.1,# Copy-Paste 增强 (对检测稀疏目标如 'human' 有效)# --- 其他设置 ---patience=50,# 早停机制 (如果 50 轮没提升则停止)save=True,# 保存模型检查点save_period=-1,# 仅保存最佳权重和最后权重project='runs/detect',# 项目保存路径name='AFO_Exp_v1',# 实验名称exist_ok=False,# 如果存在同名实验是否覆盖verbose=True# 详细输出)print("✅ 训练完成!")# 4. 验证模型性能metrics=model.val()print(f"📊 mAP50:{metrics.box.map50:.4f}")print(f"📊 mAP50-95:{metrics.box.map:.4f}")if__name__=='__main__':train_afo_model()
4. 训练建议与注意事项
  1. 输入尺寸 (imgsz)
    • AFO 数据集中包含大量微小目标(如远处的人、冲浪板)。强烈建议将imgsz设置为 1280 或更高。如果设置为默认的 640,小目标特征可能会在下采样过程中丢失,导致检测率大幅下降。
  2. 显存管理
    • 使用imgsz=1280会显著增加显存占用。如果遇到CUDA out of memory错误,请减小batch大小(例如设置为 4 或 8)。
  3. 类别不平衡
    • 数据集中humansmall_obj可能属于难样本。如果训练后期这些类别的召回率较低,可以在afo.yaml中调整hyp参数,或者在训练参数中增加scaletranslate的增强幅度。
  4. 预训练权重
    • 务必加载 COCO 预训练权重(如代码中的yolov8s.pt),不要从头训练,这能极大加快收敛速度并提高精度。
http://www.cnnetsun.cn/news/1878919.html

相关文章:

  • 交警机器人上岗常州护航苏超揭幕战;管理者敬业度已不再高于普通员工 | 美通社一周热点简体中文稿
  • Qwen3-0.6B-FP8部署教程:vLLM服务健康检查(llm.log)、Chainlit端口映射与CORS配置
  • OpenClaw安装教程:nanobot镜像内建日志系统(llm.log)解读与异常定位方法
  • Alpamayo-R1-10B惊艳效果:多目标(车辆+行人+自行车)交互轨迹联合预测展示
  • 快速上手PP-DocLayoutV3:无需代码,网页点选完成文档版面智能分析
  • Qwen3-14B私有部署镜像Java面试题智能解析与模拟面试
  • RAG系统智能升级:精准识别用户意图,告别无效检索与答非所问!
  • MogFace人脸检测模型数据库集成案例:构建人脸信息管理系统
  • 大模型应用实战:智能问答系统开发
  • Demosaicking算法在ISP中的演进:从线性插值到深度学习
  • AI浪潮的几大结局
  • 斯坦福AI开发课程开源资源:GitHub仓库全整理
  • C++零基础到工程实战(4.2):while循环流程控制与条件表达式实战——使用system和cin实现支持ls的Shell
  • PyTorch自定义损失超简单
  • 2026年嘎嘎降AI支持哪些检测平台?9大平台实测验证结果
  • DAMO-YOLO TinyNAS保姆级教学:EagleEye日志分析、错误排查与常见报错解决方案
  • gma中计算CWDI(作物水分亏缺指数)的源代码
  • 知网AI率高想降下来,嘎嘎降AI、比话降AI、率零横评
  • 零基础玩转Sambert语音合成:开箱即用镜像,小白也能做专业配音
  • GLDAS数据变量单位速查与避坑指南:别再搞混土壤湿度和蒸散发单位了!
  • 简单理解:Qi 无线充电
  • 2026年抖音买单真相:3公里内精准引流背后的4大红利
  • 每天睡前问三个问题,比检查作业更有效
  • 安科瑞AIM-T系列工业IT绝缘监测及故障定位解决方案为关键供电场所筑牢安全防线
  • 1 【3D Gaussian Splatting: From Theory to Real-Time Implementation】第一级:基础理论与数学建模
  • 2026届最火的降重复率方案推荐榜单
  • 【2026年最新600套毕设项目分享】微信小程序电影订票系统(30048)
  • 大模型学习指南:收藏这份资料,小白程序员轻松掌握RAG,开启AI新技能!
  • 后端转AI大模型应用开发:小白必看收藏!2026年真实路径与避坑指南
  • OneAPI部署实操手册:从零配置到多渠道管理,支持腾讯混元、通义千问、文心一言等全生态