[发明专利]大规模场景遮挡剔除方法、装置、设备及存储介质有效
申请号: | 201911107500.4 | 申请日: | 2019-11-13 |
公开(公告)号: | CN112802175B | 公开(公告)日: | 2023-09-19 |
发明(设计)人: | 王亮;肖鹏 | 申请(专利权)人: | 北京博超时代软件有限公司 |
主分类号: | G06T17/00 | 分类号: | G06T17/00 |
代理公司: | 北京市鼎立东审知识产权代理有限公司 11751 | 代理人: | 陈佳妹;贾满意 |
地址: | 100089 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 大规模 场景 遮挡 剔除 方法 装置 设备 存储 介质 | ||
本申请涉及一种大规模场景遮挡剔除方法,包括:对大规模场景数据进行组织,得到与大规模场景数据相应的场景图;根据空间相机参数构建三维场景中的虚拟相机,并创建与虚拟相机相匹配的深度图;确定深度图的有效屏幕坐标范围,并根据有效屏幕坐标范围构建四叉树;遍历场景图中的各场景模型,并获取各场景模型的屏幕空间位置以及各场景模型的最小深度值;基于各场景模型的屏幕空间位置以及各场景模型的最小深度值,遍历四叉树,确定各场景模型的遮挡结果;将确定出遮挡结果为被遮挡的场景模型进行剔除处理。相较于相关技术中计算原始的PVS方式,降低了场景实时绘制过程中对内存的消耗,提高了大规模场景数据的绘制速度。
技术领域
本公开涉及计算机视觉技术领域,尤其涉及一种大规模场景遮挡剔除方法、装置、设备及存储介质。
背景技术
大规模复杂场景的可见性问题是研究虚拟现实、实时仿真以及三维交互设计等许多重要应用的基础。遮挡剔除算法是可见性问题研究中的支撑技术,可以大量减少当前所需渲染的场景模型数量,对于大规模场景实时绘制能够起到明显的优化作用。
在大多数的三维可视化软件中,通过采用预计算原始的PVS(潜在可见物体集)来判断场景中模型之间的遮挡关系,从而再过滤掉被遮挡的模型。但是,预计算原始的PVS需要占用额外的大量内存,可见性烘焙时间较长。
发明内容
有鉴于此,本公开提出了一种大规模场景遮挡剔除方法,可以有效减少内存消耗,提高渲染效率。
根据本公开的一方面,提供了一种大规模场景遮挡剔除方法,包括:
对大规模场景数据进行组织,得到与所述大规模场景数据相应的场景图;
根据空间相机参数构建三维场景中的虚拟相机,并创建与所述虚拟相机相匹配的深度图;其中,所述深度图中包含所述场景图中各场景模型的深度;
确定所述深度图的有效屏幕坐标范围,并根据所述有效屏幕坐标范围构建四叉树;其中,所述四叉树的各块中像素个数大于或等于预设数值;
遍历所述场景图中的各所述场景模型,并获取各所述场景模型的屏幕空间位置以及各所述场景模型的最小深度值;
基于各所述场景模型的屏幕空间位置以及各所述场景模型的最小深度值,遍历所述四叉树,确定各所述场景模型的遮挡结果;
将确定出所述遮挡结果为被遮挡的场景模型进行剔除处理。
在一种可能的实现方式中,根据空间相机参数构建三维场景中的虚拟相机时,包括获取所述空间相机参数,并根据所述空间相机参数得到所述虚拟相机的投影矩阵的步骤;
其中,所述空间相机参数包括:视点位置、视角中心、视口宽度、视口高度、相机角度、近平面和远平面中的至少一种;
所述投影矩阵为:
其中,near为所述虚拟相机椎体内的近裁剪平面,far为所述虚拟相机椎体内的远裁剪平面,top为近裁剪平面的视觉顶点,bottom为近裁剪平面的视觉低点,left为近裁剪平面的左边界,right为近裁剪平面的右边界。
在一种可能的实现方式中,各所述场景模型的深度包括各所述场景模型相对于所述虚拟相机的距离;
其中,创建与所述虚拟相机相匹配的深度图包括:
获取所述场景图中各所述场景模型相对于所述虚拟相机的距离,并创建与所述虚拟相机的视口宽度和视口高度相匹配的初始深度图;
将各所述场景模型相对于所述虚拟相机的距离实时渲染至所述初始深度图后,得到相应的所述深度图;
其中,各所述场景模型相对于所述虚拟相机的距离通过公式:计算得到;
其中,z为视点距离,Zc为深度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京博超时代软件有限公司,未经北京博超时代软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911107500.4/2.html,转载请声明来源钻瓜专利网。