CN115100673A - 一种电子图纸的识别方法、装置、电子设备及存储介质 - Google Patents
一种电子图纸的识别方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115100673A CN115100673A CN202210848426.7A CN202210848426A CN115100673A CN 115100673 A CN115100673 A CN 115100673A CN 202210848426 A CN202210848426 A CN 202210848426A CN 115100673 A CN115100673 A CN 115100673A
- Authority
- CN
- China
- Prior art keywords
- cell
- text
- picture
- signature column
- lines
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/42—Document-oriented image-based pattern recognition based on the type of document
- G06V30/422—Technical drawings; Geographical maps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19173—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/413—Classification of content, e.g. text, photographs or tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/414—Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种电子图纸的识别方法、装置、电子设备及存储介质,根据该签名栏对应的各第一文本与该签名栏内包括的各单元格之间的位置关系,确定出该签名栏内的每个单元格对应的至少一个第一文本;针对每个单元格,根据该单元格对应的至少一个第一文本,生成该单元格对应的第二文本;针对每个签名栏,将该签名栏中的每个单元格对应的第二文本分别输入目标分类模型,以输出针对每个单元格对应的第二文本的分类结果根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。能够更准确的识别出电子图纸中每个图框所对应的图名和图号。
Description
技术领域
本申请涉及电子图纸识别技术领域,具体而言,涉及一种电子图纸的识别方法、装置、电子设备及存储介质。
背景技术
在现有技术中,通常使用预设规则匹配的方法基于电子图纸中图框的右下角区域的单行文本中匹配满足预设规则的图名或图号。若图框右下角的区域没有与现有先验知识中的图名、图号命名规则一致的文本则会出现识别不到的情况。同时一套图中的签名框基本都是用的一个模板,其中的图名、图号会存在多个单行文本组成的情况,当使用规则查找时,对于多个单行文本组成的图名图号往往也匹配不到。
发明内容
有鉴于此,本申请的目的在于提供一种电子图纸的识别方法、装置、电子设备及存储介质,能够更准确的识别出电子图纸中每个图框所对应的图名和图号。
第一方面,本申请提供了一种电子图纸的识别方法,电子图纸中绘制有至少一个图框,每个图框内包括构件图和签名栏,方法包括:响应图纸识别指令,获取从电子图纸中识别出的每个图框对应的签名栏的位置信息;针对每个签名栏,从电子图纸中提取出与该签名栏的位置信息对应的区域内的所有线条和所有第一文本;针对每个签名栏,根据该签名栏对应的所有线条,确定出该签名栏内包括的所有单元格;针对每个签名栏,根据该签名栏对应的各第一文本与该签名栏内包括的各单元格之间的位置关系,确定出该签名栏内的每个单元格对应的至少一个第一文本;针对每个单元格,根据该单元格对应的至少一个第一文本,生成该单元格对应的第二文本;针对每个签名栏,将该签名栏中的每个单元格对应的第二文本分别输入目标分类模型,以输出针对每个单元格对应的第二文本的分类结果;针对每个签名栏,根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。
优选的,通过以下方式确定出每个签名栏内包括的所有单元格:从该签名栏所在区域内的所有线条中,确定出多个横向线条和多个纵向线条;按照指定线条的排布顺序,对多个指定线条组进行逐个遍历,以分别获得每个指定线条组对应的至少一个顶点坐标组,将每个顶点坐标组内的各顶点坐标所形成的矩形区域确定为一单元格,指定线条为横向线条或者纵向线条,每个指定线条组为由在排布顺序下任意相邻的两个指定线条所形成的线条组;其中,通过以下方式确定每个指定线条组对应的每个顶点坐标组:针对每个目标线条组分别执行如下处理:根据目标线条组内的两个指定线条的坐标以及指定线条组内的两个线条的坐标,按照预设规则生成一顶点坐标组,每个目标线条组为由在目标线条的排布顺序下任意相邻的两个目标线条所形成的线条组,目标线条为横向线条或者纵向线条,目标线条与指定线条不同,目标线条组中的每个目标线条分别与指定线条组中的各指定线条相交。
优选的,通过以下方式确定出每个单元格对应的至少一个第一文本:确定电子图纸中该签名栏所在区域内的每个第一文本的位置坐标,位置坐标用于指示第一文本的中心点在电子图纸中的位置;针对每个单元格,将该单元格对应的矩形区域,确定为该单元格的检测区域;针对每个第一文本,确定该文本的位置坐标所落入的目标检测区域,将该第一文本确定为目标检测区域对应的单元格对应的一个第一文本。
优选的,通过以下方式生成每个单元格对应的第二文本:确定该单元格对应的第一文本的数量,若该单元格对应一个第一文本,则将第一文本作为该单元格的第二文本,若该单元格对应多个第一文本,则将该单元格对应的多个第一文本进行拼接,将拼接后的多个第一文本作为该单元格对应的第二文本;其中,通过以下方式对每个单元格对应的多个第一文本拼接:根据该单元格对应的每个第一文本的位置坐标,确定每个第一文本的排列顺序;按照确定出的排列顺序,将该单元格对应的所有第一文本依次连接。
优选的,通过以下方式从电子图纸中识别出每个图框对应的签名栏的位置信息:从电子图纸提取出所有线条和第一文本,生成第一图片;将第一图片输入预先训练好的图框检测模型,以输出电子图纸中的所有图框的位置信息;针对每个图框,从电子图纸中提取出与该图框的位置信息对应的区域内的所有线条和第一文本,生成该图框对应的第二图片;针对每个图框,将该图框对应的第二图片输入预先训练好的签名栏检测模型,以输出该图框对应的签名栏的位置信息。
优选的,通过以下方式生成第一图片:根据电子图纸中所有线条和第一文本的位置坐标,确定出目标矩形框的位置坐标,目标矩形框为电子图纸中所有第一文本和线条的最小包围框;根据目标矩形框的位置坐标,确定目标矩形框的宽度值和高度值,并分别确定目标矩形框的宽度值和高度值是否大于预设值;若目标矩形框的宽度值和高度值中的至少一个大于预设值,则将目标矩形框的宽度值和高度值中大于预设值的一个或两个设置为预设值,并将所有线条和第一文本生成预设大小的第一图片,预设大小为目标矩形框设置后的宽度值和高度值的乘积;若否,则根据目标矩形框的宽度值、高度值以及预设缩放因子的乘积,确定目标像素大小,将所有线条和第一文本生成目标像素大小的第一图片。
优选的,目标分类模型的分类结果用于指示第二文本的类别,类别包括图名和图号,通过以下方式确定出每个签名栏中所标记的图名和图号:将该签名栏内包括的所有单元格所对应的第二文本中分类结果指示为图号的第二文本,作为该签名栏中所标记的图号;将该签名栏内包括的所有单元格所对应的第二文本中分类结果指示为图名的第二文本,作为该签名栏中所标记的图名。
第二方面,本申请提供了一种电子图纸的识别装置,电子图纸中绘制有至少一个图框,每个图框内包括构件图和签名栏,装置包括:
获取模块,用于响应图纸识别指令,获取从电子图纸中识别出的每个图框对应的签名栏的位置信息;
提取模块,用于针对每个签名栏,从电子图纸中提取出与该签名栏的位置信息对应的区域内的所有线条和所有第一文本;
单元格检测模块,用于针对每个签名栏,根据该签名栏对应的所有线条,确定出该签名栏内包括的所有单元格;
匹配模块,用于针对每个签名栏,根据该签名栏对应的各第一文本与该签名栏内包括的各单元格之间的位置关系,确定出该签名栏内的每个单元格对应的至少一个第一文本;
拼接模块,用于针对每个单元格,根据该单元格对应的至少一个第一文本,生成该单元格对应的第二文本;
分类模块,用于针对每个签名栏,将该签名栏中的每个单元格对应的第二文本分别输入目标分类模型,以输出针对每个单元格对应的第二文本的分类结果;
确定模块,用于针对每个签名栏,根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。
第三方面,本申请还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的电子图纸的识别方法的步骤。
第四方面,本申请还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如上述的电子图纸的识别方法的步骤。
本申请提供的一种电子图纸的识别方法、装置、电子设备及存储介质,响应图纸识别指令,获取从电子图纸中识别出的每个图框对应的签名栏的位置信息。针对每个签名栏,从电子图纸中提取出与该签名栏的位置信息对应的区域内的所有线条和所有第一文本;针对每个签名栏,根据该签名栏对应的所有线条,确定出该签名栏内包括的所有单元格。针对每个签名栏,根据该签名栏对应的各第一文本与该签名栏内包括的各单元格之间的位置关系,确定出该签名栏内的每个单元格对应的至少一个第一文本。针对每个单元格,根据该单元格对应的至少一个第一文本,生成该单元格对应的第二文本。针对每个签名栏,将该签名栏中的每个单元格对应的第二文本分别输入目标分类模型,以输出针对每个单元格对应的第二文本的分类结果。针对每个签名栏,根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。通过电子图纸中识别出的签名栏的位置信息,提取出每个签名栏中的线条和第一文本,根据这些线条和第一文本确定出签名栏的所有单元格,以及每个单元格内对应的第一文本,将每个单元格内的第一文本进行拼接,生成每个单元格对应的第二文本,根据第二文本进行分类,从而得到每个图框的图名和图号,即为该图框内构件的图名和图号。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例所提供的一种电子图纸的识别方法的流程图;
图2为本申请实施例所提供的一种识别签名栏的步骤的流程图;
图3为本申请实施例所提供的一种生成第一图片的步骤的流程图;
图4为本申请实施例所提供的一种确定每个单元格对应的第一文本的步骤的流程图;
图5为本申请实施例所提供的一种电子图纸的识别装置的结构示意图;
图6为本申请实施例所提供的另一种电子图纸的识别装置的结构示意图;
图7为本申请实施例所提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。
首先,对本申请可适用的应用场景进行介绍。本申请可应用于电子图像识别。具体可以应用在一种基于电子图纸进行3D建模的系统中,通过对电子图纸中每个图框的图名和图号进行准确的识别,可以进一步的对电子图纸中每个图框内的构件进行类型或属性的分析,以更好地进行3D建模。
在现有技术中,通常使用预设规则匹配的方法基于电子图纸中图框的右下角区域的单行文本中匹配满足预设规则的图名或图号。若图框右下角的区域没有与现有先验知识中的图名、图号命名规则一致的文本则会出现识别不到的情况。同时一套图中的签名框基本都是用的一个模板,其中的图名、图号会存在多个单行文本组成的情况,当使用规则查找时,对于多个单行文本组成的图名图号往往也匹配不到。
基于此,本申请实施例提供了一种电子图纸的识别方法、装置、电子设备及存储介质。
这里的电子图纸为DWG格式的建筑图纸,电子图纸中绘制有建筑工程平面图,其中包括多个图框,每个图框内绘制有至少一个构件以及签名栏。签名栏中标注有图名、图号、构件尺寸等信息。这些都是根据常规的建筑图纸绘制规范所绘制的。
请参阅图1,图1为本申请实施例所提供的一种电子图纸的识别方法的流程图。所如图1中所示,本申请实施例提供的电子图纸的识别方法,包括:
S101、响应图纸识别指令,获取从电子图纸中识别出的每个图框对应的签名栏的位置信息。
这里的图纸识别指令可以用于指示对每个图框所对应的图名和图号进行识别。也可以是用于指示对获取到的电子图纸进行建模的指令。可以理解的是,在从签名栏中提取出图名图号之前,需要从电子图纸中识别出所有图框和图框对应的签名栏。
请参阅图2,图2为本申请实施例所提供的一种识别签名栏的步骤的流程图。具体的,通过以下方式从电子图纸中识别出每个图框对应的签名栏的位置信息:
S201、从电子图纸提取出所有线条和第一文本,生成第一图片。
在步骤S201中,先通过C++底层库读取DWG图纸中的所有图素信息,其中至少包含电子图纸中的每个线条的线条坐标(包括起始坐标和结束坐标)、第一文本以及每个第一文本的文本坐标(这里指的是第一文本的中心点的坐标),再将线条及第一文本使用python3.7版本对应的opencv及pillow库进行对DWG中相关图像进行绘画,生成为JPG格式的第一图片。同时还记录DWG到JPG的坐标映射表。这里的第一文本即电子图纸中的单行文本。
请参阅图3,图3为本申请实施例所提供的一种生成第一图片的步骤的流程图。具体的,通过以下方式生成第一图片:
S2010、根据电子图纸中所有线条和第一文本的位置坐标,确定出目标矩形框的位置坐标,目标矩形框为电子图纸中所有第一文本和线条的最小包围框。
在步骤S2010中,需要先确定当前电子图纸中所有第一文本和线条的最小包围框(即目标矩形框)的大小。这里的包围框为矩形框。
S2012、根据目标矩形框的位置坐标,确定目标矩形框的宽度值和高度值,并分别确定目标矩形框的宽度值和高度值是否大于预设值。
接着以确定出的最小包围框的宽度值和高度值作为所有生成的第一图片的宽度值和高度值,但第一图片的最大为20000×20000(像素)。因此需要确定最小包围框的宽度值和高度值是否大于预设值20000。
S2014、若目标矩形框的宽度值和高度值中的至少一个大于预设值,则将目标矩形框的宽度值和高度值中大于预设值的一个或两个设置为预设值,并将所有线条和第一文本生成预设大小的第一图片,预设大小为目标矩形框设置后的宽度值和高度值的乘积;
可以理解的是,若最小包围框的大小为30000×18000,则对应生成的第一图片的大小则为20000×18000,若最小包围框的大小为30000×25000,则对应生成的第一图片的大小则为20000×20000。
S2016、若否,则根据目标矩形框的宽度值、高度值以及预设缩放因子的乘积,确定目标像素大小,将所有线条和第一文本生成目标像素大小的第一图片。
这里预设的缩放因子为2.5%。即需要将最小包围框缩放40倍。若最小包围框的大小为16000×12000,则对应生成的第一图片的大小则为400×300。
S202、将第一图片输入预先训练好的图框检测模型,以输出电子图纸中的所有图框的位置信息。
这里的图框检测模型采用的是yolov5算法中的M模型所训练生成的。训练时可以先获取基于不同电子图纸所生成的第一图片,对第一图片进行工人标注,标注其中的图框区域。通过标注后的JPG格式的第一图片进行训练,以生成图框检测模型。图框检查模型可以输出第一图片中的每个图框的位置信息。
由于图框的识别计算场景简单,因此采用网络层数低、复杂度低的M模型进行识别,可以提高识别的速度。
S203、针对每个图框,从电子图纸中提取出与该图框的位置信息对应的区域内的所有线条和第一文本,生成该图框对应的第二图片。
确定出每个图框的位置信息后,可以根据该图框的位置信息以及DWG到JPG的坐标映射表,筛选出该图框内的所有线条和第一文本。每个图框内的线条和第一文本再转换生成为JPG格式的第二图片。这里第二图片的生成原理与第一图片的生成原理相同。
S204、针对每个图框,将该图框对应的第二图片输入预先训练好的签名栏检测模型,以输出该图框对应的签名栏的位置信息。
这里的签名栏检测模型采用的是yolov5算法中的L模型所训练生成的。这里签名栏检测模型的训练方法与图框检测模块的训练方法原理相同。签名栏检测模型的输入为所有图框对应的第二图片,输出为每个图框中签名栏的位置信息。这里的位置信息指示的是签名栏在第二图片中的位置。根据第二图片与电子图纸之间的DWG到JPG的坐标映射表,可以转换出签名栏在电子图纸中的位置信息。这里的签名栏的位置信息用于指示签名栏的所在区域,即是一个矩形区域。
可以理解的是,现有技术中通常采用线条坐标计算图框区域,若由于绘制不规范而存在线条未闭合的情况,则会影响图框的识别结果。而对签名栏的图框还要在识别出图框的基础上,按照先验知识从图框的右下角中提取签名栏。但绘制不规范的图纸中,签名栏可能不绘制在右下角,此时签名栏的识别准确性也会受影响。而本申请的实施例中,通过将电子图纸转换为图片再进行目标检测,可以避免上述问题,提高了识别的准确率。
而相对于一次性识别图框和签名栏,本申请的实施例中使用级联方法,在识别图框的基础上再进行识别签名栏会使得识别签名栏的效果大大提升,其原因为:DWG图纸一般都是较大的图纸,其中包含的图块有很多,转换为JPG之后签名栏相对于整个区域来说特征不明显,其目标范围过小,会导致检测不出的情况发生,使用级联方法则可以避免签名栏区域过小的情况。
S102、针对每个签名栏,从电子图纸中提取出与该签名栏的位置信息对应的区域内的所有线条和所有第一文本。
在步骤S102中,需要提取出每个签名栏内的所有线条和第一文本。
S103、针对每个签名栏,根据该签名栏对应的所有线条,确定出该签名栏内包括的所有单元格。
具体的,通过以下方式确定出每个签名栏内包括的所有单元格:
从该签名栏所在区域内的所有线条中,确定出多个横向线条和多个纵向线条。按照指定线条的排布顺序,对多个指定线条组进行逐个遍历,以分别获得每个指定线条组对应的至少一个顶点坐标组,将每个顶点坐标组内的各顶点坐标所形成的矩形区域确定为一单元格,指定线条为横向线条或者纵向线条,每个指定线条组为由在排布顺序下任意相邻的两个指定线条所形成的线条组。
其中,通过以下方式确定每个指定线条组对应的每个顶点坐标组:
针对每个目标线条组分别执行如下处理:根据目标线条组内的两个指定线条的坐标以及指定线条组内的两个线条的坐标,按照预设规则生成一顶点坐标组,每个目标线条组为由在目标线条的排布顺序下任意相邻的两个目标线条所形成的线条组,目标线条为横向线条或者纵向线条,目标线条与指定线条不同,目标线条组中的每个目标线条分别与指定线条组中的各指定线条相交。
在该步骤中,首先从签名栏对应的所有线条中确定出横向线条和纵向线条。以指定线条为纵向线条为例,按照每个纵向线条的横坐标从大到小的顺序,相邻的两个纵向线条即为一个指定线条组。再按照横向线条的纵坐标从大到小的顺序,确定与这两个指定线条都相交的两个横向线条即为目标线条。目标线条和指定线条之间的交点即为一个单元格的四个顶点。
在该步骤中可以确定出每个单元格的所在区域。
S104、针对每个签名栏,根据该签名栏对应的各第一文本与该签名栏内包括的各单元格之间的位置关系,确定出该签名栏内的每个单元格对应的至少一个第一文本。
在步骤S104中,需要确定出每个单元格内的所有第一文本。
请参阅图4,图4为本申请实施例所提供的一种确定每个单元格对应的第一文本的步骤的流程图。具体的,通过以下方式确定出每个单元格对应的至少一个第一文本:
S1040、确定电子图纸中该签名栏所在区域内的每个第一文本的位置坐标,位置坐标用于指示第一文本的中心点在电子图纸中的位置;
S1042、针对每个单元格,将该单元格对应的矩形区域,确定为该单元格的检测区域;
S1044、针对每个第一文本,确定该文本的位置坐标所落入的目标检测区域,将该第一文本确定为目标检测区域对应的单元格对应的一个第一文本。
在该步骤中,针对每个第一文本,若该第一文本的位置坐标在某个单元格的所在区域内,则确定该第一文本为这个单元格对应的一个第一文本。
S105、针对每个单元格,根据该单元格对应的至少一个第一文本,生成该单元格对应的第二文本。
具体的,通过以下方式生成每个单元格对应的第二文本:
确定该单元格对应的第一文本的数量,若该单元格对应一个第一文本,则将第一文本作为该单元格的第二文本,若该单元格对应多个第一文本,则将该单元格对应的多个第一文本进行拼接,将拼接后的多个第一文本作为该单元格对应的第二文本。
其中,通过以下方式对每个单元格对应的多个第一文本拼接:
根据该单元格对应的每个第一文本的位置坐标,确定每个第一文本的排列顺序。按照确定出的排列顺序,将该单元格对应的所有第一文本依次连接。
可以理解的是,若一个单元格对应多个第一文本,则需要将多个第一文本拼接起来。可以先按照纵坐标确定每一行的第一文本,每行第一文本中按照横坐标进行排列。
由于一套图中的签名框基本都是用的一个模板,其中的图名、图号会存在多个单行文本组成的情况,因此将第一文本拼接为第二文本,可以获取到单元格中完整的标注信息。
S106、针对每个签名栏,将该签名栏中的每个单元格对应的第二文本分别输入目标分类模型,以输出针对每个单元格对应的第二文本的分类结果。
这里的目标分类模型是采用Albert算法的深度学习模型训练生成的。这里的目标分类模型输入的是第二文本,输出的是每个第二文本的分类结果。这里的分类结果用于指示每个第二文本的类别,分别包括图名、图号和其他。
相较于Bert算法来说,采用Albert算法的目标分类模型更加轻量级,占用内存更小,更容易移植。
S107、针对每个签名栏,根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。
目标分类模型的分类结果用于指示第二文本的类别,类别包括图名和图号。具体的,通过以下方式确定出每个签名栏中所标记的图名和图号:
将该签名栏内包括的所有单元格所对应的第二文本中分类结果指示为图号的第二文本,作为该签名栏中所标记的图号。将该签名栏内包括的所有单元格所对应的第二文本中分类结果指示为图名的第二文本,作为该签名栏中所标记的图名。
根据目标分类模型的分类结果,从每个图框的所有第二文本中确定出该图框内的构件的图名和图号,进而可以对构件进行分析,以实现电子图纸的建模。
本申请实施例提供的电子图纸的识别方法,针对每个签名栏,根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。通过电子图纸中识别出的签名栏的位置信息,提取出每个签名栏中的线条和第一文本,根据这些线条和第一文本确定出签名栏的所有单元格,以及每个单元格内对应的第一文本,将每个单元格内的第一文本进行拼接,生成每个单元格对应的第二文本,根据第二文本进行分类,从而得到每个图框的图名和图号,即为该图框内构件的图名和图号。
基于同一发明构思,本申请实施例中还提供了与电子图纸的识别方法对应的电子图纸的识别装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述电子图纸的识别方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
请参阅图5和图6,图5为本申请实施例所提供的一种电子图纸的识别装置的结构示意图,图6为本申请实施例所提供的另一种电子图纸的识别装置的结构示意图。如图5中所示,识别装置500包括:
获取模块510,用于响应图纸识别指令,获取从电子图纸中识别出的每个图框对应的签名栏的位置信息;
提取模块520,用于针对每个签名栏,从电子图纸中提取出与该签名栏的位置信息对应的区域内的所有线条和所有第一文本;
单元格检测模块530,用于针对每个签名栏,根据该签名栏对应的所有线条,确定出该签名栏内包括的所有单元格;
匹配模块540,用于针对每个签名栏,根据该签名栏对应的各第一文本与该签名栏内包括的各单元格之间的位置关系,确定出该签名栏内的每个单元格对应的至少一个第一文本;
拼接模块550,用于针对每个单元格,根据该单元格对应的至少一个第一文本,生成该单元格对应的第二文本;
分类模块560,用于针对每个签名栏,将该签名栏中的每个单元格对应的第二文本分别输入目标分类模型,以输出针对每个单元格对应的第二文本的分类结果;
确定模块570,用于针对每个签名栏,根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。
在一优选实施例中,单元格检测模块530用于通过以下方式确定出每个签名栏内包括的所有单元格:从该签名栏所在区域内的所有线条中,确定出多个横向线条和多个纵向线条;按照指定线条的排布顺序,对多个指定线条组进行逐个遍历,以分别获得每个指定线条组对应的至少一个顶点坐标组,将每个顶点坐标组内的各顶点坐标所形成的矩形区域确定为一单元格,指定线条为横向线条或者纵向线条,每个指定线条组为由在排布顺序下任意相邻的两个指定线条所形成的线条组;其中,通过以下方式确定每个指定线条组对应的每个顶点坐标组:针对每个目标线条组分别执行如下处理:根据目标线条组内的两个指定线条的坐标以及指定线条组内的两个线条的坐标,按照预设规则生成一顶点坐标组,每个目标线条组为由在目标线条的排布顺序下任意相邻的两个目标线条所形成的线条组,目标线条为横向线条或者纵向线条,目标线条与指定线条不同,目标线条组中的每个目标线条分别与指定线条组中的各指定线条相交。
在一优选实施例中,匹配模块540用于通过以下方式确定出每个单元格对应的至少一个第一文本:确定电子图纸中该签名栏所在区域内的每个第一文本的位置坐标,位置坐标用于指示第一文本的中心点在电子图纸中的位置;针对每个单元格,将该单元格对应的矩形区域,确定为该单元格的检测区域;针对每个第一文本,确定该文本的位置坐标所落入的目标检测区域,将该第一文本确定为目标检测区域对应的单元格对应的一个第一文本。
在一优选实施例中,拼接模块550用于通过以下方式生成每个单元格对应的第二文本:确定该单元格对应的第一文本的数量,若该单元格对应一个第一文本,则将第一文本作为该单元格的第二文本,若该单元格对应多个第一文本,则将该单元格对应的多个第一文本进行拼接,将拼接后的多个第一文本作为该单元格对应的第二文本;其中,通过以下方式对每个单元格对应的多个第一文本拼接:根据该单元格对应的每个第一文本的位置坐标,确定每个第一文本的排列顺序;按照确定出的排列顺序,将该单元格对应的所有第一文本依次连接。
如图6中所示,识别装置500还包括检测模块580。
在一优选实施例中,检测模块580用于通过以下方式从电子图纸中识别出每个图框对应的签名栏的位置信息:从电子图纸提取出所有线条和第一文本,生成第一图片;将第一图片输入预先训练好的图框检测模型,以输出电子图纸中的所有图框的位置信息;针对每个图框,从电子图纸中提取出与该图框的位置信息对应的区域内的所有线条和第一文本,生成该图框对应的第二图片;针对每个图框,将该图框对应的第二图片输入预先训练好的签名栏检测模型,以输出该图框对应的签名栏的位置信息。
在一优选实施例中,检测模块580用于通过以下方式生成第一图片:根据电子图纸中所有线条和第一文本的位置坐标,确定出目标矩形框的位置坐标,目标矩形框为电子图纸中所有第一文本和线条的最小包围框;根据目标矩形框的位置坐标,确定目标矩形框的宽度值和高度值,并分别确定目标矩形框的宽度值和高度值是否大于预设值;若目标矩形框的宽度值和高度值中的至少一个大于预设值,则将目标矩形框的宽度值和高度值中大于预设值的一个或两个设置为预设值,并将所有线条和第一文本生成预设大小的第一图片,预设大小为目标矩形框设置后的宽度值和高度值的乘积;若否,则根据目标矩形框的宽度值、高度值以及预设缩放因子的乘积,确定目标像素大小,将所有线条和第一文本生成目标像素大小的第一图片。
在一优选实施例中,目标分类模型的分类结果用于指示第二文本的类别,类别包括图名和图号,确定模块570用于通过以下方式确定出每个签名栏中所标记的图名和图号:将该签名栏内包括的所有单元格所对应的第二文本中分类结果指示为图号的第二文本,作为该签名栏中所标记的图号;将该签名栏内包括的所有单元格所对应的第二文本中分类结果指示为图名的第二文本,作为该签名栏中所标记的图名。
请参阅图7,图7为本申请实施例所提供的一种电子设备的结构示意图。如图7中所示,所述电子设备700包括处理器710、存储器720和总线730。
所述存储器720存储有所述处理器710可执行的机器可读指令,当电子设备700运行时,所述处理器710与所述存储器720之间通过总线730通信,所述机器可读指令被所述处理器710执行时,可以执行如上述实施例中的电子图纸的识别方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述实施例中的电子图纸的识别方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种电子图纸的识别方法,其特征在于,所述电子图纸中绘制有至少一个图框,每个图框内包括构件图和签名栏,所述方法包括:
响应图纸识别指令,获取从电子图纸中识别出的每个图框对应的签名栏的位置信息;
针对每个签名栏,从电子图纸中提取出与该签名栏的位置信息对应的区域内的所有线条和所有第一文本;
针对每个签名栏,根据该签名栏对应的所有线条,确定出该签名栏内包括的所有单元格;
针对每个签名栏,根据该签名栏对应的各第一文本与该签名栏内包括的各单元格之间的位置关系,确定出该签名栏内的每个单元格对应的至少一个第一文本;
针对每个单元格,根据该单元格对应的至少一个第一文本,生成该单元格对应的第二文本;
针对每个签名栏,将该签名栏中的每个单元格对应的第二文本分别输入目标分类模型,以输出针对每个单元格对应的第二文本的分类结果;
针对每个签名栏,根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。
2.根据权利要求1所述的方法,其特征在于,通过以下方式确定出每个签名栏内包括的所有单元格:
从该签名栏所在区域内的所有线条中,确定出多个横向线条和多个纵向线条;
按照指定线条的排布顺序,对多个指定线条组进行逐个遍历,以分别获得每个指定线条组对应的至少一个顶点坐标组,将每个顶点坐标组内的各顶点坐标所形成的矩形区域确定为一单元格,所述指定线条为横向线条或者纵向线条,每个指定线条组为由在所述排布顺序下任意相邻的两个指定线条所形成的线条组;
其中,通过以下方式确定每个指定线条组对应的每个顶点坐标组:
针对每个目标线条组分别执行如下处理:根据目标线条组内的两个指定线条的坐标以及指定线条组内的两个线条的坐标,按照预设规则生成一顶点坐标组,每个目标线条组为由在目标线条的排布顺序下任意相邻的两个目标线条所形成的线条组,目标线条为横向线条或者纵向线条,目标线条与指定线条不同,目标线条组中的每个目标线条分别与指定线条组中的各指定线条相交。
3.根据权利要求2所述的方法,其特征在于,通过以下方式确定出每个单元格对应的至少一个第一文本:
确定电子图纸中该签名栏所在区域内的每个第一文本的位置坐标,所述位置坐标用于指示第一文本的中心点在电子图纸中的位置;
针对每个单元格,将该单元格对应的矩形区域,确定为该单元格的检测区域;
针对每个第一文本,确定该文本的位置坐标所落入的目标检测区域,将该第一文本确定为目标检测区域对应的单元格对应的一个第一文本。
4.根据权利要求3所述的方法,其特征在于,通过以下方式生成每个单元格对应的第二文本:
确定该单元格对应的第一文本的数量,若该单元格对应一个第一文本,则将第一文本作为该单元格的第二文本,若该单元格对应多个第一文本,则将该单元格对应的多个第一文本进行拼接,将拼接后的多个第一文本作为该单元格对应的第二文本;
其中,通过以下方式对每个单元格对应的多个第一文本拼接:
根据该单元格对应的每个第一文本的位置坐标,确定每个第一文本的排列顺序;
按照确定出的排列顺序,将该单元格对应的所有第一文本依次连接。
5.根据权利要求1所述的方法,其特征在于,通过以下方式从电子图纸中识别出每个图框对应的签名栏的位置信息:
从电子图纸提取出所有线条和第一文本,生成第一图片;
将所述第一图片输入预先训练好的图框检测模型,以输出电子图纸中的所有图框的位置信息;
针对每个图框,从电子图纸中提取出与该图框的位置信息对应的区域内的所有线条和第一文本,生成该图框对应的第二图片;
针对每个图框,将该图框对应的第二图片输入预先训练好的签名栏检测模型,以输出该图框对应的签名栏的位置信息。
6.根据权利要求5所述的方法,其特征在于,通过以下方式生成第一图片:
根据电子图纸中所有线条和第一文本的位置坐标,确定出目标矩形框的位置坐标,所述目标矩形框为电子图纸中所有第一文本和线条的最小包围框;
根据目标矩形框的位置坐标,确定目标矩形框的宽度值和高度值,并分别确定目标矩形框的宽度值和高度值是否大于预设值;
若目标矩形框的宽度值和高度值中的至少一个大于预设值,则将目标矩形框的宽度值和高度值中大于预设值的一个或两个设置为预设值,并将所有线条和第一文本生成预设大小的第一图片,所述预设大小为目标矩形框设置后的宽度值和高度值的乘积;
若否,则根据目标矩形框的宽度值、高度值以及预设缩放因子的乘积,确定目标像素大小,将所有线条和第一文本生成目标像素大小的第一图片。
7.根据权利要求1所述的方法,其特征在于,所述目标分类模型的分类结果用于指示第二文本的类别,所述类别包括图名和图号,通过以下方式确定出每个签名栏中所标记的图名和图号:
将该签名栏内包括的所有单元格所对应的第二文本中分类结果指示为图号的第二文本,作为该签名栏中所标记的图号;
将该签名栏内包括的所有单元格所对应的第二文本中分类结果指示为图名的第二文本,作为该签名栏中所标记的图名。
8.一种电子图纸的识别装置,其特征在于,所述电子图纸中绘制有至少一个图框,每个图框内包括构件图和签名栏,所述装置包括:
获取模块,用于响应图纸识别指令,获取从电子图纸中识别出的每个图框对应的签名栏的位置信息;
提取模块,用于针对每个签名栏,从电子图纸中提取出与该签名栏的位置信息对应的区域内的所有线条和所有第一文本;
单元格检测模块,用于针对每个签名栏,根据该签名栏对应的所有线条,确定出该签名栏内包括的所有单元格;
匹配模块,用于针对每个签名栏,根据该签名栏对应的各第一文本与该签名栏内包括的各单元格之间的位置关系,确定出该签名栏内的每个单元格对应的至少一个第一文本;
拼接模块,用于针对每个单元格,根据该单元格对应的至少一个第一文本,生成该单元格对应的第二文本;
分类模块,用于针对每个签名栏,将该签名栏中的每个单元格对应的第二文本分别输入目标分类模型,以输出针对每个单元格对应的第二文本的分类结果;
确定模块,用于针对每个签名栏,根据该签名栏中的每个单元格对应的第二文本的分类结果,确定出该签名栏中所标记的图名和图号,以作为该签名栏对应的图框内的构件图的图名和图号。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至7任一所述电子图纸的识别方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至7任一所述电子图纸的识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210848426.7A CN115100673A (zh) | 2022-07-19 | 2022-07-19 | 一种电子图纸的识别方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210848426.7A CN115100673A (zh) | 2022-07-19 | 2022-07-19 | 一种电子图纸的识别方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115100673A true CN115100673A (zh) | 2022-09-23 |
Family
ID=83298280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210848426.7A Pending CN115100673A (zh) | 2022-07-19 | 2022-07-19 | 一种电子图纸的识别方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115100673A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115841679A (zh) * | 2023-02-23 | 2023-03-24 | 江西中至科技有限公司 | 图纸表格提取方法、系统、计算机及可读存储介质 |
CN117237977A (zh) * | 2023-11-16 | 2023-12-15 | 江西少科智能建造科技有限公司 | 一种cad图纸的区域划分方法及系统 |
-
2022
- 2022-07-19 CN CN202210848426.7A patent/CN115100673A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115841679A (zh) * | 2023-02-23 | 2023-03-24 | 江西中至科技有限公司 | 图纸表格提取方法、系统、计算机及可读存储介质 |
CN115841679B (zh) * | 2023-02-23 | 2023-05-05 | 江西中至科技有限公司 | 图纸表格提取方法、系统、计算机及可读存储介质 |
CN117237977A (zh) * | 2023-11-16 | 2023-12-15 | 江西少科智能建造科技有限公司 | 一种cad图纸的区域划分方法及系统 |
CN117237977B (zh) * | 2023-11-16 | 2024-03-08 | 江西少科智能建造科技有限公司 | 一种cad图纸的区域划分方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115100673A (zh) | 一种电子图纸的识别方法、装置、电子设备及存储介质 | |
CN109948497B (zh) | 一种物体检测方法、装置及电子设备 | |
CN110582783B (zh) | 训练装置、图像识别装置、训练方法和计算机可读信息存储介质 | |
CN111738045B (zh) | 一种图像检测方法、装置、电子设备及存储介质 | |
CN112101386B (zh) | 文本检测方法、装置、计算机设备和存储介质 | |
CN112668566A (zh) | 表格处理方法、装置、电子设备及存储介质 | |
CN112288883B (zh) | 作业指导信息的提示方法、装置、电子设备及存储介质 | |
CN112507431A (zh) | 基于bim模型的智能审图方法、装置及存储介质 | |
CN111612004A (zh) | 一种基于语义内容的图像裁剪方法及装置 | |
CN113689436A (zh) | 图像语义分割方法、装置、设备及存储介质 | |
CN114429637A (zh) | 一种文档分类方法、装置、设备及存储介质 | |
JP2015184061A (ja) | 抽出装置、方法及びプログラム | |
CN112883926B (zh) | 表格类医疗影像的识别方法及装置 | |
CN113673528A (zh) | 文本处理方法、装置、电子设备和可读存储介质 | |
CN113591433A (zh) | 一种文本排版方法、装置、存储介质及计算机设备 | |
CN113297416A (zh) | 视频数据存储方法、装置、电子设备和可读存储介质 | |
CN113515799A (zh) | 一种建筑信息模型的设备模型批量布置方法及装置 | |
CN112801435B (zh) | 变电站防火校验方法和装置、设备及存储介质 | |
CN117314863A (zh) | 缺陷输出方法、装置、设备及存储介质 | |
CN112583900A (zh) | 云计算的数据处理方法及相关产品 | |
CN115374517A (zh) | 布线软件的测试方法、装置、电子设备及存储介质 | |
CN111079752A (zh) | 识别红外图像中的断路器的方法、装置及可读存储介质 | |
CN115457581A (zh) | 表格提取方法、装置及计算机设备 | |
CN113111734B (zh) | 一种水印分类模型训练方法及装置 | |
US11749021B2 (en) | Retrieval device, control method, and non-transitory storage medium |
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 |