CN111460204A - 电子工程图纸的子图提取方法、装置、存储介质及终端 - Google Patents
电子工程图纸的子图提取方法、装置、存储介质及终端 Download PDFInfo
- Publication number
- CN111460204A CN111460204A CN202010248542.6A CN202010248542A CN111460204A CN 111460204 A CN111460204 A CN 111460204A CN 202010248542 A CN202010248542 A CN 202010248542A CN 111460204 A CN111460204 A CN 111460204A
- Authority
- CN
- China
- Prior art keywords
- electronic engineering
- subgraph
- sub
- phrase
- name
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种电子工程图纸的子图提取方法、装置、存储介质及终端,该方法包括:从电子工程图纸文件中提取单张图纸,并将提取的多张单张图纸另存为新的电子工程图纸文件集合;确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容;基于每个子图的名称和内容,将每个子图另存为新的子图工程文件。本发明的方案,可以解决电子工程图纸的综合图纸的体积比较大,使得从综合图纸中查找电子工程图纸的具体内容时存在查找难度大的问题,达到降低从综合图纸中查找电子工程图纸的具体内容时的查找难度的效果。
Description
技术领域
本发明属于建造工程信息化技术领域,具体涉及一种电子工程图纸的子图提取方法、装置、存储介质及终端。
背景技术
电子工程图纸是工程建造的核心资料,是建造的主要依据。工程建造过程中,管理人员需要经常打开和使用工程图纸,了解工程实体的尺寸、形状和材质。但设计院为了交付方便,经常将很多张工程图纸放到一个电子工程图纸文件中,形成一个综合图纸。这种综合图纸的体积非常大,打开和使用均比较困难。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的目的在于,针对上述缺陷,提供一种电子工程图纸的子图提取方法、装置、存储介质及终端,以解决电子工程图纸的综合图纸的体积比较大,使得从综合图纸中查找电子工程图纸的具体内容时存在查找难度大的问题,达到降低从综合图纸中查找电子工程图纸的具体内容时的查找难度的效果。
本发明提供一种电子工程图纸的子图提取方法,包括:从电子工程图纸文件中提取单张图纸,并将提取的多张单张图纸另存为新的电子工程图纸文件集合;确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容;基于每个子图的名称和内容,将每个子图另存为新的子图工程文件。
可选地,其中,从电子工程图纸文件中提取单张图纸,包括:针对电子工程图纸文件,根据工程图纸的制图规范中图框矩形的标准尺寸,遍历电子工程图纸文件中所有矩形,查找与标准尺寸相同的矩形,将查找到的矩形确定为电子工程图纸文件的图框,一个图框中包含一张图纸;和/或,将提取的多张单张图纸另存为新的电子工程图纸文件集合,包括:根据每个图框即每张图纸所对应矩形的尺寸和位置,确定每个图框的标题栏矩形区域,并获取每个图框的标题栏矩形区域内的所有词组,形成词组集合;每个词组集合中的元素,包括:内容、字号、起点坐标和方向向量;从每个图框的标题栏矩形区域内的所有词组的词组集合中查询内容包括图纸名称的词组,根据图纸名称的词组的起点坐标和方向向量确定图纸名称的属性值;以及,针对每个图框,将每个图框所对应矩形的矩形范围内所有图形元素复制并粘贴到一个新建的电子工程图纸内;将每个图框的图框本身、以及与图框本身有交集部分的图形元素也加入到该新建的电子工程图纸内;并将该新建的电子工程图纸按电子工程图纸文件的名称-图纸名称的属性值的命名方式命名,另存为一张图纸文件,以将电子工程图纸文件中所有另存得到的图纸文件形成新的电子工程图纸文件集合;和/或,确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容,包括:遍历新的电子工程图纸文件集合中每张图纸,提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合;以及,为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树;遍历子图名集合中每个子图名称,计算每个子图的矩形范围,形成矩形范围集合;针对矩形范围集合中每个子图的矩形范围,提取每个子图的矩形范围内的所有图元即第一图元子集、以及与每个子图的矩形范围相交的所有图元即第二图元子集,将第一图元子集和第二图元子集复制到一个新建的子图工程文件,并按电子工程图纸文件的名称-图纸名称的属性值-子图名称的命名方式给子图工程文件命名。
可选地,其中,提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合,包括:获取每张图纸的图框所对应的矩形内、以及每张图纸的标题栏矩形外的所有文本集合和直线集合;文本集合中每个词组包括内容、字号、起点坐标和终点坐标,直线集合中每条直线包括两个端点坐标;获取所有文本集合中字号最大的词组,形成第一子图名集合;针对第一子图名集合中的每个词组,将正下方没有下划线的词组从子图名集合中剔除,形成第二子图名集合;按建筑工程师的读图习惯,对第二子图名集合中的每个词组进行排序,形成第三子图名集合;若第三子图名集合中只有一个词组,则提取下一张图纸中的子图名称,以此类推,直至提取所有图纸的子图名称后,形成新的电子工程图纸文件集合中所有图纸的子图名集合;和/或,为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树,包括:将新的电子工程图纸文件集合中每张图纸的图纸区域按X方向中线和Y方向中线划分成四个一级平面区域,对每个一级平面区域按同样的划分方式划分成四个二级平面区域,以此类推形成一个树结构;
确定每张图纸中每个图元的矩形包围盒,按空间位置在每个矩形包围盒中填入树结构中对应子区域的叶节点,形成搜索树;
和/或,
计算每个子图的矩形范围,形成矩形范围集合,包括:
遍历子图名集合中的每个词组,计算每个词组的边界矩阵;
针对每个词组的边界矩阵中的边界矩形,确定每个词组所对应子图的Y轴范围,并确定每个词组所对应子图的X轴范围,形成矩形范围集合。
可选地,其中,确定每个词组所对应子图的Y轴范围,包括:将每个词组的边界矩阵中的边界矩形沿着Y轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形;每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动;和/或,确定每个词组所对应子图的X轴范围,包括:将每个词组的边界矩阵中的边界矩形沿着X轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形;每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动。
与上述方法相匹配,本发明另一方面提供一种电子工程图纸的子图提取装置,包括:提取单元,用于从电子工程图纸文件中提取单张图纸,并将提取的多张单张图纸另存为新的电子工程图纸文件集合;提取单元,还用于确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容;存储单元,用于基于每个子图的名称和内容,将每个子图另存为新的子图工程文件。
可选地,其中,提取单元从电子工程图纸文件中提取单张图纸,包括:针对电子工程图纸文件,根据工程图纸的制图规范中图框矩形的标准尺寸,遍历电子工程图纸文件中所有矩形,查找与标准尺寸相同的矩形,将查找到的矩形确定为电子工程图纸文件的图框,一个图框中包含一张图纸;和/或,提取单元将提取的多张单张图纸另存为新的电子工程图纸文件集合,包括:根据每个图框即每张图纸所对应矩形的尺寸和位置,确定每个图框的标题栏矩形区域,并获取每个图框的标题栏矩形区域内的所有词组,形成词组集合;每个词组集合中的元素,包括:内容、字号、起点坐标和方向向量;从每个图框的标题栏矩形区域内的所有词组的词组集合中查询内容包括图纸名称的词组,根据图纸名称的词组的起点坐标和方向向量确定图纸名称的属性值;以及,针对每个图框,将每个图框所对应矩形的矩形范围内所有图形元素复制并粘贴到一个新建的电子工程图纸内;将每个图框的图框本身、以及与图框本身有交集部分的图形元素也加入到该新建的电子工程图纸内;并将该新建的电子工程图纸按电子工程图纸文件的名称-图纸名称的属性值的命名方式命名,另存为一张图纸文件,以将电子工程图纸文件中所有另存得到的图纸文件形成新的电子工程图纸文件集合;和/或,提取单元确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容,包括:遍历新的电子工程图纸文件集合中每张图纸,提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合;以及,为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树;遍历子图名集合中每个子图名称,计算每个子图的矩形范围,形成矩形范围集合;针对矩形范围集合中每个子图的矩形范围,提取每个子图的矩形范围内的所有图元即第一图元子集、以及与每个子图的矩形范围相交的所有图元即第二图元子集,将第一图元子集和第二图元子集复制到一个新建的子图工程文件,并按电子工程图纸文件的名称-图纸名称的属性值-子图名称的命名方式给子图工程文件命名。
可选地,其中,提取单元提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合,包括:获取每张图纸的图框所对应的矩形内、以及每张图纸的标题栏矩形外的所有文本集合和直线集合;文本集合中每个词组包括内容、字号、起点坐标和终点坐标,直线集合中每条直线包括两个端点坐标;获取所有文本集合中字号最大的词组,形成第一子图名集合;针对第一子图名集合中的每个词组,将正下方没有下划线的词组从子图名集合中剔除,形成第二子图名集合;按建筑工程师的读图习惯,对第二子图名集合中的每个词组进行排序,形成第三子图名集合;若第三子图名集合中只有一个词组,则提取下一张图纸中的子图名称,以此类推,直至提取所有图纸的子图名称后,形成新的电子工程图纸文件集合中所有图纸的子图名集合;和/或,提取单元为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树,包括:将新的电子工程图纸文件集合中每张图纸的图纸区域按X方向中线和Y方向中线划分成四个一级平面区域,对每个一级平面区域按同样的划分方式划分成四个二级平面区域,以此类推形成一个树结构;确定每张图纸中每个图元的矩形包围盒,按空间位置在每个矩形包围盒中填入树结构中对应子区域的叶节点,形成搜索树;和/或,提取单元计算每个子图的矩形范围,形成矩形范围集合,包括:遍历子图名集合中的每个词组,计算每个词组的边界矩阵;针对每个词组的边界矩阵中的边界矩形,确定每个词组所对应子图的Y轴范围,并确定每个词组所对应子图的X轴范围,形成矩形范围集合。
可选地,其中,提取单元确定每个词组所对应子图的Y轴范围,包括:将每个词组的边界矩阵中的边界矩形沿着Y轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形;每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动;和/或,提取单元确定每个词组所对应子图的X轴范围,包括:将每个词组的边界矩阵中的边界矩形沿着X轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形;每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动。
与上述装置相匹配,本发明再一方面提供一种终端,包括:以上所述的电子工程图纸的子图提取装置。
与上述方法相匹配,本发明再一方面提供一种存储介质,包括:所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行以上所述的电子工程图纸的子图提取方法。
与上述方法相匹配,本发明再一方面提供一种终端,包括:处理器,用于执行多条指令;存储器,用于存储多条指令;其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行以上所述的电子工程图纸的子图提取方法。
由此,本发明的方案,通过利用工程制图规范,将电子工程图纸的综合图纸拆分为一个个子图,并根据子图名称对拆分后的子图进行命名,以方便用户在从综合图纸中查找电子工程图纸的具体内容时利用子图名进行查找,解决电子工程图纸的综合图纸的体积比较大,使得从综合图纸中查找电子工程图纸的具体内容时存在查找难度大的问题,达到降低从综合图纸中查找电子工程图纸的具体内容时的查找难度的效果。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明的电子工程图纸的子图提取方法的一实施例的流程示意图;
图2为本发明的方法中将提取的多张单张图纸另存为新的电子工程图纸文件集合的一实施例的流程示意图;
图3为本发明的方法中提取每个子图的名称和内容的一实施例的流程示意图;
图4为本发明的方法中形成新的电子工程图纸文件集合中所有图纸的子图名集合的一实施例的流程示意图;
图5为本发明的方法中为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树的一实施例的流程示意图;
图6为本发明的方法中形成矩形范围集合的一实施例的流程示意图;
图7为本发明的方法中确定每个词组所对应子图的Y轴范围的一实施例的流程示意图;
图8为本发明的方法中确定每个词组所对应子图的X轴范围的一实施例的流程示意图;
图9为本发明的电子工程图纸的子图提取装置的一实施例的结构示意图;
图10为电子工程图纸的子图提取方法的一实施例的流程示意图;
图11为电子工程图纸的图框示意图;
图12为电子工程图纸的一张图纸的图纸内容示意图;
图13为电子工程图纸的标题栏示意图;
图14为电子工程图纸的子图提取方法中确定子图的Y轴范围的流程示意图;
图15为电子工程图纸的子图提取方法中确定子图的X轴范围的流程示意图;
图16为电子工程图纸的图纸内容示例图;
图17为电子工程图纸的子图提取与存储示意图;
图18为电子工程图纸的子图“LT02九层平面图”包括的内容示意图。
结合附图,本发明实施例中附图标记如下:
102-提取单元;104-存储单元。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的实施例,提供了一种电子工程图纸的子图提取方法,如图1所示本发明的方法的一实施例的流程示意图。该电子工程图纸的子图提取方法可以包括:步骤S110至步骤S130。
步骤S110,根据工程图纸的制图规范,从电子工程图纸文件中提取单张图纸,并将提取的多张单张图纸另存为新的电子工程图纸文件集合。其中,电子工程图纸文件,可以包含电子工程图纸的综合图纸。例如:基于图框识别,从电子工程图纸文件t中提取单张图纸dtk,另存为新的电子工程图纸文件集合ND。
可选地,步骤S110中从电子工程图纸文件中提取单张图纸,可以包括:
针对电子工程图纸文件,根据工程图纸的制图规范中图框矩形的标准尺寸,遍历电子工程图纸文件中所有矩形,查找与标准尺寸相同的矩形,将查找到的矩形确定为电子工程图纸文件的图框,一个图框中包含一张图纸。
例如:针对电子工程图纸文件t,根据图框矩形的标准长宽尺寸,如图11所示,获取文件t内所有图框{tk};由于建筑制图多采用足尺绘图法,步骤1.1检查图框的线段长度是否为标准尺寸。如图12所示,图纸文件“楼梯平面图.dwg”中有两个标准图框{t1,t2}。其中,电子工程图纸一般是一个dwg格式的文件,用autocad等软件就可以打开。获取文件t内所有图框{tk},可以是遍历图纸文件中所有矩形,查找尺寸与图框尺寸一样的矩形,就认为是图框。一个综合图纸里面有很多图框,一个图框里面就是一张图纸,应该独立存储为一个文件。
由此,通过从电子工程图纸文件中提取单张图纸,可以实现对电子工程图纸的综合图纸的自动拆分,避免人工拆分而耗时耗力。
可选地,步骤S110中将提取的多张单张图纸另存为新的电子工程图纸文件集合,可以结合图2所示本发明的方法中将提取的多张单张图纸另存为新的电子工程图纸文件集合的一实施例流程示意图,进一步说明步骤S110中将提取的多张单张图纸另存为新的电子工程图纸文件集合的具体过程,可以包括:步骤S210至步骤S230。
步骤S210,根据每个图框即每张图纸所对应矩形的尺寸和位置,确定每个图框的标题栏矩形区域,并获取每个图框的标题栏矩形区域内的所有词组,形成词组集合。每个词组集合中的元素,可以包括:内容、字号、起点坐标和方向向量。
例如:根据图框tk矩形的尺寸和相对位置,计算图框边缘标题栏矩形区域tl;然后,获取标题栏矩形区域内所有词组集合{ttj},每个词组元素ttj可以包括内容cj、字号sj、起点坐标lcj和方向向量vej,ttj=(cj,sj,lcj,vej)。如图13所示,针对图框t1,标题栏区域内词组集合可以包括{“项目名称”,“图纸名称”,“LT02及副核心筒大样图11”,……}。其中,计算图框边缘标题栏矩形区域tl时,可以按制图标准,不同尺寸的图纸对应的边栏尺寸也有标准值,根据这种对应关系去定位边栏。获取标题栏矩形区域内所有词组集合{ttj},需要用文字对象的位置参数,所可以遍历所有文字对象,判断其起点是否在区域内。
步骤S220,从每个图框的标题栏矩形区域内的所有词组的词组集合中查询内容可以包括图纸名称的词组,根据图纸名称的词组的起点坐标和方向向量确定与图纸名称的词组的相邻的词作为图纸名称的属性值。
例如:从标题栏矩形区域内所有词组集合{ttj}中查询内容cj可以包括“图纸名称”的词组tzk;根据“图纸名称”的词组tzk的起点坐标和方向向量计算下一个最邻近的词作为“图纸名称”的属性值,标记为tznk。如图13所示,“图纸名称”向右最邻近的词是“LT02及副核心筒大样图11”,为图纸名称,标记为tzn1。其中,计算下一个最邻近的词,可以是计算该方向上最近的词组。具体方法为“以tzk的起点为原点、以方向向量顺逆时针各15度的方向为边界的锥形区域内,距离最近的词”。
以及,步骤S230,针对每个图框,将每个图框所对应矩形的矩形范围内所有图形元素复制并粘贴到一个新建的电子工程图纸内;将每个图框的图框本身、以及与图框本身有交集部分的图形元素也加入到该新建的电子工程图纸内;并将该新建的电子工程图纸按电子工程图纸文件的名称-图纸名称的属性值的命名方式命名,另存为一张图纸文件,以将电子工程图纸文件中所有另存得到的图纸文件形成新的电子工程图纸文件集合。
例如:针对每个图框tk,将图框矩形范围内所有图形元素复制出来,粘贴到一个新建的电子工程图纸内,标记为dtk;图框tk本身,与图框有交集部分图形在图框范围内、部分在图框范围外的元素也加入到新建电子图纸dtk;将新建的电子工程图纸dtk命名为“tn-tznk”,另存为一张图纸文件,其中tn为图纸文件t的名称;形成图纸文件集合ND={dtk}。
由此,通过将从电子工程图纸的综合图纸中提取的多张单张图纸另存为新的电子工程图纸文件集合,可以实现对拆分得到的每张图纸的重新命名和存储,方便后续对每张图纸的查找。
步骤S120,确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容。
可选地,步骤S120中确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容的具体过程,可以参见以下示例性说明。
下面结合图3所示本发明的方法中提取每个子图的名称和内容的一实施例流程示意图,进一步说明步骤S120中提取每个子图的名称和内容的具体过程,可以包括:步骤S310至步骤S340。
步骤S310,遍历新的电子工程图纸文件集合中每张图纸,提取每张图纸中的子图名称,以作为存储子图时的文件名,形成新的电子工程图纸文件集合中所有图纸的子图名集合。例如:循环遍历ND中每个元素dtk,提取图纸文件集合ND中每个元素dtk中子图名称,作为后续子图存储时的文件名。
更可选地,步骤S310中提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合的具体过程,可以参见以下示例性说明。
下面结合图4所示本发明的方法中形成新的电子工程图纸文件集合中所有图纸的子图名集合的一实施例流程示意图,进一步说明步骤S310中形成新的电子工程图纸文件集合中所有图纸的子图名集合的具体过程,可以包括:步骤S410至步骤S450。
步骤S410,获取每张图纸的图框所对应的矩形内、以及每张图纸的标题栏矩形外的所有文本集合和直线集合。文本集合中每个词组可以包括内容、字号、起点坐标和终点坐标,直线集合中每条直线可以包括两个端点坐标。
例如:获取图框tk矩形内和标题栏tl矩形外的所有文本集合{tci}和直线集合{lei},每个词组元素tci可以包括内容ci,字号si,起点坐标lci和终点坐标lej,tti=(ci,si,lci,lej),每条直线可以包括两个端点坐标,lej={pt1j,pt2j}。如图14所示,文本集合可以包括{“LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”,“1:50”,“楼梯”、“天井”,……}等。
步骤S420,获取所有文本集合中字号最大的词组,形成第一子图名集合。
例如:获取{tti}中字号si最大的词组加入子图名集合STN={stni}。如图14所示,字号最大的文本集合STN={LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”}。
步骤S430,针对第一子图名集合中的每个词组,将正下方没有下划线的词组从子图名集合中剔除,形成第二子图名集合。
例如:针对STN中每个词组,计算stni正下方是否有下划线;若没有下划线,将该次从STN中剔除;优选判断方法为以lci为中心点,以2倍sj为边长的正方形范围内,是否有直线的端点。计算发现{LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”}下面均有下划线。
步骤S440,按建筑工程师的读图习惯,对第二子图名集合中的每个词组进行排序,形成第三子图名集合。
例如:按建筑工程师的一般读图习惯,即查看子图时按从上往下、从左往右的顺序,对子图名集合STN中每个词组stni作排序,具体方法是,首先根据其起点Y坐标逆序排列;若起点Y坐标一样,按起点X坐标顺序排列,得到新的STN集合。最后生成的子图文件的排序符合工程师的一般阅读习惯,不至于乱序。如图16所示,排序后,STN={“LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”},该顺序与工程师看图顺序比较一致。
步骤S450,若第三子图名集合中只有一个词组,则提取下一张图纸中的子图名称,以此类推,直至提取所有图纸的子图名称后,形成新的电子工程图纸文件集合中所有图纸的子图名集合。
例如:如果STN中只有一个元素,那么该图纸不用提取子图,则跳过图纸dtk,处理下一张图纸。
由此,通过提取每张图纸中的子图名称形成新的电子工程图纸文件集合中所有图纸的子图名集合,可以基于电子工程图纸的综合图纸拆分后的图纸形成子图名集合,可以为后续形成命名和查找提供方便。
以及,步骤S320,为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树。例如:为图纸dtk中图元建立搜索树T。通过采用平面四叉搜索树组织图纸中元素的算法,解决了综合图纸中元素量巨大,导致子图识别算法运行缓慢的问题;达到了快速提取图纸和子图,可以应对实际工程上千张图纸的技术效果。
更可选地,可以结合图5所示本发明的方法中为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树的一实施例流程示意图,进一步说明步骤S320中为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树的具体过程,可以包括:步骤S510和步骤S520。
步骤S510,将新的电子工程图纸文件集合中每张图纸的图纸区域按X方向中线和Y方向中线划分成四个一级平面区域,对每个一级平面区域按同样的划分方式划分成四个二级平面区域,以此类推形成一个树结构。
步骤S520,确定每张图纸中每个图元的矩形包围盒,按空间位置在每个矩形包围盒中填入树结构中对应子区域的叶节点,形成搜索树。
例如:先将图纸区域按X方向中线和Y方向中线划分,形成4个一级平面子区域,然后将每个一级区域同样划分,各形成4个二级子区域,以此类推形成一个四叉树结构;然后求得图纸中每个元素的矩形包围盒,即求得图纸中每个元素占据区域的最大/最小x坐标值和最大/最小y坐标值,按空间位置填入对应的子区域的叶节点,作为后续步骤判断图形相交的搜索树T;由于图纸中元素数量可能上万,该预处理可以极大加速本方法的计算过程。其中,图元,可以是图纸文件里面的各种图形和文字。
由此,通过为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树,可以方便后续搜索,有利于提高搜索的效率和精准性。
步骤S330,遍历子图名集合中每个子图名称,计算每个子图的矩形范围,以作为子图提取的范围依据,形成矩形范围集合。例如:依次遍历子图名集合STN中每个元素stni,计算每个子图zti的矩形范围,作为子图提取的范围依据。
更可选地,步骤S330中计算每个子图的矩形范围,形成矩形范围集合的具体过程,可以参见以下示例性说明。
下面结合图6所示本发明的方法中形成矩形范围集合的一实施例流程示意图,进一步说明步骤S330中形成矩形范围集合的具体过程,可以包括:步骤S610和步骤S620。
步骤S610,遍历子图名集合中的每个词组,计算每个词组的边界矩阵。
例如:遍历子图名集合STN中每个元素stni。计算子图名集合STN中每个元素stni的边界矩阵:具体方法为,若stni=(ci,si,lci,lej),构造一个起点为lci、终点为lei、Y轴方向高为2倍si的边界矩形sqi,加入集合Sk={sqi};其中lci=(xci,yci)、lei=(xei,yei);设置标记starti=0。如图16所示,当stni=“LT02六层平面图”时,sqi矩形如图16中标记。
步骤S620,针对每个词组的边界矩阵中的边界矩形,确定每个词组所对应子图的Y轴范围,并确定每个词组所对应子图的X轴范围,形成矩形范围集合。
例如:针对stni,确定其子图的Y轴的范围。针对stni准备X轴数据:构造一个起点为lci、终点为lzi、X轴方向宽为si的矩形spi,加入矩形集合Pk={spi};lci=(xci,yci)、lei=(xci,maxyi)。如图16所示,当stni=“LT02六层平面图”时,spi矩形如图中标记。针对stni,确定其子图的X轴的范围。
由此,通过计算每个子图的矩形范围形成矩形范围集合,可以确定每个子图的子图内容,以在后续查找中方便且精准地查找的子图内容。
更进一步可选地,可以结合图7所示本发明的方法中确定每个词组所对应子图的Y轴范围的一实施例流程示意图,进一步说明步骤S620中确定每个词组所对应子图的Y轴范围的具体过程,可以包括:步骤S710和步骤S720。
步骤S710,将每个词组的边界矩阵中的边界矩形沿着Y轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形。
例如:如图14所示,将矩形sqi沿着Y轴向上移动,每次移动高度si,形成sqi(n),n为移动次数。如图16中,移动后的矩形sqi(1)如图16所示。
步骤S720,每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动。
例如:每次移动后,首先判断starti是否为0,如果是则继续将矩形sqi沿着Y轴向上移动;否则,沿着搜索树T,计算sqi(n)是否与图纸中图形相交;当不存在图纸中图形与sqi(n)相交,或者当sqi(n)与Sk中图元相交时或图框tk相交,停止移动,记录stni范围的Y轴最小值minyi=yci,Y轴最大值maxyi=yci+n×si,如图16所示,minyi=yci,maxyi=yci+20si。否则若存在图纸中图形与矩形sqi(n)相交,设置starti=1,继续将矩形sqi沿着Y轴向上移动,继续往上移动。其中,计算sqi(n)是否与图纸中图形相交,具体可以是:若sqi(n)在搜索树的某个搜索节点的空间范围内,则继续判断节点的4个子节点,以此类推找到所有与sqi(n)在同一空间范围内的图形。如图16中,最终的sqi(20)如标记所示,n=20时,不存在图纸中图形与sqi(20)相交。
由此,通过将每个词组的边界矩阵中的边界矩形沿着Y轴向上移动的方式确定每个词组所对应子图的Y轴范围,使得对Y轴方向上子图内容的确定更为精准。
更进一步可选地,可以结合图8所示本发明的方法中确定每个词组所对应子图的X轴范围的一实施例流程示意图,进一步说明步骤S620中确定每个词组所对应子图的X轴范围的具体过程,可以包括:步骤S810和步骤S820。
步骤S810,将每个词组的边界矩阵中的边界矩形沿着X轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形。
例如:将矩形spi沿着X轴向右移动,每次移动长度si,形成rspi(n),n为移动次数;并沿着X轴向左移动,每次移动长度si,形成lspi(n),n为移动次数。如图16所示,当stni=“LT02六层平面图”时,sqi矩形如图中标记。
步骤S820,每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交。若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动。
例如:每次移动后都沿着搜索树T,计算rspi(n)和lspi(n)是否与图纸中图形相交;当不存在图纸中图形与rspi(n1)相交时,或者rspi(n1)与Pk中图元或图框tk相交时,停止向右移动;当不存在图纸中图形与lspi(n2)相交时,或者lspi(n2)与Pk中图元或图框tk相交时,停止向左移动;记录stni范围的X轴最大值minxi=xci+n2×si;当maxxi和minxi均确定时,记录stni范围的X轴最大值maxxi=xci+n1×si;记录stni范围的X轴最大值minxi=xci+n2×si。否则继续将矩形spi沿着X轴向右移动,继续移动。如图16,向左移动8次后,图纸中没有图元与lspi(n)相交,maxxi=xci+8si,向右移动14次后,图纸中没有图元与lspi(n)相交,minxi=xci+14si。针对stni,以(minxi,minyi)和(maxxi,maxyi)为两个对角点定义一个矩形sfi,并将Sk中sqi和Pk中spi更新为sfi,即sqi=spi=sfi。如图16,最终的sfi如图16中标记所示。
由此,通过将每个词组的边界矩阵中的边界矩形沿着X轴向上移动的方式确定每个词组所对应子图的X轴范围,使得对X轴方向上子图内容的确定更为精准。
步骤S340,针对矩形范围集合中每个子图的矩形范围,提取每个子图的矩形范围内的所有图元即第一图元子集、以及与每个子图的矩形范围相交的所有图元即第二图元子集,将第一图元子集和第二图元子集复制到一个新建的子图工程文件,并按电子工程图纸文件的名称-图纸名称的属性值-子图名称的命名方式给子图工程文件命名。例如:针对Sk中各个元素sqi,提取sqi矩形范围内的所有图元、以及与矩形sqi相交的所有图元,复制到一个新建的电子图纸文件中,并另存为新的文件,新文件以“tn-tznk-stni”命名。对于图16所示图纸,另存为6张子图,如图17所示,其中子图“电梯平面图-LT02及副核心筒大样图11-LT02九层平面图”提取出内容如图18所示。
步骤S130,基于每个子图的名称和内容,将每个子图另存为新的子图工程文件。通过采用了图框识别、标题栏识别和子图识别的技术,解决了目前工程图纸体积较大,使得从综合图纸中查找电子工程图纸的具体内容时存在查找难度大的问题;分离了综合图纸中的单张图纸以及单张图纸中的若干子图,并可以按标题属性对拆分后的子图进行准确命名,以方便用户利用子图名进行查找,降低了查找电子工程图纸的具体内容时的难度。
例如:可以充分利用工程图纸的制图规范,从电子工程图纸寻找子图名,然后根据子图名判断子图的范围,提取子图内容,另存为子图。从而方便后续图纸查找。这样,基于工程图纸的制图规范,根据工程制图规范和行业习惯,自动将综合图纸拆分为一个个子图,并根据子图名称命名,减少图纸体积,方便查找使用。
由此,通过基于制图规范,对电子工程图纸的自动分析,将综合图纸分割为单张图纸,并寻找单张图纸中的子图,提取并存储子图的名称和内容,方便后续的图纸使用。
经大量的试验验证,采用本实施例的技术方案,通过根据工程制图规范和行业习惯,自动将电子工程图纸的综合图纸拆分为一个个子图,拆分效率高,且可以减少电子工程图纸的综合图纸的图纸体积。
根据本发明的实施例,还提供了对应于电子工程图纸的子图提取方法的一种电子工程图纸的子图提取装置。参见图9所示本发明的装置的一实施例的结构示意图。该电子工程图纸的子图提取装置可以包括:提取单元102和存储单元104。
在一个可选例子中,提取单元102,可以用于根据工程图纸的制图规范,从电子工程图纸文件中提取单张图纸,并将提取的多张单张图纸另存为新的电子工程图纸文件集合。其中,电子工程图纸文件,可以包含电子工程图纸的综合图纸。例如:基于图框识别,从电子工程图纸文件t中提取单张图纸dtk,另存为新的电子工程图纸文件集合ND。该提取单元102的具体功能及处理参见步骤S110。
可选地,提取单元102从电子工程图纸文件中提取单张图纸,可以包括:
提取单元102,具体还可以用于针对电子工程图纸文件,根据工程图纸的制图规范中图框矩形的标准尺寸,遍历电子工程图纸文件中所有矩形,查找与标准尺寸相同的矩形,将查找到的矩形确定为电子工程图纸文件的图框,一个图框中包含一张图纸。
例如:针对电子工程图纸文件t,根据图框矩形的标准长宽尺寸,如图11所示,获取文件t内所有图框{tk};由于建筑制图多采用足尺绘图法,检查图框的线段长度是否为标准尺寸。如图12所示,图纸文件“楼梯平面图.dwg”中有两个标准图框{t1,t2}。其中,电子工程图纸一般是一个dwg格式的文件,用autocad等软件就可以打开。获取文件t内所有图框{tk},可以是遍历图纸文件中所有矩形,查找尺寸与图框尺寸一样的矩形,就认为是图框。一个综合图纸里面有很多图框,一个图框里面就是一张图纸,应该独立存储为一个文件。
由此,通过从电子工程图纸文件中提取单张图纸,可以实现对电子工程图纸的综合图纸的自动拆分,避免人工拆分而耗时耗力。
可选地,提取单元102将提取的多张单张图纸另存为新的电子工程图纸文件集合,可以包括:
提取单元102,具体还可以用于根据每个图框即每张图纸所对应矩形的尺寸和位置,确定每个图框的标题栏矩形区域,并获取每个图框的标题栏矩形区域内的所有词组,形成词组集合。每个词组集合中的元素,可以包括:内容、字号、起点坐标和方向向量。该提取单元102的具体功能及处理还参见步骤S210。
例如:根据图框tk矩形的尺寸和相对位置,计算图框边缘标题栏矩形区域tl;然后,获取标题栏矩形区域内所有词组集合{ttj},每个词组元素ttj可以包括内容cj、字号sj、起点坐标lcj和方向向量vej,ttj=(cj,sj,lcj,vej)。如图13所示,针对图框t1,标题栏区域内词组集合可以包括{“项目名称”,“图纸名称”,“LT02及副核心筒大样图11”,……}。其中,计算图框边缘标题栏矩形区域tl时,可以按制图标准,不同尺寸的图纸对应的边栏尺寸也有标准值,根据这种对应关系去定位边栏。获取标题栏矩形区域内所有词组集合{ttj},需要用文字对象的位置参数,所可以遍历所有文字对象,判断其起点是否在区域内。
提取单元102,具体还可以用于从每个图框的标题栏矩形区域内的所有词组的词组集合中查询内容可以包括图纸名称的词组,根据图纸名称的词组的起点坐标和方向向量确定与图纸名称的词组的相邻的词作为图纸名称的属性值。该提取单元102的具体功能及处理还参见步骤S220。
例如:从标题栏矩形区域内所有词组集合{ttj}中查询内容cj可以包括“图纸名称”的词组tzk;根据“图纸名称”的词组tzk的起点坐标和方向向量计算下一个最邻近的词作为“图纸名称”的属性值,标记为tznk。如图13所示,“图纸名称”向右最邻近的词是“LT02及副核心筒大样图11”,为图纸名称,标记为tzn1。其中,计算下一个最邻近的词,可以是计算该方向上最近的词组。具体装置为“以tzk的起点为原点、以方向向量顺逆时针各15度的方向为边界的锥形区域内,距离最近的词”。
以及,提取单元102,具体还可以用于针对每个图框,将每个图框所对应矩形的矩形范围内所有图形元素复制并粘贴到一个新建的电子工程图纸内。将每个图框的图框本身、以及与图框本身有交集部分的图形元素也加入到该新建的电子工程图纸内;并将该新建的电子工程图纸按电子工程图纸文件的名称-图纸名称的属性值的命名方式命名,另存为一张图纸文件,以将电子工程图纸文件中所有另存得到的图纸文件形成新的电子工程图纸文件集合。该提取单元102的具体功能及处理还参见步骤S230。
例如:针对每个图框tk,将图框矩形范围内所有图形元素复制出来,粘贴到一个新建的电子工程图纸内,标记为dtk;图框tk本身,与图框有交集部分图形在图框范围内、部分在图框范围外的元素也加入到新建电子图纸dtk;将新建的电子工程图纸dtk命名为“tn-tznk”,另存为一张图纸文件,其中tn为图纸文件t的名称;形成图纸文件集合ND={dtk}。
由此,通过将从电子工程图纸的综合图纸中提取的多张单张图纸另存为新的电子工程图纸文件集合,可以实现对拆分得到的每张图纸的重新命名和存储,方便后续对每张图纸的查找。
在一个可选例子中,提取单元102,还可以用于确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容。该提取单元102的具体功能及处理还参见步骤S120。
可选地,提取单元102确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容,可以包括:
提取单元102,具体还可以用于遍历新的电子工程图纸文件集合中每张图纸,提取每张图纸中的子图名称,以作为存储子图时的文件名,形成新的电子工程图纸文件集合中所有图纸的子图名集合。例如:循环遍历ND中每个元素dtk,提取图纸文件集合ND中每个元素dtk中子图名称,作为后续子图存储时的文件名。该提取单元102的具体功能及处理还参见步骤S310。
更可选地,提取单元102提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合,可以包括:
提取单元102,具体还可以用于获取每张图纸的图框所对应的矩形内、以及每张图纸的标题栏矩形外的所有文本集合和直线集合。文本集合中每个词组可以包括内容、字号、起点坐标和终点坐标,直线集合中每条直线可以包括两个端点坐标。该提取单元102的具体功能及处理还参见步骤S410。
例如:获取图框tk矩形内和标题栏tl矩形外的所有文本集合{tci}和直线集合{lei},每个词组元素tci可以包括内容ci,字号si,起点坐标lci和终点坐标lej,tti=(ci,si,lci,lej),每条直线可以包括两个端点坐标,lej={pt1j,pt2j}。如图14所示,文本集合可以包括{“LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”,“1:50”,“楼梯”、“天井”,……}等。
提取单元102,具体还可以用于获取所有文本集合中字号最大的词组,形成第一子图名集合。该提取单元102的具体功能及处理还参见步骤S420。
例如:获取{tti}中字号si最大的词组加入子图名集合STN={stni}。如图14所示,字号最大的文本集合STN={LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”}。
提取单元102,具体还可以用于针对第一子图名集合中的每个词组,将正下方没有下划线的词组从子图名集合中剔除,形成第二子图名集合。该提取单元102的具体功能及处理还参见步骤S430。
例如:针对STN中每个词组,计算stni正下方是否有下划线;若没有下划线,将该次从STN中剔除;优选判断装置为以lci为中心点,以2倍sj为边长的正方形范围内,是否有直线的端点。计算发现{LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”}下面均有下划线。
提取单元102,具体还可以用于按建筑工程师的读图习惯,对第二子图名集合中的每个词组进行排序,形成第三子图名集合。该提取单元102的具体功能及处理还参见步骤S440。
例如:按建筑工程师的一般读图习惯,即查看子图时按从上往下、从左往右的顺序,对子图名集合STN中每个词组stni作排序,具体装置是,首先根据其起点Y坐标逆序排列;若起点Y坐标一样,按起点X坐标顺序排列,得到新的STN集合。最后生成的子图文件的排序符合工程师的一般阅读习惯,不至于乱序。如图16所示,排序后,STN={“LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”},该顺序与工程师看图顺序比较一致。
提取单元102,具体还可以用于若第三子图名集合中只有一个词组,则提取下一张图纸中的子图名称,以此类推,直至提取所有图纸的子图名称后,形成新的电子工程图纸文件集合中所有图纸的子图名集合。该提取单元102的具体功能及处理还参见步骤S450。
例如:如果STN中只有一个元素,那么该图纸不用提取子图,则跳过图纸dtk,处理下一张图纸。
由此,通过提取每张图纸中的子图名称形成新的电子工程图纸文件集合中所有图纸的子图名集合,可以基于电子工程图纸的综合图纸拆分后的图纸形成子图名集合,可以为后续形成命名和查找提供方便。
以及,提取单元102,具体还可以用于为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树。例如:为图纸dtk中图元建立搜索树T。该提取单元102的具体功能及处理还参见步骤S320。通过采用平面四叉搜索树组织图纸中元素的算法,解决了综合图纸中元素量巨大,导致子图识别算法运行缓慢的问题;达到了快速提取图纸和子图,可以应对实际工程上千张图纸的技术效果。
更可选地,提取单元102为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树,可以包括:
提取单元102,具体还可以用于将新的电子工程图纸文件集合中每张图纸的图纸区域按X方向中线和Y方向中线划分成四个一级平面区域,对每个一级平面区域按同样的划分方式划分成四个二级平面区域,以此类推形成一个树结构。该提取单元102的具体功能及处理还参见步骤S510。
提取单元102,具体还可以用于确定每张图纸中每个图元的矩形包围盒,按空间位置在每个矩形包围盒中填入树结构中对应子区域的叶节点,形成搜索树。该提取单元102的具体功能及处理还参见步骤S520。
例如:先将图纸区域按X方向中线和Y方向中线划分,形成4个一级平面子区域,然后将每个一级区域同样划分,各形成4个二级子区域,以此类推形成一个四叉树结构;然后求得图纸中每个元素的矩形包围盒,即求得图纸中每个元素占据区域的最大/最小x坐标值和最大/最小y坐标值,按空间位置填入对应的子区域的叶节点,作为后续步骤判断图形相交的搜索树T。由于图纸中元素数量可能上万,该预处理可以极大加速本装置的计算过程。
由此,通过为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树,可以方便后续搜索,有利于提高搜索的效率和精准性。
提取单元102,具体还可以用于遍历子图名集合中每个子图名称,计算每个子图的矩形范围,以作为子图提取的范围依据,形成矩形范围集合。例如:依次遍历子图名集合STN中每个元素stni,计算每个子图zti的矩形范围,作为子图提取的范围依据。该提取单元102的具体功能及处理还参见步骤S330。
更可选地,提取单元102计算每个子图的矩形范围,形成矩形范围集合,可以包括:
提取单元102,具体还可以用于遍历子图名集合中的每个词组,计算每个词组的边界矩阵。该提取单元102的具体功能及处理还参见步骤S610。
例如:遍历子图名集合STN中每个元素stni。计算子图名集合STN中每个元素stni的边界矩阵:具体装置为,若stni=(ci,si,lci,lej),构造一个起点为lci、终点为lei、Y轴方向高为2倍si的边界矩形sqi,加入集合Sk={sqi};其中lci=(xci,yci)、lei=(xei,yei);设置标记starti=0。如图16所示,当stni=“LT02六层平面图”时,sqi矩形如图16中标记。
提取单元102,具体还可以用于针对每个词组的边界矩阵中的边界矩形,确定每个词组所对应子图的Y轴范围,并确定每个词组所对应子图的X轴范围,形成矩形范围集合。该提取单元102的具体功能及处理还参见步骤S620。
例如:针对stni,确定其子图的Y轴的范围。针对stni准备X轴数据:构造一个起点为lci、终点为lzi、X轴方向宽为si的矩形spi,加入矩形集合Pk={spi};lci=(xci,yci)、lei=(xci,maxyi)。如图16所示,当stni=“LT02六层平面图”时,spi矩形如图中标记。针对stni,确定其子图的X轴的范围。
由此,通过计算每个子图的矩形范围形成矩形范围集合,可以确定每个子图的子图内容,以在后续查找中方便且精准地查找的子图内容。
更进一步可选地,提取单元102确定每个词组所对应子图的Y轴范围,可以包括:
提取单元102,具体还可以用于将每个词组的边界矩阵中的边界矩形沿着Y轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形。该提取单元102的具体功能及处理还参见步骤S710。
例如:如图14所示,将矩形sqi沿着Y轴向上移动,每次移动高度si,形成sqi(n),n为移动次数;如图16中,移动后的矩形sqi(1)如图16所示。
提取单元102,具体还可以用于每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动。该提取单元102的具体功能及处理还参见步骤S720。
例如:每次移动后,首先判断starti是否为0,如果是则继续将矩形sqi沿着Y轴向上移动;否则,沿着搜索树T,计算sqi(n)是否与图纸中图形相交;当不存在图纸中图形与sqi(n)相交,或者当sqi(n)与Sk中图元相交时或图框tk相交,停止移动,记录stni范围的Y轴最小值minyi=yci,Y轴最大值maxyi=yci+n×si,如图16所示,minyi=yci,maxyi=yci+20si。否则若存在图纸中图形与矩形sqi(n)相交,设置starti=1,继续将矩形sqi沿着Y轴向上移动,继续往上移动。其中,计算sqi(n)是否与图纸中图形相交,具体可以是:若sqi(n)在搜索树的某个搜索节点的空间范围内,则继续判断节点的4个子节点,以此类推找到所有与sqi(n)在同一空间范围内的图形。如图16中,最终的sqi(20)如标记所示,n=20时,不存在图纸中图形与sqi(20)相交。
由此,通过将每个词组的边界矩阵中的边界矩形沿着Y轴向上移动的方式确定每个词组所对应子图的Y轴范围,使得对Y轴方向上子图内容的确定更为精准。
更进一步可选地,提取单元102确定每个词组所对应子图的X轴范围,可以包括:
提取单元102,具体还可以用于将每个词组的边界矩阵中的边界矩形沿着X轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形。该提取单元102的具体功能及处理还参见步骤S810。
例如:将矩形spi沿着X轴向右移动,每次移动长度si,形成rspi(n),n为移动次数;并沿着X轴向左移动,每次移动长度si,形成lspi(n),n为移动次数。如图16所示,当stni=“LT02六层平面图”时,sqi矩形如图中标记。
提取单元102,具体还可以用于每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动。该提取单元102的具体功能及处理还参见步骤S820。
例如:每次移动后都沿着搜索树T,计算rspi(n)和lspi(n)是否与图纸中图形相交;当不存在图纸中图形与rspi(n1)相交时,或者rspi(n1)与Pk中图元或图框tk相交时,停止向右移动;当不存在图纸中图形与lspi(n2)相交时,或者lspi(n2)与Pk中图元或图框tk相交时,停止向左移动;记录stni范围的X轴最大值minxi=xci+n2×si;当maxxi和minxi均确定时,记录stni范围的X轴最大值maxxi=xci+n1×si;记录stni范围的X轴最大值minxi=xci+n2×si。否则继续将矩形spi沿着X轴向右移动,继续移动。如图16,向左移动8次后,图纸中没有图元与lspi(n)相交,maxxi=xci+8si,向右移动14次后,图纸中没有图元与lspi(n)相交,minxi=xci+14si。针对stni,以(minxi,minyi)和(maxxi,maxyi)为两个对角点定义一个矩形sfi,并将Sk中sqi和Pk中spi更新为sfi,即sqi=spi=sfi。如图16,最终的sfi如图16中标记所示。
由此,通过将每个词组的边界矩阵中的边界矩形沿着X轴向上移动的方式确定每个词组所对应子图的X轴范围,使得对X轴方向上子图内容的确定更为精准。
提取单元102,具体还可以用于针对矩形范围集合中每个子图的矩形范围,提取每个子图的矩形范围内的所有图元即第一图元子集、以及与每个子图的矩形范围相交的所有图元即第二图元子集,将第一图元子集和第二图元子集复制到一个新建的子图工程文件,并按电子工程图纸文件的名称-图纸名称的属性值-子图名称的命名方式给子图工程文件命名。例如:针对Sk中各个元素sqi,提取sqi矩形范围内的所有图元、以及与矩形sqi相交的所有图元,复制到一个新建的电子图纸文件中,并另存为新的文件,新文件以“tn-tznk-stni”命名。对于图16所示图纸,另存为6张子图,如图17所示,其中子图“电梯平面图-LT02及副核心筒大样图11-LT02九层平面图”提取出内容如图18所示。该提取单元102的具体功能及处理还参见步骤S340。
在一个可选例子中,存储单元104,可以用于基于每个子图的名称和内容,将每个子图另存为新的子图工程文件。该存储单元104的具体功能及处理参见步骤S130。通过采用了图框识别、标题栏识别和子图识别的技术,解决了目前工程图纸体积较大,使得从综合图纸中查找电子工程图纸的具体内容时存在查找难度大的问题;分离了综合图纸中的单张图纸以及单张图纸中的若干子图,并可以按标题属性对拆分后的子图进行准确命名,以方便用户利用子图名进行查找,降低了查找电子工程图纸的具体内容时的难度。
例如:可以充分利用工程图纸的制图规范,从电子工程图纸寻找子图名,然后根据子图名判断子图的范围,提取子图内容,另存为子图;从而方便后续图纸查找。这样,基于工程图纸的制图规范,根据工程制图规范和行业习惯,自动将综合图纸拆分为一个个子图,并根据子图名称命名,减少图纸体积,方便查找使用。
由此,通过基于制图规范,对电子工程图纸的自动分析,将综合图纸分割为单张图纸,并寻找单张图纸中的子图,提取并存储子图的名称和内容,方便后续的图纸使用。
由于本实施例的装置所实现的处理及功能基本相应于前述图1至图8所示的方法的实施例、原理和实例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。
经大量的试验验证,采用本发明的技术方案,通过对综合图纸中拆分出来的子图,根据子图名称命名,以方便存储,也方便用户在从综合图纸中查找电子工程图纸的具体内容时利用子图名进行查找,可以提高查找效率。
根据本发明的实施例,还提供了对应于电子工程图纸的子图提取装置的一种终端。该终端可以包括:以上所述的电子工程图纸的子图提取装置。
按照制图规范,一张工程图纸必须放置在一个标准尺寸的矩形图框内容中,图框边缘的标题栏准确标记了图纸名称等属性。并且图框内用最大的字体标注图纸名称,并且用下划线标记。图纸名称一般由空间位置和图纸类型组成,譬如“首层平面图”。
另外,一个图框内的工程图纸还有可能由好几张子图组成,譬如“2#楼梯二层平面图”和“2#楼层三层平面图”。子图下部也标记有子图名称,用最大的字体标注图纸名称,并且用下划线标记。
经调研,目前没有对综合图纸进行自动拆分的技术手段,只有人工拆分方法,效率较低。因此,本发明的方案,提供一种电子工程图纸的子图提取方法,可以充分利用工程图纸的制图规范,从电子工程图纸寻找子图名,然后根据子图名判断子图的范围,提取子图内容,另存为子图;从而方便后续图纸查找。这样,基于工程图纸的制图规范,根据工程制图规范和行业习惯,自动将综合图纸拆分为一个个子图,并根据子图名称命名,减少图纸体积,方便查找使用。
具体地,本发明的方案,基于制图规范,通过对电子工程图纸的自动分析,将综合图纸分割为单张图纸,并寻找单张图纸中的子图,提取并存储子图的名称和内容,方便后续的图纸使用。
如图10所示,本发明的方案提供的一种电子工程图纸的子图提取方法,可以包括以下4个步骤:
步骤1:基于图框识别,从电子工程图纸文件t中提取单张图纸dtk,另存为新的电子工程图纸文件集合ND,具体可以包括以下步骤:
步骤1.1针对电子工程图纸文件t,根据图框矩形的标准长宽尺寸,如图11所示,获取文件t内所有图框{tk};由于建筑制图多采用足尺绘图法,步骤1.1检查图框的线段长度是否为标准尺寸。如图12所示,图纸文件“楼梯平面图.dwg”中有两个标准图框{t1,t2}。
其中,电子工程图纸一般是一个dwg格式的文件,用autocad等软件就可以打开。获取文件t内所有图框{tk},可以是遍历图纸文件中所有矩形,查找尺寸与图框尺寸一样的矩形,就认为是图框。一个综合图纸里面有很多图框,一个图框里面就是一张图纸,应该独立存储为一个文件。
步骤1.2根据图框tk矩形的尺寸和相对位置,计算图框边缘标题栏矩形区域tl;然后,获取标题栏矩形区域内所有词组集合{ttj},每个词组元素ttj包括内容cj、字号sj、起点坐标lcj和方向向量vej,ttj=(cj,sj,lcj,vej)。如图13所示,针对图框t1,标题栏区域内词组集合包括{“项目名称”,“图纸名称”,“LT02及副核心筒大样图11”,……}。
其中,计算图框边缘标题栏矩形区域tl时,可以按制图标准,不同尺寸的图纸对应的边栏尺寸也有标准值,根据这种对应关系去定位边栏。获取标题栏矩形区域内所有词组集合{ttj},需要用文字对象的位置参数,所可以遍历所有文字对象,判断其起点是否在区域内。
步骤1.3从标题栏矩形区域内所有词组集合{ttj}中查询内容cj包括“图纸名称”的词组tzk;根据“图纸名称”的词组tzk的起点坐标和方向向量计算下一个最邻近的词作为“图纸名称”的属性值,标记为tznk。如图13所示,“图纸名称”向右最邻近的词是“LT02及副核心筒大样图11”,为图纸名称,标记为tzn1。
其中,计算下一个最邻近的词,可以是计算该方向上最近的词组。具体方法为“以tzk的起点为原点、以方向向量顺逆时针各15度的方向为边界的锥形区域内,距离最近的词”。
步骤1.4针对每个图框tk,将图框矩形范围内所有图形元素复制出来,粘贴到一个新建的电子工程图纸内,标记为dtk;图框tk本身,与图框有交集部分图形在图框范围内、部分在图框范围外的元素也加入到新建电子图纸dtk;将新建的电子工程图纸dtk命名为“tn-tznk”,另存为一张图纸文件,其中tn为图纸文件t的名称;形成图纸文件集合ND={dtk}。
步骤2:循环遍历ND中每个元素dtk,提取图纸文件集合ND中每个元素dtk中子图名称,作为后续子图存储时的文件名,包括以下步骤:
步骤2.1获取图框tk矩形内和标题栏tl矩形外的所有文本集合{tci}和直线集合{lei},每个词组元素tci包括内容ci,字号si,起点坐标lci和终点坐标lej,tti=(ci,si,lci,lej),每条直线包括两个端点坐标,lej={pt1j,pt2j}。如图14所示,文本集合包括{“LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”,“1:50”,“楼梯”、“天井”,……}等。
步骤2.2获取{tti}中字号si最大的词组加入子图名集合STN={stni}。如图14所示,字号最大的文本集合STN={LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”}。
步骤2.3针对STN中每个词组,计算stni正下方是否有下划线;若没有下划线,将该次从STN中剔除;优选判断方法为以lci为中心点,以2倍sj为边长的正方形范围内,是否有直线的端点。计算发现{LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”}下面均有下划线。
步骤2.4按建筑工程师的一般读图习惯,即查看子图时按从上往下、从左往右的顺序,对子图名集合STN中每个词组stni作排序,具体方法是,首先根据其起点Y坐标逆序排列;若起点Y坐标一样,按起点X坐标顺序排列,得到新的STN集合。最后生成的子图文件的排序符合工程师的一般阅读习惯,不至于乱序。如图16所示,排序后,STN={“LT02六层平面图”,“LT02九层平面图”,“LT02十一层平面图”,“LT02十二~十七层平面图”,“LT02十八层平面图”},该顺序与工程师看图顺序比较一致。
步骤2.5如果STN中只有一个元素,那么该图纸不用提取子图,则跳过图纸dtk,处理下一张图纸。
步骤3为图纸dtk中图元建立搜索树T:先将图纸区域按X方向中线和Y方向中线划分,形成4个一级平面子区域,然后将每个一级区域同样划分,各形成4个二级子区域,以此类推形成一个四叉树结构;然后求得图纸中每个元素的矩形包围盒,即求得图纸中每个元素占据区域的最大/最小x坐标值和最大/最小y坐标值,按空间位置填入对应的子区域的叶节点,作为后续步骤判断图形相交的搜索树T;由于图纸中元素数量可能上万,该预处理可以极大加速本方法的计算过程。其中,图元,可以是图纸文件里面的各种图形和文字。这种采用平面四叉搜索树组织图纸中元素的算法,解决了综合图纸中元素量巨大,导致子图识别算法运行缓慢的问题;达到了快速提取图纸和子图,可以应对实际工程上千张图纸的技术效果。
步骤4:依次遍历子图名集合STN中每个元素stni,计算每个子图zti的矩形范围,作为子图提取的范围依据,包括以下步骤:
步骤4.1遍历子图名集合STN中每个元素stni。
步骤4.2计算子图名集合STN中每个元素stni的边界矩阵:具体方法为,若stni=(ci,si,lci,lej),构造一个起点为lci、终点为lei、Y轴方向高为2倍si的边界矩形sqi,加入集合Sk={sqi};其中lci=(xci,yci)、lei=(xei,yei);设置标记starti=0。如图16所示,当stni=“LT02六层平面图”时,sqi矩形如图16中标记。
步骤4.3针对stni,确定其子图的Y轴的范围,如图14所示,优选方法包括以下步骤:
步骤4.3.1将矩形sqi沿着Y轴向上移动,每次移动高度si,形成sqi(n),n为移动次数;如图16中,移动后的矩形sqi(1)如图16所示。
步骤4.3.2每次移动后,首先判断starti是否为0,如果是则转到步骤4.3.1;否则,沿着搜索树T,计算sqi(n)是否与图纸中图形相交;当不存在图纸中图形与sqi(n)相交,或者当sqi(n)与Sk中图元相交时或图框tk相交,停止移动转到步骤4.3.3;否则若存在图纸中图形与矩形sqi(n)相交,设置starti=1,转到步骤4.3.1,继续往上移动。其中,计算sqi(n)是否与图纸中图形相交,具体可以是:若sqi(n)在搜索树的某个搜索节点的空间范围内,则继续判断节点的4个子节点,以此类推找到所有与sqi(n)在同一空间范围内的图形。如图16中,最终的sqi(20)如标记所示,n=20时,不存在图纸中图形与sqi(20)相交。
步骤4.3.3记录stni范围的Y轴最小值minyi=yci,Y轴最大值maxyi=yci+n×si。如图16所示,minyi=yci,maxyi=yci+20si。
步骤4.4针对stni准备X轴数据:构造一个起点为lci、终点为lzi、X轴方向宽为si的矩形spi,加入矩形集合Pk={spi};lci=(xci,yci)、lei=(xci,maxyi)。如图16所示,当stni=“LT02六层平面图”时,spi矩形如图中标记。
步骤4.5针对stni,确定其子图的X轴的范围,如图15所示,优选方法可以包括以下步骤:
步骤4.5.1将矩形spi沿着X轴向右移动,每次移动长度si,形成rspi(n),n为移动次数;并沿着X轴向左移动,每次移动长度si,形成lspi(n),n为移动次数。如图16所示,当stni=“LT02六层平面图”时,sqi矩形如图中标记。
步骤4.5.2每次移动后都沿着搜索树T,计算rspi(n)和lspi(n)是否与图纸中图形相交;当不存在图纸中图形与rspi(n1)相交时,或者rspi(n1)与Pk中图元或图框tk相交时,停止向右移动;当不存在图纸中图形与lspi(n2)相交时,或者lspi(n2)与Pk中图元或图框tk相交时,停止向左移动;记录stni范围的X轴最大值minxi=xci+n2×si;当maxxi和minxi均确定时,转到步骤4.5.3;否则转到步骤4.5.1,继续移动。如图16,向左移动8次后,图纸中没有图元与lspi(n)相交,maxxi=xci+8si,向右移动14次后,图纸中没有图元与lspi(n)相交,minxi=xci+14si。
步骤4.5.3记录stni范围的X轴最大值maxxi=xci+n1×si;记录stni范围的X轴最大值minxi=xci+n2×si。
步骤4.5.4针对stni,以(minxi,minyi)和(maxxi,maxyi)为两个对角点定义一个矩形sfi,并将Sk中sqi和Pk中spi更新为sfi,即sqi=spi=sfi。如图16,最终的sfi如图16中标记所示。
步骤5:针对Sk中各个元素sqi,提取sqi矩形范围内的所有图元、以及与矩形sqi相交的所有图元,复制到一个新建的电子图纸文件中,并另存为新的文件,新文件以“tn-tznk-stni”命名。对于图16所示图纸,另存为6张子图,如图17所示,其中子图“电梯平面图-LT02及副核心筒大样图11-LT02九层平面图”提取出内容如图18所示。这样,采用了图框识别、标题栏识别和子图识别的技术,解决了目前工程图纸体积较大,使得从综合图纸中查找电子工程图纸的具体内容时存在查找难度大的问题;分离了综合图纸中的单张图纸以及单张图纸中的若干子图,并可以按标题属性对拆分后的子图进行准确命名,以方便用户利用子图名进行查找,降低了查找电子工程图纸的具体内容时的难度。
可见,本发明的方案,可以准确地从电子工程图纸中提取图纸和子图纸,并以子图名命名,可将图纸的大小降低一个量级,极大地提高图纸检索,方便图纸传输和使用。
由于本实施例的终端所实现的处理及功能基本相应于前述图9所示的装置的实施例、原理和实例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。
经大量的试验验证,采用本发明的技术方案,通过利用工程图纸的制图规范,从电子工程图纸寻找子图名,然后根据子图名判断子图的范围,提取子图内容,另存为子图,实现对电子工程图纸的综合图纸的拆分,拆分效率高,且便于后续存储和查找。
根据本发明的实施例,还提供了对应于电子工程图纸的子图提取方法的一种存储介质。该存储介质,可以包括:所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行以上所述的电子工程图纸的子图提取方法。
由于本实施例的存储介质所实现的处理及功能基本相应于前述图1至图8所示的方法的实施例、原理和实例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。
经大量的试验验证,采用本发明的技术方案,通过基于制图规范,对电子工程图纸的综合图纸分割为单张图纸,并确定单张图纸中的子图,实现对子图的名称和内容的提取和存储,方便后续存储和查找。
根据本发明的实施例,还提供了对应于电子工程图纸的子图提取方法的一种终端。该终端,可以包括:处理器,用于执行多条指令;存储器,用于存储多条指令;其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行以上所述的电子工程图纸的子图提取方法。
由于本实施例的终端所实现的处理及功能基本相应于前述图1至图8所示的方法的实施例、原理和实例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。
经大量的试验验证,采用本发明的技术方案,通过基于制图规范,对电子工程图纸的综合图纸分割为单张图纸,并确定单张图纸中的子图,可以准确地从电子工程图纸中提取图纸和子图纸,有利于极大地提高图纸检索。
综上,本领域技术人员容易理解的是,在不冲突的前提下,上述各有利方式可以自由地组合、叠加。
以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
Claims (10)
1.一种电子工程图纸的子图提取方法,其特征在于,包括:
从电子工程图纸文件中提取单张图纸,并将提取的多张单张图纸另存为新的电子工程图纸文件集合;
确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容;
基于每个子图的名称和内容,将每个子图另存为新的子图工程文件。
2.根据权利要求1所述的电子工程图纸的子图提取方法,其特征在于,其中,
从电子工程图纸文件中提取单张图纸,包括:
针对电子工程图纸文件,根据工程图纸的制图规范中图框矩形的标准尺寸,遍历电子工程图纸文件中所有矩形,查找与标准尺寸相同的矩形,将查找到的矩形确定为电子工程图纸文件的图框,一个图框中包含一张图纸;
和/或,
将提取的多张单张图纸另存为新的电子工程图纸文件集合,包括:
根据每个图框即每张图纸所对应矩形的尺寸和位置,确定每个图框的标题栏矩形区域,并获取每个图框的标题栏矩形区域内的所有词组,形成词组集合;每个词组集合中的元素,包括:内容、字号、起点坐标和方向向量;
从每个图框的标题栏矩形区域内的所有词组的词组集合中查询内容包括图纸名称的词组,根据图纸名称的词组的起点坐标和方向向量确定图纸名称的属性值;
以及,针对每个图框,将每个图框所对应矩形的矩形范围内所有图形元素复制并粘贴到一个新建的电子工程图纸内;将每个图框的图框本身、以及与图框本身有交集部分的图形元素也加入到该新建的电子工程图纸内;并将该新建的电子工程图纸按电子工程图纸文件的名称-图纸名称的属性值的命名方式命名,另存为一张图纸文件,以将电子工程图纸文件中所有另存得到的图纸文件形成新的电子工程图纸文件集合;
和/或,
确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容,包括:
遍历新的电子工程图纸文件集合中每张图纸,提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合;以及,
为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树;
遍历子图名集合中每个子图名称,计算每个子图的矩形范围,形成矩形范围集合;
针对矩形范围集合中每个子图的矩形范围,提取每个子图的矩形范围内的所有图元即第一图元子集、以及与每个子图的矩形范围相交的所有图元即第二图元子集,将第一图元子集和第二图元子集复制到一个新建的子图工程文件,并按电子工程图纸文件的名称-图纸名称的属性值-子图名称的命名方式给子图工程文件命名。
3.根据权利要求2所述的电子工程图纸的子图提取方法,其特征在于,其中,
提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合,包括:
获取每张图纸的图框所对应的矩形内、以及每张图纸的标题栏矩形外的所有文本集合和直线集合;文本集合中每个词组包括内容、字号、起点坐标和终点坐标,直线集合中每条直线包括两个端点坐标;
获取所有文本集合中字号最大的词组,形成第一子图名集合;
针对第一子图名集合中的每个词组,将正下方没有下划线的词组从子图名集合中剔除,形成第二子图名集合;
按建筑工程师的读图习惯,对第二子图名集合中的每个词组进行排序,形成第三子图名集合;
若第三子图名集合中只有一个词组,则提取下一张图纸中的子图名称,以此类推,直至提取所有图纸的子图名称后,形成新的电子工程图纸文件集合中所有图纸的子图名集合;
和/或,
为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树,包括:
将新的电子工程图纸文件集合中每张图纸的图纸区域按X方向中线和Y方向中线划分成四个一级平面区域,对每个一级平面区域按同样的划分方式划分成四个二级平面区域,以此类推形成一个树结构;
确定每张图纸中每个图元的矩形包围盒,按空间位置在每个矩形包围盒中填入树结构中对应子区域的叶节点,形成搜索树;
和/或,
计算每个子图的矩形范围,形成矩形范围集合,包括:
遍历子图名集合中的每个词组,计算每个词组的边界矩阵;
针对每个词组的边界矩阵中的边界矩形,确定每个词组所对应子图的Y轴范围,并确定每个词组所对应子图的X轴范围,形成矩形范围集合。
4.根据权利要求3所述的电子工程图纸的子图提取方法,其特征在于,其中,
确定每个词组所对应子图的Y轴范围,包括:
将每个词组的边界矩阵中的边界矩形沿着Y轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形;
每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动;
和/或,
确定每个词组所对应子图的X轴范围,包括:
将每个词组的边界矩阵中的边界矩形沿着X轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形;
每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动。
5.一种电子工程图纸的子图提取装置,其特征在于,包括:
提取单元,用于从电子工程图纸文件中提取单张图纸,并将提取的多张单张图纸另存为新的电子工程图纸文件集合;
提取单元,还用于确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容;
存储单元,用于基于每个子图的名称和内容,将每个子图另存为新的子图工程文件。
6.根据权利要求5所述的电子工程图纸的子图提取装置,其特征在于,其中,
提取单元从电子工程图纸文件中提取单张图纸,包括:
针对电子工程图纸文件,根据工程图纸的制图规范中图框矩形的标准尺寸,遍历电子工程图纸文件中所有矩形,查找与标准尺寸相同的矩形,将查找到的矩形确定为电子工程图纸文件的图框,一个图框中包含一张图纸;
和/或,
提取单元将提取的多张单张图纸另存为新的电子工程图纸文件集合,包括:
根据每个图框即每张图纸所对应矩形的尺寸和位置,确定每个图框的标题栏矩形区域,并获取每个图框的标题栏矩形区域内的所有词组,形成词组集合;每个词组集合中的元素,包括:内容、字号、起点坐标和方向向量;
从每个图框的标题栏矩形区域内的所有词组的词组集合中查询内容包括图纸名称的词组,根据图纸名称的词组的起点坐标和方向向量确定图纸名称的属性值;
以及,针对每个图框,将每个图框所对应矩形的矩形范围内所有图形元素复制并粘贴到一个新建的电子工程图纸内;将每个图框的图框本身、以及与图框本身有交集部分的图形元素也加入到该新建的电子工程图纸内;并将该新建的电子工程图纸按电子工程图纸文件的名称-图纸名称的属性值的命名方式命名,另存为一张图纸文件,以将电子工程图纸文件中所有另存得到的图纸文件形成新的电子工程图纸文件集合;
和/或,
提取单元确定新的电子工程图纸文件集合中每张图纸的所有子图,提取每个子图的名称和内容,包括:
遍历新的电子工程图纸文件集合中每张图纸,提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合;以及,
为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树;
遍历子图名集合中每个子图名称,计算每个子图的矩形范围,形成矩形范围集合;
针对矩形范围集合中每个子图的矩形范围,提取每个子图的矩形范围内的所有图元即第一图元子集、以及与每个子图的矩形范围相交的所有图元即第二图元子集,将第一图元子集和第二图元子集复制到一个新建的子图工程文件,并按电子工程图纸文件的名称-图纸名称的属性值-子图名称的命名方式给子图工程文件命名。
7.根据权利要求6所述的电子工程图纸的子图提取装置,其特征在于,其中,
提取单元提取每张图纸中的子图名称,形成新的电子工程图纸文件集合中所有图纸的子图名集合,包括:
获取每张图纸的图框所对应的矩形内、以及每张图纸的标题栏矩形外的所有文本集合和直线集合;文本集合中每个词组包括内容、字号、起点坐标和终点坐标,直线集合中每条直线包括两个端点坐标;
获取所有文本集合中字号最大的词组,形成第一子图名集合;
针对第一子图名集合中的每个词组,将正下方没有下划线的词组从子图名集合中剔除,形成第二子图名集合;
按建筑工程师的读图习惯,对第二子图名集合中的每个词组进行排序,形成第三子图名集合;
若第三子图名集合中只有一个词组,则提取下一张图纸中的子图名称,以此类推,直至提取所有图纸的子图名称后,形成新的电子工程图纸文件集合中所有图纸的子图名集合;
和/或,
提取单元为新的电子工程图纸文件集合中每张图纸中的图元建立搜索树,包括:
将新的电子工程图纸文件集合中每张图纸的图纸区域按X方向中线和Y方向中线划分成四个一级平面区域,对每个一级平面区域按同样的划分方式划分成四个二级平面区域,以此类推形成一个树结构;
确定每张图纸中每个图元的矩形包围盒,按空间位置在每个矩形包围盒中填入树结构中对应子区域的叶节点,形成搜索树;
和/或,
提取单元计算每个子图的矩形范围,形成矩形范围集合,包括:
遍历子图名集合中的每个词组,计算每个词组的边界矩阵;
针对每个词组的边界矩阵中的边界矩形,确定每个词组所对应子图的Y轴范围,并确定每个词组所对应子图的X轴范围,形成矩形范围集合。
8.根据权利要求7所述的电子工程图纸的子图提取装置,其特征在于,其中,
提取单元确定每个词组所对应子图的Y轴范围,包括:
将每个词组的边界矩阵中的边界矩形沿着Y轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形;
每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动;
和/或,
提取单元确定每个词组所对应子图的X轴范围,包括:
将每个词组的边界矩阵中的边界矩形沿着X轴向上移动,每移动设定高度便形成该移动次数时的新边界矩形;
每次移动后,若起始点为0则继续移动,若起始点不为0则沿搜索树,计算本次移动形成的新边界矩形是否与该张图纸中的图形相交;若不相交或只与图框相交则停止移动并记录该词组的矩形范围的Y轴最小值和最大值,若相交则继续移动。
9.一种终端,其特征在于,包括:如权利要求5至8中任一项所述的电子工程图纸的子图提取装置;
或者,包括:
处理器,用于执行多条指令;
存储器,用于存储多条指令;
其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行如权利要求1至4中任一项所述的电子工程图纸的子图提取方法。
10.一种存储介质,其特征在于,所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行如权利要求1至4中任一项所述的电子工程图纸的子图提取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010248542.6A CN111460204B (zh) | 2020-04-01 | 2020-04-01 | 电子工程图纸的子图提取方法、装置、存储介质及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010248542.6A CN111460204B (zh) | 2020-04-01 | 2020-04-01 | 电子工程图纸的子图提取方法、装置、存储介质及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111460204A true CN111460204A (zh) | 2020-07-28 |
CN111460204B CN111460204B (zh) | 2023-05-09 |
Family
ID=71681649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010248542.6A Active CN111460204B (zh) | 2020-04-01 | 2020-04-01 | 电子工程图纸的子图提取方法、装置、存储介质及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111460204B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112581476A (zh) * | 2020-12-08 | 2021-03-30 | 北京构力科技有限公司 | 在建筑设计中使用的图纸分割的方法和电子设备 |
CN112801620A (zh) * | 2021-01-29 | 2021-05-14 | 万翼科技有限公司 | 工程信息处理方法、装置、设备及存储介质 |
CN115600266A (zh) * | 2022-11-10 | 2023-01-13 | 广东电网能源发展有限公司(Cn) | 一种输变电工程的数字化处理方法及系统 |
CN117408000A (zh) * | 2023-10-24 | 2024-01-16 | 哈尔滨航天恒星数据系统科技有限公司 | 一种管线点坐标引出注记自动标注与避让的方法、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020009223A1 (en) * | 2000-07-13 | 2002-01-24 | Wong Tin Cheung | Computer automated process for analysing and interpreting engineering drawings |
CN101673347A (zh) * | 2008-09-12 | 2010-03-17 | 纬衡浩建科技(深圳)有限公司 | 一种电子图档拆分方法 |
CN110209630A (zh) * | 2019-04-25 | 2019-09-06 | 广东联城住工装备信息科技有限公司 | Dxf文件信息处理方法、装置、计算机设备和存储介质 |
CN110414149A (zh) * | 2019-07-30 | 2019-11-05 | 沈阳智朗科技有限公司 | 一种基于AutoCAD图元图纸的解析方法及系统 |
-
2020
- 2020-04-01 CN CN202010248542.6A patent/CN111460204B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020009223A1 (en) * | 2000-07-13 | 2002-01-24 | Wong Tin Cheung | Computer automated process for analysing and interpreting engineering drawings |
CN101673347A (zh) * | 2008-09-12 | 2010-03-17 | 纬衡浩建科技(深圳)有限公司 | 一种电子图档拆分方法 |
CN110209630A (zh) * | 2019-04-25 | 2019-09-06 | 广东联城住工装备信息科技有限公司 | Dxf文件信息处理方法、装置、计算机设备和存储介质 |
CN110414149A (zh) * | 2019-07-30 | 2019-11-05 | 沈阳智朗科技有限公司 | 一种基于AutoCAD图元图纸的解析方法及系统 |
Non-Patent Citations (1)
Title |
---|
李贤兵,张应中,罗晓芳: "工程图纸标题栏信息自动提取方法的研究" * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112581476A (zh) * | 2020-12-08 | 2021-03-30 | 北京构力科技有限公司 | 在建筑设计中使用的图纸分割的方法和电子设备 |
CN112801620A (zh) * | 2021-01-29 | 2021-05-14 | 万翼科技有限公司 | 工程信息处理方法、装置、设备及存储介质 |
CN112801620B (zh) * | 2021-01-29 | 2022-08-19 | 万翼科技有限公司 | 工程信息处理方法、装置、设备及存储介质 |
CN115600266A (zh) * | 2022-11-10 | 2023-01-13 | 广东电网能源发展有限公司(Cn) | 一种输变电工程的数字化处理方法及系统 |
CN115600266B (zh) * | 2022-11-10 | 2023-06-06 | 广东电网能源发展有限公司 | 一种输变电工程的数字化处理方法及系统 |
CN117408000A (zh) * | 2023-10-24 | 2024-01-16 | 哈尔滨航天恒星数据系统科技有限公司 | 一种管线点坐标引出注记自动标注与避让的方法、电子设备及存储介质 |
CN117408000B (zh) * | 2023-10-24 | 2024-04-09 | 哈尔滨航天恒星数据系统科技有限公司 | 一种管线点坐标引出注记自动标注与避让的方法、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111460204B (zh) | 2023-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111460204B (zh) | 电子工程图纸的子图提取方法、装置、存储介质及终端 | |
CN111368757A (zh) | 面向机器学习的柱大样建筑图纸图层分类方法及系统 | |
US11829437B2 (en) | System for comparison and merging of versions in edited websites and interactive applications | |
CN110147774B (zh) | 表格式图片版面分析方法和计算机存储介质 | |
JP3940491B2 (ja) | 文書処理装置および文書処理方法 | |
JP4343213B2 (ja) | 文書処理装置および文書処理方法 | |
JP5789525B2 (ja) | 文書コンテンツの順序付け | |
US7149347B1 (en) | Machine learning of document templates for data extraction | |
CN108255489B (zh) | 前端界面代码生成方法、装置、电子设备及存储介质 | |
CN110180186B (zh) | 一种地形图转换方法及系统 | |
CN109189390B (zh) | 自动生成布局文件的方法、存储介质 | |
CN110070087A (zh) | 图片识别方法及装置 | |
CN114386504A (zh) | 一种工程图纸文字识别方法 | |
CN111178083A (zh) | 一种bim和gis的语义匹配方法及装置 | |
Touya et al. | Progressive block graying and landmarks enhancing as intermediate representations between buildings and urban areas | |
CN101419714A (zh) | 一种基于草图速写的交互式文档排版方法 | |
CN113034515A (zh) | 基于包围盒树的多边形裁剪方法、电子设备及存储介质 | |
CN110941616B (zh) | 出版物中关联数据生成方法、装置、设备及存储介质 | |
CN115019310B (zh) | 图文识别方法及设备 | |
CN107491814B (zh) | 一种用于知识推送的过程案例分层知识模型构建方法 | |
CN114092952A (zh) | 一种基于dxf格式的户型图信息提取与向量化方法及装置 | |
CN113901540A (zh) | 一种门窗表建筑图纸的类型和门窗的自动识别方法 | |
CN114818616A (zh) | 一种web编辑器的数据编辑分析处理方法及装置 | |
CN113642542A (zh) | 基于位置约束的手写汉字同名笔画提取方法 | |
CN111103987B (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 |