[发明专利]计算机显卡的植入式真三维立体驱动方法有效
申请号: | 200910025519.4 | 申请日: | 2009-02-06 |
公开(公告)号: | CN101477702A | 公开(公告)日: | 2009-07-08 |
发明(设计)人: | 闾国年;温永宁;盛业华;吴明光 | 申请(专利权)人: | 南京师范大学 |
主分类号: | G06T15/00 | 分类号: | G06T15/00;H04N15/00 |
代理公司: | 南京知识律师事务所 | 代理人: | 樊文红 |
地址: | 210097*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 计算机 显卡 植入 三维立体 驱动 方法 | ||
1.一种计算机显卡的植入式真三维立体驱动方法,包括以下步骤:
步骤(1))对3D API进行监控,在三维可视化程序与显卡之间拦截3D API关键函数,获取场景渲染数据;
步骤(2)利用场景变换矩阵和投影变换矩阵重构栅格化的三维场景数据;
步骤(3)自适应屏幕分辨率和人的眼基距设定两个不同的视点位置并生成立体像对;
步骤(4)针对不同的立体观察设备进行真三维观测;
其特征是,所述真三维立体驱动方法具体包括下列步骤:
a.监控创建三维显示环境的函数,在该函数中加入调用3D API的系统检测函数功能,获取系统立体显示特性,根据相应的立体显示特性,更改原始设定的显示环境中的立体显示模式,在支持立体显示的硬件上开启真三维立体显示支持,在不支持立体显示的硬件上,设置标志以便进行红绿立体显示;
b.监控开始一帧绘制的函数,在该函数中加入代码获取当前绘图帧的视口尺寸,根据渲染的像素格式为立体像对创建临时的缓冲区;
c.监控改变当前绘制矩阵的函数,在该函数中加入代码以获取三维应用软件对当前绘制矩阵的更改,通过矩阵参数识别场景渲染的投影类型,当是透视投影时,记录透视投影变换矩阵,作为三维场景重构的关键参数;
d.监控将帧缓存输出到显示设备的函数,在监控函数加入代码以获取整个帧中各像素的颜色和深度数据,基于步骤c获取的透视投影变换矩阵信息,反算每个像素在视点坐标系下的三维坐标,重建出基于像素的栅格化的三维场景;根据人眼睛的立体视觉模型,生成可供立体显示的立体像对。
2.根据权利要求1所述的真三维立体驱动方法,其特征是,所述步骤(2)进一步包含以下步骤:
I.透视投影变换矩阵的识别:假设透视投影变换矩阵在一帧的渲染过程中保持一致,将透视投影变换矩阵拦截下来,将矩阵中的特征值作为判据,判断当前拦截的矩阵是否为透视投影变换矩阵;
II.建立视点为坐标原点的三维空间坐标系:以步骤I截获的透视投影变换矩阵为参数,建立以视点为坐标原点的视点坐标系:Z轴穿过近平面的中心,近平面的Y轴和X轴方向和该坐标系的Y轴,X轴方向一致,近平面位于近平面值对应的Z轴的刻度上;近平面上X的值域是[-width/2,width/2],Y的值域是[-height/2,height/2],width为透视投影的近平面的宽度,height为透视投影的近平面的高度;在该坐标系中,任意坐标点P(X,Y,Z)在近平面上投影点的坐标值P′(X′,Y′,Z′)由透视投影矩阵变换求得,其中Z′对应于帧深度缓存中的深度值,X′=width/2*X/Z;Y′=height/2*Y/Z;Z′=(Z-zNear)/Z*zFar/(zFar-zNear),其中zNear为近平面的Z轴刻度,zFar为远平面的Z轴刻度;
III.栅格化三维场景数据的重构:设视口的宽度为width′、高度为height′,任意三维渲染帧图像像素点的坐标P″′(X″′,Y″′)对应于近平面上的三维坐标Pn(xn,yn,zn),其中xn=(X″′-width′/2)*width/2,yn=(Y″′-height′/2)*height/2;根据对应的深度缓存中的值Z′和公式Z′=(Z-zNear)/Z*zFar/(zFar-zNear),计算出对应的视点坐标系下Z值,像素点在视点坐标系下的坐标为P(X,Y,Z),其中X=xNear/zNear*Z,Y=yNear/zNear*Z;将所有的三维坐标用三角形面片连接起来,就构成了一个可进行三维渲染的立体表面。
3.根据权利要求1所述的真三维立体驱动方法,其特征是,所述步骤(3)中生成立体像对的方法是:调用3D API,渲染所述步骤(2)中获得的场景数据,在原始图像作为左视点图像情况下,生成右视点图像;在原始图像作为右视点图像情况下,生成左视点图像;在不保存原始图像情况下,生成左右视点图像,从而实现立体像对生成。
4.根据权利要求1所述的真三维立体驱动方法,其特征是,所述步骤(3)中生成立体像对的方法是:采用栅格化三维场景数据,构建原始视空间与目标视空间下像素的映射关系,将原始视空间下的像素直接变换到目标视空间下;在原始图像作为左视点图像情况下,生成右视点图像;在原始图像作为右视点图像情况下,生成左视点图像;在不保存原始图像情况下,生成左右视点图像,从而实现立体像对快速生成。
5.根据权利要求1所述的真三维立体驱动方法,其特征是,所述步骤(4)中针对不同的立体观察设备进行真三维观测,包括
x.在支持立体显示的设备上,将立体像对分别输出到显卡左右两个通道,进行立体显示;或
y.在不支持立体显示的设备上,将立体像对中,一个图像提取红色通道,另一个图像提取绿色和蓝色通道,将提取的通道融合,形成一个互补色的立体图像,并支持红绿眼镜观察;或
z.将立体图像或像对输送到其他支持立体显示设备上。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京师范大学,未经南京师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910025519.4/1.html,转载请声明来源钻瓜专利网。