CN113657202B - 构件识别方法、构建训练集方法、装置、设备及存储介质 - Google Patents
构件识别方法、构建训练集方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113657202B CN113657202B CN202110859184.7A CN202110859184A CN113657202B CN 113657202 B CN113657202 B CN 113657202B CN 202110859184 A CN202110859184 A CN 202110859184A CN 113657202 B CN113657202 B CN 113657202B
- Authority
- CN
- China
- Prior art keywords
- target
- subgraph
- preset
- acquiring
- component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000012549 training Methods 0.000 title claims abstract description 62
- 238000010276 construction Methods 0.000 title claims abstract description 42
- 230000008569 process Effects 0.000 claims abstract description 13
- 238000001514 detection method Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 8
- 230000001629 suppression Effects 0.000 claims description 7
- 238000002372 labelling Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 4
- 230000000694 effects Effects 0.000 abstract description 3
- 230000011218 segmentation Effects 0.000 description 11
- 238000013528 artificial neural network Methods 0.000 description 6
- 230000002708 enhancing effect Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000011960 computer-aided design Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种构件识别方法、构建训练集方法、装置、设备及存储介质,其中,所述构建训练集的方法,包括:判定第一建筑图纸中存在目标构件;对所述第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;从多个所述子图中,获取包含所述目标构件的目标子图;其中,所述目标子图用于构建所述目标构件的训练集。本申请用以解决智能审图过程中,样本数量有限,导致识别模型识别效果差的问题。
Description
技术领域
本申请涉及智能审图领域,尤其涉及一种构建训练集的方法、装置、设备及存储介质以及一种构件识别的方法。
背景技术
伴随着经济的迅速发展,建筑行业也得到了大力发展。建筑图纸是施工的重要依据,建筑图纸中构件众多,且每种构件的设计应当符合相应的国家规范和行业标准,合格的建筑图纸对于保障居民的安全至关重要。
在对建筑图纸进行自动审核时,识别构件是其中重要的一个环节。目前,可以采用神经网络,例如卷积神经CNN,实现对建筑构件的识别和定位。但是,神经网络在识别目标时,需要预先利用大量训练数据样本对神经网络进行训练,以保证神经网络识别模型更智能、识别的更精确。
但是,目前对于智能审图的训练样本数据相对于其他目标识别领域的训练样本数据要少很多,通常在实际应用中,利用绘制的建筑图纸对神经网络进行训练,某些构件的样本数量不足,导致神经网络识别效果差。
发明内容
本申请提供了一种构件识别方法、构建训练集方法、装置、设备及存储介质,用以解决智能审图过程中,样本数量有限,导致识别模型识别效果差的问题。
第一方面,本申请实施例提供了一种构建训练集的方法,包括:
判定第一建筑图纸中存在目标构件;
对所述第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;
对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;
从多个所述子图中,获取包含所述目标构件的目标子图;其中,所述目标子图用于构建所述目标构件的训练集。
可选的,所述判定第一建筑图纸中存在目标构件,包括:
获取目标类别标签;
获取所述第一建筑图纸的第一类别标注文件;
确定所述第一类别标注文件中存在所述目标类别标签;
将所述目标类别标签对应的构件作为所述目标构件。
可选的,所述获取目标类别标签,包括:
获取至少一张建筑图纸的第二类别标注文件;其中,所述至少一张建筑图纸中包括所述第一建筑图纸;
统计所述第二类别标注文件中,每一种构件的类别标签的总次数;
确定所述总次数低于预设值的类别标签,作为所述目标类别标签。
可选的,所述按照所述起始位置分别对所述图纸进行切分,包括:
按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的起始位置分别对所述图纸进行切分,其中,所述预设第一重叠比例用于表征在利用所述第一滑动窗口切分第一建筑图纸的过程中,所述第一滑动窗口选中的相邻区域存在的重叠区域的大小;
或者,
获取所述图纸集合的每一张图纸的类别标注文件;从所述类别标注文件中,获取所述目标构件的坐标信息;在所述坐标信息的预设范围内,按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的所述起始位置分别对所述图纸进行切分。
可选的,所述从多个所述子图中,获取包含所述目标构件的目标子图,包括:
获取所述图纸集合的每一张图纸的类别标注文件;对于每一张图纸,从所述类别标注文件中,获取所述目标构件的坐标信息;根据所述坐标信息,确定所述目标构件落入所述子图中,将所述子图作为所述目标子图;
或者,
利用目标检测方法确定所述子图中包含所述目标构件,将所述子图作为所述目标子图。
第二方面,本申请实施例提供了一种构件的识别方法,包括:
获取待识别的第二建筑图纸的图像;
对所述图像进行切分,得到多个待识别子图,并记录从所述图像转换到每个待识别子图的各自的转换矩阵;
将各个所述待识别子图输入到识别模型中,得到每个所述构件的至少一个初步识别框;其中,所述识别模型预先利用目标构件的训练集训练而成,所述目标构件的训练集的获取方法包括:判定第一建筑图纸中存在目标构件;对所述第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;从多个所述子图中,获取包含所述目标构件的目标子图;其中,所述目标子图用于构建所述目标构件的训练集;
根据所述转换矩阵,将每个所述构件的初步识别框转换到所述图像中;
对于每个所述构件,利用非极大值抑制算法去掉所述图像中冗余的初步识别框,获取所述构件的识别结果。
可选的,所述利用非极大值抑制算法去掉所述图像中冗余的初步识别框,包括:
获取预设交并比阈值;
选取各个初步识别框中,置信度最高的初步识别框作为基准识别框,其余初步识别框作为备用的识别框;
对于每个所述备用的识别框,计算所述基准识别框与所述备用的识别框的中心点的欧式距离,以及获取所述基准识别框和所述备用的识别框的最小外接矩形的对角线长度;计算所述欧式距离和所述对角线长度的比值;利用所述预设交并阈值比减去所述比值,得到交并比阈值;
去掉小于预设阈值的交并比阈值所对应的所述备用的识别框。
第三方面,本申请实施例提供了一种构建训练集的装置,包括:
判定模块,用于判定第一建筑图纸中存在目标构件;
增强模块,用于对所述第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;
切分模块,用于对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;
获取模块,用于从多个所述子图中,获取包含所述目标构件的目标子图;其中,所述目标子图用于构建所述目标构件的训练集。
第四方面,本申请实施例提供了一种电子设备,包括:处理器、存储器和通信总线,其中,处理器和存储器通过通信总线完成相互间的通信;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中所存储的程序,实现第一方面所述的构建训练集的方法或者第二方面所述的构件的识别方法。
第五方面,本申请实施例提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的构建训练集的方法或者第二方面所述的构件的识别方法。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:本申请实施例提供的该方法,对存在目标构件的第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合,在图纸集合中的每一张图纸上,分别选取至少两个不同的起始位置,并按照不同的起始位置进行切分,从切分得到的子图中,选取包含目标构件的目标子图。在本申请实施例中,通过数据增强和选取不同起始位置进行切分的方式,增大了目标构件的样本数量,样本数量得到有效补充,样本数量的提高能够有效提升识别模型训练结果的准确度。并且,本申请实施例提供的样本扩充的方法,在不改变样本特征的情况下,增加样本的多样性,改善建筑图纸中不同构件分布不均匀的情况。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种构建训练集的方法的流程示意图;
图2为本申请实施例提供的利用滑动窗口和重叠比例切分建筑图纸的示意图;
图3为本申请实施例提供的构建训练集的装置的结构示意图;
图4为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
发明人在实际工作中发现,不同构件在建筑图纸中数量不同,导致训练数据样本不均衡,不同构件的数量呈现长尾分布,尤其是一些出现频率不高的构件,训练样本很少,使得识别模型无法得到很好的训练,识别准确率较低。
鉴于发明人在实际工作中发现的上述技术问题,本申请实施例提供了一种构建训练集的方法,如图1所示,该方法包括如下步骤:
步骤101,判定第一建筑图纸中存在目标构件;
具体的,在判断第一建筑图纸中是否存在目标构件时,可以通过如下方法:
获取目标类别标签;获取第一建筑图纸的第一类别标注文件;确定第一类别标注文件中存在目标类别标签;将目标类别标签对应的构件作为目标构件。其中,获取目标类别标签的方法包括:获取至少一张建筑图纸的第二类别标注文件;其中,至少一张建筑图纸中包括第一建筑图纸;统计第二类别标注文件中,每一种构件的类别标签的总次数;确定总次数低于预设值的类别标签,作为目标类别标签。
首先,需要说明的是,在具体实现时,获取每张建筑图纸对应的图像,采用图像的数据格式,可以解决现有技术中强依赖于CAD(计算机辅助设计,CAD-Computer AidedDesign)解析结果、图层规范的问题,提高图纸利用率;且区别于现有技术中利用建筑图纸的DWG格式,无需通过CAD解析,同时,由于数据格式为图像,也不依赖构件相关的图层信息。
在获取类别标注文件时,利用检测标注工具,例如:labelImg,对多张建筑图纸进行标注,得到每一张图纸的类别标注文件,可以将类别标注文件存储为json文件,其中,json文件包含建筑图纸的图像中各种构件的类别标签以及检测框box的坐标信息,其中,坐标信息通过检测框box的左上点和右下点来确定,box的格式为{‘box’:(xmin、ymin、xmax、ymax)},其中,xmin代表检测框box的左上点的横坐标,ymin代表检测框box的左上点的纵坐标;xmax代表检测框box的右下点的横坐标,ymax代表检测框box的右下点的纵坐标。
对于每一张建筑图纸,均对应得到类别标注文件,统计所有类别标注文件中,每一种构件的类别标签出现的总次数,例如:在建筑图纸1中,构件1的类别标签出现的次数是5;在建筑图纸2中,构件1的类别标签出现的次数是10;在建筑图纸3中,构件1的类别标签出现的次数为8;则构件1的类别标签的总次数为5+10+8=23。得到每一种构件的总次数后,将总次数低于预设值的类别标签作为目标类别标签,将目标类别标签对应的构件作为目标构件,目标构件在图纸中的数量比较少,需要对目标构件的样本数据进行增强。
但是,由于目标构件出现的次数比较少,很可能只存在于部分建筑图纸中,而对于没有出现目标构件的建筑图纸,不做增强,以改善原始样本数据中不同构件分布不均匀的情况。在具体实现时,从多张建筑图纸中筛选出存在目标构件的第一建筑图纸,在判断某一张建筑图纸中是否包含目标构件时,通过判断该张建筑图纸的类别标注文件是否存在目标类别标签即可,如果该张建筑图纸中存在目标类别标签,在判定该张建筑图纸中存在目标构件。
步骤102,对第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;
其中,对第一建筑图纸进行数据增强的方法包括:使用几何变换(例如平移、翻转、旋转)的方法对图像进行数据增强;使用随机调整亮度的方法对图像进行增强;还可以使用随机调整对比度的方法对图像进行增强。上述数据增强的方法可以单独使用,也可以组合使用。例如:对第一建筑图纸进行平移和旋转的组合增强方法。此外,还需要说明的是,还可以使用其他数据增强的方法。将增强后的第一建筑图纸和原始的第一建筑图纸作为第一建筑图纸的图纸集合。
步骤103,对于图纸集合的每一张图纸,在图纸上选取至少两个不同的起始位置,并按照起始位置分别对图纸进行切分,得到多个子图;
这里需要说明的是,对于原始的第一建筑图纸和每一张增强后的第一建筑图纸均选取至少两个不同的起始位置。举例说明,经过步骤102后,增强后的第一建筑图纸为20张,再加上原始的第一建筑图纸,总共21张,则在这21张增强后的建筑图纸的上分别选取5个不同的起始位置进行切分,即对于每一张图纸分别切分5次。
在具体实现时,可以根据需要确定起始位置的数量,为了尽可能多的增加目标构件的样本数量,可以多选取一些不同的起始位置,同时应当考虑其他构件的样本数量,以达到样本均匀,改善不同构件样本数量分布不均匀的情况。
由于建筑图纸为高分辨率图像数据,图片尺寸过大,直接使用深度学习识别模型无法正确检测到构件,需要将建筑图纸切分成尺寸较小的子图才可以进行识别。具体的,按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的起始位置分别对所述图纸进行切分,其中,所述预设第一重叠比例用于表征在利用所述第一滑动窗口切分第一建筑图纸的过程中,所述第一滑动窗口选中的相邻区域存在的重叠区域的大小。
对于第一滑动窗口的预设第一尺寸的大小可以参考使用的识别模型的输入尺寸。预设第一重叠比例的设置应尽可能保证建筑图纸中每一个构件都会存在一个完整形态。举例说明,如图2所示,设第一建筑图纸的宽为w,高为h,第一滑动窗口的宽为w1,高为h1,预设第一重叠比例设置为0.2。
上述切分建筑图纸的方法,按照坐标由小到大逐步切分,切分的次数较多,且由于目标构件的出现的次数很少,在一张建筑图纸中,切分得到的子图中只有一小部分存在目标子图,其他切分的子图做舍弃,切分的效率比较低。
在本申请实施例中,还提供了另一种切分子图的方式,具体如下:
获取所述图纸集合的每一张图纸的类别标注文件;从所述类别标注文件中,获取所述目标构件的坐标信息;在所述坐标信息的预设范围内,按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的所述起始位置分别对所述图纸进行切分。
在具体实现时,获取第一建筑图纸的第一类别标注文件,根据数据增强的变换规则,获取各个增强后的第一建筑图纸的类别标注文件,以得到整个图纸集合中每一张图纸的类别标注文件。类别标注文件中,记录了各个构件的坐标信息,根据这一特点,从类别标注文件中,获取目标构件的坐标信息,在坐标信息的预设范围内进行切分,对于不存在目标子图的图纸部分不做切分,能够更加高效的得到包含目标构件的子图,以更快速、高效的获取目标子图。
步骤104,从多个子图中,获取包含目标构件的目标子图;其中,目标子图用于构建目标构件的训练集。
在具体实现时,可以按照如下方法从多个子图中,选取目标子图。第一种,获取图纸集合的每一张图纸的类别标注文件;对于每一张图纸,从类别标注文件中,获取目标构件的坐标信息;根据坐标信息,确定目标构件落入子图中,将子图作为目标子图;其中,对于获取图纸集合中每一张图纸的类别标注文件的方法可参考对步骤103的说明。第二种,利用目标检测方法确定子图中包含目标构件,将子图作为目标子图。在具体实现时,目标检测方法不做限定,可以采用任何一种目标检测方法。
本申请实施例中,对存在目标构件的第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合,在图纸集合中的每一张图纸上,分别选取至少两个不同的起始位置,并按照不同的起始位置进行切分,从切分得到的子图中,选取包含目标构件的目标子图。在本申请实施例中,通过数据增强和选取不同起始位置进行切分的方式,增大了目标构件的样本数量,样本数量得到有效补充,样本数量的提高能够有效提升识别模型训练结果的准确度。并且,本申请实施例提供的样本扩充的方法,在不改变样本特征的情况下,增加样本的多样性,改善建筑图纸中不同构件分布不均匀的情况。
对于不存在目标构件的建筑图纸,按照预设第一尺寸的第一滑动窗口和预设第一重叠比例进行切分,不做样本扩充,再加上目标子图,共同构成样本数据集。将得到的样本数据集中的部分样本数据作为训练集,其余作为测试集,例如:样本数据集中的样本数据按照9:1的比例分为训练集和测试集。其中,训练集用于对识别模型进行训练,而测试集用于对训练后的识别模型进行测试,以确定识别模型是否训练好。
在具体实现时,识别模型可以选用yolov4模型,其中使用kmeans聚类初始化9个锚值(anchor值),使用公开数据集训练好的预训练权重,学习率设置时使用预热策略(warmup),最大迭代次数为200epoch,其中,使用训练集的全部数据对识别模型进行一次完整的训练,称为epoch(一代训练)。此外,还需要说明的是,识别模型还可以采用其他神经网络模型。
经过训练后,得到训练好的识别模型,利用训练好的识别模型对建筑图纸进行识别。具体方法如下:
获取待识别的第二建筑图纸的图像;
对图像进行切分,得到多个待识别子图,并记录从图像转换到每个待识别子图的各自的转换矩阵;
其中,在对第二建筑图纸的图像进行切分时,按照预设第二尺寸的第二滑动窗口和预设第二重叠比例,对图像进行切分,其中,预设第二重叠比例用于表征在利用第二滑动窗口切分图像的过程中,第二滑动窗口选中的相邻区域存在的重叠区域的大小。其中,第二滑动窗口的预设第二尺寸可以和预设第一尺寸相同,也可以不同;预设第二重叠比例可以和预设第一重叠比例相同,也可以不同。
将各个待识别子图输入到识别模型中,得到每个构件的至少一个初步识别框;其中,识别模型预先利用目标构件的训练集训练而成,目标构件的训练集的获取方法包括:判定第一建筑图纸中存在目标构件;对第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;在图纸集合的每一张图纸上,分别选取至少两个不同的起始位置;按照每个起始位置分别对图纸集合的每一张图纸进行切分,得到多个子图;从多个子图中,获取包含目标构件的目标子图;其中,目标子图用于构建目标构件的训练集;
根据转换矩阵,将每个构件的初步识别框转换到图像中;
对于每个构件,利用非极大值抑制算法去掉图像中冗余的初步识别框,获取构件的识别结果。
在切分时存在重叠区域,重叠区域的构件可能会存在多个子图中,在将切分后的子图合并回原图像中,重叠区域的构件会有多个检测结果,故通过非极大值抑制算法(NMS)去掉冗余的初步识别框。
传统的NMS中仅考虑两个识别框间的重叠区域,即仅通过IOU(交并比)指标来抑制冗余的识别框。然而在实际图纸中,构件分布较为复杂,存在两个或多个构件互相遮挡的情况,当IOU阈值设置过高时,因为合并产生的重叠区域构件识别框无法去掉,当IOU阈值设置过低时,互相遮挡的构件中识别框容易被去掉。本申请实施例提供了一种改进的NMS算法,具体包括:
获取预设交并比阈值;预设交并比阈值可以根据经验值设定。
选取各个初步识别框中,置信度最高的初步识别框作为基准识别框,其余初步识别框作为备用的识别框;
利用识别模型对第二建筑图纸的图像进行识别后,得到的每一个初步识别框均对应一个置信度,置信度越高,表示越可靠。
对于每个备用的识别框,计算基准识别框与备用的识别框的中心点的欧式距离,以及获取基准识别框和备用的识别框的最小外界矩形的对角线长度;计算欧式距离和对角线长度的比值;利用预设交并阈值比减去比值,得到交并比阈值;
去掉小于预设阈值的交并比阈值所对应的备用的识别框。
在本申请实施例中,不仅考虑两个识别框的重叠面积,还考虑了两个识别框的中心点的欧式距离和两个识别框的最小外接矩形的对角线长度,计算欧式距离和对角线长度的比值,利用预设交并比阈值和比值的差值去冗余,能够最小化两个识别框中心点之间的规范化距离,使得识别框的中心最大程度接近目标,避免遗留过多、过大的识别框。
在获取构件的识别结果之后,还包括:对识别结果进行轮廓检测和多边形拟合,得到构件的精确坐标。
构件的识别结果所对应的坐标仍可能存在误差,通过轮廓检测和多边形拟合对识别结果进行二次修正,最终得到精确的构件位置信息。在本申请实施例中,将识别结果通过轮廓检测和多边形拟合方法进一步回归识别框,提高构件坐标的精度。
基于同一构思,本申请实施例中提供了一种构建训练集的装置,该装置的具体实施可参见方法实施例部分的描述,重复之处不再赘述,如图3所示,该装置主要包括:
判定模块301,用于判定第一建筑图纸中存在目标构件;
增强模块302,用于对第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;
切分模块303,用于对于图纸集合的每一张图纸,在图纸上选取至少两个不同的起始位置,并按照起始位置分别对图纸进行切分,得到多个子图;
获取模块304,用于从多个子图中,获取包含目标构件的目标子图;其中,目标子图用于构建目标构件的训练集。
在一个具体实施例中,判定模块301,用于获取目标类别标签;获取第一建筑图纸的第一类别标注文件;确定第一类别标注文件中存在目标类别标签;将目标类别标签对应的构件作为目标构件。
在一个具体实施例中,判定模块301,具体用于获取至少一张建筑图纸的第二类别标注文件;其中,至少一张建筑图纸中包括第一建筑图纸;统计第二类别标注文件中,每一种构件的类别标签的总次数;确定总次数低于预设值的类别标签,作为目标类别标签。
在一个具体实施例中,切分模块303,用于按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的起始位置分别对所述图纸进行切分,其中,所述预设第一重叠比例用于表征在利用所述第一滑动窗口切分第一建筑图纸的过程中,所述第一滑动窗口选中的相邻区域存在的重叠区域的大小;或者,获取所述图纸集合的每一张图纸的类别标注文件;从所述类别标注文件中,获取所述目标构件的坐标信息;在所述坐标信息的预设范围内,按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的所述起始位置分别对所述图纸进行切分。
在一个具体实施例中,获取模块304,用于获取图纸集合的每一张图纸的类别标注文件;对于每一张图纸,从类别标注文件中,获取目标构件的坐标信息;根据坐标信息,确定目标构件落入子图中,将子图作为所述目标子图;或者,利用目标检测方法确定子图中包含目标构件,将子图作为目标子图。
基于同一构思,本申请实施例中还提供了一种电子设备,如图4所示,该电子设备主要包括:处理器401、存储器402和通信总线403,其中,处理器401和存储器402通过通信总线403完成相互间的通信。其中,存储器402中存储有可被处理器401执行的程序,处理器401执行存储器402中存储的程序,实现如下步骤:
判定第一建筑图纸中存在目标构件;
对第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;
对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;
从多个子图中,获取包含目标构件的目标子图;其中,目标子图用于构建目标构件的训练集;
或者,
获取待识别的第二建筑图纸的图像;
对图像进行切分,得到多个待识别子图,并记录从图像转换到每个待识别子图的各自的转换矩阵;
将各个待识别子图输入到识别模型中,得到每个构件的至少一个初步识别框;其中,识别模型预先利用目标构件的训练集训练而成,目标构件的训练集的获取方法包括:判定第一建筑图纸中存在目标构件;对第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;从多个子图中,获取包含目标构件的目标子图;其中,目标子图用于构建目标构件的训练集;
根据转换矩阵,将每个构件的初步识别框转换到图像中;
对于每个构件,利用非极大值抑制算法去掉图像中冗余的初步识别框,获取构件的识别结果。
上述电子设备中提到的通信总线403可以是外设部件互连标准(PeripheralComponent Interconnect,简称PCI)总线或扩展工业标准结构(Extended IndustryStandard Architecture,简称EISA)总线等。该通信总线403可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器402可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器401的存储装置。
上述的处理器401可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,当该计算机程序在计算机上运行时,使得计算机执行上述实施例中所描述构建训练集的方法或构件的识别方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、微波等)方式向另外一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如软盘、硬盘、磁带等)、光介质(例如DVD)或者半导体介质(例如固态硬盘)等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种构建训练集的方法,其特征在于,包括:
判定第一建筑图纸中存在目标构件;
对所述第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;
对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;
从多个所述子图中,获取包含所述目标构件的目标子图;其中,所述目标子图用于构建所述目标构件的训练集;
所述按照所述起始位置分别对所述图纸进行切分,包括:
按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的起始位置分别对所述图纸进行切分,其中,所述预设第一重叠比例用于表征在利用所述第一滑动窗口切分第一建筑图纸的过程中,所述第一滑动窗口选中的相邻区域存在的重叠区域的大小;
或者,
获取所述图纸集合的每一张图纸的类别标注文件;从所述类别标注文件中,获取所述目标构件的坐标信息;在所述坐标信息的预设范围内,按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的所述起始位置分别对所述图纸进行切分;
所述从多个所述子图中,获取包含所述目标构件的目标子图,包括:
获取所述图纸集合的每一张图纸的类别标注文件;对于每一张图纸,从所述类别标注文件中,获取所述目标构件的坐标信息;根据所述坐标信息,确定所述目标构件落入所述子图中,将所述子图作为所述目标子图;
或者,
利用目标检测方法确定所述子图中包含所述目标构件,将所述子图作为所述目标子图。
2.根据权利要求1所述的构建训练集的方法,其特征在于,所述判定第一建筑图纸中存在目标构件,包括:
获取目标类别标签;
获取所述第一建筑图纸的第一类别标注文件;
确定所述第一类别标注文件中存在所述目标类别标签;
将所述目标类别标签对应的构件作为所述目标构件。
3.根据权利要求2所述的构建训练集的方法,其特征在于,所述获取目标类别标签,包括:
获取至少一张建筑图纸的第二类别标注文件;其中,所述至少一张建筑图纸中包括所述第一建筑图纸;
统计所述第二类别标注文件中,每一种构件的类别标签的总次数;
确定所述总次数低于预设值的类别标签,作为所述目标类别标签。
4.一种构件的识别方法,其特征在于,包括:
获取待识别的第二建筑图纸的图像;
对所述图像进行切分,得到多个待识别子图,并记录从所述图像转换到每个待识别子图的各自的转换矩阵;
将各个所述待识别子图输入到识别模型中,得到每个所述构件的至少一个初步识别框;其中,所述识别模型预先利用目标构件的训练集训练而成,所述目标构件的训练集的获取方法包括:判定第一建筑图纸中存在目标构件;对所述第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;从多个所述子图中,获取包含所述目标构件的目标子图;其中,所述目标子图用于构建所述目标构件的训练集;
其中,所述按照所述起始位置分别对所述图纸进行切分,包括:按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的起始位置分别对所述图纸进行切分,其中,所述预设第一重叠比例用于表征在利用所述第一滑动窗口切分第一建筑图纸的过程中,所述第一滑动窗口选中的相邻区域存在的重叠区域的大小;或者,获取所述图纸集合的每一张图纸的类别标注文件;从所述类别标注文件中,获取所述目标构件的坐标信息;在所述坐标信息的预设范围内,按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的所述起始位置分别对所述图纸进行切分;
其中,所述从多个所述子图中,获取包含所述目标构件的目标子图,包括:获取所述图纸集合的每一张图纸的类别标注文件;对于每一张图纸,从所述类别标注文件中,获取所述目标构件的坐标信息;根据所述坐标信息,确定所述目标构件落入所述子图中,将所述子图作为所述目标子图;或者,利用目标检测方法确定所述子图中包含所述目标构件,将所述子图作为所述目标子图;
根据所述转换矩阵,将每个所述构件的初步识别框转换到所述图像中;
对于每个所述构件,利用非极大值抑制算法去掉所述图像中冗余的初步识别框,获取所述构件的识别结果。
5.根据权利要求4所述的构件的识别方法,其特征在于,所述利用非极大值抑制算法去掉所述图像中冗余的初步识别框,包括:
获取预设交并比阈值;
选取各个初步识别框中,置信度最高的初步识别框作为基准识别框,其余初步识别框作为备用的识别框;
对于每个所述备用的识别框,计算所述基准识别框与所述备用的识别框的中心点的欧式距离,以及获取所述基准识别框和所述备用的识别框的最小外接矩形的对角线长度;计算所述欧式距离和所述对角线长度的比值;利用所述预设交并阈值比减去所述比值,得到交并比阈值;
去掉小于预设阈值的交并比阈值所对应的所述备用的识别框。
6.一种构建训练集的装置,其特征在于,包括:
判定模块,用于判定第一建筑图纸中存在目标构件;
增强模块,用于对所述第一建筑图纸进行数据增强,得到第一建筑图纸的图纸集合;
切分模块,用于对于所述图纸集合的每一张图纸,在所述图纸上选取至少两个不同的起始位置,并按照所述起始位置分别对所述图纸进行切分,得到多个子图;
获取模块,用于从多个所述子图中,获取包含所述目标构件的目标子图;其中,所述目标子图用于构建所述目标构件的训练集;
所述切分模块,用于按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的起始位置分别对所述图纸进行切分,其中,所述预设第一重叠比例用于表征在利用所述第一滑动窗口切分第一建筑图纸的过程中,所述第一滑动窗口选中的相邻区域存在的重叠区域的大小;或者,获取所述图纸集合的每一张图纸的类别标注文件;从所述类别标注文件中,获取所述目标构件的坐标信息;在所述坐标信息的预设范围内,按照预设第一尺寸的第一滑动窗口和预设第一重叠比例,以不同的所述起始位置分别对所述图纸进行切分;
所述获取模块,用于获取所述图纸集合的每一张图纸的类别标注文件;对于每一张图纸,从所述类别标注文件中,获取所述目标构件的坐标信息;根据所述坐标信息,确定所述目标构件落入所述子图中,将所述子图作为所述目标子图;或者,利用目标检测方法确定所述子图中包含所述目标构件,将所述子图作为所述目标子图。
7.一种电子设备,其特征在于,包括:处理器、存储器和通信总线,其中,处理器和存储器通过通信总线完成相互间的通信;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述存储器中所存储的程序,实现权利要求1~3任意一项所述的构建训练集的方法或者权利要求4或5所述的构件的识别方法。
8.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~3任意一项所述的构建训练集的方法或者权利要求4或5所述的构件的识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110859184.7A CN113657202B (zh) | 2021-07-28 | 2021-07-28 | 构件识别方法、构建训练集方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110859184.7A CN113657202B (zh) | 2021-07-28 | 2021-07-28 | 构件识别方法、构建训练集方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113657202A CN113657202A (zh) | 2021-11-16 |
CN113657202B true CN113657202B (zh) | 2022-10-11 |
Family
ID=78490803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110859184.7A Active CN113657202B (zh) | 2021-07-28 | 2021-07-28 | 构件识别方法、构建训练集方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113657202B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114240737A (zh) * | 2021-12-14 | 2022-03-25 | 北京构力科技有限公司 | 用于从图纸生成数字模型的方法、装置、设备和介质 |
CN114494764A (zh) * | 2021-12-21 | 2022-05-13 | 上海品览数据科技有限公司 | 一种建筑专业平面楼梯大样图中楼梯构件的识别方法 |
CN114713462B (zh) * | 2022-05-10 | 2023-01-31 | 深圳市智力昌智能设备有限公司 | 一种基于工业互联网的点胶机的控制*** |
CN114973299B (zh) * | 2022-08-01 | 2023-01-10 | 万翼科技有限公司 | 建筑图纸构件识别方法、装置、电子设备及存储介质 |
CN114973300B (zh) * | 2022-08-02 | 2022-10-11 | 万翼科技有限公司 | 一种构件类别识别方法、装置、电子设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111062426A (zh) * | 2019-12-11 | 2020-04-24 | 北京金山云网络技术有限公司 | 一种建立训练集的方法、装置、电子设备以及介质 |
CN111242217A (zh) * | 2020-01-13 | 2020-06-05 | 支付宝实验室(新加坡)有限公司 | 图像识别模型的训练方法、装置、电子设备及存储介质 |
CN111476138B (zh) * | 2020-03-31 | 2023-08-18 | 万翼科技有限公司 | 建筑图纸构件识别模型构建方法、识别方法及相关设备 |
CN111782584B (zh) * | 2020-06-15 | 2023-06-23 | 万翼科技有限公司 | 建筑图纸预处理***、方法、电子设备及存储介质 |
CN112329771B (zh) * | 2020-11-02 | 2024-05-14 | 元准智能科技(苏州)有限公司 | 一种基于深度学习的建筑材料样本识别方法 |
CN113011350A (zh) * | 2021-03-24 | 2021-06-22 | 深圳前海微众银行股份有限公司 | 一种地域图像的识别处理方法、装置及电子设备 |
-
2021
- 2021-07-28 CN CN202110859184.7A patent/CN113657202B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113657202A (zh) | 2021-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113657202B (zh) | 构件识别方法、构建训练集方法、装置、设备及存储介质 | |
CN109784391B (zh) | 基于多模型的样本标注方法及装置 | |
CN108038474B (zh) | 人脸检测方法、卷积神经网络参数的训练方法、装置及介质 | |
WO2018108129A1 (zh) | 用于识别物体类别的方法及装置、电子设备 | |
US11455805B2 (en) | Method and apparatus for detecting parking space usage condition, electronic device, and storage medium | |
TW202013248A (zh) | 車輛損壞識別方法及裝置 | |
CN112001406B (zh) | 一种文本区域检测方法及装置 | |
CN111723815B (zh) | 模型训练方法、图像处理方法、装置、计算机***和介质 | |
CN111985458B (zh) | 一种检测多目标的方法、电子设备及存储介质 | |
CN110889437B (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN114330588A (zh) | 一种图片分类方法、图片分类模型训练方法及相关装置 | |
CN111353580A (zh) | 目标检测网络的训练方法、电子设备及存储介质 | |
CN114972268A (zh) | 一种缺陷图像的生成方法、装置、电子设备及存储介质 | |
CN114973300B (zh) | 一种构件类别识别方法、装置、电子设备及存储介质 | |
CN112749293A (zh) | 一种图像分类方法、装置及存储介质 | |
CN110956621B (zh) | 一种基于神经网络的组织癌变的检测方法及*** | |
CN111640076B (zh) | 一种图像补全方法、装置及电子设备 | |
CN114330542A (zh) | 一种基于目标检测的样本挖掘方法、装置及存储介质 | |
CN114722917A (zh) | 弱标签数据集的标签传播方法 | |
CN114821617A (zh) | 门窗洞的识别方法、装置、设备及可读存储介质 | |
CN114495108A (zh) | 字符检测方法、装置、电子设备及可读介质 | |
CN115424250A (zh) | 一种车牌识别方法及装置 | |
CN112766387A (zh) | 一种训练数据的纠错方法、装置、设备及存储介质 | |
CN112183714A (zh) | 基于人工神经网络的自动化数据切片 | |
CN114444169A (zh) | 建筑轮廓的识别方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |