一种基于图像的钢筋数量检测方法、装置、设备及介质与流程

未命名 09-12 阅读:82 评论:0


1.本技术涉及图像处理领域,尤其涉及一种基于图像的钢筋数量检测方法、装置、设备及介质。


背景技术:

2.在建筑工地施工现场,一般项目上都设有专门的钢筋加工场或钢筋加工棚对钢筋进行存放、裁剪、焊接等工作,负责钢筋加工区域的工人需要经常对已经加工过的钢筋、库存的钢筋以及进场的的钢筋进行清点,这项工作虽然不需要很高的技术要求,却是一项非常消耗人员精力与时间的工作。现在的清点工作,往往需要两个工人配合,一个负责记录,另一个负责计数,由于每捆钢筋都是数以十计、甚至多数是数以百计,因此工人在清点时需要数一根钢筋用记号笔标记一根钢筋,清点起来十分费力。清点过程中如果钢筋散落,可能还需要重新清点的可能。因此,人为清点钢筋是一项极其耗费人员精力、时间、成本的工作。


技术实现要素:

3.为了解决上述技术问题或者至少部分地解决上述技术问题,本技术提供了一种基于图像的钢筋数量检测方法、装置、设备及介质。
4.根据本技术实施例的一个方面,提供了一种基于图像的钢筋数量检测方法,包括:获取对钢筋摆放区域进行采集得到的钢筋截面图像;检测所述钢筋截面图像,得到所述钢筋截面图像中的感兴趣区域,其中,所述感兴趣区域包括多个钢筋;检测所述感兴趣区域得到至少一个钢筋对应的包围框;基于所述包围框的数量确定所述钢筋摆放区的钢筋数量。
5.进一步的,所述检测所述钢筋截面图像,得到所述钢筋截面图像中的感兴趣区域,包括:确定所述钢筋截面图像中的标记区域,其中,所述标记区域包括多个钢筋;对所述钢筋截面图像中非标记区域进行掩膜操作,得到掩膜图像;基于所述钢筋截面图像与所述掩膜图像进行点乘,得到所述感兴趣区域。
6.进一步的,所述检测所述感兴趣区域得到至少一个钢筋对应的包围框,包括:确定所述感兴趣区域在所述钢筋截面图像的区域位置,并利用所述区域位置对所述钢筋截面图像进行分割,得到目标图像;获取预先训练好的识别模型,其中,所述识别模型包括第一卷积网络以及第一处理网络;通过第一卷积网络检测所述目标图像中钢筋特征,基于每个钢筋特征确定多个目标关键点坐标,并将目标关键点坐标传递至第一处理网络;所述第一处理网络确定所述目标关键点坐标对应的包围框,其中,每个包围框对应一个钢筋。
7.进一步的,所述识别模型的训练方法如下:获取多个训练样本图像,其中,每个所述训练样本图像包括至少一个钢筋;获取所述训练样本图像对应的标签信息,其中,所述标签信息包括:所述训练样本图像中每个钢筋的钢筋特征标签,以及所述钢筋对应包围框的关键点坐标标签;将所述训练样本图像以及所述标签信息输入待训练的神经网络模型,其中,所述神经网络模型包括第二卷积网络以及第二处理网络;通过所述第二卷积网络检测所述训练样本图像得到钢筋特征,并基于所述钢筋特征确定至少一个预测关键点坐标,将所述预测关键点坐标传递至第二处理网络;通过第二处理网络确定所述预测关键点坐标对应的预测包围框;基于所述预测包围框计算训练损失,并基于所述训练损失调整所述神经网络模型的参数,直至所述训练损失小于预设阈值。
8.进一步的,所述获取多个训练样本图像,包括:获取样本图像集,其中,所述样本图像集包括多个原始训练样本图像;从多个所述原始训练样本图像中随机选取预设数量的原始训练样本图像;利用预设数量的原始训练样本图像进行裁剪拼接,得到目标训练样本图像;将所述原始训练样本图像以及所述目标训练样本图像作为所述训练样本图像。
9.进一步的,所述基于所述预测包围框计算训练损失,包括:计算所述钢筋特征与所述钢筋特征标签之间的第一损失,以及所述预测关键点坐标与所述关键点坐标标签之间的第二损失;计算所述预测包围框与所述关键点坐标标签对应包围框之间的第三损失;基于所述第一损失,所述第二损失以及所述第三损失计算所述训练损失。
10.进一步的,所述基于所述包围框的数量确定所述钢筋摆放区的钢筋数量,包括:获取各个所述包围框对应的包围框边界;利用非极大值抑制去除所述包围框边界中的冗余边界,得到最佳包围框;基于最佳包围框的确定所述钢筋摆放区的钢筋数量。
11.根据本技术实施例的另一方面,还提供了一种基于图像的钢筋数量检测装置,包括:获取模块,用于获取对钢筋摆放区域进行采集得到的钢筋截面图像;识别模块,用于检测所述钢筋截面图像,得到所述钢筋截面图像中的感兴趣区域,其中,所述感兴趣区域包括多个钢筋;检测模块,用于检测所述感兴趣区域得到至少一个钢筋特征,基于每个所述钢筋特征确定目标关键点,并基于所述目标关键点构建钢筋特征的包围框;处理模块,用于基于所述包围框的数量确定所述钢筋摆放区的钢筋数量。
12.根据本技术实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的步骤。
13.根据本技术实施例的另一方面,还提供了一种电子装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:存储器,用于存放计算机程序;处理器,用于通过运行存储器上所存放的程序来执行上述方法中的步骤。
14.本技术实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法中的步骤。
15.本技术实施例提供的上述技术方案与现有技术相比具有如下优点:本技术实施例提供的方法通过对钢筋界面图像进行识别,得到钢筋界面图像中的感兴趣区域,然后对感兴趣区域进行检测,得到多个包围框,最终利用包围框的数量确定钢筋的数量,以此代替常规人工技术的方式,提高了钢筋清点效率。
附图说明
16.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
17.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
18.图1为本技术实施例提供的一种基于图像的钢筋数量方法的流程图;图2为本技术实施例提供的钢筋截面图像的标记区域示意图;图3为本技术实施例提供的感兴趣区域的示意图;图4为本技术实施例提供的包围框的示意图;图5为本技术实施例提供的训练样本图像的标注示意图;图6为本技术实施例提供的一种基于图像的钢筋数量装置的框图;图7为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
19.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
20.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个类似的实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
21.本技术实施例提供了一种基于图像的钢筋数量检测方法、装置、设备及介质。本发明实施例所提供的方法可以应用于任意需要的电子设备,例如,可以为服务器、终端等电子设备,在此不做具体限定,为描述方便,后续简称为电子设备。
22.根据本技术实施例的一方面,提供了一种基于图像的钢筋数量检测方法的方法实施例,图1为本技术实施例提供的一种基于图像的钢筋数量检测方法的流程图,如图1所示,
该方法包括:步骤s11,获取对钢筋摆放区域进行采集得到的钢筋截面图像。
23.本技术实施例提供的方法应用于能够进行图像处理的智能设备,智能设备可以是移动手机,电脑,ipad等等。具体的,智能设备可以向部署在钢筋摆放区域的采集设备发送采集指令,采集设备响应采集指令后,对钢筋摆放区域进行图像采集,得到多个不同角度的钢筋图像,并将多个不同角度的钢筋图像发送至智能设备。
24.在本技术实施例中,智能设备接收到多个不同角度的钢筋图像后,对钢筋图像进行识别,提取出钢筋截面图像。然后对钢筋截面图像进行检测,得到钢筋摆放区域的钢筋数量。
25.步骤s12,检测钢筋截面图像,得到钢筋截面图像中的感兴趣区域,其中,感兴趣区域包括多个钢筋。
26.在本技术实施例中,检测钢筋截面图像,得到钢筋截面图像中的感兴趣区域,包括以下步骤a1-a3:步骤a1,确定钢筋截面图像中的标记区域,其中,标记区域包括多个钢筋。
27.在本技术实施例中,检测作用于钢筋截面图像的编辑操作,响应编辑操作确定当前钢筋截面图像中的标记区域,标记区域如图2所示。
28.步骤a2,对钢筋截面图像中非标记区域进行掩膜操作,得到掩膜图像。
29.在本技术实施例中,在确定钢筋截面图像中的标记区域后,对钢筋截面图像中的非标记区域进行掩膜操作(或掩膜处理),具体的,非标记区域为rgb三通道图像,其长、宽与待处理图像的长、宽一致,非标记区域内所有像素值均为0(黑色)。调用opencv(开放计算机视觉)中的fillpoly方法将标记区域的像素位置对应的掩膜像素全部填充像素值为1,填充后的掩膜图像。
30.步骤a3,基于钢筋截面图像与掩膜图像进行点乘,得到感兴趣区域。
31.在本技术实施例中,钢筋截面图像与掩膜图像进行点乘,点乘公式如下:其中,表示原钢筋截面图像,表示掩膜图像,表示点乘运算后的感兴趣区域(如图3所示)。
32.步骤s13,检测感兴趣区域得到至少一个钢筋特征,基于每个钢筋特征确定目标关键点,并基于目标关键点构建钢筋特征的包围框。
33.在本技术实施例中,检测所述感兴趣区域得到至少一个钢筋特征,基于每个所述钢筋特征确定目标关键点,并基于所述目标关键点构建钢筋特征的包围框,包括以下步骤b1-b4:步骤b1,确定感兴趣区域在钢筋截面图像的区域位置,并利用区域位置对钢筋截面图像进行分割,得到目标图像。
34.在本技术实施例中,智能设备检测感兴趣区域对应的顶点坐标,通过顶点坐标确定感兴趣区域在钢筋截面图像的区域位置,然后基于顶点坐标对钢筋截面图像进行分割,得到目标图像(即感兴趣区域图像)。
35.步骤b2,获取预先训练好的识别模型,其中,识别模型包括第一卷积网络以及第一处理网络。
36.在本技术实施例中,预先训练好的识别模型包括:第一卷积网络以及第一处理网络,如图4所示,第一卷积网络包括输入层,多个卷积层和池化层,第一处理网络包括激活层,归一化层,上采样层,下采样层以及输出层。
37.需要说明的是,卷积层负责提取图像矩阵数组的特征,包括颜色、纹理等基本特征,随着卷积次数的增加,提取到的特征会越来越抽象,形成难以描述的高维度特征;池化层的作用是将卷积层提取的高维度特征进行一定程度的降维,减少神经网络的计算量;激活层用于向神经网络中引入非线性因素,使得神经网络可以任意逼近任何非线性函数;归一化层的作用除了减少计算量之外,还将数据归一化到以0为中心,加快了神经网络收敛,防止神经网络训练过程中的梯度爆炸和梯度消失;由于输入图像通过卷积神经网络(cnn)提取特征后,输出的尺寸往往会变小,而有时需要将图像恢复到原来的尺寸以便进行进一步的计算,这时就需要引入上采样层;下采样层的作用一是减少计算量,防止过拟合,二是增大感受野,使得后面的卷积核能够学到更加全局的信息。
38.步骤b3,通过第一卷积网络检测所述目标图像中钢筋特征,基于每个钢筋特征确定多个目标关键点坐标,并将目标关键点坐标传递至第一处理网络。
39.在本技术实施例中,第一卷积网络提取目标图像的图像特征,并从图像特征中检测多个钢筋截面特征,并基于每个钢筋截面特征确定相应数量的目标关键点,目标关键点的目标关键点坐标以及置信度。然后将目标关键点坐标传递至第一处理网络。
40.步骤b4,第一处理网络确定目标关键点坐标对应的包围框,其中,每个包围框对应一个钢筋。
41.在本技术实施例中,第一处理网络基于每个钢筋截面特征的目标关键点坐标之间的连线,构建每个钢筋截面特征的包围框,每个包围框对应一个钢筋。
42.步骤s14,基于包围框的数量确定钢筋摆放区的钢筋数量。
43.在本技术实施例中,检测钢筋截面图像中包围框对应的数量,由于每个包围框对应一个钢筋,因此可以直接将包围框的数量确定为钢筋数量。
44.具体的,基于包围框的数量确定钢筋摆放区的钢筋数量,包括:获取各个包围框对应的包围框边界;利用非极大值抑制去除包围框边界中的冗余边界,得到最佳包围框;基于最佳包围框的确定钢筋摆放区的钢筋数量。
45.需要说明的是,使用非极大值抑制方法对模型输出的包围框进行后处理,对包围框进行优化,由于模型得到的结果可能有许多钢筋检测的包围框(即每个框可能都代表一个),但是这些包围框很可能有互相重叠的部分,基于此,需要利用非极大值抑制找到冗余边界框,并进行消除,只保留最佳包围框(处理结果如图4所示)。
46.本技术实施例提供的方法通过对钢筋界面图像进行识别,得到钢筋界面图像中的感兴趣区域,然后对感兴趣区域进行检测,得到多个包围框,最终利用包围框的数量确定钢筋的数量,以此代替常规人工技术的方式,提高了钢筋清点效率。
47.在本技术实施例中,识别模型的训练方法如下以下步骤c1-c6:步骤c1,获取多个训练样本图像,其中,每个训练样本图像包括至少一个钢筋。
48.在本技术实施例中,获取多个训练样本图像,包括以下步骤c101-c104:步骤c101,获取样本图像集,其中,样本图像集包括多个原始训练样本图像。
49.在本技术实施例中,样本图像集中的原始训练样本图像可以通过以下方式获取:(1)设置爬取关键词“钢筋”、“钢筋截面”、“钢筋端面”,通过网络爬虫以“钢筋”、“钢筋截面”、“钢筋端面”等关键词进行爬取,对爬取到的图像检测,将属于截面角度的图像作为原始训练样本图像。(2)调用建设施工工地的采集设备对钢筋加工场或钢筋加工棚进行图像采集,得到原始训练样本图像。
50.步骤c102,从多个原始训练样本图像中随机选取预设数量的原始训练样本图像。
51.在本技术实施例中,为了增加训练样本,从多个原始训练样本图像中随机选取预设数量的原始训练样本图像。后续需可以对预设数量的原始训练样本图像缩放、平移、旋转、色彩变幻以及mosaic数据增强方法扩充训练样本。
52.步骤c103,利用预设数量的原始训练样本图像进行裁剪拼接,得到目标训练样本图像。
53.在本技术实施例中,将预设数量的原始训练样本图像进行随机裁剪、缩放后,向图片中添加适当的噪声数据,再随机排列拼接形成一张图片,即目标训练样本图像。以此实现丰富数据量的同时,增加了小目标样本的数量,可以提升后续神经网络算法的迭代训练速度。步骤c104,将原始训练样本图像以及目标训练样本图像作为训练样本图像。
54.在本技术实施例在得到扩展的多个目标训练样本图像后,利用多个目标训练样本图像以及原始训练样本图像构建训练样本图像。
55.步骤c2,获取训练样本图像对应的标签信息,其中,标签信息包括:训练样本图像中每个钢筋的钢筋特征标签,以及钢筋对应包围框的关键点坐标标签。
56.在本技术实施例中,训练样本图像对应的标签信息可以是通过图像标注软件进行标注得到的,例如:以矩形框的方式标注钢筋截面区域(如图5所示)。将所有图片标注完成后,使用计算机程序将图片标注文件转换为标准数据集格式。
57.步骤c3,将训练样本图像以及标签信息输入待训练的神经网络模型,其中,神经网络模型包括第二卷积网络以及第二处理网络。
58.在本技术实施例中,使用特定超参数对神经网络模型迭代训练:采用batch size为24,learning rate为0.001,采用动态学习率,学习率衰减因子为0.1,动量为0.5,最大衰减触发轮数为10,一共进行了三次训练,迭代轮数分别为300、500、800。通过上述训练方法得到的神经网络模型的准确率能够达到98.4%,高于传统机器学习和图像处理方法得到的结果。
59.步骤c4,通过第二卷积网络检测训练样本图像得到钢筋特征,并基于钢筋特征确定至少一个预测关键点坐标,将预测关键点坐标传递至第二处理网络。
60.在本技术实施例中,第二卷积网络提取训练样本图像的钢筋特征,提取钢筋特征的过程中,会区分训练样本图像中钢筋特征以及非钢筋特征,然后通过钢筋特征确定至少一个预测关键点坐标,并将预测关键点坐标传递至第二处理网络。
61.步骤c5,通过第二处理网络确定预测关键点坐标对应的预测包围框。
62.在本技术实施例中,第二处理网络基于预测关键点坐标之间的连线,输出预测包围框。
63.步骤c6,基于预测包围框计算训练损失,并基于训练损失调整神经网络模型的参数,直至训练损失小于预设阈值。
64.在本技术实施例中,基于预测包围框计算训练损失,包括:计算钢筋特征与钢筋特征标签之间的第一损失,以及预测关键点坐标与关键点坐标标签之间的第二损失。计算预测包围框与关键点坐标标签对应包围框之间的第三损失。基于第一损失,第二损失以及第三损失计算训练损失。
65.具体的,训练损失的计算公式如下:;式中,为训练损失,为第三损失,为第一损失,为第二损失。
66.需要说明的是,通过第二卷积网络提取的钢筋特征与钢筋特征标签中的特征标签进行计算,得到分类损失(即第一分类损失)。通过第二卷积网络输出预测关键点坐标时,还会输出预测关键点坐标的置信度,以此通过预测关键点坐标的置信度,计算预测关键点坐标与关键点坐标标签进行损失计算,得到置信度损失(即第二损失)。最终基于关键点坐标标签构建包围框,计算该包围框与预测包围框之间损失,得到第三损失。最终基于上述第一损失,第二损失,第三损失得到模型在训练过程中的训练损失,如果该损失值大于预设阈值,则优化第二卷积网络以及第二处理网络的参数,直至优化后的第二卷积网络以及优化后的第二处理网络输出结果的损失小于预设阈值。
67.图6为本技术实施例提供的一种基于图像的钢筋数量检测装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图6所示,该装置包括:获取模块91,用于获取对钢筋摆放区域进行采集得到的钢筋截面图像;识别模块92,用于检测钢筋截面图像,得到钢筋截面图像中的感兴趣区域,其中,感兴趣区域包括多个钢筋;检测模块93,用于检测感兴趣区域得到至少一个钢筋特征,基于每个钢筋特征确定目标关键点,并基于目标关键点构建钢筋特征的包围框;处理模块94,用于基于包围框的数量确定钢筋摆放区的钢筋数量。
68.在本技术实施例中,识别模块92,用于确定钢筋截面图像中的标记区域,其中,标记区域包括多个钢筋;对钢筋截面图像中非标记区域进行掩膜操作,得到掩膜图像;基于钢筋截面图像与掩膜图像进行点乘,得到感兴趣区域。
69.在本技术实施例中,检测模块93,用于确定感兴趣区域在钢筋截面图像的区域位置,并利用区域位置对钢筋截面图像进行分割,得到目标图像;获取预先训练好的识别模型,其中,识别模型包括第一卷积网络以及第一处理网络;通过第一卷积网络检测所述目标图像中钢筋特征,基于每个钢筋特征确定多个目标关键点坐标,并将目标关键点坐标传递至第一处理网络;第一处理网络确定目标关键点坐标对应的包围框,其中,每个包围框对应一个钢筋。
70.在本技术实施例中,装置还包括模型训练模块,模型训练模块包括:第一获取单元,用于获取多个训练样本图像,其中,每个训练样本图像包括至少一个钢筋;第二获取单元,用于获取训练样本图像对应的标签信息,其中,标签信息包括:训练样本图像中每个钢筋的钢筋特征标签,以及钢筋对应包围框的关键点坐标标签;输入单元,用于将训练样本图像以及标签信息输入待训练的神经网络模型,其中,神经网络模型包括第二卷积网络以及第二处理网络;第一训练单元,用于通过第二卷积网络检测训练样本图像得到钢筋特征,并基于钢筋特征确定至少一个预测关键点坐标,将预测关键点坐标传递至第二处理网络;第二训练单元,用于通过第二处理网络确定预测关键点坐标对应的预测包围框;计算单元,用于基于预测包围框计算训练损失,并基于训练损失调整神经网络模型的参数,直至训练损失小于预设阈值。
71.在本技术实施例中,第一获取单元,用于获取样本图像集,其中,样本图像集包括多个原始训练样本图像;从多个原始训练样本图像中随机选取预设数量的原始训练样本图像;利用预设数量的原始训练样本图像进行裁剪拼接,得到目标训练样本图像;将原始训练样本图像以及目标训练样本图像作为训练样本图像。
72.在本技术实施例中,计算单元,用于计算所述钢筋特征与所述钢筋特征标签之间的第一损失,以及所述预测关键点坐标与所述关键点坐标标签之间的第二损失;计算所述预测包围框与所述关键点坐标标签对应包围框之间的第三损失;基于所述第一损失,所述第二损失以及所述第三损失计算所述训练损失。
73.在本技术实施例中,处理模块94,用于获取各个包围框对应的包围框边界;利用非极大值抑制去除包围框边界中的冗余边界,得到最佳包围框;基于最佳包围框的确定钢筋摆放区的钢筋数量。
74.本技术实施例还提供一种电子设备,如图7所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
75.存储器1503,用于存放计算机程序;处理器1501,用于执行存储器1503上所存放的计算机程序时,实现上述实施例的步骤。
76.上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
77.通信接口用于上述终端与其他设备之间的通信。
78.存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
79.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器
(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
80.在本技术提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的方法。
81.在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的方法。
82.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk)等。
83.以上所述仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。
84.以上所述仅是本技术的具体实施方式,使本领域技术人员能够理解或实现本技术。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

技术特征:
1.一种基于图像的钢筋数量检测方法,其特征在于,包括:获取对钢筋摆放区域进行采集得到的钢筋截面图像;检测所述钢筋截面图像,得到所述钢筋截面图像中的感兴趣区域,其中,所述感兴趣区域包括多个钢筋;检测所述感兴趣区域得到至少一个钢筋特征,基于每个所述钢筋特征确定目标关键点,并基于所述目标关键点构建钢筋特征的包围框;基于所述包围框的数量确定所述钢筋摆放区的钢筋数量。2.根据权利要求1所述的方法,其特征在于,所述检测所述钢筋截面图像,得到所述钢筋截面图像中的感兴趣区域,包括:确定所述钢筋截面图像中的标记区域,其中,所述标记区域包括多个钢筋;对所述钢筋截面图像中非标记区域进行掩膜操作,得到掩膜图像;基于所述钢筋截面图像与所述掩膜图像进行点乘,得到所述感兴趣区域。3.根据权利要求1所述的方法,其特征在于,所述检测所述感兴趣区域得到至少一个钢筋特征,基于每个所述钢筋特征确定目标关键点,并基于所述目标关键点构建钢筋特征的包围框,包括:确定所述感兴趣区域在所述钢筋截面图像的区域位置,并利用所述区域位置对所述钢筋截面图像进行分割,得到目标图像;获取预先训练好的识别模型,其中,所述识别模型包括第一卷积网络以及第一处理网络;通过所述第一卷积网络检测所述目标图像中钢筋特征,基于每个所述钢筋特征确定多个目标关键点坐标,并将所述目标关键点坐标传递至第一处理网络;所述第一处理网络确定所述目标关键点坐标对应的包围框,其中,每个包围框对应一个钢筋。4.根据权利要求3所述的方法,其特征在于,所述识别模型的训练方法如下:获取多个训练样本图像,其中,每个所述训练样本图像包括至少一个钢筋;获取所述训练样本图像对应的标签信息,其中,所述标签信息包括:所述训练样本图像中每个钢筋的钢筋特征标签,以及所述钢筋对应包围框的关键点坐标标签;将所述训练样本图像以及所述标签信息输入待训练的神经网络模型,其中,所述神经网络模型包括第二卷积网络以及第二处理网络;通过所述第二卷积网络检测所述训练样本图像得到钢筋特征,并基于所述钢筋特征确定至少一个预测关键点坐标,将所述预测关键点坐标传递至第二处理网络;通过第二处理网络确定所述预测关键点坐标对应的预测包围框;基于所述预测包围框计算训练损失,并基于所述训练损失调整所述神经网络模型的参数,直至所述训练损失小于预设阈值。5.根据权利要求4所述的方法,其特征在于,所述获取多个训练样本图像,包括:获取样本图像集,其中,所述样本图像集包括多个原始训练样本图像;从多个所述原始训练样本图像中随机选取预设数量的原始训练样本图像;利用预设数量的原始训练样本图像进行裁剪拼接,得到目标训练样本图像;将所述原始训练样本图像以及所述目标训练样本图像作为所述训练样本图像。
6.根据权利要求4所述的方法,其特征在于,所述基于所述预测包围框计算训练损失,包括:计算所述钢筋特征与所述钢筋特征标签之间的第一损失,以及所述预测关键点坐标与所述关键点坐标标签之间的第二损失;计算所述预测包围框与所述关键点坐标标签对应包围框之间的第三损失;基于所述第一损失,所述第二损失以及所述第三损失计算所述训练损失。7.根据权利要求3所述的方法,其特征在于,所述基于所述包围框的数量确定所述钢筋摆放区的钢筋数量,包括:获取各个所述包围框对应的包围框边界;利用非极大值抑制去除所述包围框边界中的冗余边界,得到最佳包围框;基于最佳包围框的确定所述钢筋摆放区的钢筋数量。8.一种基于图像的钢筋数量检测装置,其特征在于,包括:获取模块,用于获取对钢筋摆放区域进行采集得到的钢筋截面图像;识别模块,用于检测所述钢筋截面图像,得到所述钢筋截面图像中的感兴趣区域,其中,所述感兴趣区域包括多个钢筋;检测模块,用于检测所述感兴趣区域得到至少一个钢筋特征,基于每个所述钢筋特征确定目标关键点,并基于所述目标关键点构建钢筋特征的包围框;处理模块,用于基于所述包围框的数量确定所述钢筋摆放区的钢筋数量。9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在计算机运行,由所述计算机执行上述权利要求1至7中任一项所述的方法。10.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:存储器,用于存放计算机程序;处理器,用于通过运行存储器上所存放的程序来执行权利要求1至7中任一项所述的方法。

技术总结
本申请公开了一种基于图像的钢筋数量检测方法、装置、设备及介质。包括:获取对钢筋摆放区域进行采集得到的钢筋截面图像;检测所述钢筋截面图像,得到所述钢筋截面图像中的感兴趣区域,其中,所述感兴趣区域包括多个钢筋;检测所述感兴趣区域得到至少一个钢筋特征,基于每个所述钢筋特征确定目标关键点,并基于所述目标关键点构建钢筋特征的包围框;基于所述包围框的数量确定所述钢筋摆放区的钢筋数量。本申请通过对钢筋界面图像进行识别,得到钢筋界面图像中的感兴趣区域,然后对感兴趣区域进行检测,得到多个包围框,最终利用包围框的数量确定钢筋的数量,以此代替常规人工技术的方式,提高了钢筋清点效率。提高了钢筋清点效率。提高了钢筋清点效率。


技术研发人员:李鑫玉 赵忠杨 邓波 常红宾 侯绪彬 张欣俣 许秋石
受保护的技术使用者:中建八局第一数字科技有限公司
技术研发日:2023.08.04
技术公布日:2023/9/9
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐