一种户外增强现实军事仿真训练的方法与流程

文档序号:16926386发布日期:2019-02-22 19:54阅读:610来源:国知局
一种户外增强现实军事仿真训练的方法与流程

本发明属于信息技术领域,具体涉及一种户外增强现实军事仿真训练的方法。



背景技术:

陆军建设发展已迈入新的历史时期,打造具有鲜明信息化特质的新型陆军,发展信息化武器装备,探索信息化作战方式,加快提升基于网络信息体系的联合作战能力。当前条件下,为加快推进陆军建设转型,为将来打赢基于网络信息体系的联合作战,军队尤其是陆军进行对抗条件下的实战化演练是必由之路。

当前,世界各国军队进行模拟训练的主要手段基本上是采用训练模拟系统(器材)。技术类型上可分实物仿真模拟、软件模拟仿真以及半实物仿真。但是,这三类训练模拟系统,其所构成的训练环境与真实环境相比都存在较大的差距。此外对抗演练基本是按照预先设想假定的作战行动、作战过程和作战能力进行,各级指挥员、作战部(分)队无法真实感受到作战对手及其应有的灵活性。此外,我军对实战化演练活动的精度要求日益提高,在预定作战地域、预定环境与蓝方实地开展对抗演练最能检验实战能力,但受客观因素影响只能局部或近似的模拟预定作战地域、预定环境与蓝方的对抗,其演练效果难以达到或接近真正意义的实战对抗。实战化演练进行作战毁伤效能评估时,因为没有实际毁伤目标,部队在进行实际作战毁伤效能评估时通常利用射击数据,结合个人经验,对比、分析和推导得出部队演练的毁伤效能评估结果。该做法无法直观呈现复杂战场环境下蓝方的实际毁伤状态,缺乏形象的展示过程和严谨的计算模型,没有形成有力的数据和视觉支撑。实战化演练效果大打折扣。

增强现实技术因其具有的虚实融合,实时交互、三维跟踪定位的特点,理论上能够100%地反映真实世界的基本特征,又能够将各种信息要素以虚拟方式无缝叠加,从而构造超越真实世界的“超真实”模拟训练环境。因此可有效解决训练模拟领域的“仿真度”问题,为实现、提高、加强和完善对抗条件下的实战化演练提供了可行的解决方案。



技术实现要素:

本发明的目的是为了克服已有技术的缺陷,为了解决军事训练模拟领域中存在的训练环境仿真度低的问题,提出一种增强现实户外军事训练仿真场景的生成方法,旨在为部队提供虚实融合的户外军事仿真训练,为提高实战化演练水平提供可行的技术支撑和解决方案。

本发明方法是通过下述技术方案实现的:

一种增强现实户外军事训练仿真场景的生成的方法,其基本过程如下:

步骤一、构建出真实环境的三维点云地图;

步骤二、将三维点云地图利用三角网格化算法生成三角面片地图模型;

步骤三、将三角面片地图模型导入三维渲染引擎中,并设置碰撞体用于碰撞检测;

步骤四、根据给定的摄像机gps经纬度和高程信息

(lungcam,latcam,zcam)t以及军事仿真目标的gps经纬度和高程信息

(lungtar,lattar,ztar)t,计算出军事仿真目标在三维渲染引擎世界坐标系下的坐标xu,yu,zu,并将其添加至三维渲染场景中;

步骤五、将当前摄像机获取的视频图像读取到三维渲染引擎,并设置成背景;

步骤六、实时计算摄像机相对于真实场景的六自由度姿态信息;

步骤七、将步骤六计算的六自由度姿态信息赋值给三维渲染引擎中的虚拟相机;

步骤八、将显示器设备与三维渲染引擎实现接口的连接,并把最终渲染的虚实融合场景画面与显示器同屏数据传输即可完成虚实融合场景渲染显示至显示器设备。

进一步地,本发明所述步骤四根据公式(1)计算出所述坐标xu,yu,zu

其中,lung为两gps坐标(真实摄像机与军事仿真目标的gps坐标)间的经度转换系数,lat为两gps坐标(真实摄像机与军事仿真目标的gps坐标)间的纬度转换系数。

进一步地,本发明所述步骤一采用半稠密视觉slam方法构建三维点云地图,所述步骤六采用半稠密视觉slam方法计算所述六自由度姿态信息。

有益效果

本发明方法,对比已有技术,通过计算军事仿真目标在三维渲染引擎世界坐标系下的坐标,并在三维渲染引擎中进行军事仿真目标的添加,能够实现虚拟军事目标与真实场景的融合显示以及实时交互,可有效解决军事训练模拟领域的仿真度问题。

附图说明

图1为本发明实施方式的系统流程示意图;

图2为各坐标系之间的变换关系图。

具体实施方式

下面结合附图对本发明方法的实施方式做详细说明。

一种增强现实户外军事训练仿真场景的生成方法,如图1所示,其具体步骤包括:

步骤一、采用lsdslam(largescaledirectsimultaneouslocalizationandmapping,大规模地图构建与实时跟踪定位)系统构建出真实环境的半稠密三维点云地图,并存储。

步骤二、利用pcl(pointcloudlibrary)库中的贪婪投影三角网格化算法,将步骤一获取的半稠密三维点云地图生成三角面片地图模型。

步骤三、将步骤二获得的三角面片地图模型通过unity3d的导入功能或者将地图模型直接拖入unity3d等方式导入unity3d渲染引擎中,并在unity3d中为模型添加碰撞体组件。

步骤四、根据设定的军事仿真目标的gps经纬度信息,在unity3d虚拟场景的相对位置中渲染生成相应的军事仿真目标。具体步骤如下:

(1)定义用于计算军事仿真目标在unity3d场景中的各个坐标系。如附图2所示,包括真实场景坐标系、gps坐标系、unity3d坐标系以及模型自身坐标系。①gps坐标系:军事仿真目标在gps坐标系中坐标为(lungtar,lattar,ztar)t,摄像机在gps坐标系中的坐标为(lungcam,latcam,zcam)t,在gps坐标系的坐标中,经纬度以度为单位,高程以米为单位。②真实场景坐标系:设定摄像机在真实世界的初始位置为世界坐标系原点,世界坐标系的坐标轴与gps坐标系的坐标轴保持一致,军事仿真目标在真实场景世界坐标系坐标为(xw,yw,zw)t,以米为坐标单位。③unity3d坐标系:军事仿真目标在unity3d坐标系的坐标为(xu,yu,zu)t,以米为坐标单位。④模型自身坐标系:军事仿真目标在其自身坐标系中的坐标为(xself,yself,zself)t,以米为坐标单位。

(2)使用两点间的经纬度距离公式计算经纬度的转换系数,用于计算军事仿真目标在真实场景坐标系下的坐标。若甲、乙两点在真实场景中的经纬度分别为(lung1,lat1)和(lung2,lat2),则经度转换系数利用公式(1)计算获得:

公式(1)中,arcsin()为反正弦函数;经纬度的单位需由度转为弧度;l表示地球的半径,单位为公里,用常量6378.173表示。

纬度转换系数由公式(2)计算获得:

(3)将军事仿真目标自身的经纬度和高程信息利用公式(3)经旋转和平移变换到世界坐标系下,实现在同一个坐标系下描述摄像机、军事仿真目标的位置关系。

公式(3)中,r为3×3的单位正交旋转矩阵,t为3×1的平移矩阵。公式(4)中,平移矩阵t的x、y分量分别由公式(1)和公式(2)的经纬度转换系数乘以军事仿真目标与真实场景坐标系原点的经纬度之差计算得到,z分量为军事仿真目标与真实场景坐标系原点高程差。

(4)将军事仿真目标利用公式(5)由真实场景坐标系变换到unity3d坐标系,用于在unity3d引擎中加载、渲染军事仿真物体模型。

当不考虑模型的朝向(即r为单位矩阵),且设军事仿真目标在其自身坐标系中的坐标(xself,yself,zself)t=(0,0,0)t,结合公式(1)-(5)可得军事仿真目标在unity3d世界坐标系中的坐标(xu,yu,zu)t

最后,根据计算得到的军事仿真目标的坐标,将对应事物目标模型加载并渲染在unity3d场景中相应位置处。

步骤五、将当前摄像机捕获的视频图像读取到unity3d三维渲染引擎中,并设置成背景。具体步骤如下:

(1)实现真实摄像机与虚拟摄像机内部参数的配准,以达到两者观察场景画面的一致。根据所使用摄像机的型号参数,对unity3d场景中虚拟摄像机的相应内部参数进行相同设置。

(2)将真实摄像机的视频图像利用unity3d的webcamtexture()函数或者opencvforunity插件的videocapture()函数传输到unity3d中,再将摄像机的视频图像以贴图的方式渲染在设置好的平面上,从而在虚拟摄像机视图中可以观察到真实场景视频流与军事仿真目标模型融合后的画面,实现虚拟摄像机和真实摄像机观察画面的实时同步。

步骤六、采用lsd-slam算法实时计算摄像机相对于真实场景的六自由度姿态信息,具体步骤如下:

(1)通过摄像机实时拍摄的第一帧图像与步骤一构建地图模型时保存的最相似关键帧做特征点匹配,计算出初始位置的跟踪摄像机相对于地图模型坐标系的位姿。再用保存的关键帧深度图特征点深度与特征匹配对应点三角化恢复的深度的比值来校正位姿的平移数据。

(2)调用lsd-slam算法的前端跟踪模块以及后端图优化模块,可以得到当前帧图像相对于参考帧(离当前帧最近的关键帧)的六自由度位姿,以及优化过后的所有关键帧之间的位姿,通过位姿传递,便可以得到lsd-slam系统尺度下的全局一致的实时的摄像机相对于跟踪摄像机初始位置的六自由度姿态信息。

(3)通过在真实场景的已知位置放置一个人工标识,通过手工点选人工标识上的特征点与lsd-slam地图中相对应的3d点,实现配准。在以lsd-slam系统坐标系为基准下,通过位置传感器可以获得手选的人工标识上的特征点在真实场景尺度下的3d坐标,再通过实际slam系统运行得到的地图中相对应的3d点坐标,最终两个3d坐标的比值可以得到slam系统与真实场景的尺度信息,将尺度信息乘在已经得到的平移数据上,便可以得到实时的摄像机相对于真实场景的六自由度姿态信息。

步骤七、将步骤六计算的实时的摄像机相对于真实场景的六自由度姿态信息赋值给unity3d渲染引擎中的虚拟摄像机机,实现虚拟摄像机与真实摄像机的位姿同步。具体步骤如下:

(1)确定虚拟摄像机的初始姿态。由步骤四可知,摄像机的初始位置为坐标系原点,但是摄像机在真实场景世界坐标系的姿态无法确定,因此使用惯性测量单元获取摄像机的初始姿态数据(航向角、俯仰角和横滚角),再利用串口将数据传递到unity3d中,并用脚本将数据赋予虚拟摄像机。

(2)通过动态链接库的方式将lsd-slam算法实时计算的位姿数据传递到unity3d中。在位姿数据经过如公式(7)和(8)所示的坐标系转换后,利用脚本将位姿数据赋予虚拟摄像机,由此实现虚拟摄像机与真实摄像机的位姿实时同步。

rcam=rori(tulrslamtul)(7)

tcam=rori(tultslam)(8)

公式(7)-(8)中,用于将rslam、tslam由右手坐标系中转换到左手坐标系中;rori为步骤七(1)中获得的摄像机初始姿态数据转换的3×3单位正交旋转矩阵;rslam、tslam分别为lsd-slam算法计算得到六自由度姿态信息中的3×3的单位正交旋转矩阵、3×1的平移矩阵;rcam、tcam为rslam、tslam经过坐标系转换后赋予虚拟摄像机的3×3的单位正交旋转矩阵、3×1的平移矩阵。

步骤八、将显示器设备与三维渲染引擎实现接口的连接,并把最终渲染的虚实融合场景画面与显示器同屏数据传输即可完成虚实融合场景渲染显示至显示器设备。

自此,就完成了/实现了增强现实户外军事训练仿真场景的生成方法。

综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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