城市道路路面病害检测识别分析,以RDD赛事捷克-印度-日本集成融合数据集为例,基于yolov5m模型开发构建城市道路病害检测识别系统

news/2024/12/2 14:36:19/

城市道路病害检测是最近比较热门的一个任务领域,核心就是迁移深度学习目前已有的研究成果来实现实时城市道路路面病害的检测识别分析,在我之前的很多博文中都有做过类似桥梁、大坝、基建、隧道等水泥设施裂缝裂痕等目标检测相关的项目,除此之外还有开发过相关城市路面病害检测的实践项目,链接如下,感兴趣的话可以自行移步阅读即可。

《水泥路面、桥梁基建、隧道裂痕裂缝检测数据集》

《助力交通出行,基于目标检测模型实现路面裂痕缺陷智能识别》

《基于DeepLabV3实践路面、桥梁、基建裂缝裂痕分割》

《助力路面智能巡检养护,基于YOLOv5开发轻量级路面缺陷智能检测系统》

《python基于融合SPD-Conv改进yolov5与原生yolov5模型实践路面裂痕裂缝检测》

《融合注意力模块SE基于轻量级yolov5s实践路面坑洼目标检测系统》

《基于yolov5s+bifpn实践隧道裂缝裂痕检测》

《基于YOLOV7的桥梁基建裂缝检测》

《python基于DeeplabV3Plus开发构建裂缝分割识别系统,并实现裂缝宽度计算测量》

《基于yolov5开发构建道路路面病害检测识别系统——以捷克、印度、日本三国城市道路实况场景数据为例,开发对比分析模型并分析对应性能》

本文主要是前文《基于yolov5开发构建道路路面病害检测识别系统——以捷克、印度、日本三国城市道路实况场景数据为例,开发对比分析模型并分析对应性能》的后续文章,前文则是以捷克、印度、日本三国独立场景的道路路面数据集为基准开发了轻量级的yolov5s系列的模型,并对三者进行了详细的性能指标对比分析与可视化。

本文主要是将三国城市道路场景的数据集进行整合汇总解析处理,之后基于yolov5m模型来尝试开发构建更具识别检测能力的检测模型,首先来看下效果图:

 数据集是与前文一致的,只不过在开发完前文的项目后我发现这批数据集有相当一部分的都是空图,这里为了加快模型的开发效率,这里我去除了相关的空图数据,简单看下数据集:

 可以清楚看到:经过数据处理后生下来14569张图像数据可用于后续模型的开发训练。

原始VOC格式标注数据文件如下:

 经过处理后得到的YOLO格式的标注数据文件如下:

 前后相减可以分析知:大概去除了7000左右的数据量。

融合汇总的数据集类别清单如下所示:

['D00', 'D01', 'D10', 'D11', 'D20', 'D40', 'D43', 'D44', 'D50']

本文使用到的是m系列的模型,相对前文使用的s系列的模型来说精度更高,模型文件如下所示:

# YOLOv5 🚀 by Ultralytics, GPL-3.0 license# Parameters
nc: 9  # number of classes
depth_multiple: 0.67  # model depth multiple
width_multiple: 0.75  # layer channel multiple
anchors:- [10,13, 16,30, 33,23]  # P3/8- [30,61, 62,45, 59,119]  # P4/16- [116,90, 156,198, 373,326]  # P5/32# Backbone
backbone:# [from, number, module, args][[-1, 1, Conv, [64, 6, 2, 2]],  # 0-P1/2[-1, 1, Conv, [128, 3, 2]],  # 1-P2/4[-1, 3, C3, [128]],[-1, 1, Conv, [256, 3, 2]],  # 3-P3/8[-1, 6, C3, [256]],[-1, 1, Conv, [512, 3, 2]],  # 5-P4/16[-1, 9, C3, [512]],[-1, 1, Conv, [1024, 3, 2]],  # 7-P5/32[-1, 3, C3, [1024]],[-1, 1, SPPF, [1024, 5]],  # 9]# Head
head:[[-1, 1, Conv, [512, 1, 1]],[-1, 1, nn.Upsample, [None, 2, 'nearest']],[[-1, 6], 1, Concat, [1]],  # cat backbone P4[-1, 3, C3, [512, False]],  # 13[-1, 1, Conv, [256, 1, 1]],[-1, 1, nn.Upsample, [None, 2, 'nearest']],[[-1, 4], 1, Concat, [1]],  # cat backbone P3[-1, 3, C3, [256, False]],  # 17 (P3/8-small)[-1, 1, Conv, [256, 3, 2]],[[-1, 14], 1, Concat, [1]],  # cat head P4[-1, 3, C3, [512, False]],  # 20 (P4/16-medium)[-1, 1, Conv, [512, 3, 2]],[[-1, 10], 1, Concat, [1]],  # cat head P5[-1, 3, C3, [1024, False]],  # 23 (P5/32-large)[[17, 20, 23], 1, Detect, [nc, anchors]],  # Detect(P3, P4, P5)]

这里默认是100次的epoch训练计算,训练日志输出如下:

 接下来看下结果详情数据:

【精确率和召回率曲线】

 【训练可视化曲线】

 【PR曲线和F1值曲线】

 【类别标签可视化】

 从上图的类别数据标签可视化中不难看出,其实这几个类别的数据是严重不均衡的。

【混淆矩阵】

 batch计算实例如下:

 同样为了方便使用,这里依旧是实现了可视化推理应用,如下所示:

【捷克】

 【印度阿三】

【小日子】

 感兴趣的话也可以上手实操一下。


http://www.ppmy.cn/news/341896.html

相关文章

C++在路径前加R,免写双斜线\\,

string path "D:\\file\\data\\"; string path2 R"(D:\file\data\)";

通过SpringBoot-RestTemplate调用第三方接口实例

Springboot底层的RestTemplate调用第三方接口 第一步:先创建RestTemplate实例 第二步:给RestTemplate封装头部 第三步:设置contentType 第四步:封装body,调用第三方接口 Map tokenMap dbomLoginService.getToken(…

【Windows】使用 BitLocker 加密来对磁盘进行加密保护,防止数据被盗取或篡改

在 Windows 中,可以使用 BitLocker 加密来对磁盘进行加密保护,防止数据被盗取或篡改。同时,也可以设置开机密码或者关机密码来保护计算机的安全。 以下是具体的操作步骤: 打开 BitLocker 加密功能 在 Windows 10 中,可…

松下G500数据线

Panasonic Cable 适用于松下 G400、G450、G500、G520、G600 手机。 ——摘自 ChinaMobileWorld

json格式转换工具,在线编辑生成json

http://www.json.org.cn/tools/JSONEditorOnline/index.htm JSON中国

iToolab UnlockGo for Mac,iOS设备解锁工具

iToolab UnlockGo是一款专业的 iPhone/iPad 解锁工具,可以帮助用户解除 iOS 设备的各种锁定,包括屏幕密码、指纹密码、Face ID 等。以下是 iToolab UnlockGo 的一些主要特点: 针对多种锁定类型:iToolab UnlockGo 可以解除多种 iO…

【无标题】储能电池IEC62619认证 IEC62619测试什么内容

储能电池IEC62619认证 IEC62619测试什么内容 作为专业的民营三方检测、认证服务型的,同时已获得CNAS、CMA、NVLAP、MICOM、A2AL、CPSC、IC、EMSD、NATA、SABS、KOSTEC、 lNSPECCO、E-mark、TUV、CETECOM、EUROFINS、PHOENIX、HOENIX、KTC、ITS、SAA、UL等20多个国内…

AE电子相册模板|笔刷特效照片回忆展示AE幻灯片模板

为您的促销视频、活动开场视频和一些需要的后期效果AE项目,易于使用,模块化组合,属性颜色和良好的组织项目! 文件信息: 4K 38402160 30 fps项目合成文件 属性颜色控件 模块化,结构简单,可编辑 包…