一种钢筋头计数、定位方法及系统
技术领域
本发明涉及图像目标检测
技术领域
,特别涉及一种钢筋头计数、定位方法及系统。背景技术
目标检测现已广泛应用于许多实际应用中,例如自动驾驶,机器人视觉。密集目标检测计数是属于目标检测领域的研究课题。其借助计算机技术,没有使用目标检测常用的anchor进行检测,而是通过分析静态图片或视频帧分析其密度谱的方法确认需要预测目标数量。在工业领域,密集目标检测计数有着重要的作用,目前工业产品例如:钢筋、螺钉需要人工确认数量,消耗了大量的人力与时间成本,借助密集目标检测计数能够将其工序简化,提高效率与精度。在安全领域,国内外的大型活动中频发踩踏事件,已经造成了不可忽视的伤亡,如2015年上海外滩踩踏事件,已达到了我国规定的重大伤亡事故级别。密集目标检测计数问题的研究能通过准确估计当前场景的密集目标密度,并安排相应的安保措施,则可以有效减少或避免此类事件的发生。同时,密集目标检测计数也有着重要的商业与市场价值,是大数据时代的前沿研究领域。相比传统人工计数,密集目标检测计数具有快速性、准确性和易处理性,适合现今流行的大规模计算,得到准确率和鲁棒性良好的模型。传统的密集目标计数算法主要分类两大类:一种是基于检测的方法。早期的密集目标研究主要聚焦于基于检测的方法。使用一个滑动窗口检测器来检测场景中密集目标,并统计相应的目标个数。基于检测的方法主要分为两大类,一种是基于整体的检测,另一种是基于部分目标的检测。基于整体的检测方法,例如,典型的传统方法,主要训练一个分类器,利用从目标全体提取的小波,HOG,边缘等特征去检测目标。学习算法主要有SVM、boosting以及随机森林等方法。基于整体检测的方法主要适用于稀疏的目标计数,随着密集目标密度的提升,目标与目标之间的遮挡变得越来越严重。以密集人群计数为例,基于部分目标检测的方法,被用来处理密集目标计数问题。
图像中密集目标检测计数研究例如头,肩膀等去统计密集目标的数量。这种方法比之基于整体的检测,在效果上有略微的提升。第二种则是基于回归的方法。无论何种基于检测的方法,都很难处理密集目标之间严重的遮挡问题。所以,基于回归的方法逐渐被用来解决密集目标计数的问题。基于回归的方法,主要思想是通过学习一种特征到密集目标数量的映射。这类方法步骤主要分为两步,第一步提取低级的特征,例如前景特征,边缘特征,纹理和梯度特征;第二步是学习一个回归模型,例如线性回归,分段线性回归,岭回归和高斯过程回归等方法学习一个低级特征到密集目标数的映射关系。不同于传统的基于检测和回归的方法,对于图像中密集目标区域,利用预测密度图(DensityMap)的方法得到了更好的预测结果。由于图像中目标密度分布极不均匀,研究人员利用多阵列(Multi-Column)的卷积神经网络(ConvolutionalNeuralNetwork,CNN)来实现提取不同尺度的目标特征。利用网络的模型具有较多的参数,计算量大,无法进行实时的密集目标计数预测。
经检索,中国专利申请号为202011355672.6的发明专利,为了改进并解决目前采用传统人工计数方法完成钢筋进场数量验收工作存在的不足及问题,该发明提供一种钢筋识别系统、钢筋识别方法、以及钢筋计数验收系统,其是通过钢筋图像数据集构建钢筋识别训练模型,在通过钢筋识别训练模型进行进一步的钢筋计数。但是该专利实现的复杂度相对较高,计算量大。
发明内容
本发明针对上述现有技术中存在的问题,提出一种钢筋头计数、定位方法及系统,将深度学习中的密集计数方法应用到工业生产中的钢筋计数,并且在计数的同时能提供钢筋的位置,代替了以前工业生产中工人的工作,提高了生产效率。
为解决上述技术问题,本发明是通过如下技术方案实现的:
本发明提供一种钢筋头计数、定位方法,其包括:
S11:提取出原始图像的初步特征;
S12:将不同层级间的初步特征进行融合,得到融合特征;
S13:对所述融合特征进行密度图估计运算,得到密度图;
S14:对所述密度图进行积分求和得到最终钢筋头数目;
S15:利用所述密度图估计出钢筋头的位置;
所述S14、S15不分先后顺序,也可以同时进行。
较佳地,所述S11以及S12中使用的模型基于MCNN中生成密度图的方法。
较佳地,所述S15进一步包括:利用局部最大值法对所述密度图进行处理,估计出钢筋头的位置。
较佳地,所述S15中的利用局部最大值法进一步包括:
S31:遍历一个田字型,找到其三行三列最大值,判断是否为局部最大值,若是则返回其位置,若否,记录找到相邻四个点中最大值坐标;
S32:通过所述S11中得到的坐标所在的象限缩小范围,继续比较下一个田字;
S33:若一直无法找到最大值,最后当田字成为3×3的矩形时,查找完成。
较佳地,所述S15中利用局部最大值前,还包括:采用预处理的方式将小于经验值的密度滤除。
较佳地,所述S15中利用局部最大值前,还包括:采用预处理的方式对所述密度图的密度谱进行平滑化处理。
较佳地,所述S15中利用局部最大值法之后还包括:利用非极大值抑制法去除重复的框图,得到最终的钢筋头的定位框。
本发明还提供一种钢筋头计数、定位系统,其包括:浅层特征提取模块、特征融合模块、密度图估计模块、积分求和模块以及定位模块;其中,
所述浅层特征提取模块用于提取出原始图像的初步特征;
所述特征融合模块用于将不同层级间的初步特征进行融合,得到融合特征;
所述密度图估计模块用于对所述融合特征进行密度图估计运算,得到密度图;
所述积分求和模块用于对所述密度图进行积分求和得到最终钢筋头数目;
所述定位模块用于利用所述密度图估计出钢筋头的位置。
较佳地,所述浅层特征提取模块与特征融合模块中使用的模型为基于MCNN中生成密度图。
较佳地,所述定位模块进一步用于利用局部最大值法对所述密度图进行处理,估计出钢筋头的位置。
较佳地,还包括:预处理模块,其用于在所述定位模块中的局部最大值法之前将所述密度图中小于经验值的密度滤除和/或对所述密度图的密度谱进行平滑化处理。
较佳地,所述定位模块还用于在局部最大值法之后,利用非极大值抑制法去除重复的框图,得到最终的钢筋头的定位框。
较佳地,还包括:检测网络模型模块,其用于利用所述浅层特征提取模块、特征融合模块以及密度图估计模块的损失之和构造端到端训练的检测网络模型,并利用所述损失之和对整个检测网络模型模块进行训练。
相较于现有技术,本发明具有以下优点:
(1)本发明提供的钢筋头计数、定位方法及系统,通过将深度学习中的密集计数方法应用到工业生产中的钢筋计数,并且在计数的同时能提供钢筋的位置,提供了较好的可视化效果,代替了以前工业生产中工人的工作,不仅降低了风险,而且提高了生产效率;
(2)本发明提供的钢筋头计数、定位方法及系统,通过田字型的局部最大值查找方法来进行定位,降低了时间复杂度,计算量小;
(3)本发明提供的钢筋头计数、定位方法及系统,通过预处理的方式将小于经验值的密度滤除,可以消除噪声的影响,定位更准确;
(4)本发明提供的钢筋头计数、定位方法及系统,通过预处理的方式对密度谱进行平滑处理,可以有效避免查找峰值时出现过多的目标中心可能点的问题,定位更准确。
附图说明
下面结合附图对本发明的实施方式作进一步说明:
图1为本发明一实施例的钢筋头计数、定位方法的流程图;
图2为本发明一实施例的多任务级联神经网络结构图;
图3为本发明一实施例的局部最大值方法的流程图;
图4为本发明一实施例的平滑滤波器的结构及参数图;
图5为本发明一实施例的钢筋头计数、定位系统的结构示意图。
标号说明:1-浅层特征提取模块,2-特征融合模块,3-密度图估计模块,4-积分求和模块,5-定位模块。
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图1所示为本发明一实施例的钢筋头计数、定位方法的流程图。
请参考图1,本实施例的钢筋头计数、定位方法包括:
S11:提取出原始图像的初步特征;
S12:将不同层级间的初步特征进行融合,得到融合特征;
S13:对融合特征进行密度图估计运算,得到密度图;
S14:对密度图进行积分求和得到最终钢筋头数目;
S15:利用密度图估计出钢筋头的位置。
上述S14、S15不分先后顺序,也可以同时进行。
一具体实施例中,S11、S12、S13采用的多任务级联神经网络结构如图2所示,图中各层参数如下:
卷积层1(conv1):16个特征滤波器大小为9x9;
卷积层2(conv2):32个特征滤波器大小为7x7;
最大化池1(maxpooling1):20个特征滤波器大小7x7此处两倍下采样;
最大化池2(maxpooling2):40个特征滤波器大小5x5此处四倍下采样;
最大化池3(maxpooling3):16个特征滤波器大小9x9此处两倍下采样;
最大化池4(maxpooling4):32个特征滤波器大小7x7此处四倍下采样;
卷积层3(conv1):20个特征滤波器大小为5x5;
卷积层4(conv2):10个特征滤波器大小为5x5;
卷积层5(conv1):16个特征滤波器大小为7x7;
卷积层6(conv2):8个特征滤波器大小为7x7;
卷积层7(conv1):24个特征滤波器大小为3x3;
卷积层8(conv2):32个特征滤波器大小为3x3;
分段跨步逆卷积1(FSC1):16个特征;
分段跨步逆卷积2(FSC2):8个特征。
采用上述网络结构,首先对输入的图像进行浅层特征提取,使用大小为9x9包含特征数量16个的卷积层和大小为7x7特征数量32的卷积网络相连,该结构意义在于,获得一个浅层的特征,对于二维的图像特征进行向量化,方便于之后特征的提取。初步提取完浅层特征借鉴级联网络结构中细节特征和密度等级检测特征相结合的结构,采取了一个通道提取全局特征,另一个通道提取细节特征,全局特征采用尺度较大的滤波器卷积,前两层用最大化池,尺度分别为9x9和7x7。后连接两层用于全局特征提取卷积层,滤波器大小设置均为较大的7x7。另一个用于着重提取细节信息,首先在最大化池就采取小尺度的滤波器7x7和5x5,之后特征提取更加局部的特征采用5x5的滤波器大小。在两个通道完成特征提取之后,将包含全局信息和细节信息的两层合并为一个融合特征层,统一使用3x3大小的滤波器将最后的得到的特征进一步提取,之后通过分段跨步逆卷积上采样还原原图密度谱。
较佳实施例中,S13之后还包括:利用统一的损失函数构造一个能够端到端训练的多任务级联神经网络模型,并利用该损失对整个检测网络模型进行端到端的训练;
其中损失函数为:
其中:Fd为密度谱,Xi为输入图像数据,Θ是级联神经网络中的各项参数,D为标定密度谱集合。
较佳实施例中,S15进一步包括:利用局部最大值法对密度图进行处理,估计出钢筋头的位置。
较佳实施例中,S15中的利用局部最大值法进一步包括:
S31:遍历一个较大的田字型,找到其三行三列最大值,判断是否为局部最大值,若是则返回其位置,若否,记录找到相邻四个点中最大值坐标;
S32:通过S11中得到的坐标所在的象限缩小范围,继续比较下一个田字;
S33:若一直无法找到最大值,最后当田字成为3×3的矩形时,查找完成。其时间复杂度为N,搜索方法中的田字如图3所示。
较佳实施例中,S15之后还包括:构造原始钢筋的密度图作为GT以便用于统一训练,本步骤中,本发明对于密集钢筋目标计数,是设计一个由端到端,输入图像到密度图谱的卷积神经网络,因此如何定义一个标准的密度谱来表达数据集中的图像标注信息决定了模型的性能。如果图像中存在钢筋目标,将所在的像素点xi,将其表示为δ(x-xi)函数,在拥有N个目标的图片中,将图像中的目标表示为:
为了将单个钢筋目标转换为连续密度函数,需要选取了钢筋中心点为算法的关键点,通过对该关键点进行二维高斯滤波,让密度有规律的分散在钢筋目标的截面上,使得密度为H函数与二维高斯滤波函数的卷积。
较佳实施例中,由于多任务级联神经网络模型预测出的密度图谱存在非关键部位有噪声以及局部最大峰值的产生,消除噪声的方法,根据测试得到经验值,一般具有目标中心表征意义的峰均高于100/255,故在使用局部最大值是,采取预处理的方式将小于经验值的密度滤除。
较佳实施例中,由于多任务级联神经网络模型预测出的密度图谱并非完全平滑,在峰值处存在着系统性无法避免的密度波动,因为密度谱并非完全平滑,使用局部最大值法查找峰值时会出现过多的目标中心可能点,使用平滑滤波器对密度谱进行平滑化的预处理。具体采用滤波器如图4所示。
较佳实施例中,S15中利用局部最大值法之后还包括:利用非极大值抑制法去除重复的框图,得到最终的钢筋头的定位框。一实施例中,对框体重叠区域比例阈值选取大于0.3,对于单个框体的score,采用框体对应区域的密度积分作为这个框体的score。在此参数下对预测结果进行非极大值抑制后得到最终预测结果。
如图5所示为本发明一实施例的钢筋头计数、定位系统的结构示意图。
请参考图5,本实施例的钢筋头计数、定位系统包括:浅层特征提取模块1、特征融合模块2、密度图估计模块3、积分求和模块4以及定位模块5。
其中,浅层特征提取模块1用于提取出原始图像的初步特征。特征融合模块2用于将不同层级间的初步特征进行融合,得到融合特征。密度图估计模块3用于对融合特征进行密度图估计运算,得到密度图。积分求和模块4用于对密度图进行积分求和得到最终钢筋头数目。定位模块5用于利用所述密度图估计出钢筋头的位置。
较佳实施例中,定位模块进一步用于利用局部最大值法对密度图进行处理,估计出钢筋头的位置。
较佳实施例中,还包括:预处理模块,其用于在所述定位模块中的局部最大值法之前将密度图中小于经验值的密度滤除和/或对密度图的密度谱进行平滑化处理。
较佳实施例中,定位模块还用于在局部最大值法之后,利用非极大值抑制法去除重复的框图,得到最终的钢筋头的定位框。
较佳实施例中,还包括:检测网络模型模块,其用于利用浅层特征提取模块、特征融合模块以及密度图估计模块的损失之和构造端到端训练的检测网络模型,并利用损失之和对整个检测网络模型模块进行训练。
需要说明的是,本发明提供的所述方法中的步骤,可以利用所述系统中对应的模块、装置、单元等予以实现,本领域技术人员可以参照所述系统的技术方案实现所述方法的步骤流程,即,所述系统中的实施例可理解为实现所述方法的优选例,在此不予赘述。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
此处公开的仅为本发明的优选实施例,本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,并不是对本发明的限定。任何本领域技术人员在说明书范围内所做的修改和变化,均应落在本发明所保护的范围内。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:一种多曝光融合图像质量评价方法