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

yolov5系列自诞生已经持续迭代了很多个版本了,目前官方开发者迭代的最新版本是v6.2,已经覆盖了分类、检测盒分割三大主流CV任务了,基于yolov5融合各种tricks是很多开发者或者是学生喜欢做的事情,基于yolov5也已经诞生了很多学术文章了,bifpn是一种比较有效的特征融合技术,最早在efficientnet中提出,之后很多网络也都有尝试进行融合,今天正好有时间就想着,基于yolov5来开发融合bifpn的目标检测模型,用于隧道内的裂缝裂痕检测。

首先看下最终的效果图,如下所示:

为了整体直观,这里专门是开发了对应的界面,方便使用的。

完整项目截图如下所示:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第1张图片

 下表是对整个项目中各个文件的介绍说明:

文件名称 文件说明
dataset/ 数据集目录
models/ 模型配置目录
runs/ 模型结果目录
utils/ 公共组件目录
data/ 数据参数目录
weights/ 预训练权重目录
app.gif app效果动图
demo.gif 检测样例动图
detect.py 检测推理模块
export.py 模型转化模块
guiAPP.py APP模块
inference.py 离线推理精简模块
logs.out 训练日志
startAPP.bat 双击启动APP脚本
test.jpg 测试样例图片
train.py 训练模块
val.py 评估模块
yolov5s.onnx yolov5s原生模型
yolov5s.pt yolov5s原生模型
yolov5s-bifpn.onnx yolov5s-bifpn模型
yolov5s-bifpn.pt yolov5s-bifpn模型

data目录如下所示:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第2张图片

 logo是用于界面的这个不用管,可以根据自己需要直接替换接口,self.yaml是我们编写的用于训练的数据配置,如下:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第3张图片

 其他的都是项目自带的这里就不再介绍了。

dataset是我们构建的训练集-测试集目录。数据样例如下所示:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第4张图片

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第5张图片

 models目录如下所示:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第6张图片

 yolov5s.yaml和yolov5s_bifpn.yaml分别表示原生的yolov5s模型和融合bifpn的yolov5s模型,这里以原生的yolov5s为例,如下:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第7张图片

 这里需要修改nc。

runs是项目运行自动创建的结果存储目录。

utils是项目公用组件目录。

weights是用于存放预训练权重的目录。

启动train.py模块即可执行模型的训练计算,日志输出如下:

Starting training for 100 epochs...

     Epoch   gpu_mem       box       obj       cls    labels  img_size

  0%|          | 0/59 [00:00

训练过程中,结果会自动创建目录存储在runs下,如下所示:

yolov5s-bifpn模型结果:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第8张图片

 yolov5s模型结果:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第9张图片

 随机选取样例图像测试如下:

基于yolov5s+bifpn实践隧道裂缝裂痕检测_第10张图片

 为了便于后续使用结果数据,这里对其结果数据进行解析存储如下:

{
	"crack": [
		[
			0.26700732111930849,
			[
				0,
				296,
				23,
				392
			]
		],
		[
			0.2672766149044037,
			[
				686,
				648,
				767,
				689
			]
		],
		[
			0.2740951180458069,
			[
				1,
				393,
				26,
				498
			]
		],
		[
			0.27556174993515017,
			[
				631,
				634,
				722,
				671
			]
		],
		[
			0.27758586406707766,
			[
				582,
				247,
				630,
				295
			]
		],
		[
			0.2786214053630829,
			[
				801,
				711,
				869,
				753
			]
		],
		[
			0.28326842188835146,
			[
				911,
				761,
				966,
				819
			]
		],
		[
			0.2855015993118286,
			[
				726,
				61,
				765,
				126
			]
		],
		[
			0.2891019582748413,
			[
				541,
				621,
				613,
				658
			]
		],
		[
			0.28970593214035036,
			[
				863,
				745,
				932,
				780
			]
		],
		[
			0.28980544209480288,
			[
				752,
				8,
				785,
				76
			]
		],
		[
			0.2912375032901764,
			[
				986,
				860,
				1020,
				918
			]
		],
		[
			0.29403477907180788,
			[
				619,
				205,
				663,
				261
			]
		],
		[
			0.29819419980049136,
			[
				666,
				641,
				740,
				677
			]
		],
		[
			0.30100756883621218,
			[
				1005,
				903,
				1024,
				951
			]
		],
		[
			0.30114322900772097,
			[
				548,
				281,
				588,
				338
			]
		],
		[
			0.30483242869377139,
			[
				1,
				342,
				26,
				450
			]
		],
		[
			0.3290395140647888,
			[
				820,
				720,
				890,
				763
			]
		],
		[
			0.3302559554576874,
			[
				652,
				165,
				695,
				221
			]
		],
		[
			0.3334021270275116,
			[
				0,
				693,
				35,
				736
			]
		],
		[
			0.33690938353538515,
			[
				605,
				222,
				650,
				275
			]
		],
		[
			0.34495481848716738,
			[
				0,
				533,
				27,
				615
			]
		],
		[
			0.37444597482681277,
			[
				963,
				713,
				1018,
				755
			]
		],
		[
			0.37496164441108706,
			[
				686,
				121,
				735,
				176
			]
		],
		[
			0.3889273703098297,
			[
				358,
				590,
				432,
				633
			]
		],
		[
			0.40112408995628359,
			[
				5,
				612,
				38,
				693
			]
		],
		[
			0.40698984265327456,
			[
				593,
				235,
				640,
				287
			]
		],
		[
			0.41528889536857607,
			[
				633,
				185,
				677,
				244
			]
		],
		[
			0.4153532385826111,
			[
				446,
				474,
				492,
				534
			]
		],
		[
			0.41710415482521059,
			[
				996,
				879,
				1024,
				942
			]
		],
		[
			0.42140141129493716,
			[
				762,
				0,
				792,
				47
			]
		],
		[
			0.42363840341567995,
			[
				675,
				137,
				724,
				187
			]
		],
		[
			0.42380252480506899,
			[
				422,
				583,
				483,
				635
			]
		],
		[
			0.43151307106018069,
			[
				709,
				93,
				750,
				155
			]
		],
		[
			0.4327857792377472,
			[
				844,
				734,
				915,
				775
			]
		],
		[
			0.4366927146911621,
			[
				555,
				272,
				604,
				315
			]
		],
		[
			0.4374251663684845,
			[
				233,
				649,
				297,
				688
			]
		],
		[
			0.44089221954345705,
			[
				714,
				657,
				784,
				701
			]
		],
		[
			0.448123574256897,
			[
				739,
				37,
				774,
				107
			]
		],
		[
			0.4551221430301666,
			[
				161,
				641,
				238,
				690
			]
		],
		[
			0.45720604062080386,
			[
				769,
				688,
				830,
				736
			]
		],
		[
			0.4593600630760193,
			[
				963,
				839,
				1007,
				886
			]
		],
		[
			0.48793330788612368,
			[
				607,
				626,
				690,
				664
			]
		],
		[
			0.4884047508239746,
			[
				925,
				772,
				979,
				835
			]
		],
		[
			0.5071386694908142,
			[
				222,
				597,
				306,
				647
			]
		],
		[
			0.5111898183822632,
			[
				473,
				431,
				514,
				497
			]
		],
		[
			0.5346865057945252,
			[
				105,
				662,
				182,
				713
			]
		],
		[
			0.5522925853729248,
			[
				540,
				303,
				569,
				378
			]
		],
		[
			0.5579397082328796,
			[
				506,
				367,
				552,
				432
			]
		],
		[
			0.5627263784408569,
			[
				295,
				580,
				388,
				633
			]
		],
		[
			0.5672629475593567,
			[
				475,
				617,
				569,
				653
			]
		],
		[
			0.574158251285553,
			[
				24,
				693,
				108,
				731
			]
		],
		[
			0.5847405791282654,
			[
				426,
				526,
				461,
				594
			]
		]
	]
}

与我之前的文章中的结果格式保持一致。

 

你可能感兴趣的:(深度学习,计算机视觉,人工智能)