一种三维空间环境成像系统及方法与流程

文档序号:13698667阅读:199来源:国知局
技术领域本发明涉及成像技术领域,特别涉及一种三维空间环境成像系统及方法。

背景技术:
三维空间环境成像方法可实时接收前端探测球采集的多个方向的视频图像,贴图成球体所处环境的镜像图,通过拖动球体旋转可同时对场景图像的任意部分进行显示;但是现有技术存在不能同时显示球体全景和部分细节图像,不能使球体显示的环境场景保持正立,镜像图像显示方法不符合人们对场景观察的习惯,不能对任意一个摄像机图像进行人机交互,对于图形图像的处理慢等问题。

技术实现要素:
本发明所要解决的技术问题是提供一种能同时显示球体全景及其细节图像,可使球体显示的环境场景保持正立,可透视观察场景,可对场景图像进行人机交互,对图形图像处理速度快的三维空间环境成像系统及方法。本发明解决上述技术问题的技术方案如下:一种三维空间环境成像方法,包括:步骤S1.初始化OpenGL状态机,开启openGL表面剔除功能,隐藏虚拟球体正面,并确定渲染全景图所在视点位置,完成渲染前状态初始化;步骤S2.通过递归细分法建立球体模型,读取球体模型的顶点数据,得球体几何数据;采集图像,对图像进行截取,将图像转化为openGL能识别的纹理对象,得纹理数据;步骤S3.通过重力角度传感器获取球体的偏斜角度参数,根据偏斜角度参数对球体进行校正,根据校正过程的数据建立模型矩阵、视图矩阵和投影矩阵,模型矩阵、视图矩阵和投影矩阵级联得MVP联级矩阵;步骤S4.将球体几何数据和MVP联级矩阵输入GPU顶点着色器中,顶点着色器对出现颠倒或镜像的图像进行摆正衔接,并通过MVP矩阵将球体几何数据转变成屏幕坐标系,得投影数据;步骤S5.将投影数据和纹理数据输入片段着色器,片段着色器根据输入的投影数据和纹理数据进行采样计算并输出球体图像,渲染全景图。本发明的有益效果是:可以对球体三维空间环境成像同时显示球体全景和部分细节图像,通过重力角度传感器返回的球体偏斜角度参数,校正模块对球体进行角度校正,可使球体显示的环境场景保持正立;采用openGL剔除功能剔除前端,可透视观察场景;建立鼠标拖动和双击事件,增强人机交互功能;通过GPU硬件加速处理,提升了图形图像的处理速度。在上述技术方案的基础上,本发明还可以做如下改进。进一步,所述步骤S3中对球体校正的具体实现:获取球体偏斜角度参数,判断是否已开启自动角度校正,当已开启自动角度校正,根据球体偏斜角度参数自动对球体进行角度调整使球体正立;当没有开启自动角度校正,根据球体偏斜角度参数手动调整使球体正立。采用上述进一步方案的有益效果是:重力角度传感器返回的球体偏斜角度参数,对球体进行角度校正,可使球体显示的环境场景保持正立,可通过自动校正,提升精确性,也可以通过手动校正,提升便利性。进一步,还包括步骤S7.渲染全景图后,调整虚拟像机距离确定渲染细节图所在视点位置,再次对场景进行渲染,实现细节图像的绘制,得球体三维空间环境成像。采用上述进一步方案的有益效果是:可以同时显示球体全景和细节图像,提升便利性。进一步,还包括步骤S8.得球体三维空间环境成像后,建立虚拟球体的鼠标拖动和双击事件,通过鼠标拖动和双击事件对球体进行水平或垂直方向上的拖动功能,并且球体在经过任意拖动旋转后,可通过鼠标双击球面图像区域挑选对应的像机进行该像机的实时视频播放。采用上述进一步方案的有益效果是:便于对视频播放进行控制,提升便利性。本发明解决上述技术问题的技术方案如下:一种三维空间环境成像系统,包括:初始化模块,用于初始化OpenGL状态机,开启openGL表面剔除功能,隐藏虚拟球体正面,并确定渲染全景图所在视点位置,完成渲染前状态初始化;数据采集模块,用于通过递归细分法建立球体模型,读取球体模型的顶点数据,得球体几何数据;采集图像,对图像进行截取,将图像转化为openGL能识别的纹理对象,得纹理数据;校正模块,用于通过重力角度传感器获取球体的偏斜角度参数,根据偏斜角度参数对球体进行校正,根据校正过程的数据建立模型矩阵、视图矩阵和投影矩阵,模型矩阵、视图矩阵和投影矩阵级联得MVP联级矩阵;数据处理模块,用于将球体几何数据和MVP联级矩阵输入GPU顶点着色器中,顶点着色器对出现颠倒或镜像的图像进行摆正衔接,并通过MVP矩阵将球体几何数据转变成屏幕坐标系,得投影数据;渲染模块,用于将投影数据和纹理数据输入片段着色器,片段着色器根据输入的投影数据和纹理数据进行采样计算并输出球体图像,渲染全景图。本发明的有益效果是:通过初始化模块、数据采集模块、校正模块、数据处理模块、渲染模块协调运作,得球体三维空间环境成像,可以对球体三维空间环境成像同时显示球体全景和部分细节图像,通过重力角度传感器返回的球体偏斜角度参数,校正模块对球体进行角度校正,可使球体显示的环境场景保持正立;采用openGL剔除功能剔除前端,可透视观察场景;建立鼠标拖动和双击事件,增强人机交互功能;通过GPU硬件加速处理,提升了图形图像的处理速度。在上述技术方案的基础上,本发明还可以做如下改进。进一步,所述校正模块3获取球体偏斜角度参数,判断是否已开启自动角度校正,当已开启自动角度校正,根据球体偏斜角度参数自动对球体进行角度调整使球体正立;当没有开启自动角度校正,根据球体偏斜角度参数手动调整使球体正立。采用上述进一步方案的有益效果是:重力角度传感器返回的球体偏斜角度参数,对球体进行角度校正,可使球体显示的环境场景保持正立,可通过自动校正,提升精确性,也可以通过手动校正,提升便利性。进一步,所述渲染模块还用于渲染全景图后,调整虚拟像机距离确定渲染细节图所在视点位置,再次对场景进行渲染,实现细节图像的绘制,得球体三维空间环境成像。采用上述进一步方案的有益效果是:可以同时显示球体全景和细节图像,提升便利性。进一步,还包括控制模块,所述控制模块用于得球体三维空间环境成像后,建立虚拟球体的鼠标拖动和双击事件,通过鼠标拖动和双击事件对球体进行水平或垂直方向上的拖动功能,并且球体在经过任意拖动旋转后,可通过鼠标双击球面图像区域挑选对应的像机进行该像机的实时视频播放。采用上述进一步方案的有益效果是:便于对视频播放进行控制,提升便利性。附图说明图1为本发明一种三维空间环境成像方法的流程图;图2为本发明一种三维空间环境成像系统的模块框图。附图中,各标号所代表的部件列表如下:1、初始化模块,2、数据采集模块,3、校正模块,4、数据处理模块,5、渲染模块,6、控制模块。具体实施方式以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。如图1所示,一种三维空间环境成像方法,包括:步骤S1.初始化OpenGL状态机,开启openGL表面剔除功能,隐藏虚拟球体正面,并确定渲染全景图所在视点位置,完成渲染前状态初始化;步骤S2.通过递归细分法建立球体模型,读取球体模型的顶点数据,得球体几何数据;采集图像,对图像进行截取,将图像转化为openGL能识别的纹理对象,得纹理数据;步骤S3.通过重力角度传感器获取球体的偏斜角度参数,根据偏斜角度参数对球体进行校正,根据校正过程的数据建立模型矩阵、视图矩阵和投影矩阵,模型矩阵、视图矩阵和投影矩阵级联得MVP联级矩阵;步骤S4.将球体几何数据和MVP联级矩阵输入GPU顶点着色器中,顶点着色器对出现颠倒或镜像的图像进行摆正衔接,并通过MVP矩阵将球体几何数据转变成屏幕坐标系,得投影数据;步骤S5.将投影数据和纹理数据输入片段着色器,片段着色器根据输入的投影数据和纹理数据进行采样计算并输出球体图像,渲染全景图。所述步骤S3中对球体校正的具体实现:获取球体偏斜角度参数,判断是否已开启自动角度校正,当已开启自动角度校正,根据球体偏斜角度参数自动对球体进行角度调整使球体正立;当没有开启自动角度校正,根据球体偏斜角度参数手动调整使球体正立。优选的,还包括步骤S7.渲染全景图后,调整虚拟像机距离确定渲染细节图所在视点位置,再次对场景进行渲染,实现细节图像的绘制,得球体三维空间环境成像。优选的,还包括步骤S8.得球体三维空间环境成像后,建立虚拟球体的鼠标拖动和双击事件,通过鼠标拖动和双击事件对球体进行水平或垂直方向上的拖动功能,并且球体在经过任意拖动旋转后,可通过鼠标双击球面图像区域挑选对应的像机进行该像机的实时视频播放。本系统可通过多个场景摄像机实时对球体进行采集多个方向的视频图像,贴图成球体所处环境的全景图像,通过拖动球体旋转可同时对全景图像的任意部分进行细节放大显示;本发明通过采用已成为工业标准的三维图形库作为渲染引擎,使用开源库读取球体模型数据和导入立方体纹理贴图,设置着色器的表面剔除功能来实现隐藏球体正面,从而可以对球体内部进行全局观察,通过移动多个场景摄像机,再次绘制场景实现细节图像放大显示,本系统不仅可以通过球体浏览到球体所处环境的全景图像,同时也可以将任意部分的细节图像显示出来。如图2所示,一种三维空间环境成像系统,包括:初始化模块1,用于初始化OpenGL状态机,开启openGL表面剔除功能,隐藏虚拟球体正面,并确定渲染全景图所在视点位置,完成渲染前状态初始化;数据采集模块2,用于通过递归细分法建立球体模型,读取球体模型的顶点数据,得球体几何数据;采集图像,对图像进行截取,将图像转化为openGL能识别的纹理对象,得纹理数据;校正模块3,用于通过重力角度传感器获取球体的偏斜角度参数,根据偏斜角度参数对球体进行校正,根据校正过程的数据建立模型矩阵、视图矩阵和投影矩阵,模型矩阵、视图矩阵和投影矩阵级联得MVP联级矩阵;数据处理模块4,用于将球体几何数据和MVP联级矩阵输入GPU顶点着色器中,顶点着色器对出现颠倒或镜像的图像进行摆正衔接,并通过MVP矩阵将球体几何数据转变成屏幕坐标系,得投影数据;渲染模块5,用于将投影数据和纹理数据输入片段着色器,片段着色器根据输入的投影数据和纹理数据进行采样计算并输出球体图像,渲染全景图。优选的,所述校正模块3获取球体偏斜角度参数,判断是否已开启自动角度校正,当已开启自动角度校正,根据球体偏斜角度参数自动对球体进行角度调整使球体正立;当没有开启自动角度校正,根据球体偏斜角度参数手动调整使球体正立。优选的,所述渲染模块5还用于渲染全景图后,调整虚拟像机距离确定渲染细节图所在视点位置,再次对场景进行渲染,实现细节图像的绘制,得球体三维空间环境成像。优选的,还包括控制模块6,所述控制模块6用于得球体三维空间环境成像后,建立虚拟球体的鼠标拖动和双击事件,通过鼠标拖动和双击事件对球体进行水平或垂直方向上的拖动功能,并且球体在经过任意拖动旋转后,可通过鼠标双击球面图像区域挑选对应的像机进行该像机的实时视频播放。本系统可通过多个场景摄像机实时对球体进行采集多个方向的视频图像,贴图成球体所处环境的全景图像,通过拖动球体旋转可同时对全景图像的任意部分进行细节放大显示;本发明通过采用已成为工业标准的三维图形库作为渲染引擎,使用开源库库读取球体模型数据和导入立方体纹理贴图,设置着色器的表面剔除功能来实现隐藏球体正面,从而可以对球体内部进行全局观察,通过移动多个场景摄像机,再次绘制场景实现细节图像放大显示,本系统不仅可以通过球体浏览到球体所处环境的全景图像,同时也可以将任意部分的细节图像显示出来。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1