一种可视点自动跟随的数据触发式观测方法技术

技术编号:8323713 阅读:167 留言:0更新日期:2013-02-14 02:27
一种可视点自动跟随的数据触发式观测方法,步骤如下:(1)从总线上获取仿真数据,并按照周期性数据和非周期性数据进行分类缓存;(2)对于周期性数据,进行可能的数据差值处理,使得相邻两组数据的更新时间在30ms之内;对于非周期性数据,读取未标记为已读且对应仿真时间最早的所有数据存储,统一设定仿真系统关键时间;(3)判断可视化仿真时刻是否新获取了非周期类数据,如果新获取了非周期类数据,则进行窗口兼容性判断,根据兼容性确定是否增加窗口,并设置对应的相机位置和观测角度变化策略;如果未新获取非周期类数据,不改变窗口相机变化策略;(4)根据系统当前时刻周期性数据和已设定的窗口、相机策略进行场景显示。

【技术实现步骤摘要】

本专利技术属于可视化仿真
,涉及一种仿真系统中用于对视觉物体进行三维显示观测的方法。
技术介绍
随着仿真技术的发展,仿真系统越来越庞大,单纯的数字仿真,缺乏直观性,而且庞大的数据也不利于分析人员进行数据分析。三维可视化技术为仿真过程的直观展示、数据分析提供了有效的手段,实现了感性展现与理性分析的同步进行。然而由于仿真推演的不同时间段,用户所关注的显示区域、实体、事件等不尽相同,同时随着仿真区域的扩大,对象个数、交互信息种类和交互次数等大量增加。针对这种需求,现有的非数据触发式的非智能视点观测方法已无法满足要求,主要体现在 (I)展示区域大小固定,不能在仿真过程中自动展示具体的细节信息。传统可视化系统中展示区域大小、视点距离观测物的距离预先固定设置,这种情况下遇到需要展示某个具体实体对象细节信息的时刻,可视化系统不能自动缩小展示区域,靠近关注实体,以展示细节信息。(2)非数据触发的观测方式无法在特定事件发生时及时转换观测焦点。传统的观测方式,往往提前设置了观测相机的位置,在仿真对象较多,仿真区域较大的情况下,无法及时展示各个时刻多个对象发生的事件,特别是无法展示重要事件并提供重要信息。
技术实现思路
本专利技术的技术解决问题是克服现有观测方式由于展示区域大小固定、视点位置固定、观测角度固定、观测对象固定等所带来的展示问题,提出了一种可视化系统中可视点自动跟随的观测方法,可以根据实时传入的仿真数据,在仿真不同时刻智能切换观测对象、设置观测角度,灵活选取观测区域,使用户能够更有效地获取场景、模型、事件等信息。本专利技术的技术解决方案是,步骤如下(I)从总线上获取仿真数据,并将仿真数据按照周期性数据和非周期性数据进行分类缓存;所述的仿真数据包括各仿真对象的可进行三维显示的数学模型;(2)对于周期性数据,读取缓存时间最早且未标记为已读的两组数据Dl和D2,将Dl标记为已读,计算两组数据的更新时间t2-tl,tl为Dl对应的仿真时间,t2为D2对应的仿真时间,如果t2-tl不大于30ms,设置可视化仿真时间t = tl,同时设置预仿真时间ty=t2,直接进入步骤(3);如果t2-tl大于30ms则进行数据差值处理,使得新增插值数据与D1、D2 —起按仿真时间排序后相邻数据的更新时间不大于30ms,将新增插值数据存入缓存,并将D2替换为插值后按照仿真时间先后排序在Dl后的第一组数据,t2替换为新D2对应的时间,设置可视化仿真时间t = tl,同时设置预仿真时间ty = t2,然后进入步骤(3);对于非周期性数据,判断数组FD中已读取的非周期类数据是否为空,如果为空,读取未标记为已读且对应的仿真时间最早的所有数据存入数组FD,记数组FD中所有数据对应的仿真时间为tmin,将读入数据标记为已读后进入步骤(4); (3)判断周期类数据是否为第一次获取,如果是第一次则初始化主窗口,并初始化主窗口所关注的实体,相机的初始位置和观测的初始角度;如果不是第一次则直接进入步骤⑷;(4)判断可视化仿真时间t = tl时刻是否新获取了非周期类数据,如果未新获取非周期类数据,进入步骤(5);如果新获取了非周期类数据,则将主窗口所关注的实体集合作为一个主实体组,同时将每条非周期类数据所涉及到的实体作为一个附加实体组,将主实体组和所有附加实体组按照兼容性进行分组,分以下三种情况分别进行处理(41)如果某分组中有且仅有一个附加实体组,则在ty = tmin,或者ty > tmin且tl = tmin时刻增加显示窗口,按照该附加实体组所需的观测时间设置该增加窗口的关闭时间,同时按照该附加实体组在tmin时刻的位置以及实体组最小包络的大小设置相应的·相机位置和观测角度;(42)如果某分组中仅包含有附加实体组且附加实体组的数量不少于2组,则在ty=tmin,或者ty > tmin且tl = tmin时刻增加显示窗口,按照各附加实体组所需的观测时间中的最大值设置该增加窗口的关闭时间,同时按照各附加实体组在tmin时刻的位置以及各实体组最小包络的大小设置相应的相机位置和观测角度;(43)如果某分组中包含有主实体组,则在周期类数据中找到时刻tx并读取对应时刻的周期类数据,tx为满足关系式tmin-txi > C * 30ms的所有txi中的最小值,C为约定的正整数,利用tx时刻的主实体组的位置和最小包络、tmin时刻该分组中所有实体组全集的位置和最小包络的大小设置相应的相机位置和观测角度;所述的兼容性判断方法为如果两个实体组之间存在子集关系,且存在子集关系的实体组在tmin时刻最小包络的倍数关系及区域中心点位置差在预设值范围内,则判断该两个实体组兼容;(5)利用数据Dl和已约定的在可视化仿真过程中的相机和窗口的设置,进行场景显示,当可视化仿真时间到达tmin时清空FD数组,返回步骤(2),进行数据更新和时间推进操作,以展示下一时刻的可视化场景,直至所有缓存的周期类数据均标记为已读。本专利技术与现有技术相比的优点在于(I)通过对接收到的数据进行分类,能够快速、有针对性的确定可视化窗口和相机的变化策略;(2)对接收到的数据进行前处理,提高数据刷新率,能够保证更高质量的可视化显示效果。(3)能够提前一定的时间量对准各种突发事件发生的场景,可全面、高效展示仿真过程中关键事件信息。(4)动态智能切换观测相机的观测对象,无需人工切换,使可视化系统更加智能。附图说明图I为本专利技术方法的流程框图。具体实施例方式如图I所示,为本专利技术方法的流程框图,主要步骤如下(I)完成实时仿真数据接收、分类、存储。三维可视化系统从仿真系统的数据总线上(虚拟总线、RTI等)获得其他模型(可能分布于不同的仿真节点上的模型)仿真生成的实验数据,并对仿真数据按照信息类型进行分类,同时依照一定格式完成数据存储。仿真实验数据通常包括参与仿真的各个对象的状态属性信息(如仿真对象的速度、位置、姿态、对应三维实体造型文件信息等),各个对象之间的交互信息(如碰撞、探测、信息传递等),各个对象在某种条件下所执行的特定动作(如导弹发射、各级分离、发动机关机等)O仿真系统对整个可视化系统中发布订购的信息按照信息的更新周期进行分类,分 为对象类和交互类。对象类为周期性发布的数据,如仿真实体的位置、速度、姿态等数据;交互类消息为非周期性发布的数据,如碰撞、武器发射、探测成功等突发事件消息。最后按照分类信息对数据进行缓存,在进行窗口区域、相机位置等可视化判断时,仅依赖交互类消息,而对象类消息仅用于驱动三维视景中实体的运动。(2)在周期类数据缓存两组以上后(如已经缓存4组数据),即可开始从缓存区读取数据。首次读取数据前将可视化系统的系统时间t设为0,同时设置两个线程分别做如下处理a)其中一条线程一次性读取缓存时间最早的两组周期类数据Dl和D2,Dl所对应的时间为tl,D2所对应的时间为t2。设置仿真系统当前时间t = tl。将Dl的数据赋予对应的实体属性。判断周期性数据的更新时间(t2_tl),如果数据更新间隔小于30ms (根据人眼视觉暂留特性,每秒更新24 25帧可形成连续的动画图像),设置可视化仿真时间t = tl,设置预测时间ty = t2,则直接进入步骤(3);如果数据更新间隔大于30ms,则本文档来自技高网...

【技术保护点】
一种可视点自动跟随的数据触发式观测方法,其特征在于步骤如下:(1)从总线上获取仿真数据,并将仿真数据按照周期性数据和非周期性数据进行分类缓存;所述的仿真数据包括各仿真对象的可进行三维显示的数学模型;(2)对于周期性数据,读取缓存时间最早且未标记为已读的两组数据D1和D2,将D1标记为已读,计算两组数据的更新时间t2?t1,t1为D1对应的仿真时间,t2为D2对应的仿真时间,如果t2?t1不大于30ms,设置可视化仿真时间t=t1,同时设置预仿真时间ty=t2,直接进入步骤(3);如果t2?t1大于30ms则进行数据差值处理,使得新增插值数据与D1、D2一起按仿真时间排序后相邻数据的更新时间不大于30ms,将新增插值数据存入缓存,并将D2替换为插值后按照仿真时间先后排序在D1后的第一组数据,t2替换为新D2对应的时间,设置可视化仿真时间t=t1,同时设置预仿真时间ty=t2,然后进入步骤(3);对于非周期性数据,判断数组FD中已读取的非周期类数据是否为空,如果为空,读取未标记为已读且对应的仿真时间最早的所有数据存入数组FD,记数组FD中所有数据对应的仿真时间为tmin,将读入数据标记为已读后进入步骤(4);(3)判断周期类数据是否为第一次获取,如果是第一次则初始化主窗口,并初始化主窗口所关注的实体,相机的初始位置和观测的初始角度;如果不是第一次则直接进入步骤(4);(4)判断可视化仿真时间t=t1时刻是否新获取了非周期类数据,如果未新获取非周期类数据,进入步骤(5);如果新获取了非周期类数据,则将主窗口所关注的实体集合作为一个主实体组,同时将每条非周期类数据所涉及到的实体作为一个附加实体组,将主实体组和所有附加实体组按照兼容性进行分组,分以下三种情况分别进行处理:(41)如果某分组中有且仅有一个附加实体组,则在ty=tmin,或者ty>tmin且t1=tmin时刻增加显示窗口,按照该附加实体组所需的观测时间设置该增加 窗口的关闭时间,同时按照该附加实体组在tmin时刻的位置以及实体组最小包络的大小设置相应的相机位置和观测角度;(42)如果某分组中仅包含有附加实体组且附加实体组的数量不少于2组,则在ty=tmin,或者ty>tmin且t1=tmin时刻增加显示窗口,按照各附加实体组所需的观测时间中的最大值设置该增加窗口的关闭时间,同时按照各附加实体组在tmin时刻的位置以及各实体组最小包络的大小设置相应的相机位置和观测角度;(43)如果某分组中包含有主实体组,则在周期类数据中找到时刻tx并读取对应时刻的周期类数据,tx为满足关系式tmin?txi>C*30ms的所有txi中的最小值,C为约定的正整数,利用tx时刻的主实体组的位置和最小包络、tmin时刻该分组中所有实体组全集的位置和最小包络的大小设置相应的相机位置和观测角度;所述的兼容性判断方法为:如果两个实体组之间存在子集关系,且存在子集关系的实体组在tmin时刻最小包络的倍数关系及区域中心点位置差在预设值范围内,则判断该两个实体组兼容;(5)利用数据D1和已约定的在可视化仿真过程中的相机和窗口的设置,进行场景显示,当可视化仿真时间到达tmin时清空FD数组,返回步骤(2),进行数据更新和时间推进操作,以展示下一时刻的可视化场景,直至所有缓存的周期类数据均标记为已读。...

【技术特征摘要】
1. 一种可视点自动跟随的数据触发式观测方法,其特征在于步骤如下(1)从总线上获取仿真数据,并将仿真数据按照周期性数据和非周期性数据进行分类缓存;所述的仿真数据包括各仿真对象的可进行三维显示的数学模型;(2)对于周期性数据,读取缓存时间最早且未标记为已读的两组数据Dl和D2,将Dl标记为已读,计算两组数据的更新时间t2-tl,tl为Dl对应的仿真时间,t2为D2对应的仿真时间,如果t2-tl不大于30ms,设置可视化仿真时间t = tl,同时设置预仿真时间ty = t2, 直接进入步骤(3);如果t2-tl大于30ms则进行数据差值处理,使得新增插值数据与D1、 D2 一起按仿真时间排序后相邻数据的更新时间不大于30ms,将新增插值数据存入缓存,并将D2替换为插值后按照仿真时间先后排序在Dl后的第一组数据,t2替换为新D2对应的时间,设置可视化仿真时间t = tl,同时设置预仿真时间ty = t2,然后进入步骤(3);对于非周期性数据,判断数组FD中已读取的非周期类数据是否为空,如果为空,读取未标记为已读且对应的仿真时间最早的所有数据存入数组FD,记数组FD中所有数据对应的仿真时间为tmin,将读入数据标记为已读后进入步骤(4);(3)判断周期类数据是否为第一次获取,如果是第一次则初始化主窗口,并初始化主窗口所关注的实体,相机的初始位置和观测的初始角度;如果不是第一次则直接进入步骤 ⑷;(4)判断可视化仿真时间t= tl时刻是否新获取了非周期类数据,如果未新获取非周期类数据,进入步骤(5);如果新获取了非周期类数据,则将主窗口所关注的实体集合作为一个主实体组,同时将每条非周期类数据所涉及到的实...

【专利技术属性】
技术研发人员:李杰奇冷传航彭健安思颖王晓路
申请(专利权)人:中国运载火箭技术研究院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1