首页 公司简介 产品信息 租赁维修 工程案例 解决方案 技术支持 求才启事
产品列表
在线QQ
619226596
838228058
420050139
343892860
1034348331
1165203491
公司新闻
 
您现在的位置:- 立体可视化实现原理
立体可视化实现原理
(8/7/2009)

1、立体可视化实现原理

OpenGL程序通过渲染管线来实现,简化视图如下图1:


图1 OpenGL管线的一个简化视图

当应用程序进行OpenGL API函数调用时,这些函数命令被放置在命令缓冲区中,该缓冲区刷新时,缓冲区中的命令和数据被传递给管线的下一阶段——转换和光照。这个阶段,描述物体的点被重新计算,包括点的位置、方向、颜色、纹理等。这个阶段完成后,数据被输入到管线的光栅化部分,根据几何图形、颜色和纹理数据实际创建彩色图像,最后图像被放入到帧缓冲区,显示最终效果图像。


立体可视化的核心是让人的左右眼在同一时刻观看到不同角度的图像:硬件部分实现图像分配,软件部分实现图像显示。因此,OpenGL程序,就需要在帧缓冲区中每显示一帧图像时,提供不同角度的多幅图像。由于OpenGL的成像原理如同现实生活中的照相机成像,每个相机拍照一次只能得到一幅图像,因此需要设置多个不同角度的相机进行拍照,获得多幅不同角度的图像。相机拍照一次的过程就是上述OpenGL管线顺序执行的过程。因此,从软件上分析角度,反推出立体可视化实现处理步骤如下图2:


图2 OpenGL程序立体可视化步骤

上图红色框部分就是立体可视化插件的核心部分,下面详细阐述:

(1) 执行多次OpenGL管线

执行多次OpenGL管线就是多次执行图1所示过程。从软件实现上就是多次顺序调用OpenGL API函数。立体可视化插件中,利用Windows Hook技术,钩住每一个OpenGL API函数调用,在自定义结构体中顺序记录下每一个OpenGL API函数名、参数以及当前OpenGL状态等信息,最后重复多次执行保存的函数等信息,就达到执行多次OpenGL管线的效果。其中关键是自定义结构体对OpenGL API函数及参数等的保存。

(2) 设置多个相机

这里涉及的主要技术是OpenGL几何转换,即图1中转换和光照的转换部分。OpenGL顶点转换管线的流程如下:


图3 OpenGL顶点转换管线

原OpenGL程序的顶点转换管线如上图所示(不含红色表示部分),在立体可视化插件中,针对多次OpenGL管线的每一次执行过程,在投影矩阵变换后,人为加入角度变换矩阵,从而改变相机角度。OpenGL管线每一次执行时,设置不同的角度变换矩阵,就能达到设置多个相机的目的。

(3) 得到多角度图像和立体图像

OpenGL管线执行完一次,在帧缓存中就保存了一幅完整的图像。此时,立体可视化插件需要做的仅仅是将图像拷贝出来。当多次执行OpenGL管线并设置了不同的相机角度时,就能得到多幅不同角度的图像,再经过立体合成算法,生成立体图像。

以上就是立体可视化的实现原理,核心部分包括对OpenGL API函数的拦截、OpenGL管线多次执行、相机角度设置、立体图像合成等。


2、立体效果控制台

SuperD Visualizer OpenGL Control平台为OpenGL立体可视化插件定制。利用进程间共享内存技术通信,实现控制平台对OpenGL立体可视化插件立体效果的控制;基于深度缓存的立体焦点实时动态计算技术,能根据场景信息,自动计算立体焦点,显示合理的立体效果。

该控制平台对立体效果的控制包括立体角度(Stereo angle)、立体焦点率(Stereo focus rate)、图像伽马调节(Gamma Correction)、立体\平面显示模式(3D\2D)等。

3、立体可视化插件对OpenGL扩展的支持

OpenGL扩展实质是硬件驱动程序的一部分,针对硬件的特性全新开发。立体可视化插件对OpenGL扩展的支持根据显卡而定,目前支持绝大部分ARB、EXT扩展以及标配显卡(NV8600GT)的硬件特性。[附:ARB——经OpenGL Architecture Review Board(OpenGL管理机构)正式核准的扩展,往往由厂商开发的扩展发展而来;EXT——被多个硬件厂商支持的扩展)]

4、已实现立体可视化的应用软件

包括CAD类软件(Auto CAD、UG、CATIA等)、虚拟现实类软件(Eon、Amira、Virtools、Vega、JAVA 3D、OpenGVS、Tecplot、OSG、OpenInventor、Google Earth、VRML等)、游戏类(CS、Quake3、魔兽争霸3、雷霆战机3D版、西门子游戏引擎系列等),共计20多种。应用范围覆盖产品设计、医学研究、科技分析、地理信息、军事、广告、游戏等众多领域。

地址:厦门市软件园二期观日路22栋B205室  电话:0592-2238816 2223430 2238333 13860423038 13950191991 展厅:0592-2297771  传真:0592-2238836  邮箱:xmhxtc1@163.com
COPYRIGHT XIAMEN HENG XIN TIAN CHENG(厦门投影机-厦门音响系统) 厦门市恒信天成电子科技有限公司 厦门音响出租闽ICP备06005956号
申请友情链接 厦门婚纱摄影 厦门led显示屏 厦门私家侦探 厦门投影机 厦门侦探 本站推广支持