一种巷道虚拟现实快速建模方法与流程

文档序号:18455190发布日期:2019-08-17 01:32阅读:381来源:国知局
一种巷道虚拟现实快速建模方法与流程
本发明涉及建模领域,特别涉及一种巷道虚拟现实快速建模方法。
背景技术
:地下巷道三维可视化建模和虚拟现实展示,是实现智慧矿山的关键技术之一。智慧矿山将实现矿山对象从勘察、设计、生产到闭坑的全寿命周期的动态仿真。在这个过程中,需要将大量二维图纸快速生成三维巷道模型,再生成虚拟现实模型,并基于此进行矿山全寿命周期管控。由于井下巷道属于不规则对象,无法用简单对象进行模拟,通常用cad图纸绘制中线或腰线,加上巷道断面信息来表达。在现有技术中一般用两种方法建模:第一、基于中线建模,但是基于中线的缺点在于巷道建模,在交叉口、马头门、斜坡道时,存在模型重叠,不易处理,而采用实体布尔交运算,多次并运算会操作失败。第二、基于腰线的巷道建模,但是基于腰线的缺点在于一般只能生成矩形拱和梯形拱,无法生成三心拱巷道,而用3dsmax等软件手工建模,后期处理太复杂,对于大量巷道或经常变化的巷道,无法实时更新。第三、由三维素模型(不含有材质纹理信息的模型)转换虚拟现实模型,这种方法需要进行后期数据处理,并且巷道虚拟现实模型不同于素模型,需要将巷道每个顶点附加上法线、uv坐标、切向量等信息,关联上材质球,才能获得很好的视觉效果。巷道顶板、底板、交叉口等,需要进行三角网分组,每组三角网采用不同uv算法和材质球。如果用3dsmax等软件手工uv展开和三角网分组,处理太复杂,工作量太大。技术实现要素:本发明要解决的技术问题是提供一种巷道虚拟现实快速建模方法,可以对二维巷道中线或腰线,结合巷道断面信息,快速建立真实、准确的三维巷道模型。通过对三维巷道模型进行分解、重构,并自动进行uv展开,计算顶点法向量和切向量,关联材质球,从而快速进行地下巷道虚拟现实建模。为了解决上述技术问题,本发明的技术方案为:一种巷道虚拟现实快速建模方法,包括以下步骤:(a)获取原始资料;(b)基于中线和腰线分别建模并进行法线一致化操作,计算法线和切线;(c)分离顶板和底板面并计算平面uv;(d)关联材质球进而进行uv展示。优选地,步骤(b)之中还包括以下步骤:(b1)基于中线建模,并进行法线一致化操作,计算法线和切线;(b2)基于腰线建模,并进行法线一致化操作,计算法线和切线。优选地,在步骤(b1)之中还包括以下步骤:(b11)基于断面生成实体;(b12)剔除交叠三角网,其中采用带约束德洛内三角剖分,对多边形进行三角网剖分,同时抛弃在多边形外和嵌套多边形以内的三角网;(b13)实体验证,进行法线一致化操作。优选地,在步骤(b11)还包括以下步骤:(b111)对巷道中心线按照一定布局进行加密,确保在实体布尔运算稳定,求标准断面,取样关键点;(b112)将断面移至中线每个顶点处,按照一定方位角和倾角放置;(b113)将相邻断面连接三角网,巷道端部在多边形内部连接三角网;(b114)合并、优化三角网,并计算法线一致。验证实体,确保实体通过验证。优选地,在步骤(b2)之中还包括以下步骤:(b21)快速内插顶板辅助线;(b22)生产顶板和底板两个面,合并为一个巷道实体;(b23)实体验证,进行法线一致化操作。优选地,辅助线的形成通过求出标准断面,取样控制点,完成各点坐标计算后,对三角形对应边上进行控制点坐标赋值,连接相邻三角形对应点,顶板面的生成通过分别对i型三角形巷道、ⅱ型三角形巷道、ⅲ型三角形巷道进行内插,生成一系列辅助线段,线段的高程采用三星拱内插法,进而将这些内插辅助线段采用德洛内三角剖分方法生成顶板面。优选地,步骤(c)之中还包括以下步骤:(c1)在顶底板分离的基础上,提取并计算顶板的平面uv;(c2)在顶底板分离的基础上,提取并计算底板的平面uv。优选地,在步骤(c1)之中还包括以下步骤:(c11)在分离顶底板的基础上,提取顶板面;(c12)在巷道拐弯处,剪开巷道拐角处的边;(c13)计算巷道顶点偏移的方向和距离;(c14)计算顶板的平面uv。优选地,在步骤(c2)之中还包括以下步骤:(c21)在顶底板面分离的基础上,提取底板面;(c22)计算底板的平面uv。优选地,根据上述建模方法,步骤(d)之中还包括以下步骤:(d1)对顶、底板面关联材质球,;(d2)在三维仿真环境下进行uv展示。采用上述技术方案,本发明具有适用性好,可操作性强,算法健壮,结果准确,三维展示效果逼真,大量替代低效率重复建模工作,将极大地提高地下巷道虚拟现实建模效率,为矿山生产决策及安全管理带来效益。具体的有益效果如下:第一、提高了巷道虚拟现实建模效率本算法提出的基于中线建模算法,采用实体boolean差运算,快速剔除冗余三角网,有效解决了三角网多次boolean交运算带来操作失败的问题,解决了以中线建模的难题。本算法提出的基于腰线建模算法,利用三心拱内插公式,快速内插顶板辅助线,再利用德洛内三角剖分算法,生成顶底板两个面,合并为巷道实体,解决了以腰线建模的难题。第二、基于已知场景信息,模型更加可靠、真实采用内插算法,基于矿山生产提供的信息,对巷道外形进行推测建模,如中线坐标、腰线平面及空间位置,在这些场景信息的基础上,建立的模型更加可靠、真实。第三、实现批量化自动建模,模型更新便捷该算法采用c++语言编写,封装为python软件包,可录制宏命令,记录操作参数,系统可重复自动批处理,一次操作,批量建模,极大简化了模型更新。附图说明图1为本发明建模方法其中一个步骤的布尔运算示意图;图2为本发明建模方法其中一个步骤的巷道剔除示意图;图3为本发明建模方法其中一个步骤的巷道顶板控制点计算示意图;图4为本发明建模方法其中一个步骤的德内洛三角剖分示意图;图5为本发明建模方法其中一个步骤的巷道三角形类型示意图;图6为本发明建模方法其中一个步骤的巷道出口与腰线示意图;图7为本发明建模方法其中一个步骤的不同类型三角形内插辅助线示意图;图8为本发明建模方法其中一个步骤的巷道顶点法向量示意图;图9为本发明巷道虚拟现实快速建模方法的流程示意图。具体实施方式下面结合附图对本发明的具体实施方式作进一步说明。在此需要说明的是,对于这些实施方式的说明用于帮助理解本发明,但并不构成对本发明的限定。此外,下面所描述的本发明各个实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。本发明提供了一种巷道虚拟现实快速建模流程。所述巷道虚拟现实快速建模流程包括以下流程:s10、搜集原始资料;s20、基于中线和腰线分别进行法线一致化操作,计算法线和切线;s30、分离顶板和底板面并计算平面uv;s40、关联材质球进而进行uv展示。在上述流程s20中,分别包括两个部分,第一部分是基于中线的法线一致化操作,第二部分是基于腰线的法线一致化操作,两个部分可以同时进行,也可以分别进行。具体地,在第一部分中包括以下流程:s211、基于断面生成实体;s212、剔除交叠三角网;s213、实体验证,进行法线一致化操作。具体地,在第二部分中包括以下流程:s221、快速内插顶板辅助线;s222、生产顶板和底板两个面,合并为一个巷道实体;s223、实体验证,进行法线一致化操作。在上述流程s30中,分别包括两个部分,第一部分是在顶底板分离的基础上,提取并计算顶板的平面uv;第二部分是在顶底板分离的基础上,提取并计算底板的平面uv。具体地,在第一部分中包括以下流程:s311、在分离顶底板的基础上,提取顶板面;s312、在巷道拐弯处,剪开巷道拐角处的边;s313、计算巷道顶点偏移的方向和距离;s314、计算顶板的平面uv。具体地,在第二部分中包括以下流程:s321、在顶底板面分离的基础上,提取底板面;s322、计算底板的平面uv。在上述流程s40,进一步地还包括以下流程:s41、对顶、底板面关联材质球;s42、在三维仿真环境下进行uv展示。可以理解的是,通过上述建模流程,能够建立巷道的虚拟现实模型,区别于单纯的二维表达、三维表达。在建立虚拟现实模型之前,需要采用b-rep多面体表达方式,来描述三维巷道,也就是说采用若干三角形拼接成一个封闭的无自相交的多面体。其顶点数组及三角网数组结构数据如下表1和2所示:表1顶点数组表2三角网数组序号顶点1顶点2顶点3112321343245…………通过b-rep表示法,其本质为多面体。多面体将空间分为内外两个部分,所有三角片的法线,要么全指向外侧,要么指向内侧,称三角网法线一致化,本系统默认以法线指向外。在建立虚拟模型时,需要将巷道顶底板分离,分离原理为该三角形法线方向与向量v(0,0,-1)夹角<10°,则认为该巷道朝下,为巷道底板,否则为巷道顶板或腰高部分。另外,三维实体需要进行合法性验证,验证多面体是否满足以下三个条件:(1)自相交:三角网连接过程中,边发生自相交的情况(2)开放边:三角网没有闭合,有开放的边;(3)无效边:存在一条边有2个以上的三角形引用。基于b-rep多面体布尔运算,且比较复杂的算法,系统采用gts开源库,对经过验证的三角网进行差集计算。为了确保多次布尔运算计算后结果健壮,采用相邻实体的差计算,减少操作次数,获得较好效果。而从三维模型转到虚拟现实模型,则需要表达更多的数据,主要是附加一些渲染时需要使用的参数,具体结构参数如下表3和4所示:表3vr巷道顶点表xyzuvnxnynztxtytz表4vr巷道三角网表序号顶点1顶点2顶点3112321343245…………其中x、y、z——表示顶点的x、y、z坐标其中u、v坐标——三角网在平面上展开时,每个顶点都有了一个uv坐标值,称为纹理坐标。u代表纹理的x坐标,对应图片,v代表纹理的y坐标。当巷道在图形区绘制时,gpu会对各顶点进行纹理采样,获取模型顶点对应的图片坐标,进而对巷道渲染。其中nx、ny、nz——表示顶点的法向量:其中tx、ty、tz——表示顶点的切向量。另外,在流程s41中,要创建巷道渲染材质球。材质球是拟物体真实的物理性质,例如颜色、反光、透明、贴图等。地下巷道一般还附加凹凸贴图信息,需要顶点切线向量。根据上述流程,在流程s20的第一部分中,基于中线巷道的建模算法的步骤也就是流程s211进一步地包括以下几个方面:(1)对巷道中心线按照一定布局进行加密,确保在实体布尔运算稳定,求标准断面,取样关键点;(2)将断面移至中线每个顶点处,按照一定方位角和倾角放置;(3)将相邻断面连接三角网,巷道端部在多边形内部连接三角网;(4)合并、优化三角网,并计算法线一致。验证实体,确保实体通过验证。流程s212中的具体的剔除交叠三角网的算法如下:如图1所示,选中一个巷道a,备份一个为a’,然后将a巷道与其他相邻巷道进行差集运算。其中,d与a无交集,不参与运算。布尔运算采用开源代码gts库,该算法可对b-rep多面体进行有效的计算,其缺点是需要多次进行布尔运算,稳定性差。本算法中与单个巷道相交的巷道不会太多,所以确保该算法能有效工作。如图2所示,剔除不属于该巷道原始模型的三角网。利用备份巷道a’,对a中所有三角片进行判断。根据以下三个条件进行判断:1)a中任一三角片与a’中任一三角片平行;2)垂直距离<=0;3)a∈a’。若是符合上述三个条件则保留该三角片,否则剔除掉该三角形。对所有三角片执行该操作后,保留巷道a。根据上述流程,在流程s20的第二部分中,基于腰线巷道的建模算法的步骤也就是流程s221的顶板辅助线的具体算法如下所示:如图3所示,需要求出标准断面,取样控制点。其中顶板的控制点坐标与巷道形状有关,以矿山常用的三心拱为例进行计算。为了准确的反映拱顶三维形态,使用了8个控制点(图中p1、p2、p3、p4、p1’、p2’、p3’、p4’),其中,p1、p1’两点位于p0点两侧θ/4处,该方法生成的拱顶dtm效果与实际更为贴近。根据计算,图中大圆角度θ=33°41′24″,小圆角度α=56°18′36″,巷道半径为b/2,大圆直径为r=0.691898b,小圆直径为r=0.260957b,巷道直墙高度为h4。通过上述基本参数计算p1(l1、h1)、p2(l2、h2)、p3(l3、h3)、p4(l4、h4)的坐标值,p1’、p2’、p3’、p4’坐标值只需对x方向的值取负数即可。经计算,各线段长度为:l1=r*sin(θ/4)h1=h0-(r-r*cos(θ/4))=h4+b/3+r*cos(θ/4)-rl2=r*sin(θ)h2=h0-(r-r*cos(θ))=h4+b/3+r*cos(θ)-rl3=(b/2-r)+r*sin(α/2)=b/2+r*sin(α/2)-rh3=h4+r*cos(α/2)l4=b/2完成各点坐标计算后,对三角形对应边上进行控制点坐标赋值,连接相邻三角形对应点,便形成了巷道顶板辅助线。在流程s20中,s222中所述顶底板面的生成算法如下所示:如图4所示,采用带约束德洛内三角剖分,对多边形进行三角网剖分,同时抛弃在多边形外和嵌套多边形以内的三角网。另外,根据上述流程s221中内插顶板辅助线,在实际过程中以三种三角形巷道为例,每一种巷道均有不同的生成方式。如图5所示,具体地,从几何学上讲,三角形有三种类型:ⅰ类三角形有两条外部边,一条内部边,ⅱ类三角形有一条外部边,两条内部边;ⅲ类三角形三条边均为内部边。如图6所示,其中ⅰ类涉及巷道出口判断,判断方法可以用相邻三角形开放边与该三角形两边的夹角,角度小者,为巷道出口。如图7所示,分别对i型三角形巷道、ⅱ型三角形巷道、ⅲ型三角形巷道进行内插,生成一系列辅助线段,线段的高程采用三星拱内插法,进而将这些内插辅助线段采用德洛内三角剖分方法生成顶板面。通过上述图4-7所示的顶底板面的生成,进而将巷道顶底板面合并将巷道帮部分补齐,生成完整的巷道三维实体。在流程s30中,分离顶底板的具体算法如下:如图8所示的巷道顶点法向量,计算每个顶点的法向量v(x,y,z)与vect(0,0,-1)的夹角,当夹角<10°时,认为是巷道底板。在流程s312中的剪开算法包括顶板部分进行网格割缝,剪开相邻三角片水平方面角度<90°的边。将向量投影到xy水平,即v(x,y,0),并模准化向量vector(n_x,n_y,n_z)。在流程s313中的计算顶点偏移的算法包括:第一步、计算该顶点在水平方向的偏移向量。对于每个顶点z,寻找与该顶点相连接的所有三角形的顶点,获取其z最高点的点z’。第二步、计算每个顶点的偏移距离,公式为l=(z’-z)cos(θ),其中θ为顶点向量与水平方向的夹角。第三步、计算偏移顶点,x’=x+n_x*l;y’=y+n_y*l;z’=z+n_z*l;其中:x,y,z表示原始点;vector(n_x,n_y,n_z)表示偏移方向;l表示为偏移距;x,y,z表示偏移的点。需要注意的是,在计算顶板的平面uv之后,反向偏移顶点,恢复模型之后,计算底板的平面uv。如图9所示,根据上述实施内容,本发明进一步地提供了一种巷道虚拟现实快速建模方法,包括以下步骤:(a)获取原始资料;(b)基于中线和腰线分别建模并进行法线一致化操作,计算法线和切线;(c)分离顶板和底板面并计算平面uv;(d)关联材质球进而进行uv展示。根据上述建模方法,步骤(b)之中还包括以下步骤:(b1)基于中线建模,并进行法线一致化操作,计算法线和切线;(b2)基于腰线建模,并进行法线一致化操作,计算法线和切线。其中,步骤(b1)和(b2)可以同时进行,也可以分别进行。在步骤(b1)之中还包括以下步骤:(b11)基于断面生成实体;(b12)剔除交叠三角网;(b13)实体验证,进行法线一致化操作。进一步地,在(b11)还包括以下步骤:(b111)对巷道中心线按照一定布局进行加密,确保在实体布尔运算稳定,求标准断面,取样关键点;(b112)将断面移至中线每个顶点处,按照一定方位角和倾角放置;(b113)将相邻断面连接三角网,巷道端部在多边形内部连接三角网;(b114)合并、优化三角网,并计算法线一致。验证实体,确保实体通过验证。在步骤(b2)之中还包括以下步骤:(b21)快速内插顶板辅助线;(b22)生产顶板和底板两个面,合并为一个巷道实体;(b23)实体验证,进行法线一致化操作。根据上述建模方法,步骤(c)之中还包括以下步骤:(c1)在顶底板分离的基础上,提取并计算顶板的平面uv;(c2)在顶底板分离的基础上,提取并计算底板的平面uv。在步骤(c1)之中还包括以下步骤:(c11)在分离顶底板的基础上,提取顶板面;(c12)在巷道拐弯处,剪开巷道拐角处的边;(c13)计算巷道顶点偏移的方向和距离;(c14)计算顶板的平面uv。在步骤(c2)之中还包括以下步骤:(c21)在顶底板面分离的基础上,提取底板面;(c22)计算底板的平面uv。根据上述建模方法,步骤(d)之中还包括以下步骤:(d1)对顶、底板面关联材质球;(d2)在三维仿真环境下进行uv展示。以上结合附图对本发明的实施方式作了详细说明,但本发明不限于所描述的实施方式。对于本领域的技术人员而言,在不脱离本发明原理和精神的情况下,对这些实施方式进行多种变化、修改、替换和变型,仍落入本发明的保护范围内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1