买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种桥梁上部结构现浇梁识别方法和系统_北京梦诚科技有限公司_202310967929.0 

申请/专利权人:北京梦诚科技有限公司

申请日:2023-08-02

公开(公告)日:2024-04-05

公开(公告)号:CN116823807B

主分类号:G06T7/00

分类号:G06T7/00;G06T7/11;G06V10/764;G06T7/136;G06T7/13

优先权:

专利状态码:有效-授权

法律状态:2024.04.05#授权;2023.10.24#实质审查的生效;2023.09.29#公开

摘要:本发明提出一种桥梁上部结构现浇梁识别方法和系统。其中,方法包括:对图纸进行图片前置处理,得到只剩下图纸标题和图纸内容的二值图;对所述二值图进行图纸区域分割,分割后的二值图的图纸区域按照从上到下和从左到右的顺序排序,每个图纸区域中包含了图纸标题和图纸轮廓;对图纸区域分割后的二值图进行分类,并根据图形类别识别二值图,得到梁的信息;所述图形类别包括:立剖面图、板平面图和横截面图;对所述梁的信息进行组合处理,得到完整且准确的现浇梁上部结构信息。本发明能够在保证准确性和效率的基础上,还可以大幅度的降低施工成本和门槛,使得三维模型的创建和维护更加简单准确。

主权项:1.一种桥梁上部结构现浇梁识别方法,其特征在于,所述方法包括:步骤S1、对图纸进行图片前置处理,得到只剩下图纸标题和图纸内容的二值图;步骤S2、对所述二值图进行图纸区域分割,分割后的二值图的图纸区域按照从上到下和从左到右的顺序排序,每个图纸区域中包含了图纸标题和图纸轮廓;步骤S3、对图纸区域分割后的二值图进行分类,并根据图形类别识别二值图,得到梁的信息;所述图形类别包括:立剖面图、板平面图和横截面图;在所述步骤S3中,识别立剖面图,得到梁的信息包括:梁长和梁高;顶板高度和底板高度;上侧边倒角高度和下侧边倒角高度;箱室内侧四个倒角宽高;梁体内部长度信息;隔板倒角宽高;伸缩缝槽口信息;识别立剖面图,得到梁的信息的方法包括:先确定梁长和梁高,即确定梁的主体区域:梁长:一个内容为数字的文本框,其下方有一根超过图形区域一半以上的横线,并且所述横线位于图形区域最上方;梁高:在梁长横线的两端外侧,存在一个旋转90度的文本框;所述文本框中的内容为数字,其右侧有第一竖线,所述第一竖线的高度就是梁高;根据梁长和梁高,确定梁的主体区域;确定是否有隔板:隔板位于梁长正中心位置,确定是否有隔板的办法是:判定在梁矩形中心位置,是否存在两根以上的第二竖线,并且所述第二竖线的特点是,第二竖线在梁的上下范围内,且第二竖线的长度超过梁的高度的一半以上;获取隔板倒角和箱室内侧倒角的宽高信息、以及伸缩缝槽口信息:隔板倒角:位于梁矩形中心位置,其文本方向为横向,文本内容为宽x高的模式,并且下方有一个第一横线,文本框矩形距离中心位置的距离不超过梁高,根据这些特征就能确定是隔板倒角的宽高信息;箱室内侧倒角:排除隔板倒角,梁的主体区域内的其他倒角即为箱室内侧倒角的宽高信息;伸缩缝槽口:其内容也是宽x高的模式,只不过其位置位于梁的两端顶部;获取顶板高度、底板高度、上侧边倒角高度和下侧边倒角高度:高度信息的文本框为90度,并且文本右侧有一根第三竖线;如果所述第三竖线对应两个数字文本框,则外层的为顶高度和底板高度,内层的为上侧边倒角高度和下侧边倒角高度;梁体内部长度信息:确定梁体内箱室的左右两端位置,即箱室的左右两个第四竖线,这两个第四竖线的特点是,第四竖线的长度超过梁高的一半以上,并且第四竖线的上方距离梁顶部的距离不超过梁高的14,从梁的两侧开始遍历竖线,遇到符合条件的竖线即为箱室的左右两端位置;确定“过渡段”的位置,过渡段的特点是:在梁体内有一根第五竖线,所述第五竖线与梁底部竖线相交,如果第五竖线将底部横线分割为两段,那么其中一侧线的斜率大,而另外一侧则是纯水平线,那么这个位置就是过渡段的拐点;根据所述梁体内箱室的左右两端位置和“过渡段”的位置,确定梁体内部长度信息;在所述步骤S3中,识别板平面图,得到梁的信息包括:左右腹板宽度;加宽段长度、过渡段长度和过渡段宽度;过渡段倒角的宽度和长度;识别板平面图,得到梁的信息的方法包括:找到区域内的文本,将所述文本与ContourLine找线中的CntLine的结构信息相结合查找主体区域,具体实现方案如下:针对等宽矩形,通过长横线和文字通过OCR检测得到的文本位置和直线位置的信息,横向文本和横线生成横向标注线,纵向文本和竖线生成纵向标注线;横向标注线出现的最左侧的位置作为主体区域的左侧位置,同理生成右侧和上侧和下侧位置;针对曲线,存在CntLine的结构,根据exact_thickness和thickness的对比,得到标注线是否是曲线,如果是曲线作为横向标注线,左右分别处理;不管是否是曲线,纵向标注线都是直线;寻找左右侧的腹板宽度,如果存在多箱室的情况,寻找中腹板宽度,具体实现方案如下:基于主体区域寻找在主体区域中间13区域的第六竖线;由于左右腹板宽度的标注方式是在其中找到从上到下的标注线,标注线可能会从头到尾,也可能是一段一段的标注;根据水平x轴位置进行第六竖线分组;对于每组将所述文本进行匹配,选取文本最多的分组作为隔板标注;由于腹板宽度在右侧的范围是在75cm以内,所以根据全图的度量信息,右侧腹板宽度通过从左往右找到对应宽度,左侧腹板宽度通过从右往左找到对应宽度;文本的长度超过6个字符的时候一定是标注了多层,所以此时会查找中腹板宽;首先根据水平x轴位置进行第六竖线分组;对于每组将所述文本进行匹配;去掉在找到的左腹板宽和右腹板宽分组的文本,取出最中间的文本组合,得到中腹板宽;获取加宽段长度、过渡段长度和过渡段的宽度:找到的主体区域,找到其外部的标注线;取横向文本最多的标注线作为详细标注;找到的主体外部标注线,通过与标注线相交的第七竖线确定标注线的区域;此时以找到的腹板的标注线的左侧的区域为候选文本,并且以腹板标注区域为分隔线,将标注线的区域分隔成左右两侧,左侧成为左侧文本,右侧成为右侧文本;并且以此分隔线为基准,将主体区域划分为左右两侧;如果所述左侧文本中出现小于100的数值,则存在倒角信息,所述数值为腹板倒角长度;如果倒角信息文本的右侧出现2个文本,则所述2个文本是加宽段长度以及过渡段长度;如果倒角信息文本的右侧只有1个文本,说明没有加宽段,只存在过渡段,所述1个文本为过渡段长度;如果所述左侧文本没有小于100的数值,则说明不存在倒角信息;所述左侧文本中出现超过3个文本,则从右到左为过渡段,加宽段,否则不存在加宽段,只有过渡段,最右侧为过渡段;如果存在加宽段,加宽段宽度在所述左侧文本的左右竖线区域范围内的主体区域查找;如果不存在加宽段,则在过渡段的左侧,以及倒角的右侧查找过渡段宽度;获取腹板倒角的宽度和长度:如果左侧主体区域内存在A×B的模式的文本,并且在主体区域内部,则是标注倒角宽度的信息,A为过渡段倒角的长度,B是过渡段倒角的宽度;如果左侧主体区域内不存在A×B的模式的文本,并且确定了存在腹板倒角的长度;则寻找腹板倒角长度右侧的标注线,对于标注线中的文本,找到y轴位置重叠的文本作为文本a;根据文本a位置在左侧文本中找到与其同一x轴位置的文本b,文本b与文本a相减得到腹板倒角的宽度;在所述步骤S3中,识别横截面图,得到梁的信息包括:梁高、悬臂厚度及顶板底板厚度、梁竖向信息;放坡信息;梁横向信息;所述梁横向信息包括:梁宽、腹板、悬臂、箱室及其倒角;识别横截面图,得到梁的信息的方法包括:补充处理标题:根据图片前置处理中的识别到的文本内容,保留下方有两条像素长度与文本像素长度相近的两条横线的文本,得到第一标题文本;使用形态学变换获取横线,将横线按照长度相近垂直间距不超过10像素进行分组,划分出双横线并与文本进行匹配,保留匹配到双横线的文本;由于部分第一标题文本无法正确识别,所以未匹配到文本的双横线会应用其坐标信息生成空白文本作为标题保留下来;结合模型识别结果再次进行区域划分:横截面通过模型识别确定主体区域及主体内部空腔区域的位置,后续处理均在此信息的基础上实现;模型识别的类型分为,beam_box箱梁横截面、quad_inner_box四边形箱室、hex_inner_box六边形箱室和oct_inner_box八边形箱室;在模型识别结果中过滤掉与图片前置处理结果中的立剖面或板平面区域有重叠的部分;当水平方向存在横截面区域重叠的情况时,将保留左侧的横截面区域;将模型识别到的箱室进行分组,以便后续划分给不同的横截面区域;分组的原则为,相邻箱室中心点水平方向的间距不大于箱室宽度的2倍并且中点垂直方向的间距不大于高度的12;将第一标题文本划分给识别到的横截面区域,识别到的横截面区域如果出现重叠去掉面积小的区域,保留的区域与第一标题文本按照就近原则进行划分;将每组箱室划分给横截面区域,划分的原则为,箱室矩形被横截面矩形包含或重叠区域面积在百分之八十以上;至此横截面区域已经划分好箱室和标题;使用cv2.findContours找到图纸轮廓,按照就近原则将每个轮廓划分给横截面区域;至此横截面区域划分已经完成,每个横截面将包含识别到的主体区域、箱室、标题及标注信息;识别每个横截面区域内的文本:使用模型识别横截面区域内0度和90度方向的文本;保留内容为CxD格式或数字和字母的文本;将保留的文本按照方向划分为水平文本或竖直文本,将水平文本中位置与在第一标题文本在垂直方向位置在于定义范围内的文本划分为第二标题文本,用于再次校正标题;校正标题,将所述第二标题文本按照从上到下从左到右进行排序,将最左上的文本作为标题;获取横截面图的横向标注线、竖向标注线及梁主体结构特征线:使用形态学变换获取横截面区域内的横线和竖线,过滤掉穿过文本的小于预定义长度的横线和竖线;对横向或竖向文本及线进行划分:横向文本分组,将所述横向文本的中心点位置按照垂直方向坐标在预定义范围内的分为一组;将A%格式分组的文本作为放坡信息的文本,且对分组中的每个文本内容按照格式进行校正,其中A为浮点数;对每个横向文本分组进行横向标注线匹配处理,匹配原则为横线与当前分组中心点垂直方向坐标间距小于文本高度且距离最近,横线长度与文本分组所占像素在预定义范围内的划分为当前文本分组的标注横线;除了匹配到文本的横线外,其余横线均作为非标注横线保留;至此需要的放坡及梁横向的信息的标注文本和非标注横线均已处理完成;取大于最长文的标注横线的长度95%的一组横线,进行从上到下的排序,将最上面的一条横线作为基准,重新调整梁主体区域的左右位置坐标;对竖向文本进行匹配竖线操作,得到梁竖向文本信息及非标注竖线;取标注竖线作为基准,重新调整梁主体区域的上下位置坐标;获取梁主体的横线和竖线,其中包括梁上下边线、凹槽线、悬臂线、设计线、支座线、箱体的左右边线、横梁加宽线;对标注横线和标注竖线进行分割处理,分割原则为水平方向每组文本的数量与标注横线被竖向线段分割后的线段数量一致的将保留,保留被梁主体的上下边线及其延长线进行分割的所有标注竖线;至此,所有梁的横向或竖向标注文本及标注线、构成梁主体特征的横竖线均已准备好;获取梁的放坡信息:根据放坡信息的文本相对于梁主体区域位置,放坡方式分为,两侧、左侧和右侧;对放坡坡度值按照实际特征再次进行校正得到最终的放坡信息,即放坡方式、左放坡坡度和右放坡坡度;获取梁宽、设计线位置、左右悬臂长度、左右腹板投影宽度、左右横梁加宽宽度、左右腹板及中腹板、箱体宽度、边顶板或底板倒角和中顶板或底板倒角;对标注文本以组为单位按照从上到下进行排序,每组文本又按照从左到右排序,对应的标注线随之变化;以箱体的左右边界坐标为基准,将标注文本及标注线划分为左侧、右侧和中间三组;处理左侧及右侧标注文本及其标注线,获取梁的左侧悬臂长度、右侧悬臂长度、左侧腹板投影宽度、右侧腹板投影宽度、左侧横梁加宽宽度和右侧横梁加宽宽度:若存在左侧横梁加宽且加宽方式为悬臂内加宽,将左侧标注文本分组最后一个作为左侧横梁加宽宽度;当加宽为悬臂外加宽时,左侧标注文本分组第一个作为左侧横梁加宽宽度;获取到了箱体的左右边线且斜率小于0.06,则左右两侧的标注文本均为悬臂长度信息,左侧悬臂长度为左侧文本组之和;没有箱体左右边线或边线斜率大于等于0.06,则标注文本将会包含悬臂及腹板投影;左侧标注文本组最后一个文本所在的标注线段若与箱体左边线相交且不与梁主体左侧相交将判断为左侧腹板投影宽度,左侧标注文本组中的剩余文本和作为左侧悬臂长度;否则左侧的所有标注文本的和作为左侧悬臂长度;处理中间标注文本及其标注线,获取到剩余的梁所有横向信息:判断标注文本是否为支座或固结的信息;如果标注线段与梁主体水平方向左右两侧均相交,则此标注文本为梁宽;如果标注文本数量为2,且其对应的标注线段与梁左侧或右侧相交,将判断此组标注文本为设计线位置,设计线左侧的记录为设计线位置信息,右侧的记录为梁主体右侧信息;当标注线段水平方向位置在箱体内或者在箱体外但在梁主体内,此标注文本分组将作为梁箱体的信息进行处理;判断当前标注方式为是腹板与箱室间隔标注,还是腹板与箱室组合标注;如有标注内容判断为支座或固结,则将不进行处理;根据模型识别到箱室区域,判断箱室区域内的标注线是否为箱室标注;当无法判断时,将结合所述标注方式判断当前标注为箱室标注还是腹板标注;判断为腹板标注后,根据在箱室的相对位置判断为左右编腹板还是中腹板;判断为箱室标注后,将当前标注文本作为一个箱室的宽度;根据箱室内的文本获取倒角信息,同理根据相对位置判断边倒角还是中倒角;其中倒角的形式包含两种,一种通过文本格式判断,另一种需要线查找三角形两条相交直角边的形状,再根据形状两侧的文本判断是否为倒角;若未获取到腹板宽度信息,需要根据梁主体内部箱室间或箱室与箱体间的标注文本获取边腹板或中腹板宽度;如果出现梁的部分信息无法获得,需要根据已经获得的信息及梁的特征补充或校正部分无法获得的信息;若没有获取到设计线位置,将再次根据梁主体左右两侧长度大于梁主体高度的长竖线,再次获取梁的设计线位置信息;至此获取到梁横向的所有信息;获取梁高、悬臂端部及根部厚度、顶板及底板厚度和横梁加高:对标注文本以组为单位按照从左到右进行排序,每组标注文本又按照从上到下排序,对应的标注线随之变化;如果有凹槽线时,若标注线段与梁上边界和所述凹槽线都相交时,将不做操作处理;标注线与梁上下边界都相交,且标注文本位于标注线垂直方向中间位置时,则所述标注文本判断为梁高;箱体区域左右两侧的标注文本为悬臂厚度,x轴位置靠近梁主体左侧或右侧的标注文本为端部厚度,靠近箱体的标注文本为根部厚度;x轴位置位于箱体内部,与梁主体上边线相交的标注文本为顶板厚度,下边线相交的标注文本为底板厚度;与梁底边线相交,且在梁主体外的标注文本为横梁加高;至此获取到梁横向和竖向的所有信息;步骤S4、对所述梁的信息进行组合处理,得到完整且准确的现浇梁上部结构信息。

全文数据:

权利要求:

百度查询: 北京梦诚科技有限公司 一种桥梁上部结构现浇梁识别方法和系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。