[发明专利]一种基于三维点云的实时透明物体GPU并行生成方法有效
申请号: | 201210301906.8 | 申请日: | 2012-08-22 |
公开(公告)号: | CN102915559A | 公开(公告)日: | 2013-02-06 |
发明(设计)人: | 赵斌;沈旭昆;张凤全;龙翔;赵沁平 | 申请(专利权)人: | 北京航空航天大学 |
主分类号: | G06T17/00 | 分类号: | G06T17/00;G06T7/00;G06T15/20 |
代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 李新华 |
地址: | 100191*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 三维 实时 透明 物体 gpu 并行 生成 方法 | ||
1.一种基于三维点云的实时透明物体GPU并行生成方法,其特征步骤如下:
(1)生成背景贴图;
(2)生成透明物体的几何缓冲,按球体生成点云,利用硬件深度检测获得近视平面的深度值,同时在着色器中计算并保存透明物体材质信息;
(3)利用几何缓冲中的深度信息,平滑深度;
(4)再次按球体生成点云,利用硬件Alpha混合累加计算透明物体厚度;
(5)透明物体着色,利用几何缓冲对透明物体使用光照算法进行光照计算,利用厚度值计算透明物体的折射反射光线,并利用折射光线对背景贴图采样获得当前像素点的背景颜色,最后通过融合操作完成着色。
2.根据权利要求1所述的基于三维点云的实时透明物体GPU并行生成方法,其特征在于:所述步骤(1)中,生成背景贴图时根据场景规模和光照情况选择不同的生成方法,场景中不透明物体数量Ns与光源数量Nl的比值为v,设定一个阈值n,当v<n的时候使用延时绘制管线,否则使用传统的绘制管线。
3.根据权利要求1所述的基于三维点云的实时透明物体GPU并行生成方法,其特征在于:所述步骤(2)中,生成透明物体几何缓冲时,使用精灵点方法生成所有三维点,同时修正当前所在像素的深度值;利用步骤(1)中保留的深度值,使用深度检测方法可以对不可见的三维点进行剔除,从而大幅度减少实际生成的三维点数目。
4.根据权利要求1所述的基于三维点云的实时透明物体GPU并行生成方法,其特征在于:所述步骤(3)中,平滑深度将双边滤波器分为横向和纵向两个方向依次对输入图像进行平滑。
5.根据权利要求1所述的基于三维点云的实时透明物体GPU并行生成方法,其特征在于:所述步骤(4)中,计算透明物体厚度时,在当前相机位置使用原图像1/4的分辨率生成场景中透明物体,此时开启硬件的Alpha混合的相加模式,当前点的厚度值为:其中Nz为当前像素位置上物体法向量在z方向的分量,r为用户指定的厚度值。
6.根据权利要求1所述的基于三维点云的实时透明物体GPU并行生成方法,其特征在于:所述步骤(5)中,透明物体与背景融合的步骤为:
对于当前像素,在透明物体对应的几何缓冲中采样s,若其中alpha分量sa>0,利用分量sx、sy和sz重建眼坐标系中的位置Psye;
重建法向量,以当前点为中心,分别在上下左右各个方向对相邻像素采样并重建眼坐标系坐标,在获得的4个点中计算局部包围盒:Lbb={min(x,y,z)max(x,y,z)},则当前点法向量:NO=normalize(Lbb(min)×Lbb(max));
采用Phong模型计算当前点的颜色值Co;
在厚度贴图中采样,获得当前点厚度值To,同时利用Psye和NO根据折射定律计算折射光线方向Lr;
从背景贴图中根据Lr采样获得新的颜色值Cb,按照得到最终当前像素的颜色。
7.根据权利要求3所述的基于三维点云的实时透明物体生成方法,其特征在于:生成精灵点时修正深度值的过程为:
根据相机的位置计算精灵点大小:其中vs为点的默认大小,d为当前点距离相机的距离,a为用户指定的缩放系数;
修正当前像素位置的深度值:当前像素表示的点在眼坐标系中的位置为Psye,法向量为Np,投影矩阵为Mp,则在此位置的投影坐标为:
Pprj=Mp(Psye+spNp),修正后的深度值为:其中z、w表示投影生成第三、第四分量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210301906.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:基于LTCC多层基板工艺的电荷选通变换器电路
- 下一篇:应用升级系统及方法