【目标检测】基于yolov5海上船舶目标检测(附代码和数据集)

简介: 今天给大家分享的目标检测项目是:基于yolov5海上船舶目标检测(附代码和数据集)

Hello,大家好,我是augustqi。今天给大家分享的目标检测项目是:基于yolov5海上船舶目标检测(附代码和数据集)

Part1 前言

传统的海上目标检测是通过雷达来实现,但是随着技术的发展,各种隐形涂料的船舰层出不穷,通过雷达进行目标探测受到了很大的限制。基于深度学习的目标检测方法,可以和雷达探测方法进行结合,从而实现更精准的目标识别。

Part 2 准备环节

2.1 软硬件

一个完整的项目,离不开软硬件的支持,本次项目核心配置如下:

内容 详情
系统 Ubuntu 20.04
显卡 Tesla P100
CUDA版本 11.2
CUDNN版本 8.1.1
torch版本 1.8.1

2.2 数据集

本次项目使用的数据集总体情况:

类型 数量
图片 7000
xml 7000

数据集中包含的类别以及每类的数量:

类别 目标数量
ore carrier 2199
passenger ship 474
container ship 901
bulk cargo carrier 1952
general cargo ship 1505
fishing boat 2199

使用labelimg或者其他标注工具查看数据:

image.gif编辑

将数据集划分为训练集和验证集:

image.gif编辑

将7000张图片放在VOCdevkit/VOC2007/JPEGImages目录下,将7000张xml文件放在VOCdevkit/VOC2007/Annotations目录下,使用脚本代码划分得到训练集5600张,验证集1400张,其中images和labels文件夹是运行脚本代码自动生成的。获取划分数据集的脚本代码prepare_train_val.py:

https://blog.csdn.net/AugustMe/article/details/127320880

Part 3 训练模型

代码结构如下:

image.gif编辑

文件 功能
data 数据集配置
models 模型配置
runs 存放训练结果
utils 存放工具类函数
VOCdevkit 存放数据集
weights 存放预训练权重
detect.py 检测脚本
train.py 训练脚本
export.py 模型转换脚本
val.py 验证脚本
prepare_train_val.py 划分数据集的脚本
hubconf.py pytorch hub相关代码
requirements.txt 存放项目依赖库的版本信息

本次项目使用yolov5训练一个海上船舶检测模型,yolov5代码的下载和环境配置请看微信公众号AIexplore之前发布的文章。

3.1 数据集配置


3.2 模型配置


Part 4 测试模型

使用detect.py加载训练好的模型,对验证集上的图片进行测试,这里放一部分验证集上的检测结果:

image.gif编辑

Part 5 结果分析

本项目使用yolov5训练了一个海上船舶目标检测模型,在2块Tesla P100显卡下训练了300 epoch,训练集和验证集上损失、精确率、召回率、mAP的变化图:

image.gif编辑

验证集上PR曲线:

image.gif编辑

Part 6 完整项目获取

https://blog.csdn.net/AugustMe/article/details/128111977


参考资料

[1]https://blog.csdn.net/AugustMe/article/details/127529441

[2]https://blog.csdn.net/AugustMe/article/details/127368318

[3]https://blog.csdn.net/AugustMe/article/details/127653996

[4]https://blog.csdn.net/See_Star/article/details/105820181

相关文章
|
8月前
|
算法 计算机视觉
yolov5 deepsort-船舶目标检测+目标跟踪+单目测距+速度测量(代码+教程)
yolov5 deepsort-船舶目标检测+目标跟踪+单目测距+速度测量(代码+教程)
|
8月前
|
机器学习/深度学习 编解码 监控
手把手改进yolo训练自己的数据(坑洼路面识别)
手把手改进yolo训练自己的数据(坑洼路面识别)
|
8月前
|
人工智能 JSON 数据可视化
yolov8+动物+姿态识别(训练教程+代码)
yolov8+动物+姿态识别(训练教程+代码)
|
8月前
|
机器学习/深度学习 Shell 计算机视觉
【论文精读】CVPR2021 - ReDet:一种用于航空目标检测的旋转等变检测器
【论文精读】CVPR2021 - ReDet:一种用于航空目标检测的旋转等变检测器
|
8月前
|
存储 计算机视觉
【论文速递】WACV2023 - 循环相似注意力的小样本医学图像分割
【论文速递】WACV2023 - 循环相似注意力的小样本医学图像分割
|
机器学习/深度学习 编解码 移动开发
【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)
【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)
【论文解读】——基于多尺度卷积网络的遥感目标检测研究(姚群力,胡显,雷宏)
|
机器学习/深度学习 编解码 算法
YOLO 施工安全帽目标检测模型
建筑工地的工人安全是许多建筑行业日益关注的问题。佩戴安全帽可以减少建筑工地工人的伤害,但由于各种原因,安全帽并不总是正确佩戴。因此,基于计算机视觉的自动安全帽检测系统极为重要。许多研究人员已经开发了基于机器和深度学习的头盔检测系统,但很少有人专注于建筑工地的头盔检测。
164 0
|
机器学习/深度学习 人工智能 算法
基于深度学习的农作物叶片病害检测系统(UI界面+YOLOv5+训练数据集)
基于深度学习的农作物叶片病害检测系统(UI界面+YOLOv5+训练数据集)
784 1
|
数据采集 机器学习/深度学习 算法
【图像分类】基于yolov5的钢板表面缺陷分类(附代码和数据集)
基于yolov5的钢板表面缺陷分类(附代码和数据集)
【图像分类】基于yolov5的钢板表面缺陷分类(附代码和数据集)
|
机器学习/深度学习 算法 固态存储
目标检测顶流的碰撞 | YOLOv5+DETR成就地表最强目标检测器DEYO,超越DINO!(一)
目标检测顶流的碰撞 | YOLOv5+DETR成就地表最强目标检测器DEYO,超越DINO!(一)
668 0