一种基于计算机平法标注的结构梁数据自动识别及提取方法与流程
本发明涉及建筑工程计算机辅助设计数据处理,具体为基于计算机平法标注的结构梁数据自动识别及提取方法。
背景技术:
1、建筑结构施工图中,梁配筋信息常采用平法标注表达,并以dwg格式存储。为进行工程量统计或结构分析,需要从图纸文件中自动提取梁的名称、截面、钢筋以及跨几何信息。
2、目前,行业内针对dwg结构图纸的梁构件信息提取技术主要分为两类主流方案,两类方案均存在固有技术缺陷,难以满足高精度、自动化的工程数据提取需求,具体如下:
3、其一、为基于图像与简易ocr的识别提取方法。该方案需先将矢量格式的dwg图纸转换为光栅图像再开展识别作业,彻底舍弃了dwg文件精准的矢量图元信息,存在根本性技术短板。图像转换过程易造成图纸细节精度丢失,同时无法有效处理图纸文字重叠、线条交叉等常见工况,识别效果高度依赖原始图像质量,稳定性与适配性极差,难以实现结构梁信息的精准有效提取。该类方案完全丢失了矢量图纸中图元间的几何关联关系,无法基于文字与引线的空间位置关系精准绑定梁标注,也无法利用梁线的拓扑关系完成多跨梁的完整提取,这正是现有梁识别技术跨数错漏、标注关联错误的核心诱因之一。
4、其二、为基于cad软件api的交互式提取方法。该方式依托autocad的activex、.netapi编写脚本,可在cad环境内读取图纸图元信息,虽保障了基础提取精度,但自动化程度极低。作业过程需人工手动选中对应图元、触发执行指令,无法实现批量、无人值守的全自动提取作业。该方案仅能作为人工辅助工具,并非真正意义上的自动化提取系统,处理效率低下,无法适配大规模工程图纸的数据复用需求。该类方案同样未解决梁标注与梁线的自动关联、多跨梁线的自动遍历难题:由于依赖人工点选图元,无法基于平法标注规则自动匹配引线、关联标注文字,也无法利用集中标注中的跨数n自动校验并补全多跨梁线,仅能实现单跨、少量梁的信息提取,难以支撑全楼梁构件的批量数字化。
5、上述两类方案各有局限,其中基于cad api的交互式提取方案虽可依托cad环境获取精准的矢量图元,但仍未解决梁标注关联、多跨梁线提取的核心精度问题:通常先通过正则表达式匹配文字获取梁名称,再以名称位置为中心按附近距离收集周围文字作为标注内容;对于集中标注所特有的引线,多采用简单的直线邻近判断,未综合考察文字插入点与直线的包含关系、垂直距离以及文字方向与直线角度的配合,极易将无关线条误认为引线,造成标注文字关联错误,导致后续钢筋解析混乱。在梁线提取方面,梁构件往往由多跨连续直线段构成,现有方案大多依赖相邻线段端点坐标的接近性进行链式连接,一旦梁线因绘制不规范出现支座处微小间隙,或相邻跨梁线存在轻微偏折,搜索过程便会终止,无法自动遍历全部跨的梁线。此外,两类方案均未充分利用集中标注中明确给出的跨数n作为提取终止条件和校验依据,提取的跨数常常与实际不符,出现遗漏或多余。由于缺乏精确的引线识别手段和基于标注跨数的多跨自动搜索机制,现有的结构梁数据识别与提取技术难以满足准确性和完整性的要求,成为设计数据高效再利用的瓶颈。
技术实现思路
1、本发明的目的在于提供一种基于计算机平法标注的结构梁数据自动识别及提取方法,该方法能够准确捕获集中标注引线并精确关联标注文字,同时依据标注跨数自动迭代搜索并完整提取全部多跨梁线,以获得正确、完整的结构化梁数据。
2、为了实现上述目的,本发明提供如下技术方案:本发明提供一种基于计算机平法标注的结构梁数据自动识别及提取方法,用于对建筑结构施工图中按平法标注的梁配筋信息进行自动识别和结构化提取,以替代烦琐的人工读取操作。该方法包括以下步骤:
3、步骤一,获取dwg文件中的文字图元和直线图元。优选的,获取文字图元时,通过dwg解析引擎遍历dwg数据库,提取所有text和mtext图元,并记录每个图元的文本内容、插入点坐标、旋转角度和边界框信息;获取直线图元时,提取所有line和polyline图元,并记录每个图元的起点坐标、终点坐标、长度和角度信息。由此可完整拾取图纸中用于表征梁标注和梁线的基础图形元素,为后续精确识别提供数据基础。
4、步骤二,从文字图元中识别出梁名称,并构建初始梁数据对象。优选的,遍历所有文字图元,利用预定义的正则表达式匹配符合梁命名规则的文字;匹配成功后,以该文字图元作为梁的初始标识,创建数据结构对象,将文本内容存入梁名称字段,将插入点坐标作为梁名称位置存入该对象。通过正则匹配能够从大量图元中快速筛分出所有梁构件标识,避免遗漏。
5、步骤三,基于几何关系,从直线图元中识别出与梁名称关联的集中标注引线。作为本发明的一个优选技术方案,对于每一个梁名称文字图元和每一条直线图元,判断该文字图元的插入点是否位于该直线图元的起点和终点所定义的线段范围内,且插入点到该直线图元的垂直距离小于预设容差值,同时文字图元的旋转角度与该直线图元的角度之差接近90度;同时满足上述三个条件的直线图元被判定为该梁名称对应的集中标注引线。该约束条件充分利用了引线与名称文字垂直、居中的图形特征,从而可靠地建立起名称与引线的对应关系。
6、步骤四,基于空间关系和语义规则,识别出与集中标注引线关联的集中标注文字。优选的,以集中标注引线为中心,在预设半径范围内搜索所有文字图元作为候选文字集合;遍历候选文字集合中的每个文字图元,对其文本内容依次执行分级语义匹配:第一级匹配文本中是否包含字符“l”,若包含则将该文本标记为梁名称;第二级匹配文本中是否包含字符“@”,若包含则将该文本解析为箍筋信息;第三级匹配文本中是否包含字符“;”,若包含则将该文本解析为上部钢筋和下部钢筋的分隔信息;第四级匹配文本中是否包含字符“n”或“g”,若包含则将该文本解析为腰筋信息。将匹配成功的文字图元确定为集中标注文字,按匹配到的语义类型将文本内容存入数据对象的对应字段。这样的分级语义解析策略,能够适应平法标注中集中标注文字多行、无序的排列特点,精确抓取截面尺寸、箍筋、上下部通长筋和腰筋等关键信息。
7、步骤五,基于集中标注引线的几何位置,识别出集中标注所在跨的梁线。作为优选,以集中标注引线为基准,在所有直线图元中搜索与该引线在二维平面内存在交点且方向相互垂直的直线图元,将其标记为候选梁线;从候选梁线中筛选出与同跨内另一条候选梁线相互平行且端点间距小于预设阈值的两条直线图元,作为该跨的两条梁线。由此可准确锁定集中标注所指跨的梁段几何线,为后续多跨梁线扩展提供起始条件。
8、步骤六,根据梁名称对应的集中标注中的跨数n,迭代执行多跨梁线搜索算法,获得全部n跨梁线。将步骤五中识别出的集中标注所在跨的梁线作为当前跨梁线,并将已找到的跨数初始化为1。每一次迭代中,以当前跨梁线的终点为搜索起点,在所有直线图元中搜索满足条件的下一跨候选梁线:候选梁线的方向与当前跨梁线方向的夹角小于预设角度阈值,候选梁线的起点与当前跨梁线终点的空间距离小于预设间隙阈值,候选梁线的长度与当前跨梁线长度之差的绝对值小于预设长度差阈值。将同时满足上述条件的直线图元标记为下一跨候选梁线。当搜索到的下一跨候选梁线唯一时,将其确定为下一跨梁线;当搜索到的候选梁线为多条时,分别计算每条候选梁线与当前跨梁线的方向夹角、起点间距和长度差,选择方向夹角最小、起点间距最小且长度差最小的候选梁线作为下一跨梁线。更新已找到的跨数,并以新确定的下一跨梁线作为当前跨继续迭代,直至已找到的跨数等于跨数n。
9、作为进一步优选的方案,在每次迭代的候选搜索前,先判断当前跨梁线的终点与下一跨候选梁线的起点之间是否存在共线关系;计算当前跨梁线的方向向量和从当前跨梁线的终点指向候选梁线起点的连接向量,若连接向量与方向向量的夹角小于预设共线角度阈值,则判定两者共线;仅对判定为共线的候选梁线执行后续的平行性、间隙和长度匹配判断。通过引入共线约束,能够有效过滤掉因图面复杂而出现的相交但非连续梁线的干扰。
10、作为又一优选的方案,当经过方向夹角、起点间距和长度差综合比较后仍存在多条候选梁线的得分差值小于预设差异阈值时,比较各候选梁线的中点与梁名称文字图元的插入点之间的距离,选择距离最小的候选梁线作为下一跨梁线,以确保所选梁线在整体布局上与梁构件标识位置最接近,提高连续梁线连接的合理性。
11、通过上述迭代搜索及优选判断机制,即便在图纸中梁线被其他构件截断或存在间断的情况下,也能够自动、鲁棒地串接出完整的多跨连续梁全部梁线。
12、步骤七,将提取的全部信息整合为结构化数据并输出。优选的,为每个梁构件创建一个json对象,该json对象包含:梁名称字段、从集中标注文字中解析出的梁截面宽度和高度字段、跨数字段以及跨列表字段;跨列表字段存储一个数组,数组中的每个元素对应一个跨的结构化信息,每个元素中包含该跨的两条梁线的起点坐标和终点坐标、该跨的截面尺寸以及该跨对应的原位标注文字内容。最终输出的结构化数据可直接为建筑信息模型生成、工程量计算和钢筋翻样等下游应用提供准确、一致的数据输入。
13、本发明的方法通过逐层递进的几何分析与语义解析,实现了从原始dwg图纸到结构化梁数据的全自动转换,大幅提升结构施工图的识别处理效率与准确性。
14、在上述技术方案中,本发明提供的技术效果和优点:
15、通过采用梁名称文字插入点位于直线图元起点和终点所定义的线段范围内、垂直距离小于预设容差值且文字旋转角度与直线角度之差接近90度的三重几何条件联合判定集中标注引线,摒弃了单一的邻近匹配,从根本上避免了将支座边线、尺寸线等非引线直线错误关联为集中标注引线的情形,引线与梁名称的对应关系准确无误。在引线确定后,以引线为中心在预设半径内收集候选文字,并依次执行包含字符“l”、“@”、“;”以及“n”或“g”的分级语义匹配,据此将文本自动归类为梁名称、箍筋信息、上部与下部钢筋分隔信息以及腰筋信息,并存入梁数据对象的对应字段。这一过程利用引线精确位置限定搜索范围,分级语义规则保障了标注文字解析的条理性和完备性,避免信息错位或遗漏。
16、多跨梁线提取方面,以集中标注引线所识别的所在跨梁线为起始,根据标注中的跨数n进行迭代搜索。每次迭代以当前跨梁线终点为搜索起点,从全部直线图元中筛选同时满足方向夹角小于预设阈值、起点间距小于预设间隙阈值、长度差绝对值小于预设长度差阈值的直线作为下一跨候选。当出现多个候选时,综合比较方向夹角、起点间距和长度差,选择三项偏差均最小的候选,消除了多条相近梁线带来的歧义。迭代前通过计算连接向量与方向向量的夹角进行共线性预判,仅对共线候选执行后续匹配,有效过滤掉明显偏离的干扰线段。在候选评分差异不显著的特殊情形下,进一步比较候选梁线中点与梁名称插入点的距离,选取距离最小者,借助名称空间位置辅助判断,将搜索约束在合理区段内。上述多维约束和择优策略相互配合,即使原始图中存在梁线打断遗留的间隙、相邻跨的轻微折角或长度波动,依然能够自动追踪并提取出完整且数量等于n的全部跨梁线,跨数准确匹配设计表达,实现了多跨梁几何信息的完整提取。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com