![](/upload/img/20221112/wq5rbw6eo.jpg)
1.本发明涉及图像处理技术领域,尤其涉及一种基于双目摄像头的钢筋数量的识别方法及系统。
背景技术:
2.随着建筑业的发展,各种不同场景下的识别需求也应运而生,尤其是针对钢筋出入库的识别需求。在工地现场,针对入库装有钢筋的车辆,验收人员都需要对车上的钢筋进行现场人工点根,确认数量、材质、规格后之后,钢筋车才能完成进场卸货。目前,现场主要采用人工计数的方式进行钢筋统计,该方式过程繁琐,消耗人力且速度缓慢,且极易出现误差,一般一车满载钢筋需要近半小时进行统计,一次进场盘点则可能需数个小时。故需要采用能够快速识别出入库钢筋的技术,针对工地、工厂及其他特定场合的出入库的需求,代替人工进行智能分析快速、准确的记录出入库信息。
3.现有的多种智能出入库技方法,多采用智能地磅技术,通过过磅称重获取载物重量,并通过计算测算出对应出入库的钢筋数量,但该方法易造假,无法判断出入库材料是否掺杂废料、杂料等造假材料。此外,若出货钢筋类别不同时,无法进行钢筋数量的准确计算,易造成较大误差,因此,该方法无法为现场提供准确的判断依据。
技术实现要素:
4.本发明提供一种基于双目摄像头的钢筋数量的识别方法及系统,以解决现有技术中未能对钢筋数量进行准确识别的问题。
5.本发明提供的基于双目摄像头的钢筋数量的识别方法,包括:
6.配置待识别钢筋的直径;
7.获取两张所述待识别钢筋的钢筋图像和拍摄设备参数,其中,两张所述待识别钢筋的钢筋图像通过采用双目摄像头的拍摄设备拍摄若干根所述待识别钢筋的截面得到;
8.根据所述拍摄设备参数对两张所述钢筋图像进行标定,得到标定结果;
9.对所述钢筋图像进行识别获取所述待识别钢筋的目标区域,根据所述标定结果和所述识别钢筋的目标区域获取所述待识别钢筋的识别截面面积;
10.根据所述待识别钢筋的直径计算所述待识别钢筋的预设截面面积,将所述待识别钢筋的识别截面面积与所述待识别钢筋的预设截面面积进行比对,得到目标钢筋数量。
11.可选地,所述根据所述拍摄设备参数对两张所述钢筋图像进行标定,得到标定结果包括:
12.对所述钢筋图像进行畸变校正,得到畸变校正后的钢筋图像;
13.通过极线约束对两张所述畸变校正后的钢筋图像进行立体校正,使得两张所述畸变校正后的钢筋图像的对应点在同一条水平极线上,得到立体校正后的钢筋图像;
14.获取目标关键点在两张所述畸变校正后的钢筋图像中的位置间隔参数,其中,所述目标关键点在所述水平极线上;
15.根据所述位置间隔参数和所述拍摄设备参数,确定所述标定结果,其中,所述拍摄设备参数包括所述双目摄像头之间的距离参数。
16.可选地,所述对所述钢筋图像进行识别获取所述待识别钢筋的目标区域,根据所述标定结果和所述识别钢筋的目标区域获取所述待识别钢筋的识别截面面积包括:
17.对所述立体校正后的钢筋图像进行识别,获取所述待识别钢筋的目标区域;
18.根据所述标定结果和所述待识别钢筋的目标区域,计算所述待识别钢筋的识别截面面积。
19.可选地,所述对所述立体校正后的钢筋图像进行识别,获取所述待识别钢筋的目标区域包括:
20.获取样本钢筋图像,形成样本数据集;
21.构建初始识别模型,采用所述样本数据集训练所述初始识别模型,得到目标识别模型;
22.采用所述目标识别模型对所述立体校正后的钢筋图像进行识别,获取所述待识别钢筋的目标区域。
23.可选地,所述初始识别模型包括卷积神经网络模型。
24.可选地,所述将所述待识别钢筋的识别截面面积与所述待识别钢筋的预设截面面积进行比对,得到目标钢筋数量包括:
25.将所述待识别钢筋的识别截面面积与所述待识别钢筋的预设截面面积进行比对,获取目标钢筋,其中,所述目标钢筋的识别截面面积在预设截面面积的允许误差范围内;
26.获取所述目标钢筋的数量,得到目标钢筋数量。
27.可选地,所述根据所述待识别钢筋的直径计算所述待识别钢筋的预设截面面积之后,还包括:
28.将所述待识别钢筋的识别截面面积与所述待识别钢筋的预设截面面积进行比对,获取异常钢筋,其中,所述异常钢筋的识别截面面积不在预设截面面积的允许误差范围内;
29.根据所述异常钢筋生成预警信息。
30.本发明还提供了一种基于双目摄像头的钢筋数量的识别装置,包括:
31.参数配置模块,用于配置待识别钢筋的直径;
32.数据获取模块,用于获取两张所述待识别钢筋的钢筋图像和拍摄设备参数,其中,两张所述待识别钢筋的钢筋图像通过采用双目摄像头的拍摄设备拍摄若干根所述待识别钢筋的截面得到;
33.图像标定模块,用于根据所述拍摄设备参数对两张所述钢筋图像进行标定,得到标定结果;
34.图像识别模块,用于对所述钢筋图像进行识别获取所述待识别钢筋的目标区域,根据所述标定结果和所述识别钢筋的目标区域获取所述待识别钢筋的识别截面面积;
35.数量确定模块,用于根据所述待识别钢筋的直径计算所述待识别钢筋的预设截面面积,将所述待识别钢筋的识别截面面积与所述待识别钢筋的预设截面面积进行比对,得到目标钢筋数量,所述参数配置模块、所述数据获取模块、所述图像标定模块、所述图像识别模块和所述数量确定模块相连接。
36.本发明还提供一种电子设备,包括:处理器及存储器;
37.所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行所述基于双目摄像头的钢筋数量的识别方法。
38.本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述基于双目摄像头的钢筋数量的识别方法。
39.本发明的有益效果:本发明中的基于双目摄像头的钢筋数量的识别方法,首先通过配置待识别钢筋的直径;其次获取两张待识别钢筋的钢筋图像和拍摄设备参数,并根据拍摄设备参数对两张钢筋图像进行标定,得到标定结果;再次对钢筋图像进行识别获取待识别钢筋的目标区域,并根据标定结果和识别钢筋的目标区域获取待识别钢筋的识别截面面积;最后根据待识别钢筋的直径计算待识别钢筋的预设截面面积,将待识别钢筋的识别截面面积与待识别钢筋的预设截面面积进行比对,得到目标钢筋数量;从而实现了对钢筋数量的准确识别,解决现有技术中未能对钢筋数量进行准确识别的问题。
附图说明
40.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
41.图1是本发明实施例中基于双目摄像头的钢筋数量的识别方法的流程示意图;
42.图2是本发明实施例中第一轧制评价参数的获取方法的流程示意图;
43.图3是本发明实施例中基于双目摄像头的钢筋数量的识别装置的模块示意图;
44.图4是本发明实施例中电子设备的结构示意图。
具体实施方式
45.以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
46.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
47.为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
48.图1是本发明在一实施例中提供的基于双目摄像头的钢筋数量的识别方法的流程示意图。
49.如图1所示,上述基于双目摄像头的钢筋数量的识别方法,包括步骤s110-s140:
50.s110,配置待识别钢筋的直径。
51.首先,应当理解的是,待识别钢筋为需要进行数量识别的钢筋,例如,可以是出入库过程中装有钢筋车辆中的钢筋,也可以是一捆钢筋中的钢筋、一摞钢筋中的钢筋、一堆钢
筋中的钢筋等。配置的待识别钢筋的直径为钢筋的实际直径,例如可以为8cm、10cm、12cm等,配置的待识别钢筋的直径可以只有一个相同的直径,也可以有多个不同的直径,配置的待识别钢筋的直径根据实际情况进行确定。
52.s120,获取两张待识别钢筋的钢筋图像和拍摄设备参数。
53.需要说明的是,两张待识别钢筋的钢筋图像通过采用双目摄像头的拍摄设备拍摄若干个待识别钢筋的截面得到,其中,拍摄设备包括但不限于手机。拍摄设备参数包括但不限于双目摄像头之间的距离参数和拍摄设备的像素信息。
54.s130,根据拍摄设备参数对两张钢筋图像进行标定,得到标定结果。
55.应当理解的是,根据拍摄设备参数对两张钢筋图像进行标定,得到标定结果的实现方法可以参阅图2,图2是本发明在一实施例中标定结果的获取方法的流程示意图。
56.如图2所示,标定结果的获取方法可以包括以下步骤s210-s230:
57.s210,对钢筋图像进行畸变校正,得到畸变校正后的钢筋图像。
58.s220,通过极线约束对两张畸变校正后的钢筋图像进行立体校正,使得两张所述畸变校正后的钢筋图像的对应点在同一条水平极线上,得到立体校正后的钢筋图像。
59.s230,获取目标关键点在两张畸变校正后的钢筋图像中的位置间隔参数。
60.s240,根据位置间隔参数和所述拍摄设备参数,确定标定结果。
61.应当理解的是,通过极线约束对两张畸变校正后的钢筋图像进行立体校正,使得两张所述畸变校正后的钢筋图像的对应点在同一条水平极线上,得到立体校正后的钢筋图像包括:将双目摄像头相连形成最初的极线,通过平行延伸,在两张畸变校正后的钢筋图像中画出对应极线,通过透视投影矩阵变换,使得两个不同方向的图,投影到同一平面且光周相互平行,使两张图像变换为理想对比模型,从而使得两张图像的极线也变为基本在同一基线上,得到立体校正后的钢筋图像。
62.应当理解的是,目标关键点在水平极线上,目标关键点为钢筋图像的特征点,可以根据实际情况进行设定。
63.s140,对钢筋图像进行识别获取待识别钢筋的目标区域,根据标定结果和识别钢筋的目标区域获取待识别钢筋的识别截面面积。
64.需要说明的是,对钢筋图像进行识别获取待识别钢筋的目标区域,根据标定结果和识别钢筋的目标区域获取待识别钢筋的识别截面面积包括:对立体校正后的钢筋图像进行识别,获取待识别钢筋的目标区域;根据标定结果和待识别钢筋的目标区域,计算待识别钢筋的识别截面面积。对立体校正后的钢筋图像进行识别,获取待识别钢筋的目标区域包括:获取样本钢筋图像,形成样本数据集;构建初始识别模型,采用样本数据集训练所述初始识别模型,得到目标识别模型;采用目标识别模型对立体校正后的钢筋图像进行识别,获取待识别钢筋的目标区域。初始识别模型包括但不限于卷积神经网络模型。
65.在一实施例中,对钢筋图像进行识别获取待识别钢筋的目标区域,根据标定结果和识别钢筋的目标区域获取待识别钢筋的识别截面面积还包括运用深度学习算法,通过r-cnn结合非极大值抑制标注出立体校正后的钢筋图像中待识别钢筋的目标区域,利用opencv与图像处理技术,分别测算出每根钢筋所占整个图片大小的比例,通过测算出的标定结果,分别计算出每根待识别钢筋的识别截面面积。
66.s150,根据待识别钢筋的直径计算待识别钢筋的预设截面面积,将待识别钢筋的
识别截面面积与待识别钢筋的预设截面面积进行比对,得到目标钢筋数量。
67.在一实施例中,将待识别钢筋的识别截面面积与待识别钢筋的预设截面面积进行比对,得到目标钢筋数量包括:将待识别钢筋的识别截面面积与待识别钢筋的预设截面面积进行比对,获取目标钢筋,其中,目标钢筋的识别截面面积在预设截面面积的允许误差范围内;获取目标钢筋的数量,得到目标钢筋数量。在获取目标钢筋之前,还需要设定预设截面面积的允许误差范围,预设截面面积的允许误差范围可以根据实际情况进行设定。得到目标钢筋数量后需要将钢筋数量推送给平台。
68.在一实施例中,根据待识别钢筋的直径计算待识别钢筋的预设截面面积之后,还包括:将待识别钢筋的识别截面面积与待识别钢筋的预设截面面积进行比对,获取异常钢筋,其中,异常钢筋的识别截面面积不在预设截面面积的允许误差范围内;根据异常钢筋生成预警信息。在获取到异常钢筋后,需要判断待识别钢筋的直径配置是否有误,若待识别钢筋的直径配置有误,则可以重复步骤s110-150;若待识别钢筋的直径配置有误,则也可以对目标钢筋数量进行更新,对目标钢筋数量进行更新包括获取异常钢筋的数量,并将目标钢筋的数量与异常钢筋的数量进行求和,得到更新后的目标钢筋数量。
69.本施例提供了一种基于双目摄像头的钢筋数量的识别方法,首先通过配置待识别钢筋的直径;其次获取两张待识别钢筋的钢筋图像和拍摄设备参数,并根据拍摄设备参数对两张钢筋图像进行标定,得到标定结果;再次对钢筋图像进行识别获取待识别钢筋的目标区域,并根据标定结果和识别钢筋的目标区域获取待识别钢筋的识别截面面积;最后根据待识别钢筋的直径计算待识别钢筋的预设截面面积,将待识别钢筋的识别截面面积与待识别钢筋的预设截面面积进行比对,得到目标钢筋数量;从而实现了对钢筋数量的准确识别,解决现有技术中未能对钢筋数量进行准确识别的问题。构建了在建筑工地等相关环境中由云端配置、现场采集、智能出入库的全流程数据处理与分析体系,为现场钢筋智能出入库提供可视化、数字化、智能化的管理依据,实现系统的准确性、友好性、便捷性。
70.基于与上述基于双目摄像头的钢筋数量的识别方法相同的发明构思,相应的,本实施例还提供了一种基于双目摄像头的钢筋数量的识别装置。
71.图3为本发明提供的基于双目摄像头的钢筋数量的识别装置的模块示意图。
72.如图3所示,上述基于双目摄像头的钢筋数量的识别装置包括:31参数配置模块、32数据获取模块、33图像标定模块、34图像识别及35数量确定模块。
73.其中,参数配置模块,用于配置待识别钢筋的直径;
74.数据获取模块,用于获取两张待识别钢筋的钢筋图像和拍摄设备参数,其中,两张待识别钢筋的钢筋图像通过采用双目摄像头的拍摄设备拍摄若干根待识别钢筋的截面得到;
75.图像标定模块,用于根据拍摄设备参数对两张钢筋图像进行标定,得到标定结果;
76.图像识别模块,用于对钢筋图像进行识别获取待识别钢筋的目标区域,根据标定结果和识别钢筋的目标区域获取待识别钢筋的识别截面面积;
77.数量确定模块,用于根据待识别钢筋的直径计算待识别钢筋的预设截面面积,将待识别钢筋的识别截面面积与待识别钢筋的预设截面面积进行比对,得到目标钢筋数量,参数配置模块、数据获取模块、图像标定模块、图像识别模块和数量确定模块相连接。
78.在该示例性的基于双目摄像头的钢筋数量的识别装置,实现了对钢筋数量的准确
识别,构建了在建筑工地等相关环境中由云端配置、现场采集、智能出入库的全流程数据处理与分析体系,为现场钢筋智能出入库提供可视化、数字化、智能化的管理依据,实现系统的准确性、友好性、便捷性。
79.在一些示例性实施例中,图像标定模块包括:
80.畸变校正单元,用于对钢筋图像进行畸变校正,得到畸变校正后的钢筋图像;
81.立体校正单元,用于通过极线约束对两张畸变校正后的钢筋图像进行立体校正,使得两张畸变校正后的钢筋图像的对应点在同一条水平极线上,得到立体校正后的钢筋图像;
82.间隔参数获取单元,用于获取目标关键点在两张畸变校正后的钢筋图像中的位置间隔参数,其中,目标关键点在所述水平极线上;
83.标定结果确定单元,用于根据位置间隔参数和拍摄设备参数,确定标定结果,其中,拍摄设备参数包括双目摄像头之间的距离参数。
84.在一些示例性实施例中,图像识别模块包括:
85.目标区域识别单元,用于对立体校正后的钢筋图像进行识别,获取待识别钢筋的目标区域;
86.识别截面面积单元,用于根据标定结果和待识别钢筋的目标区域,计算待识别钢筋的识别截面面积。
87.在一些示例性实施例中,目标区域识别单元包括:
88.样本数据集子单元,用于获取样本钢筋图像,形成样本数据集;
89.模型建立子单元,用于构建初始识别模型,采用样本数据集训练初始识别模型,得到目标识别模型;
90.目标区域识别子单元,用于采用目标识别模型对立体校正后的钢筋图像进行识别,获取待识别钢筋的目标区域。
91.在一些示例性实施例中,数量确定模块包括:
92.目标钢筋单元,用于将待识别钢筋的识别截面面积与待识别钢筋的预设截面面积进行比对,获取目标钢筋,其中,目标钢筋的识别截面面积在预设截面面积的允许误差范围内;
93.数量确定单元,用于获取所述目标钢筋的数量,得到目标钢筋数量。
94.在一些示例性实施例中,数量确定模块还包括:
95.异常钢筋单元,用于将待识别钢筋的识别截面面积与待识别钢筋的预设截面面积进行比对,获取异常钢筋,其中,异常钢筋的识别截面面积不在预设截面面积的允许误差范围内;
96.预警单元,用于根据异常钢筋生成预警信息。
97.本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本实施例中的任一项方法。
98.在一个实施例中,请参见图4,本实施例还提供了一种电子设备400,包括存储器401、处理器402及存储在存储器上并可在处理器上运行的计算机程序,所述处理器402执行所述计算机程序时实现如上任一项实施例所述方法的步骤。
99.本实施例中的计算机可读存储介质,本领域普通技术人员可以理解:实现上述各
方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
100.本实施例提供的电子设备,包括处理器、存储器、收发器和通信接口,存储器和通信接口与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于进行通信,处理器和收发器用于运行计算机程序,使电子设备执行如上方法的各个步骤。
101.在本实施例中,存储器可能包含随机存取存储器(random access memory,简称ram),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
102.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
103.在上述实施例中,说明书对“本实施例”、“一实施例”、“另一实施例”、“在一些示例性实施例”或“其他实施例”的提及表示结合实施例说明的特定特征、结构或特性包括在至少一些实施例中,但不必是全部实施例。“本实施例”、“一实施例”、“另一实施例”的多次出现不一定全部都指代相同的实施例。
104.在上述实施例中,尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变形对本领域普通技术人员来说将是显而易见的。例如,其他存储结构(例如,动态ram(dram))可以使用所讨论的实施例。本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。
105.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
106.本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
107.本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
108.上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
再多了解一些
本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。