本发明涉及隧道工程领域,尤其涉及一种用于隧道的形象化三维展示方法及系统。
背景技术:
随着我国公铁城轨路网的高速发展,隧道数量与日俱增。隧道内结构服役状态、安全状况、附属设施状态的健康是隧道正常运行的关键。当前隧道状态或通过平台、app、软件等信息化手段,将数据处理为更加直观的图表后,实现电子化呈现,便于决策者判断隧道状态;或获取隧道全息影像后,为了与二维的屏幕相契合,将空间上桶装的隧道展开为二维的平面,并辅以坐标,生成静态的隧道表面展开图,实现初步的病害直观呈现;或以正等轴测角度,通过三维立体的隧道轮廓,展示与时间和数据动态调整的隧道状态。不论以哪种方式,所实现的形象化隧道展示均以静态数据为基础,不能随时间实时变化,无法实现对隧道病害缺陷及力学状态与所在空间位置的直观展示。
基于此,急需一种能够实现实时更新的基于第一视角的隧道形象化三维展示方法,以展示更直观、更符合实际的隧道形象,为决策者及时提供可靠的决策依据,从而进一步提高隧道工程的运营保障。
技术实现要素:
本发明所要解决的技术问题之一是需要提供一种用于隧道的形象化三维展示方法,通过该方法能够将各类病害的病害情况和在隧道内的位置坐标实时地在隧道空间内进行形象化展示。
为了解决上述技术问题,本申请的实施例首先提供了一种用于隧道的形象化三维展示方法,该方法包括:实时获取经病害监测后的隧道的相关信息,所述相关信息包括隧道本体属性信息以及该隧道的病害监测信息;利用所述隧道本体属性信息创建隧道三维模型,以及根据所述病害监测信息创建相应病害三维模型;确定各类病害在隧道内的位置坐标,将各类病害三维模型与隧道三维模型进行融合,使得融合后的隧道三维模型在空间上能够展示病害情况,所述病害包括如下至少一种:裂缝、基底上拱、受力情况、衬砌形变、空洞、渗漏水和掉块;对融合后的隧道三维模型进行三维化效果展示,所述三维化效果展示包括通过接收输入设备的动作指令在三维展示页面上模拟人物在隧道中漫游时的视角来展现的漫游效果和展示病害相关信息的悬停效果。
根据本发明的一个实施例,在漫游效果的展示上,通过接收输入设备的动作指令在三维展示页面上实现隧道内人物视角的前进、后退、向左、向右、仰视、俯视、蹲起、跳跃和跑步的调整。
根据本发明的一个实施例,在悬停效果的展示上,通过接收输入设备在三维展示页面上的指示悬停位置,以悬浮窗的形式展示悬停位置处对应的病害相关信息。
根据本发明的一个实施例,在创建隧道三维模型的步骤中,根据隧道的实际长度和隧道类型创建由多段设定单位长度的隧道模型组成的隧道三维模型,所述隧道类型包括单线单洞和双线单洞。
根据本发明的一个实施例,在病害包含裂缝情况时,根据裂缝的规模大小创建不同的裂缝三维模型;根据裂缝类病害的里程,确定其在隧道内的位置坐标;将该裂缝三维模型与隧道三维模型融合,在融合后的隧道三维模型上展示裂缝类病害在隧道的实际位置及规模大小。
根据本发明的一个实施例,在病害包含基底上拱情况时,根据基底上拱幅度的规模大小,创建不同的基底上拱三维模型;根据基底上拱类病害的里程,确定其在隧道内的位置坐标;将该基底上拱三维模型与隧道三维模型融合,在融合后的隧道三维模型上展示基底上拱类病害在隧道的实际位置及规模大小。
根据本发明的一个实施例,在病害包含受力情况时,根据受力大小创建受力情况的三维模型;根据受力情况类病害的里程,确定其在隧道内的位置坐标;将该受力情况的三维模型与隧道三维模型融合,在融合后的隧道三维模型上展示受力情况类病害在隧道的实际位置及规模大小;所述受力情况的三维模型能以不同形式表征不同监测区域的受力大小。
根据本发明的一个实施例,在病害包含衬砌形变情况时,根据衬砌形变的规模创建不同的衬砌形变三维模型;根据衬砌形变类病害的里程,确定其在隧道内的位置坐标;将该衬砌形变三维模型与隧道三维模型融合,在融合后的隧道三维模型上展示衬砌形变类病害在隧道的实际位置及规模大小。
根据本发明的一个实施例,在病害包含空洞情况时,根据空洞的大小,创建不同的空洞三维模型;根据空洞类病害的里程,确定其在隧道内的位置坐标;将该空洞三维模型与隧道三维模型融合,在融合后的隧道三维模型上展示空洞类病害在隧道的实际位置及规模大小。
根据本发明的另一实施例,还提供了一种用于隧道的形象化三维展示系统,该系统执行如上所述的方法。
与现有技术相比,上述方案中的一个或多个实施例可以具有如下优点或有益效果:
本发明实施例的方法,利用实时获取的隧道的相关信息对隧道进行实时三维建模,创建裂缝、基底上拱、受力情况、衬砌形变、空洞、渗漏水和掉块等七类病害的三维模型,根据各类病害在隧道内的位置坐标在隧道空间内展示,在三维化效果展示时能够模拟人物在隧道中漫游时的视角来展示以及展示悬停位置处的病害相关信息。因此本申请能够实现隧道病害的形象化展示,进而帮助监测端工作人员根据隧道的相关信息实时查看其三维展示效果。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明的技术方案而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构和/或流程来实现和获得。
附图说明
附图用来提供对本申请的技术方案或现有技术的进一步理解,并且构成说明书的一部分。其中,表达本申请实施例的附图与本申请的实施例一起用于解释本申请的技术方案,但并不构成对本申请技术方案的限制。
图1示出了根据一些实施例的用于隧道的形象化三维展示方法的流程示意图。
图2示出了根据一些实施例的用于隧道的形象化三维展示系统的应用场景。
图3示出了根据一些实施例的创建隧道三维模型的方法流程图。
图4示出了根据一些实施例的创建病害模型的方法流程图。
图5(a)、(b)例示了根据一些实施例的隧道三维模型的结果示意图。
图6(a)例示了根据一些实施例的裂缝三维模型的结果示意图。
图6(b)例示了根据一些实施例的裂缝三维模型和隧道三维模型融合后的结果示意图。
图7例示了根据一些实施例的基底上拱三维模型和隧道三维模型融合后的结果示意图。
图8例示了根据一些实施例的受力情况三维模型和隧道三维模型融合后的结果示意图。
图9(a)例示了根据一些实施例的衬砌形变三维模型的结果示意图。
图9(b)例示了根据一些实施例的衬砌形变三维模型和隧道三维模型融合后的结果示意图。
图10例示了根据一些实施例的空洞三维模型和隧道三维模型融合后的结果示意图。
图11例示了根据一些实施例的在隧道的三维展示页面上实现悬停效果的效果图。
图12例示了以球形模型为例计算法线向量的示意图。
图13(a)、(b)例示了一个三角形及其所在的切线空间的示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成相应技术效果的实现过程能充分理解并据以实施。本申请实施例以及实施例中的各个特征,在不相冲突前提下可以相互结合,所形成的技术方案均在本发明的保护范围之内。
另外,附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
隧道病害信息是一种很有价值的信息,然而,现有的这些隧道病害信息仅以文字的形式展现给监测端,不利于监测端工作人员直观地了解当前隧道的实时状态。因此,本申请提出了一种能够将隧道病害信息形象化进行三维展示的方法。本申请的技术方案通过利用实时获取的隧道的相关信息对隧道进行三维建模,创建裂缝、基地上拱、受力情况、衬砌形变、空洞、渗漏水和掉块等七类病害的三维模型,根据各类病害在隧道内的位置坐标在隧道空间内展示,在对融合后的隧道三维模型进行实时的三维化效果展示时,能够实现漫游效果的展示和显示各类病害的相应参数信息的悬停效果,实现了监控端能够根据实时的隧道相关信息查看隧道的当前三维展示效果的功能。
本申请实施例描述一种为了实现隧道病害形象化显示的三维展示方法和系统,其中的技术方案利用实时采集到的发生病害情况的隧道的相关信息来构建三维可视化隧道模型,该模型能够实时地、形象地展示实际病害的情况,例如病害在隧道内发生的位置、病害形态规模等信息。这些隧道相关信息是如何采集到的,本申请实施例不做限定,可以是通过工作人员人为获取,也可以是通过传感器远程发送而来的。
在本例中,为了实现实时创建展示隧道状态的三维模型,在监测平台获取的隧道内各类传感器的数据包括历史数据及实时监测数据,对于实时监测数据通过使用算法分析出病害类型、位置、大小、性质等信息,基于此类信息实时创建病害的三维模型,并将创建的模型与隧道三维模型无缝融合,最终可直观展示隧道内实时病害状态。当然,根据本申请实施例,也可以对历史数据进行展示,此处不做限定。
在一些实施方案中,需要利用隧道本体属性信息(可称隧道属性信息)建立隧道三维模型,这是为了后面形象展示隧道病害提供了模拟隧道的场景信息和模型载体,以及有助于监测端了解经病害监测的隧道的具体形态。这些隧道属性信息可以是原始隧道设计数据,无需经过任何处理,即可实现隧道三维模型的建立。
在一些实施方案中,若隧道经病害监测后发现有至少一种病害情况,则基于实时采集的病害检测信息构建病害三维模型,此时的病害三维模型可以是从预先创建的病害模型数据库中选取得到,由于预先已经生成不同等级的病害三维模型,在病害三维模型建立时,无需执行大量的计算处理,仅需调取相应模型就可完成操作,因此,无论是在效率上,还是在成本上都得到了很好的改善。通过将构建的隧道三维模型和病害三维模型进行融合,得到能形象地体现病害情况的隧道三维模型,在对该模型三维显示时,该模型在空间上能够展示病害情况。
在一些实施方案中,还可以根据病害情况结合经验数据来构建后期可能导致的结果导向模型以及病害处理建议方法,例如裂缝在多久会扩大多少的裂缝演变模型以及针对此情况的处理方法、受力情况变化的演变模型以及针对此情况的处理方法等。这样能更加直观向监测端展示病害可能带来的危害结果,有助于监测端及时采取相应措施,提高了病害处理效率。
在一些实施方案中,在对融合后的隧道三维模型进行三维化效果展示时,可以实现模拟人物在隧道中行走的漫游视角来观看隧道中的病害情况,使人有种身临其境的感觉,更好地感受隧道内的情况。另一方面,还可以实现病害信息的悬停效果上的展示,也就是说,通过将页面上的例如鼠标悬停在融合后模型的病害体上,能够实时展现该病害体的信息,例如该病害在隧道所处的位置、病害情况、采集数据时间戳等。因此,除了实现空间上病害体模型的展示以外,还可以实现数据上的文字展示,更有助于用户了解当前隧道的病害情况。
在本文的实施例中,虽然病害的举例为裂缝、基底上拱、受力情况、衬砌形变、空洞、渗漏水和掉块等,但本申请对病害情况并不限定,除了上述的病害之外,还可以包括其他可能出现的病害,此处不再列举。
为了更好地说明本发明实施例,下面对涉及到的用语进行说明。
裂缝和衬砌形变:隧道衬砌是承受地层压力、防止围岩变形坍落的工程主体建筑物,地层压力的大小,主要取决于工程地质和水文地质条件和围岩的物理力学特性,同时与施工方法、支护衬砌是否及时和工程质量的好坏等因素有关。由于形变压力、松动压力作用,地层沿隧道纵向分布及力学性态的不均匀作用、温度和收缩应力作用、围岩膨胀性或冻胀性压力作用、腐蚀性介质作用、施工中认为因素、运营车辆的循环荷载作用等,使隧道衬砌结构物产生裂缝和变形(可称“衬砌形变”),影响隧道的正常使用。
基底上拱:我国高速铁路都采用无砟轨道型式,无砟轨道铺设在隧道时,隧道的开挖破坏了隧底围岩原有的应力平衡状态,隧底围岩需要经过一轮新的应力调整期后,才能重新进入应力平衡状态。在隧底围岩进行应力调整的过程中,围岩应力调整会引起膨胀岩膨胀,从而围岩体积产生部分增量,引起无砟轨道隧底产生向上变形(上拱),严重影响了高速铁路轨道的平顺性。
图1示出了根据一些实施例的用于隧道的形象化三维展示方法的流程示意图。
在执行步骤s110之前,需要对隧道进行病害监测,可以由包括一个或多个数据采集装置,例如温度传感器、激光测距仪、水速测量仪、静力水准仪、液压传感器等来执行,该一个或多个数据采集装置采集隧道内的环境温度、距离、水速、压力等数据,这些数据可以通过网络实时传输到监测端直接进行计算,在后端存储系统中存储的数据格式可以为包括隧道的基本信息和隧道与里程的树状结构。对应隧道可存储隧道中不同安装里程下最新的日期的采集信息和图像。
在步骤s110中,由例如用于隧道的形象化三维展示系统实时获取隧道的相关信息(相关信息包括隧道本体属性信息以及病害监测信息,如病害类型、病害规模、病害发生的位置等信息)。在一些实施例中,隧道出现的病害包括如下至少一种:裂缝、基底上拱、受力情况、衬砌形变、空洞、渗漏水和掉块。而病害规模和病害发生的位置,可以通过对采集到的数据进行处理来获取。
具体来说,在步骤s110中,实时获取的隧道的本体属性信息,优选地包括所属线路、隧道名称、隧道类型、隧道长度、断面类型。除此之外,隧道信息还包括对应每个隧道所有里程下所有传感器(带有编号作为标识)的监测数据,这些数据为实时监测到的数据。这些传感器检测数据可以包括轨下结构的竖向位移值、深层围岩形变、围岩接触压力、钢拱架受力、钢筋受力、混凝土形变、锚杆轴力等数据、衬砌结构的应变值、裂缝宽度、钢筋受力、钢拱架受力、深层围岩形变等数据。该三维展示系统在实时获取这些数据之后,可以进行病害识别,识别结果可以包括目标类型和病害等级。在一些例子中,在识别的过程中,可以将采集到的数据与设置的预警值进行比对,不同等级的预警值不同,通过比对可以确定病害的等级是什么。
接下来,在步骤s120中,用于隧道的形象化三维展示系统开始创建隧道三维模型。在创建隧道三维模型的过程中,需要结合在步骤s110中获取的隧道属性信息,利用隧道本体属性信息创建隧道三维模型。
在本申请中,三维建模是通过利用三维建模软件,根据采集到的数据在虚拟三维空间建立与实体一样的三维模型。在本例中虽然使用的是3dmax建模软件,但是还可以是其他三维建模软件,此处不做限定。
在一个例子中,如图3所示,首先通过隧道属性信息确定隧道的实际长度和隧道类型(步骤s1210),隧道类型分为单线单洞和双线单洞。然后,在预先创建好的隧道三维模型库中对隧道进行三维模型的创建,创建单位长度(如:300m或500m)的隧道三维模型(s1220),如可参考图5(a)所示的一段单位长度的隧道三维模型。最后,创建与隧道实际长度匹配的隧道三维模型,也就是根据隧道的实际长度加载多段隧道模型,可参考图5(b)所示的隧道三维模型。需要说明的是,该隧道模型库可以由三维技术人员利用3dmax工具来创建,其中包括不同类型的单位长度的隧道三维模型。在创建实际的隧道时,根据输入的隧道长度,加载多段模型来完成隧道三维模型的建立。
接着,在步骤s130中,用于隧道的形象化三维展示系统开始创建病害三维模型。在创建病害三维模型的过程中,需要结合在步骤s110中实时获取的病害监测信息,利用病害检测信息创建病害三维模型。
在一个例子中,如图4所示,首先确定隧道的病害情况(步骤s1310),该病害情况包括病害名称、病害等级、规模等信息。然后,在预先创建的病害三维模型库中创建相应病害的三维模型(步骤s1320)。需要说明的是,该病害三维模型库也可以由三维技术人员利用3dmax工具来创建,其中包括针对不同病害类型的不同病害等级的病害三维模型。由于预先创建了不同病害类型的不同病害三维模型,在创建实际的病害模型时,只需要从中调取所需的病害三维模型即可,大大减少了计算量,降低了对处理器的计算要求。
接着,在步骤s140中,确定各类病害在隧道内的位置坐标,将各类病害三维模型与隧道三维模型进行融合,使得融合后的隧道三维模型在空间上能够展示病害情况。
下面分别对本申请涉及的各类病害的三维模型的创建过程及模型融合进行详细说明。
1、裂缝建模及模型融合
在病害包含裂缝情况时,在病害三维模型库中创建裂缝的三维模型。具体来说,根据裂缝的规模大小创建不同的裂缝三维模型,根据裂缝类病害的里程,确定其在隧道内的位置坐标,将该裂缝三维模型与隧道三维模型融合,在融合后的隧道三维模型上对裂缝类病害在隧道的实际位置及规模大小进行展示。这两个模型的融合,可以通过在隧道三维模型上加载病害三维模型及其相应信息的方式来实现。需要说明的是,其中的“里程”表达式是:里程号加±位置,±表明在洞左还是洞右,位置表明距洞顶的距离。若该裂缝是通过传感器采集得到的,则可以根据传感器安装在隧道内的里程,以及该传感器与裂缝之间的距离来得到该里程。
在该病害三维模型库中,预先已经根据裂缝的长度创建好了不同的裂缝模型。在裂缝三维模型库中,不同级别的模型展示长度不一样,由小到大进行展示,例如如下表示:0米到1米,1级模型;1米到2米,2级模型;2米到3米,3级模型;3米到4米,4级模型;4米到5米,5级模型;大于5米,6级模型。在创建实际的裂缝模型时,根据裂缝的实际长度从中选择匹配的裂缝三维模型,例如图6(a)所示的为根据病害监测信息从病害三维模型库中选取的一种级别的裂缝三维模型。而将该模型与隧道三维模型融合后可以得到图6(b)所示的融合模型,在该模型中能够很直观地看到裂缝所处的位置、分布情况以及裂缝的规模。
另外,除了可以依据裂缝的长度来创建不同的裂缝模型以外,还可以加入裂缝宽度因素,通过这两种因素来创建裂缝模型,在表现上会更加准确。
2、基底上拱建模及模型融合
在病害包含基底上拱情况时,在病害三维模型库中创建基底上拱的三维模型。具体来说,根据上拱幅度的规模大小,创建不同的基底上拱三维模型,根据基底上拱类病害的里程,确定其在隧道内的位置坐标,将该基底上拱三维模型与隧道三维模型融合,在融合后的隧道三维模型上对基底上拱类病害在隧道的实际位置及规模大小进行展示。这两个模型的融合,可以通过信息加载的方式,例如可以通过在隧道三维模型上加载病害三维模型及其相应信息的方式来实现。此处的“里程”的表达式为里程号加±,±表明在洞左还是洞右。
在该病害三维模型库中,预先根据上拱幅度大小创建好了不同的基底上拱模型。在基底上拱三维模型库中,不同级别的模型展示上拱幅度不一样,由小到大进行展示,例如:0cm到5cm,1级模型;5cm到10cm,2级模型;10cm到15cm,3级模型;15cm到20cm,4级模型;20cm到30cm,5级模型;30cm以上,6级模型。在创建实际的基底上拱模型时,根据上拱幅度的高度从数据库中选择匹配的基底上拱三维模型,例如融合了基底上拱三维模型的隧道三维模型可展示如图7所示。在该模型中能够很直观地看到基底上拱所处的位置、分布情况以及具体上拱情况。
3、受力情况建模及模型融合
在病害包含受力情况时,在病害三维模型库中创建受力情况的三维模型。具体来说,根据受力大小创建受力情况的三维模型,根据受力情况类病害的里程,确定其在隧道内的位置,将该受力情况的三维模型与隧道三维模型融合,在融合后的隧道三维模型上对受力情况类病害在隧道的实际位置及规模大小进行展示。这两个模型的融合,可以通过信息加载的方式,例如可以通过在隧道三维模型上加载病害三维模型及其相应信息的方式来实现。此处的“里程”表达式为里程号加宽度加±长度,±表明在洞左还是洞右,长度表明距洞顶的位置。受力情况的三维模型能以不同形式表征不同监测区域的受力大小,在一个优选例子中,受力情况的三维模型是一个环状模型,在洞顶和洞顶两侧用不同颜色表征受力大小,例如洞顶用蓝色,最大受力-15mpa,两侧各一片红色或橙色,橙色表示<12mpa,红色表示>12mpa。在创建实际的受力情况模型时,根据受力的大小基于受力情况三维模型的设置来生成一个环状的模型,例如,可以参考图8所示的融合后的隧道模型,在洞顶处的受力情况展现的是蓝色环状模型,在洞的左侧的受力情况展现的是橙色环状模型,在洞的右侧的受力情况展现的是红色环状模型,通过这种环状的模型展示能够帮助监测端工作人员很快了解隧道的受力情况和受力范围。
4、衬砌形变建模及模型融合
在病害包含衬砌形变情况时,在病害的三维模型库中创建衬砌形变的三维模型。衬砌形变为墙壁上因受力原因向外的凸起。根据衬砌形变的规模,创建不同的衬砌变形三维模型。根据衬砌形变类病害的里程,确定其在隧道内的位置坐标,将该衬砌形变三维模型与隧道三维模型融合,在融合后的隧道三维模型上对衬砌形变类病害在隧道的实际位置及规模大小进行展示。这两个模型的融合,可以通过信息加载的方式,例如可以通过在隧道三维模型上加载病害三维模型及其相应信息的方式来实现。此处的“里程”的表达式为:里程号加±长度,±表明在洞左还是洞右,长度表明距洞顶的位置。在一个优选例子中,预先设置的衬砌形变的三维模型,将凸起顶端显示为橘红色,边缘地区黄色渐变,而凸起多少则根据衬砌形变数据来确定。
在该病害三维模型库中,预先根据衬砌的形变量的大小创建好了不同的衬砌形变模型。不同级别的模型展示向外凸起幅度不一样,由小到大进行展示,例如:0mm到10mm,1级模型;10mm到20mm,2级模型;20mm到30mm,3级模型;30mm到40mm,4级模型;40mm到50mm,5级模型;50mm以上,6级模型。在创建实际的衬砌形变三维模型时,根据衬砌形变向外凸起的幅度从数据库中选择匹配的衬砌形变三维模型,例如如图9(a)所示的根据病害监测信息从病害三维模型库中选取的一种级别的衬砌形变三维模型,而将该模型与隧道三维模型融合后可以得到图9(b)所示的融合模型,在该模型中能够很直观地看到衬砌形变所处的位置、分布情况以及其规模。
5、空洞建模及模型融合
在病害包含空洞情况时,在病害三维模型库中创建空洞的三维模型。根据空洞的大小,创建不同的空洞三维模型。根据空洞类病害的里程,确定其在隧道内的位置坐标,将该空洞三维模型与隧道三维模型融合,在融合后的隧道三维模型上对空洞类病害在隧道的实际位置及规模大小进行展示。这两个模型的融合,可以通过信息加载的方式,例如可以通过在隧道三维模型上加载病害三维模型及其相应信息的方式来实现。此处的“里程”表达式为:里程号加±长度,±表明在洞左还是洞右,长度表明距洞顶的位置。
在该病害三维模型库中,预先根据空洞直径的大小创建好了不同的空洞三维模型。不同级别的模型展示空洞直径大小不一样,由小到大进行展示,例如:0cm到10cm,1级模型;10cm到20cm,2级模型;20cm到30cm,3级模型;30cm到40cm,4级模型;40cm到50cm,5级模型;50cm以上,6级模型。在创建实际的衬砌形变三维模型时,根据衬砌形变向外凸起的幅度从数据库中选择匹配的衬砌形变三维模型,例如图10为融合后的模型,在该模型中能够很直观地看到空洞所处的位置以及其规模。
以上仅对五类病害建模及模型融合进行说明,有关渗漏水和掉块的建模和模型融合与这五类的方法类似,可以根据上述方法来实现,因此不再赘述。
接下来,对步骤s150进行说明。
在该步骤s150中,对融合后的隧道三维模型进行三维化效果展示。
优选地,三维化效果展示包括通过接收输入设备的动作指令在三维展示页面上模拟人物在隧道中漫游时的视角来展现的漫游效果和展示病害相关信息的悬停效果。
在一些实施方案中,在漫游效果的展示上,通过接收输入设备的动作指令在三维展示页面上实现隧道内人物视角的前进、后退、向左、向右、仰视、俯视、蹲起、跳跃和跑步的调整。这种漫游效果,可以使人员感受到全方位展示隧道及空间特点。用户可以通过键盘和鼠标或是触屏设备,控制观察全景的方向,仿佛置身于真实的环境当中,极大地增强了用户体验。
例如,在隧道的三维展示页面支持鼠标和键盘的漫游效果,通过键盘的前进、后推、向左、向右的控制在隧道内人物视角的前进、后退、向左、向右,通过鼠标的移动,可以对人物视角进行抬头(仰视)、低头(俯视)、向左、向右的调整。在漫游效果展示过程中,按照z坐标轴向上的左手坐标系统实现常见的视点变换操作,其中z值代表相对隧道的高度,在常见的六种操作中,z值都保持不变。响应左转、右转操作时,相当于视点绕z轴逆、顺时针旋转一定角度,响应前进、后退操作时,相当于把视点沿着视线方向、反方向移动一段距离,响应仰视、俯视操作时,相当于把视点和xy平面的夹角变大、变小。基于这些响应分析,可以通过空间向量分解运算,计算出移动后的视点坐标和参考点坐标。
在一些实施方案中,可以通过如下步骤来实现漫游效果的展示。
首先通过将实体与虚拟模型一对一地计算模型网格,确立各个网格的法线和切线的方向向量。以球形模型为例,模型是由大量数据向量坐标顶点连线绘制而成,然后以圆心与顶点计算法线向量(如图12所示)。参考图13(a)、(b)来说明在计算切线的方式。
图13(a)、(b)显示了一个三角形及其所在的切线空间。注意在局部坐标系里,因为这个局部的切平面式垂直于z轴即法线的,所以虽然uv坐标是二维的,但是只有加上第三维z等于0既可以当成一个三维坐标使用。按照图13,有如下等式,
e1=δu1t+δv1b
e2=δu2t+δv2b
写成矩阵形式为如下:
即:
其中t为切向向量,进而得到法线和切向。
u1和v1代表图形上一个单位像素的点,可以理解为[1,1]。
u2和v2代表图形上另一个单位像素的点,可以理解为[2,2]。
t和b代表单位像素点扩大的倍数,如t为2倍,b为3倍,也可能以矩阵形式。
通过计算得到的切向和法线向量,进而可以利用其计算向量距离、交叉角度,是下面所有环节的基础数据。
然后,获取人物虚拟网格与隧道虚拟网格的顶点位置,通过法向与其他网格的交互计算相对距离,在距离接近时认定为碰撞,即人物踩在地方上。
顶点位置为3d模型建模阶段绘制的各个点,将各个点有规律的连线即为模型,如同屏幕的各个像素点,这是最原始数据,无需进行计算即可获得。通过物体的中心坐标(各个顶点的平均值),计算与人物的大约距离,当接近时利用法线向量计算具体距离数值,凭借距离的大小判定人物是否到达地面的位置,到达即为发生碰撞,人物停止移动(如同脚碰撞地面)。
通过方向按键改变模型网格坐标位置点,实现视角的移动操作,从而实现漫游效果。利用webgl图形库,进而调用计算机显卡,进行图像绘制,即可视化。该方法引用计算机空间学,计算准确,误差小。
上述方向按键由程序定义,利用键盘出发时发出的”0”或者”1”数值判定按键的按下和抬起状态,当按下按键时,改变坐标位置点(三维空间向量)的所有相关数值,进而进行视角移动。
在悬停效果的展示上,通过接收输入设备在三维展示页面上的指示悬停位置,以悬浮窗的形式展示悬停位置处对应的病害相关信息。
例如,在隧道的三维展示页面支持鼠标的悬停效果,当鼠标悬停在隧道内病害模型的上方时,以悬浮框的形式展示病害的相关信息。在这个过程中,用户通过隧道的三维展示页面观看模型时,终端在检测到的用户操作满足某个鼠标悬停事件的触发条件时,触发某个鼠标悬停事件,能够实现鼠标悬停效果。在某些例子中,可以不直接显示鼠标悬停效果,而在鼠标悬停位置处显示提示信息,所述的提示信息例如为“该处包含病害信息,是否启动展示?”,该提示信息用于询问用户是否启动悬停效果。上述提示信息在页面上停留一段时间,具体停留时间可以预先设置阈值,在未超过该阈值的时间内,用户选择启动或不启动;超过时间阈值后,用户无任何操作,该提示信息则消失,默认启动悬停效果。该过程更为人性化,增强了用户的体验。在终端检测到某个鼠标悬停事件被触发时,则在鼠标悬停位置处显示相应的信息数据。在显示某个鼠标悬停事件的内容后,若终端检测到任意操作,停止显示某个鼠标悬停事件对应的内容,也可以说,若终端未检测到用户操作信息,在页面上所述鼠标悬停事件的内容保持显示状态。
在一些实施方案中,可以通过如下来实现悬停效果的展示。
首先以虚拟摄像头正前方不远处建立ui虚拟平面,以鼠标所在虚拟平面法线方向发射射线,判定射线与物体的虚拟网格距离,进而判定鼠标之下物体类型,判定物体类型在虚拟平面呈现对应文字信息。利用webgl图形库,进而调用计算机显卡,进行图像绘制,即可视化。
在一些实施方案中,在三维化效果展示页面展示融合后的模型时,按下键盘中的上键或w键,可模拟在隧道中向前行走。向左移动按左键或者是a键。向右移动按右键或者d键。向后退按下键或者s键。可输入要跳转的位置进行跳转。也可拖动鼠标进行方向的变化和左右位置的移动。当发现病害时,鼠标移到病害上,即可显示病害的类型、监测点的位置、病害的长度等,具体如图11所示。
在其他的实施例中,除了上面的三维展示,还可以进行视频的形象化展示,例如能够实现在本地监测端实现远程查看当前实时的或之前的视频,但该视频仅是进行显示,本地不进行存储。
图2示出了根据一些实施方案的可实现本文所述的各种建模方法和展示方法的一种用于隧道的形象化三维展示系统的应用场景。区域20为本地三维展示系统的处理情况,区域10则对应于远程端并且可以经由无线通信连接由区域20的三维展示系统实时获取采集到的数据信息。
在一些实施方案中,用于隧道的形象化三维展示系统200可包括但不限于一个或多个计算系统,该一个或多个计算系统获得经病害监测后的隧道的相关数据(这些数据包括由数据采集装置250实时采集到的监测隧道病害的病害监测信息以及对应隧道本身的属性信息),利用这些获取的数据创建隧道的三维模型和病害的三维模型,并将二者融合得到能够在处理后的隧道三维模型上展示病害的发生位置(例如,gps坐标)以及具体情况(例如病害规模、等级、时间戳等数据),并保证在对融合后的隧道三维模型进行三维化效果展示时,能实现通过接收输入设备的动作指令在三维展示页面上模拟人物在隧道中漫游时的视角来展现的漫游效果和展示病害相关信息的悬停效果。隧道的相关数据例如可以按照隧道-里程的树状结构进行存储,其中的每个病害监测信息都标记有对应病害发生的里程。如图2所示,在该应用场景中,前端即远程端不设置数据存储库,前端的数据采集装置250采集传感器数据后直接通过隧道内网络发送至隧道口汇集,再通过4g网络或专网发送到监测平台,进而在检测平台能够获得实时采集得到的数据。
在一些实施方案中,展示系统200可包括但不限于控制器210、用于获得隧道相关信息的通信接口212、用于存储隧道相关信息、隧道三维模型库、病害三维模型库和其他信息的存储器214。而且,在本地区域20还包括用于显示融合后隧道三维模型215的显示器220。
在一些实施方案中,控制器214可包括但不限于各种类型的处理器、cpu、图像信号处理器(isp)、图形处理单元(gpu)、编码器/解码器、存储器和/或其他部件中的一者或多者。控制器214例如可至少部分地利用隧道的相关信息来创建融合后的隧道三维模型215,并能够将该隧道三维模型215以三维化效果显示到显示器220中。通信接口212可根据任何合适的远程无线通信技术来实现。
存储器214预先存储了隧道三维模型库和病害三维模型库,这两个模型库是工作人员利用3dmax软件来创建的。在隧道三维模型库中具有不同类型的单位长度的隧道三维模型,在病害三维模型库中根据病害的分类又分成了子模型库,具体包括裂缝三维模型库、基底上拱模型库、受力情况的三维模型、衬砌形变模型库和空洞模型库。这些子模型库存储了不同等级的病害的三维模型,通过调用相应的三维模型来创建与病害监测信息匹配的病害模型。
显示器220可显示由隧道的相关信息生成的隧道三维模型、病害三维模型,以及融合后的隧道三维模型215,且在显示这些模型的同时,还可显示视图中对象的信息标签,例如文字或代码形式的病害的具体情况等,或一般来讲,对监测端工作人员有用或有益的任何信息。
控制器210在利用隧道相关信息实时生成隧道三维模型、病害三维模型以及融合后的隧道三维模型215的操作步骤和三维化展示隧道三维模型215的步骤,可参照图1所示的流程以及对应的说明,此处不再赘述。
另一方面,本发明实施例还提供了一种程序产品,如计算机可读取存储介质,其上存储有程序代码或程序指令,程序代码或程序指令被读取并运行时,执行上述三维展示方法,实现用于隧道的实时三维建模功能和形象化三维效果展示功能。
由于本发明的方法描述的是在计算机系统中实现的。该计算机系统例如可以设置在机器人的控制核心处理器中。例如,本文所述的方法可以实现为能以控制逻辑来执行的软件,其由机器人操作系统中的cpu来执行。本文所述的功能可以实现为存储在非暂时性有形计算机可读介质中的程序指令集合。当以这种方式实现时,该计算机程序包括一组指令,当该组指令由计算机运行时其促使计算机执行能实施上述功能的方法。可编程逻辑可以暂时或永久地安装在非暂时性有形计算机可读介质中,例如只读存储器芯片、计算机存储器、磁盘或其他存储介质。除了以软件来实现之外,本文所述的逻辑可利用分立部件、集成电路、与可编程逻辑设备(诸如,现场可编程门阵列(fpga)或微处理器)结合使用的可编程逻辑,或者包括它们任意组合的任何其他设备来体现。所有此类实施例旨在落入本发明的范围之内。
应该理解的是,本发明所公开的实施例不限于这里所公开的特定结构、处理步骤或材料,而应当延伸到相关领域的普通技术人员所理解的这些特征的等同替代。还应当理解的是,在此使用的术语仅用于描述特定实施例的目的,而并不意味着限制。
说明书中提到的“一个实施例”或“实施例”意指结合实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,说明书通篇各个地方出现的短语“一个实施例”或“实施例”并不一定均指同一个实施例。
虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所公开的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。