[发明专利]基于深度图实时绘制室外地表遮挡剔除以及加速方法有效
申请号: | 201410564194.8 | 申请日: | 2014-10-21 |
公开(公告)号: | CN104331918B | 公开(公告)日: | 2017-09-29 |
发明(设计)人: | 张翼 | 申请(专利权)人: | 无锡梵天信息技术股份有限公司 |
主分类号: | G06T15/00 | 分类号: | G06T15/00;G06T7/41 |
代理公司: | 北京中恒高博知识产权代理有限公司11249 | 代理人: | 宋敏 |
地址: | 214000 江苏省无锡市新*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 深度 实时 绘制 室外 地表 遮挡 剔除 以及 加速 方法 | ||
1.一种基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,包括以下步骤:
步骤一、绘制当前场景,并把场景的深度值通过加速算法保存到一张深度图中,
所述的深度值为:在相机空间下,视椎体可见范围内,将可见模型进行分割,并对这些分割后的三角形给予光栅化得到场景深度值,所述可见模型分割三角形有三种情况:
第一种是三角形全部在视椎体内;第二种是三角形两个顶点在视椎体内,第三种是三角形一个顶点在视椎体内;对于第一种情况,模型的三角形不用进行分割,第二种情况,将视椎体内多边形分为两个三角形,第三种情况,将视椎体内三角形分割成一个三角形;
步骤二、对待检测模型的包围盒进行光栅化,并判断待检测模型包围盒中的像素和上述步骤一中深度值的大小,从而得出遮挡剔除的结果。
2.根据权利要求1所述的基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,步骤一所述的加速算法为:SSE加速指令和多线程并发对数据进行加速处理。
3.根据权利要求2所述的基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,所述SSE加速指令为:把场景的深度图划分为M*N个格子,格子中的像素用SSE加速指令来处理;
SSE加速指令具体为对4个float数据同时进行加减乘除,在扫描深度图像素时,一次扫描便得到4个像素的深度值。
4.根据权利要求3所述的基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,多线程并发为:首先创建一张256*256大小的渲染目标,将这个空的渲染目标划分为横向M,纵向N的格子,每个格子分配给一个线程来处理,且在每个线程中都应用上述SSE加速指令,每个线程对应处理一个单元,处理的结果生成了一张深度图片元。
5.根据权利要求4所述的基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,所述M=N=4,从而渲染目标被划分为16格,分配到16个线程来处理,最终生成的16个深度图片元,共同构成了一个当前场景的深度图。
6.根据权利要求3至5任一所述的基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,步骤二中所述的包围盒为AABB类型的包围盒,该AABB类型的包围盒包含模型碰撞体,由各边平行于坐标轴的最小六面体组成。
7.根据权利要求6所述的基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,步骤二中所述的判断待检测模型包围盒中的像素和深度值得大小具体为:首先每个线程处理光栅化后的多个包围盒,遍历每一个包围盒,采样待检测模型包围盒中的像素信息深度值,并与当前场景的深度值作比较,当待检测模型包围盒中任意像素的深度值小于当前场景深度值时,该待检测模型包围盒是可见的;当待检测模型包围盒中任意像素的深度值都大于当前场景深度值时,该待检测模型包围盒不可见。
8.根据权利要求6所述的基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,还包括对深度图纹理和待检测的对象都进行降采样处理,经过降采样后的图像变小。
9.根据权利要求8所述的基于深度图实时绘制室外地表遮挡剔除以及加速方法,其特征在于,在每个线程做深度值大小判断的过程中,采用隔像素扫描,并根据模型对象和相机的距离,动态的改变像素扫描间隔数,模型对象距离相机越远,隔像素扫描的间隔越大,模型对象距离相机越近,采样的间隔数越小。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡梵天信息技术股份有限公司,未经无锡梵天信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410564194.8/1.html,转载请声明来源钻瓜专利网。