本发明涉及图像识别领域,具体是一种基于多任务学习的隧道水渍智能识别方法。
背景技术:
隧道检测是施工质量管理的重要手段,是保证列车营运安全的前提。隧道湿渍会影响隧道内车流的正常行驶,甚至危害列车的安全运行。对于已经存在的隧道湿渍,一般通过人工巡检或离线数据分析的方式进行缺陷检测,但是这些传统方式不仅耗时耗力,而且不能及时排除安全隐患,给铁路工作者带来很大的困扰,但单一的车载识别检测算法又会漏掉部分湿渍,检测召回并不高,因此本系统提出了一种基于多任务学习的识别方式实现实时、智能、高效地识别检测隧道湿渍。
技术实现要素:
本发明的目的在于克服现有技术的不足,提供一种基于多任务学习的隧道水渍智能识别方法,包括如下步骤:
图像采集与定位;采集地铁隧道湿渍图像数据,并同时通过定位模块获取该湿渍图像的定位信息数据;
图像分类识别与检测;接收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行实时检测、分类,分别得到检测结果和分类结果,将检测结果和分类结果进行结果联合,输出识别结果;
根据识别结果将缺陷图片、最终识别结果与找到定位信息打包成报警文件;车载传输程序会通过网络将打包后的报警文件传输至数据终端;数据终端解析报警文件后供相关工作人员及时查看、维护。
根据权利要求1所述的一种基于多任务学习的隧道水渍智能识别方法,其特征在于,所述的采集地铁隧道湿渍图像数据,并同时通过定位模块获取该湿渍图像的定位信息数据,包括如下过程:
在搜星良好区域,利用gps进行初始定位,在卫导盲区,利用基站进行初始定位;利用惯性导航器件进行连续定位,同时在有gps信号或者基站信号的时候,进行位置校正;同步定位信息和图片时钟信息,为每一帧图像关联最近邻的定位信息。
进一步的,所述的接收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行实时检测,包括如下过程:
在进行检测之前对采集的进行切片处理,分别在每张图片的四个角的位置进行切片和以每张图片的中心点为原点切出与四个角的位置切片大小相同的切片,即每张图片对应五张切片图;用深度学习方法对切片处理后的图像进行预处理,将图像大小进行重置并将图像进行归一化;
采用yolov3检测算法,将预处理后的图像输入到检测网络,检测算法对位于每张图像四个角的切片进行检测:缩放输入图像到检测网络指定大小,提取特征,得到特征图;
将特征图分割成nxn个单元格,目标的中心坐标落在哪个单元格,就由该单元格来预测目标及位置信息。
进一步的,所述的收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行分类,包括如下过程:
采用分类算法,将归一化后的图像输入到分类网络,分类算法对同张图像同位置的四张切片以及中间位置的切片进行识别分类,分类网络采用inception_v3模型进行图像的特征提取和分类。
进一步的,所述的将检测结果和分类结果进行结果联合,输出识别结果,包括如下过程:
a)对于位于原图像四个角的切片,若检测算法和分类算法都识别到了湿渍或检测算法检测到了湿渍但分类算法没有识别到湿渍,则输出检测算法的检测结果,检测结果包含湿渍的位置信息和置信度;
b)若在同一位置上的切片上,检测算法没有检测到湿渍,而分类算法识别到了湿渍,则输出分类算法的识别结果;
c)若检测算法和分类算法在四个角的切片上都没有检测到湿渍,而分类算法在中间切片上识别到湿渍,则输出分类算法的识别结果;
若检测算法或分类算法在两张及以上的切片上都识别到了湿渍,则将同帧图像对应的切片上识别到的结果进行合并,输出最终的识别结果。
本发明的有益效果是:用检测程序和分类程序对隧道湿渍同时进行检测、识别,并将检测结果和识别结果进行实时合并返回报警终端。整个系统部署在nvidiajetsonagxxavier上,能够实时、快速、高效地识别隧道内湿渍,以便铁路工作者及时排除隐患,确保列车安全运行,同时减轻人力负担和时间成本,提高铁路工作者的工作效率。
附图说明
图1为一种基于多任务学习的隧道水渍智能识别方法的流程图;
图2为图像切片示意图;
图3为yolov3算法流程示意图;
图4为分类算法分类过程示意图。
具体实施方式
下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
如图1所示,一种基于多任务学习的隧道水渍智能识别方法,包括如下步骤:
图像采集与定位;采集地铁隧道湿渍图像数据,并同时通过定位模块获取该湿渍图像的定位信息数据;
图像分类识别与检测;接收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行实时检测、分类,分别得到检测结果和分类结果,将检测结果和分类结果进行结果联合,输出识别结果;
根据识别结果将缺陷图片、最终识别结果与找到定位信息打包成报警文件;车载传输程序会通过网络将打包后的报警文件传输至数据终端;数据终端解析报警文件后供相关工作人员及时查看、维护。
根据权利要求1所述的一种基于多任务学习的隧道水渍智能识别方法,其特征在于,所述的采集地铁隧道湿渍图像数据,并同时通过定位模块获取该湿渍图像的定位信息数据,包括如下过程:
在搜星良好区域,利用gps进行初始定位,在卫导盲区,利用基站进行初始定位;利用惯性导航器件进行连续定位,同时在有gps信号或者基站信号的时候,进行位置校正;同步定位信息和图片时钟信息,为每一帧图像关联最近邻的定位信息。
所述的接收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行实时检测,包括如下过程:
在进行检测之前对采集的进行切片处理,分别在每张图片的四个角的位置进行切片和以每张图片的中心点为原点切出与四个角的位置切片大小相同的切片,即每张图片对应五张切片图;用深度学习方法对切片处理后的图像进行预处理,将图像大小进行重置并将图像进行归一化;
采用yolov3检测算法,将预处理后的图像输入到检测网络,检测算法对位于每张图像四个角的切片进行检测:缩放输入图像到检测网络指定大小,提取特征,得到特征图;
将特征图分割成nxn个单元格,目标的中心坐标落在哪个单元格,就由该单元格来预测目标及位置信息。
所述的收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行分类,包括如下过程:
采用分类算法,将归一化后的图像输入到分类网络,分类算法对同张图像同位置的四张切片以及中间位置的切片进行识别分类,分类网络采用inception_v3模型进行图像的特征提取和分类。
所述的将检测结果和分类结果进行结果联合,输出识别结果,包括如下过程:
a)对于位于原图像四个角的切片,若检测算法和分类算法都识别到了湿渍或检测算法检测到了湿渍但分类算法没有识别到湿渍,则输出检测算法的检测结果,检测结果包含湿渍的位置信息和置信度;
b)若在同一位置上的切片上,检测算法没有检测到湿渍,而分类算法识别到了湿渍,则输出分类算法的识别结果;
c)若检测算法和分类算法在四个角的切片上都没有检测到湿渍,而分类算法在中间切片上识别到湿渍,则输出分类算法的识别结果;
若检测算法或分类算法在两张及以上的切片上都识别到了湿渍,则将同帧图像对应的切片上识别到的结果进行合并,输出最终的识别结果。
具体的,本发明方法采用基于多任务学习的隧道湿渍在线智能识别的设计方案,利用检测程序和分类程序对地铁隧道湿渍同时进行检测、识别,并将识别检测结果返回报警终端,生成检测报告。
采集检测地铁隧道湿渍所需图像数据以及获得定位信息。数据采集模块主要是由相机和补光构成,对隧道湿渍进行实时成像。定位信息通过基站、gps、惯性导航组合定位模块获得,具体定位步骤如下:
1)在搜星良好区域,利用gps进行初始定位,在卫导盲区,利用基站进行初始定位;
2)利用惯性导航器件进行连续定位,同时在有gps信号或者基站信号的时候,进行位置校正,防止位置的漂移;
3)同步定位和图片时钟信息,为每一帧图片关联最近邻的位置信息。
接收相机采集到的图像数据,将数据传送到部署好的缺陷检测、分类程序中,对地铁隧道湿渍进行实时检测、分类。
1)检测过程如下:
i.在进行检测之前要对检测数据进行切片处理,比如原图长宽都是5120,分别在每张图片的四个角的位置切出3000x3000的切片,即每张图片对应四张切片图,如图1所示。
ii.用深度学习方法对切片处理后的图像数据进行预处理,为了让接收到的数据符合深度学习检测方法的输入要求,需要将图像大小进行重置(利用opencv库自带重置函数将输入图像大小进行重置),同时为了更好地进行检测,将图像数据进行归一化。
iii.为了能进行快速检测,采用yolov3检测算法。yolov3采用的主干网络为darknet53。检测流程大致如下:
当输入数据到检测网络后:
缩放输入图像到检测网络指定大小,提取特征,得到一定大小的特征图;
将特征图分割成nxn个单元格,若目标的中心坐标落在哪个单元格,就由该单元格来预测目标及位置信息。
i.分类算法与检测算法同时对同帧、同位置的切片进行识别,但分类算法会多识别一个中间位置的切片:以每张图片的中心点为原点,切成3000x3000的切片,如图1所示。
ii.用深度学习方法对切片处理后的图像数据进行预处理,为了让接收到的数据符合分类方法的输入要求,需要将图像大小进行重置(利用opencv库自带重置函数将输入图像大小进行重置),同时为了更好地进行分类,将图像数据进行归一化。
iii.将归一化后的图像输入到分类网络,分类网络采用inception_v3模型进行图像的特征提取和分类。
3)检测任务、分类任务结果联合
检测算法对位于每帧图片四个角的切片进行检测,与此同时,分类算法对同帧图片同位置的四张切片以及中间位置的切片进行识别分类:
a)对于位于原图四个角的切片,若检测算法和分类算法都识别到了湿渍、检测算法检测到了湿渍但分类算法没有识别到湿渍,则输出检测算法的检测结果(包含湿渍的位置信息和置信度);
b)若在同一位置上的切片上,检测算法没有检测到湿渍,而分类算法识别到了湿渍,则输出分类算法的识别结果(湿渍的位置即切片对应原图的位置信息、置信度);
c)若检测算法和分类算法在四个角的切片上都没有检测到湿渍,而分类算法在中间切片上识别到湿渍,则输出分类算法的识别结果湿渍的位置即切片对应原图的位置信息、置信度);
若检测算法或分类算法在两张及以上的切片上都识别到了湿渍,则将同帧图片对应的切片上识别到的结果进行合并,输出最终的识别结果。
终端报警模块将缺陷图片、最终识别结果与找到定位信息打包成报警文件;车载传输程序会通过4g网络将打包后的报警文件传输至数据终端。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
1.一种基于多任务学习的隧道水渍智能识别方法,其特征在于,包括如下步骤:
图像采集与定位;采集地铁隧道湿渍图像数据,并同时通过定位模块获取该湿渍图像的定位信息数据;
图像分类识别与检测;接收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行实时检测、分类,分别得到检测结果和分类结果,将检测结果和分类结果进行结果联合,输出识别结果;
根据识别结果将缺陷图片、最终识别结果与找到定位信息打包成报警文件;车载传输程序会通过网络将打包后的报警文件传输至数据终端;数据终端解析报警文件后供相关工作人员及时查看、维护。
2.根据权利要求1所述的一种基于多任务学习的隧道水渍智能识别方法,其特征在于,所述的采集地铁隧道湿渍图像数据,并同时通过定位模块获取该湿渍图像的定位信息数据,包括如下过程:
在搜星良好区域,利用gps进行初始定位,在卫导盲区,利用基站进行初始定位;利用惯性导航器件进行连续定位,同时在有gps信号或者基站信号的时候,进行位置校正;同步定位信息和图片时钟信息,为每一帧图像关联最近邻的定位信息。
3.根据权利要求1所述的一种基于多任务学习的隧道水渍智能识别方法,其特征在于,所述的接收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行实时检测,包括如下过程:
在进行检测之前对采集的进行切片处理,分别在每张图片的四个角的位置进行切片和以每张图片的中心点为原点切出与四个角的位置切片大小相同的切片,即每张图片对应五张切片图;用深度学习方法对切片处理后的图像进行预处理,将图像大小进行重置并将图像进行归一化;
采用yolov3检测算法,将预处理后的图像输入到检测网络,检测算法对位于每张图像四个角的切片进行检测:缩放输入图像到检测网络指定大小,提取特征,得到特征图;
将特征图分割成nxn个单元格,目标的中心坐标落在哪个单元格,就由该单元格来预测目标及位置信息。
4.根据权利要求3所述的一种基于多任务学习的隧道水渍智能识别方法,其特征在于,所述的收采集到的图像数据,将数据传送到多任务学习识别模块中,对地铁隧道湿渍进行分类,包括如下过程:
采用分类算法,将归一化后的图像输入到分类网络,分类算法对同张图像同位置的四张切片以及中间位置的切片进行识别分类,分类网络采用inception_v3模型进行图像的特征提取和分类。
5.根据权利要求4所述的一种基于多任务学习的隧道水渍智能识别方法,其特征在于,所述的将检测结果和分类结果进行结果联合,输出识别结果,包括如下过程:
a)对于位于原图像四个角的切片,若检测算法和分类算法都识别到了湿渍或检测算法检测到了湿渍但分类算法没有识别到湿渍,则输出检测算法的检测结果,检测结果包含湿渍的位置信息和置信度;
b)若在同一位置上的切片上,检测算法没有检测到湿渍,而分类算法识别到了湿渍,则输出分类算法的识别结果;
c)若检测算法和分类算法在四个角的切片上都没有检测到湿渍,而分类算法在中间切片上识别到湿渍,则输出分类算法的识别结果;
若检测算法或分类算法在两张及以上的切片上都识别到了湿渍,则将同帧图像对应的切片上识别到的结果进行合并,输出最终的识别结果。
技术总结