本发明涉及人工智能和机器学习的,尤其涉及一种基于yolov8的管道封堵病害识别及评级方法,以及一种基于yolov8的管道封堵病害识别及评级装置。
背景技术:
1、随着城市化进程的加速,城市排水管道系统作为城市基础设施的重要组成部分,其健康状况直接关系到城市的正常运行和居民的生活质量。而管道内部由于各种原因导致水流受阻或完全停止流动的现象会造成管道封堵,这种病害严重影响了排水系统的效率和功能,可能导致内涝、污水溢出、管道腐蚀和环境污染等一系列问题。但是城市排水管道错综复杂,传统的人工检测方法存在诸多局限性,如无法全面检测管道内部状况、存在安全风险、劳动强度大、成本高昂等。这些问题导致了管道病害识别和评级效率低下,难以满足日益增长的管网检测和维护需求。
2、目前,国内外普遍采用的技术如压力分布法、压力点法、质量平衡法和声波法等,在进行管道封堵故障检测时需要复杂的计算且误差较大。
3、在目标检测训练之前一般都会采用数据增强的方式丰富训练数据集样本,但传统的数据增强仅对图片进行增强,增强后的图片没有对应的标签更新,需要人工重新标注增强后的图片,不仅增加了工作量和时间成本,也会导致标注信息与图像内容不一致,影响模型训练效果。
4、在进行管道病害评级时,传统方法通过计算目标框的面积来评估病害程度,目标框可能不完全贴合目标的实际轮廓,存在面积估计不精确和细节信息丢失的问题,导致程度分级不够精细。
技术实现思路
1、为克服现有技术的缺陷,本发明要解决的技术问题是提供了一种基于yolov8的管道封堵病害识别及评级方法,其能够快速、自动化、高准确度和多目标识别,更精确的贴合病害目标轮廓,显著提升管道封堵检测的性能和可靠性,解决传统方法中标签不一致和人工成本高的问题,提高数据处理的自动化水平和模型训练的质量,能够精确捕捉目标轮廓并计算掩码面积占比,从而提供更精细、准确且自动化的病害程度区分,显著提升评估的精确性和效率。
2、本发明的技术方案是:这种基于yolov8的管道封堵病害识别及评级方法,其包括以下步骤:
3、(1)利用爬行机器人进行图像采集,图像尺寸:1280*1080,采集帧率:25帧/秒,数据速率:5683kbps以上,总比特率:5683kbps以上,镜头:广角镜头120°以上或鱼眼镜头,镜头旋转速度可调,视频格式:avi格式;
4、(2)数据预处理,对数据集中每个图像进行标注,利用lableme软件进行多边形特征标注;
5、(3)根据多边形标签特征,采用yolov8n-seg.pt分割模型作为权重基础;
6、(4)配置识别模型的参数;
7、(5)训练识别模型;
8、(6)读取管道图像或管道视频文件,对管道视频进行关键帧提取;
9、(7)调用训练好的识别模型,通过模型检测病害类型、数量和位置信息;
10、(8)提取病害目标的掩码,统计非零像素个数;
11、(9)根据掩码面积占比估计封堵病害程度,对病害进行程度分级;
12、(10)保持识别结果并输出程度等级。
13、本发明通过图像采集和分析,经过一系列图像预处理及数据增强方式,训练出管道病害识别模型,实现对各管道病害的自动识别,包括管道病害类型、数量及位置的检测,在识别到管道封堵病害的同时,通过提取封堵病害目标掩码并计算其面积占比,实现对管道封堵病害的程度分级,因此能够快速、自动化、高准确度和多目标识别,更精确的贴合病害目标轮廓,显著提升管道封堵检测的性能和可靠性,解决传统方法中标签不一致和人工成本高的问题,提高数据处理的自动化水平和模型训练的质量,能够精确捕捉目标轮廓并计算掩码面积占比,从而提供更精细、准确且自动化的病害程度区分,显著提升评估的精确性和效率。
14、还提供了一种基于yolov8的管道封堵病害识别及评级装置,其包括:
15、图像采集模块,其配置来利用爬行机器人进行图像采集,图像尺
16、寸:1280*1080,采集帧率:25帧/秒,数据速率:5683kbps以上,总比特率:5683kbps以上,镜头:广角镜头120°以上或鱼眼镜
17、头,镜头旋转速度可调,视频格式:avi格式;
18、数据预处理模块,其配置来对数据集中每个图像进行标注,利用
19、lableme软件进行多边形特征标注;
20、权重基础模块,其配置来根据多边形标签特征,采用yolov8n-seg.pt分割模型作为权重基础;
21、训练模块,其配置来识别模型的参数,训练识别模型;
22、数据提取模块,其配置来读取管道图像或管道视频文件,对管道视频进行关键帧提取;
23、检测模块,其配置来调用训练好的识别模型,通过模型检测病害类型、数量和位置信息;
24、程度分级模块,其配置来提取病害目标的掩码,统计非零像素个
25、数,根据掩码面积占比估计封堵病害程度,对病害进行程度分级;输出模块,其配置来保持识别结果并输出程度等级。
1.基于yolov8的管道封堵病害识别及评级方法,其特征在于:其包括以下步骤:
2.根据权利要求1所述的基于yolov8的管道封堵病害识别及评级方法,其特征在于:所述步骤(1)中,在进行管道内部检测时,相机位于管道中心以获取最佳视角,同时根据管道内壁的清晰度,以每米为单位调整图像清晰度,保持使用最小焦距以避免失真;在采集过程中,灯光调节以防止过曝,控制行进速度不超过帧率的一半,以8cm/s以确保图像连贯性;对于关键区域,执行环视采集,并在旋转后保持至少1秒的稳定采集时间;去除视频文件中的辅助信息。
3.根据权利要求2所述的基于yolov8的管道封堵病害识别及评级方法,其特征在于:所述步骤(2)中,从视频中提取关键帧,这些帧包含管道封堵病害的典型特征,对封堵病害进行标注;打开labelme软件,并加载需要标注的的封堵病害图像,利用labelme的多边形标注功能,手动绘制病害区域的边界;对于每个封堵病害区域,输入类别标签fd,以代表封堵,以区别图像背景和封堵类型的病害;生成相应的json标签文件,json标签文件包括标注版本、标志、形状数组、图像路径、图像数据以及图像尺寸,用于描述图像中的对象及其属性。
4.根据权利要求3所述的基于yolov8的管道封堵病害识别及评级方法,其特征在于:所述步骤(2)中,应用数据增强方法生成新的增强图像的同时,调整和转换标签信息,确保生成的增强图像与更新后的标签文件保持一致;通过定义一个数据增强类来处理图像,并对图像执行亮度调整、噪声添加、随机点添加、镜像翻转和平移的预定义的增强操作,使用toolhelper来读取原始的json标注文件,更新增强后的图像路径和数据,然后将更新后的标注信息保存到新的json文件中,对于每张原始图像,脚本生成指定数量的增强图像,并确保每个增强图像都有对应的更新后的标注文件。
5.根据权利要求4所述的基于yolov8的管道封堵病害识别及评级方法,其特征在于:所述步骤(4)中,选择预训练的权重文件yolov8n-seg.pt作为起点,设置训练参数来优化模型性能,使用ultralytics提供的yolov8.0.55版本,在python 3.9.17环境下配合pytorch1.13.1+cu116框架进行目标检测模型的训练,批量大小为6,训练周期为100轮,输入图像尺寸为640像素,置信度阈值为0.3,iou阈值为0.75,训练设备是nvidia geforce rtx
6.根据权利要求5所述的基于yolov8的管道封堵病害识别及评级方法,其特征在于:所述步骤(5)中,将详尽标注和数据增强生成的json文件转换为yolov8训练所需的txt格式,将数据集划分为训练集、验证集和测试集;通过在验证集上测试,对模型的超参数进行调整,监控其在未见过的数据上的表现;测试集为评估模型的泛化能力提供标准化的方法,获得模型在实际应用环境中的表现。
7.根据权利要求6所述的基于yolov8的管道封堵病害识别及评级方法,其特征在于:所述步骤(9)中,根据掩码在图像中所占的像素面积比例,将病害划分为轻、中、重三个等级,并相应地将原始图像保存到指定的分类文件夹中。
8.根据权利要求7所述的基于yolov8的管道封堵病害识别及评级方法,其特征在于:该方法还包括步骤(11),实验结果采用召回率r、精度p及综合两者的平均精度ap来评估单一病害检测性能;
9.基于yolov8的管道封堵病害识别及评级装置,其特征在于:其包括:
