一种数字孪生模型的轻量化方法与流程

文档序号:35338534发布日期:2023-09-07 03:45阅读:72来源:国知局
一种数字孪生模型的轻量化方法与流程

本发明涉及虚拟现实,尤其涉及一种数字孪生模型的轻量化方法。


背景技术:

1、在数字孪生场景中,场景内模型与摄像机之间的空间关系均会不断地发生变化,特别是在进行细节操作的时候,大部分的模型是处于摄像机视锥体之外的。这些模型不具有可见性,其数据即为冗余的数据,但是同样会提交给渲染引擎进行渲染,额外消耗计算机渲染资源。这种情况下亟需对场景模型进行可见性分析,从而实现减少需要渲染的模型数据量。

2、现有技术中利用opengl检查遮挡和视锥干涉,而利用opengl进行场景剔除操作,查询时间相对较长,严重影响场景运行帧率,所以需要在此基础上进行进一步的优化,以在对不可见区域的剔除的前提下,实现场景的高帧率运行,实现数字孪生场景的轻量化。


技术实现思路

1、针对上述不足,本发明所要解决的技术问题是:提供一种数字孪生模型的轻量化方法,采用改进的折叠方法构建哈希表,将哈希表与二叉树进行结合,构建场景最优层次包围盒树,通过遍历bvh树判断模型与视锥是否发生干涉,进行不可见模型剔除,以实现数字孪生模型的轻量化。

2、为解决上述技术问题,本发明的技术方案是:

3、一种数字孪生模型的轻量化方法,包括以下步骤:

4、步骤一、预处理:

5、导入整个场景所有模型,并构建每个模型的包围盒;

6、将每个模型包围盒的信息存储在哈希表中,构建哈希表;

7、基于哈希表中包围盒,采用自底向上的方式,构造所有模型的层次包围盒树;

8、再将每个模型包围盒作为层次包围盒树的叶子节点,采用预设定合并规则将叶子节点进行归并作为父节点,直到得到bvh树的根节点,完成bvh树的构建;

9、步骤二、检测:

10、遍历层次包围盒树,判断包围盒是否与视锥发生干涉;

11、如果没有发生干涉,则将模型剔除;

12、如果发生干涉,则判断节点是否为叶子节点;

13、若是,将叶子节点对应的数据放到哈希表中进行查找,并保留;

14、若否,继续依据新的父节点进行遍历操作;

15、步骤三、轻量化:

16、通过模型留存和剔除操作,得到轻量化的孪生体模型。

17、优选方式为,步骤一中所述并构建每个模型的包围盒;将每个模型包围盒的信息存储在哈希表中步骤,具体为:

18、确定整个场景的坐标原点,以世界坐标为主;

19、获取每个模型的中心点的世界坐标值(x,y,z);

20、计算每个模型到场景原点的距离

21、将d作为索引值,构建哈希表。

22、优选方式为,预设定合并规则为:

23、将场景中的模型按照d值进行递增排序;

24、比较每个模型的d值;

25、将在预设定范围内的d值进行归并;

26、完成bvh树的构建。

27、优选方式为,所述步骤一中的导入整个场景所有模型,并构建每个模型的包围盒,具体为:导入整个场景所有模型,并构建每个模型的aabb包围盒。

28、优选方式为,所述步骤一中的将每个模型包围盒的信息存储在哈希表中,构建哈希表,具体为:将每个模型包围盒的信息存储在哈希表中,采用折叠法构建哈希表。

29、采用上述技术方案后,本发明的有益效果是:

30、由于本发明的数字孪生模型的轻量化方法,主要包括预处理、检测和轻量化步骤,其中预处理包括导入整个场景所有模型,并构建每个模型的包围盒;将每个模型包围盒的信息存储在哈希表中,且采用折叠法构建哈希表;基于哈希表中模型包围盒,采用自底向上的方式,构造所有模型的层次包围盒树;再将每个模型包围盒作为层次包围盒树的叶子节点,采用预设定合并规则将叶子节点进行归并作为父节点,直到得到bvh树的根节点,完成bvh树的构建;其中检测:遍历层次包围盒树,判断包围盒是否与视锥发生干涉;如果没有发生干涉,则将模型剔除;如果发生干涉,则判断节点是否为叶子节点;若是,将叶子节点对应的数据放到哈希表中进行查找,并保留;若否,继续依据新的父节点进行遍历操作;其中轻量化通过模型留存和剔除操作,得到轻量化的孪生体模型。

31、可见,本发明采用改进的折叠方法构建哈希表,将哈希表与二叉树进行结合,构建场景最优层次包围盒树,即最优bvh树,通过遍历bvh树判断模型与视锥是否发生干涉,进行不可见模型剔除,以实现数字孪生模型的轻量化。



技术特征:

1.一种数字孪生模型的轻量化方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的数字孪生模型的轻量化方法,其特征在于,步骤一中所述并构建每个模型的包围盒;将每个模型包围盒的信息存储在哈希表中步骤,具体为:

3.根据权利要求2所述的数字孪生模型的轻量化方法,其特征在于,预设定合并规则为:

4.根据权利要求1所述的数字孪生模型的轻量化方法,其特征在于,所述步骤一中的导入整个场景所有模型,并构建每个模型的包围盒,具体为:

5.根据权利要求1所述的数字孪生模型的轻量化方法,其特征在于,所述步骤一中的将每个模型包围盒的信息存储在哈希表中,构建哈希表,具体为:


技术总结
本发明公开了一种数字孪生模型的轻量化方法,先导入整个场景所有模型,构建每个模型包围盒;将每个模型包围盒的信息存储在哈希表中,以构建哈希表,再构造所有模型的层次包围盒树;然后遍历所有层次包围盒树,判断包围盒是否与视锥发生干涉;若没有发生干涉将模型剔除;若发生干涉,判断节点是否为叶子节点;若是将叶子节点对应的数据放到哈希表中进行查找并保留;若否继续依据新的父节点进行遍历操作;最后通过模型留存和剔除操作,得到轻量化的孪生体模型。可见,本发明将哈希表与二叉树进行结合,构建场景最优层次包围盒树,通过遍历BVH树判断模型与视锥是否发生干涉,进行不可见模型剔除,实现数字孪生模型的轻量化。

技术研发人员:王惠青,严小天,刘宁,郭秋华,张晴晴,刘训福
受保护的技术使用者:青岛虚拟现实研究院有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1