一种虚拟环境中运动车辆的行为建模方法与流程

文档序号:12125015阅读:315来源:国知局
一种虚拟环境中运动车辆的行为建模方法与流程

本发明涉及一种虚拟车辆的运动姿态的行为建模方法。



背景技术:

三维模型动态显示技术充分利用人的视觉特性,通过图形和动画来表达各种信息,可以实现虚拟现实以及其它可视化动态仿真系统的图形显示,因而成为近年来的一个研究热点。

虚拟环境中的实体对象分为动态和静态两种。对于动态的对象除了具有几何形状外,同时还需要按照各自的行为规律以令人信服的方式进行运动,只有这样,虚拟世界的真实感才能体现出来,这是影响虚拟现实所要求的“浸沉感”的一个重要因素,因此虚拟对象的行为建模就成为虚拟现实的一项关键技术。

行为建模的任务就是探索一种能够尽可能贴近真实实体对象行为的模型,使构造实体对象的人能够按照这种模型方便地构造出一个行为上真实的虚拟实体对象。目前己有的行为建模方法大致分为两个研究方向:一类是针对某种具体行为研究特定行为模型;另一类是基于体系结构层次上的,研究适用较广的通用行为模型。

针对具体问题的行为建模虽然应用领域有限,但是通常都能逼真和高效地表现对象的特定行为。在虚拟环境中对象的行为建模方面,目前多数为虚拟人物的行为仿真研究,如James Creme研究了一种表现人的运动姿态的控制方案,通过一些位置控制参数来实现。关于运动过程中的姿态控制,当前在机器人方面有大量的研究,如多足机器人在工厂中类似于台阶的斜坡地面上行走时姿态的调节方法以及保持稳定能力的控制算法等。R.J.Millar对行为动画技术进行了综述,指出行为动画的实质是将对象放入虚拟环境中,允许他们在虚拟世界中根据自身对环境刺激的反映和他们的内部因素自己进行动画。作为虚拟现实的一个重要应用领域,对象的行为建模技术是一个重要的研究内容。

目前,国内仿真系统中虚拟现实技术的应用从硬件和软件两方面来看:硬件方面大多采用微机加图形加速卡,引进并使用了数据手套、头盔、立体眼镜等显示和传感设备。软件方面一般使用Open GL三维图形库构建虚拟场景,其中,实体模型多用3DS/3D MAX,Auto CAD等三维建模工具包进行物体建模,效果较好。但是在自然场景建模方面水平较低,真实感效果不太理想。因此,虽然硬件设备较先进,可以产生立体视觉感受,但由于系统本身环境建模真实感效果欠佳,因而使沉浸感大打折扣。在我国,由于微机加图形卡是一个性能价格比高、有推广价值的方案,因而如何在微机条件下优化算法,简化计算,实现实时视景图形生成,并尽可能地提高真实感一直是致力于研究的一项技术难题。

从上述应用分析可以得出如下结论:目前基于微机平台的虚拟仿真研究中,在传感器使用方面和虚拟场景中规则对象建模方面效果比较满意。相比较而言,环境场景中自然物体和现象的建模效果不太理想。



技术实现要素:

本发明的目的是将重点放在虚拟场景中自然物体和现象的三维真实感建模和行为的动态表现上,研究一种自然起伏地表虚拟车辆运动姿态显示方法。

为了达到上述目的,本发明的技术方案是提供了一种虚拟环境中运动车辆的行为建模方法,其特征在于,包括以下步骤:

步骤1、定义地形的物体坐标系Xt,Yt,Zt的原点以及汽车的物体坐标系Xv,Yv,Zv的原点后,分别建立三维地形模型及三维汽车模型,重力的反方向为物体坐标系Xv,Yv,Zv的Yv轴,将三维汽车模型中四个轮子的最低点定义为四个支点,获得四个支点的Xv轴坐标及Zv轴坐标,四个支点构成的矩形的几何中心定义为三维汽车模型的参考中点,该参考中点同时为物体坐标系Xv,Yv,Zv的原点,其中,三维地形模型具有自然起伏特征,且由三角形网格构成;

步骤2、依据三维地形模型以及三维汽车模型在XwOZw平面的投影,获取四个支点分别所处的构成三维地形模型的四个具体的三角形网格所在平面的平面方程,XwOZw平面为世界坐标系中与四个支点构成的矩形所在平面平行;

步骤3、根据步骤2得到四个平面方程以及四个支点的Xv轴坐标及Zv轴坐标,求得四个支点在物体坐标系Xt,Yt,Zt的Yt轴坐标,从而得到四个支点构成的支撑平面在物体坐标系Xt,Yt,Zt的平面方程及其法向量;

步骤4、依据步骤3求得的支撑平面的平面方程及其法向量求得三维汽车模型的车体高度、偏向角、纵向的俯仰角度以及横向的侧倾角度,从而获得三维汽车模型沿三维地形模型运动时的正确姿态。

优选地,在所述步骤1中,四个支点的Xv轴坐标及Zv轴坐标根据车辆的运动方程确定。

优选地,所述步骤2包括以下步骤:

步骤2.1、根据式(1)确认任意一个支点P所处的三角形网格:

设三角形网格三个顶点为P1,P2,P3,则有:

在式(1)中,夹角由式(2)计算:

式(2)中,表示连接支点户与Pi的矢量,表示连接支点户与Pj的矢量,i=1,2,3,j=2,3;

步骤2.2、依据步骤2.1找到的三角形网格的三个顶点坐标获得三角形网格所在平面的平面方程,对任意一个三角形网格而言,其第i个顶点的坐标为(xi,yi,zi),则其所在平面的平面方程为式(3):

ax+by+cz+d=0 (3)

在式(3)中,

优选地,所述步骤3包括:

步骤3.1、四个支点的Xv轴坐标及Zv轴坐标即为四个支点的Xt轴坐标及Zt轴坐标,依据四个支点的Xt轴坐标及Zt轴坐标结合式(3)求得四个支点的Yt轴坐标;

步骤3.2、根据四个支点的Xt轴坐标、Yt轴坐标及Zt轴坐标,其中任意一个支点的坐标为(xk,yk,zk),求得四个支点构成的支撑平面在物体坐标系Xt,Yt,Zt的平面方程,支撑平面的平面方程为式(4):

asx+bsy+csz+ds=0 (4)

在式(4)中,

步骤3.3、支撑平面的平面方程的法向量为

优选地,在所述步骤4中:

将所述参考中点的Xt轴坐标及Zt轴坐标代入式(4)求得所述车体高度;

偏向角:是物体坐标系Xv,Yv,Zv和物体坐标系Xt,Yt,Zt中Xv轴与Xt轴的夹角,即三维汽车模型的运动轨迹上某点的切线方向与Xt轴的夹角,设运动轨迹则任意时刻T的偏向角为α:

若三维汽车模型做匀速运动,则运动轨迹为则任意时刻T的偏向角

纵向的俯仰角度β,

横向的侧倾角度γ,

本发明研究的是自然起伏地表上运动车辆姿态的真实感显示问题。对于规则路面上运动的车辆动态模型,它们运动行为的表现比较简单,但对于非规则起伏的路面,要正确地表现动态模型的运动姿态则要复杂的多。随着虚拟环境中地形的无规律起伏,车辆由于自身重力的作用,应随着车体所接触的地形局部特征的变化,姿态做出相应的改变。建模方法通过所定义的车辆支撑平面,计算出与地形变化相适应的姿态显示参数并进行三维显示,有效逼真地表现了车辆运行的动态过程。

本发明提出一种自然起伏地表上虚拟车辆行为建模显示方法,能较好地增强虚拟环境的沉浸感,在多媒体仿真以及其他虚拟仿真领域包括多媒体动画、三维游戏、虚拟军事训练模拟等场景中均可应用。

附图说明

图1为本发明的算法流程图;

图2为坐标系的确定;

图3为车辆与地形相对关系俯视图;

图4A及图4B为支点与三角形网格位置关系。

具体实施方式

下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

结合图1,本发明提供了一种虚拟环境中运动车辆的行为建模方法,包括以下步骤:

步骤1、结合图2,定义地形的物体坐标系Xt,Yt,Zt的原点以及汽车的物体坐标系Xv,Yv,Zv的原点后,分别建立三维地形模型及三维汽车模型,重力的反方向为物体坐标系Xv,Yv,Zv的Yv轴,将三维汽车模型中四个轮子的最低点定义为四个支点,四个支点构成的矩形的几何中心定义为三维汽车模型的参考中点,矩形所在平面为xyozy平面,该参考中点同时为物体坐标系Xv,Yv,Zv的原点,其中,三维地形模型具有自然起伏特征,且由三角形网格构成。

步骤2、首先需要判断车辆的四个支点分别位于三维空间中构成地形的哪个具体的三角形中,从而根据三角形三个顶点的数据可以分别计算出四个支点的空间坐标值。对于这个问题本发明提出了一种有效而简单的判别方法,只需考虑三维地形模型以及三维汽车模型在XwOZw平面的投影即可,俯视视图如图3所示,其中实心点代表支点,空心点为参考中心,四个支点的Xv轴坐标及Zv轴坐标根据车辆的运动方程确定,获取四个支点分别所处的构成三维地形模型的四个具体的三角形网格所在平面的平面方程,XwOZw平面为世界坐标系中与四个支点构成的矩形所在平面平行。

步骤2包括以下步骤:

步骤2.1、对于某个特定的支点P,支点P与所处的三角形网格的顶点P1,P2,P3分别构成三个矢量,相邻两个矢量构成的不超过180°的夹角如图4A及图4B所示,其和满足式(1),从而可以根据式(1)确认任意一个支点P所处的三角形网格:

设三角形网格三个顶点为P1,P2,P3,则有:

在式(1)中,夹角由式(2)计算:

式(2)中,表示连接支点P与Pi的矢量,表示连接支点P与Pj的矢量,i=1,2,3,j=2,3;

特殊地,当支点P位于三角形网格的某个顶点上时,由于矢量模为零无法计算夹角,故规定支点P在三角形网格上。

步骤2.2、依据步骤2.1找到的三角形网格的三个顶点坐标获得三角形网格所在平面的平面方程,对任意一个三角形网格而言,其第i个顶点的坐标为(xi,yi,zi),则其所在平面的平面方程为式(3):

ax+bv+cz+d=0 (3)

在式(3)中,

步骤3、根据步骤2得到四个平面方程以及四个支点的Xv轴坐标及Zv轴坐标,求得四个支点在物体坐标系Xt,Yt,Zt的Yt轴坐标,从而得到四个支点构成的支撑平面在物体坐标系Xt,Yt,Zt的平面方程及其法向量。步骤3包括:

步骤3.1、四个支点的Xv轴坐标及Zv轴坐标即为四个支点的Xt轴坐标及Zt轴坐标,依据四个支点的Xt轴坐标及Zt轴坐标结合式(3)求得四个支点的Yt轴坐标;

步骤3.2、根据四个支点的Xt轴坐标、Yt轴坐标及Zt轴坐标,其中任意一个支点的坐标为(xk,yk,zk),求得四个支点构成的支撑平面在物体坐标系Xt,Yt,Zt的平面方程,支撑平面的平面方程为式(4):

asx+bsy+csz+ds=0 (4)

在式(4)中,

步骤3.3、支撑平面的平面方程的法向量为

这种算法得到的是平面多边形所在平面方程的精确解,也是接近于平面的多边形的最好近似解,它等价于通过求相邻边的叉积得到多边形每个顶点的法向量,然后再对它们求平均值。

步骤4、依据步骤3求得的支撑平面的平面方程及其法向量求得三维汽车模型的车体高度、偏向角、纵向的俯仰角度以及横向的侧倾角度,从而获得三维汽车模型沿三维地形模型运动时的正确姿态。

将所述参考中点的Xt轴坐标及Zt轴坐标代入式(4)求得所述车体高度;

偏向角:是物体坐标系Xv,Yv,Zv和物体坐标系Xt,Yt,Zt中Xv轴与Xt轴的夹角,即三维汽车模型的运动轨迹上某点的切线方向与Xt轴的夹角,设运动轨迹为则任意时刻T的偏向角为α:

若三维汽车模型做匀速运动,则运动轨迹为则任意时刻T的偏向角

纵向的俯仰角度β,

横向的侧倾角度γ,

三维模型的动态显示技术是虚拟现实的一个重要研究内容,其中虚拟对象动行为姿态的正确显示是关键技术。本发明研究虚拟环境中,在自然起伏地表上运动的车辆姿态变化的三维动态显示问题。随着虚拟环境中地形的无规律起伏,车辆由于自身重力的作用,应随着车体所接触的地形局部特征的变化,姿态做出相应的改变。建模方法通过所定义的车辆支撑平面,计算出与地形变化相适应的姿态显示参数并进行三维显示,有效逼真地表现了车辆运行的动态过程。

本发明提供的算法根据车辆/地形的运动学关系以地形局部参数,设计出一种根据车辆的支撑平面计算姿态显示参数,从而实现车体姿态实时自动调节的算法。给出了算法的具体描述和实现方法,并对其中的关键技术进行了比较详细的讨论。该算法对车辆轮子个数没有限制,对于履带式车辆也是适用的。该方法在虚拟仿真及虚拟现实其它领域的均可应用。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1