首页> 中国专利> 基于主动全景视觉的3D环境复制系统及3D全景显示绘制方法

基于主动全景视觉的3D环境复制系统及3D全景显示绘制方法

摘要

本发明公开了一种基于主动全景视觉的3D环境复制系统,包括全方位视觉传感器、移动体激光光源以及用于对全方位图像进行3D全景重构和3D全景绘制输出的微处理器,微处理器包括标定、3D重构和3D全景显示绘制三个部分,其中3D全景显示绘制部分主要包括:以物为中心的全景绘制模块、以人为中心的透视图显示绘制模块、全景透视图循环显示绘制模块、立体透视图显示绘制模块、全景立体图循环显示绘制模块和观察距离变化立体透视图显示绘制模块。本发明还公开了一种基于主动全景视觉的3D全景显示绘制方法。本发明实现了3D全景模型重构的几何准确性、真实感、具有亲临其境视觉感全景3D场景绘制显示、重建过程自动化的完美统一。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-07-07

    授权

    授权

  • 2015-03-25

    实质审查的生效 IPC(主分类):G01C11/00 申请日:20141111

    实质审查的生效

  • 2015-02-25

    公开

    公开

说明书

技术领域

本发明涉及激光光源、全方位视觉传感器以及计算机视觉技术在立体视觉测量及 3D绘制方面的应用,尤其涉及一种基于主动全景视觉的3D环境复制系统及3D全景 显示绘制方法。

背景技术

三维重建技术包括了三维测量与立体重构,是一门新兴的、极具发展潜力和实用 价值的应用技术,三维模型的重建技术主要涉及到以下三个方面的内容:1)几何的准 确性;2)真实感;3)重建过程的自动化。三维模型的重建所需要的数据主要包括激 光扫描的深度图像数据和图像传感器采集的图像数据两个方面。

目前的三维激光扫描仪仍然有很多可改进之处,1)如精密的硬件构造,要求将 CCD技术、激光技术、精密机械传感技术等进行高质量的整合,导致了该类仪器具有 昂贵的制造成本和维护成本。2)现有的三维激光扫描技术属于面扫描成像技术,一幅 扫描点云图无法获取建筑物的全貌,尤其是建筑物内部的全貌;从不同扫描站(视角) 获得的点云分别采用其各自的局部坐标系,因此需要将它们配准到一个统一坐标系下。 配准过程中存在着多次多个坐标系之间的转换,造成了各种误差并影响计算速度和计 算资源。3)点云采集过程中会带入较多的干扰,导致了需要对点云数据进行预处理等 环节。4)各厂商的三维激光扫描仪所配置的软件中点云数据缺乏统一的数据标准,难 以实现数据的共享,这点将在数字城市建设中尤为突出。5)两种不同设备来获取空间 物点的几何和色彩信息,不同设备之间的几何和色彩信息数据配准好坏直接影响纹理 映射和纹理合成的效果。6)三维建模处理过程中需要多次人工干预,建模效率不高, 这需要操作人员具有较高的专业知识,并且影响着自动化程度。

中国发明专利申请号为201210137201.7公开了一种基于主动全景视觉传感器的 全方位三维建模系统,系统主要包括全方位视觉传感器、移动体激光光源以及用于对 全方位图像进行3D全景重构的微处理器,移动体激光光源完成一次垂直方向的扫描得 到了在不同高度情况下的切片点云数据,将这些数据以所述的移动体激光光源的高度 值作为保存索引,这样就能按切片点云数据产生顺序进行累加,最终构建出带有几何 信息和颜色信息的全景3D模型。但是该技术方案存在着两个主要问题,其一是移动体 激光光源扫描得到的点云数据无法得到垂直于移动体激光光源的平面点云数据,如桌 面、地面和屋内天顶平面;其二是目前的三维重构软件不能满足以人为中心的3D绘制 显示,现有的3D软件主要是针对以物为中心的3D绘制显示,要满足以人为中心的3D 显示就必须是让观察者具有亲临其境的3D重构再现,比如对龙门石窟的三维数字化, 其三维数字化的最终目标就是能让任何人都能通过互联网远程游览龙门石窟,以多角 度、全方位体验欣赏龙门石窟的艺术魅力。人机工程中,一般以静视野为依据设计视 觉显示器等有关部件,为了让人们通过互联网游览展示的场景时具有亲临其境视觉感, 就需要用人机工程的方法来实现一种以人为中心的3D立体绘制显示。

发明内容

为了克服已有的被动式全景立体视觉测量装置的计算机资源消耗大、实时性能差、 实用性不强、鲁棒性不高等不足,全彩色全景LED光源的主动三维立体全景视觉测量 装置容易受到环境光的干扰等不足,本发明提供一种通过直接获取空间三维点的位置 几何信息以及颜色信息,能够减少计算机资源消耗、快速完成测量、实时性好、实用 性强、鲁棒性高的基于主动全景视觉传感器的全方位三维建模系统,采用以物为中心 的3D宏观视觉和以人为中心的3D中观视觉相融合的绘制显示模式,增加用户的亲临其 境体验感。

要实现上述发明内容,必须要解决几个核心问题:(1)实现一种能覆盖整个重构 场景的移动体激光光源;(2)实现一种能快速获得实际物体深度信息的主动式全景视 觉传感器;(3)将激光扫描空间数据点与全景图像中相应像素点进行快速融合的方法; (4)一种基于规则点云数据的高度自动化三维场景重建方法;(5)以人为中心的3D 全景绘制显示技术;(6)以物为中心的3D宏观视觉和以人为中心的3D中宏观视觉相融 合的绘制显示技术;(7)3D重建过程的自动化,减少人工干预,整个扫描、处理、生 成、绘制显示过程一气呵成。

本发明解决其技术问题所采用的技术方案是:

一种基于主动全景视觉的3D环境复制系统,包括全方位视觉传感器、移动体激 光光源以及用于对全方位图像进行3D全景重构和3D全景绘制输出的微处理器,全方 位视觉传感器安装在移动体激光光源的导向支撑杆上,

所述的移动体激光光源还包括沿导向支撑杆上下移动的体激光光源,该体激光光 源具有垂直导向支撑杆的第一全方位面激光、与导向支撑杆的轴心线成θc倾斜的第二 全方位面激光以及与导向支撑杆的轴心线成θa倾斜的第三全方位面激光;

所述的微处理器分为标定部分、3D重构部分和3D全景显示绘制部分;

所述的标定部分,用于确定全方位视觉传感器的标定参数,并在全方位视觉传感 器所拍摄的全景图像上解析出第一全方位面激光、第二全方位面激光和第三全方位面 激光对应的激光投影信息;

所述的3D重构部分,根据移动体激光光源的位置,以及所述激光投影信息的相 关像素坐标值,计算移动面的点云几何信息,并将移动面的点云几何信息和各全方位 面激光的颜色信息进行融合,构建全景3D模型;

所述的3D全景显示绘制部分,包括:

以人为中心的透视图显示绘制模块,根据所述的全景3D模型,以及观察者处于 3D重构环境中的视角和视场范围,来绘制以人为中心的透视图。

所述的3D全景显示绘制部分,还包括:

全景透视图循环显示绘制模块,根据所述的全景3D模型,以及观察者处于3D 重构环境中视角的循环改变和视场范围,来绘制以人为中心的全景透视循环显示图;

立体透视图显示绘制模块,根据所述的透视图,生成右视点图像、左视点图像和 左右视点图像,来绘制以人为中心的立体透视图;

全景立体图循环显示绘制模块,根据所述的全景3D模型,以及观察者处于3D 重构环境中视角的循环改变和视场范围,通过不断改变方位角β,生成在该方位角β下 的左右立体像对,来绘制以人为中心的全景立体透视循环显示图;

观察距离变化立体透视图显示绘制模块,根据所述的全景3D模型,以及观察者 在3D重构环境中观察距离的改变和视场范围,来绘制在不断改变观察距离时以人为 中心的全景立体透视显示图。

一种基于上述3D环境复制系统的3D全景显示绘制方法,包括步骤:

1)采用全方位视觉传感器拍摄移动体激光光源投射形成的全景图像;

2)根据所述的全景图像,确定全方位视觉传感器的标定参数,并解析出第一全 方位面激光、第二全方位面激光和第三全方位面激光对应的激光投影信息;

3)根据移动体激光光源的位置,以及所述激光投影信息的相关像素坐标值,计 算移动面的点云几何信息,并将移动面的点云几何信息和各全方位面激光的颜色信息 进行融合,构建全景3D模型;

4)根据所述的全景3D模型,以及观察者处于3D重构环境中的视角和视场范围, 来绘制以人为中心的透视图;具体步骤如下:

STEP1)以全方位视觉传感器的单视点为坐标原点Om(0,0,0),建立三维柱状空间 坐标系;

STEP2)根据人眼的视觉范围,确定透视窗口的大小,以方位角β和高度h为透 视窗口的变量,并得到透视窗口对应的点云数据(h,β,r);

STEP3)根据方位角β的步长和高度h的范围,以及所述的点云数据(h,β,r),生 成数据矩阵;

STEP4)将数据矩阵中所有的三维坐标用三角形面片连接起来,连接线的颜色采 用连接的两个点的颜色平均值;

STEP5)将所有连接的三角形面片进行输出显示,完成以人为中心的透视图绘制。

所述的3D全景显示绘制方法还包括绘制以人为中心的全景透视循环显示图,通 过不断改变方位角β,生成在该方位角β下的显示数据矩阵,完成全景透视循环显示 图绘制。

所述的3D全景显示绘制方法还包括绘制以人为中心的立体透视图,具体绘制算 法如下:

5.1:确定初始方位角β1,读取最小距离hmin和最大距离hmax数据,确定视点,中 央眼=0,左视点=1,右视点=2;

5.2:h=hmin

5.3:读取距离值h的初始方位角β1开始到β1+300的数据,如果β1+300≥1000, 则β1+300=β1+300-1000;根据所确定的视点,选择中央眼0计算空间物点在左右眼 的柱坐标;选择左视点1计算空间物点在右眼的柱坐标,将原坐标数据作为左眼的柱 坐标;选择右视点2计算空间物点在左眼的柱坐标,将原坐标数据作为右眼的柱坐标; 分别用左右视点将这些值作为左视点矩阵和右视点矩阵的新一行数据,h=h+Δh;

5.4:判断h≥hmax,如果不满足转到5.3,直至生成左右视点的显示矩阵;

5.5:分别将显示矩阵中所有的三维坐标用三角形面片连接起来,连接方法是首先 将每一行的数据用直线进行连接,然后将每一列的数据用直线进行连接,最后将矩阵 中(i,j)和(i+1,j+1)的点云数据用直线进行连接;连接线的颜色采用连接的两个点的颜 色平均值;

5.6:通过对上述处理后生成的立体像对进行双目立体显示,完成以人为中心的立 体透视图绘制。

所述的3D全景显示绘制方法还包括绘制以人为中心的全景立体透视循环显示图, 通过不断改变方位角β,保存当前β的显示数据矩阵,分别将左视点矩阵和右视点矩 阵用三角形面片进行连接,生成的立体像对,立体显示输出。

所述的3D全景显示绘制方法还包括绘制以人为中心的观察距离变化立体透视图, 根据观察者不断改变在3D环境中的自身空间位置,从人机工程的角度确定视场范围, 来绘制全景立体图。

所述的第一全方位面激光、第二全方位面激光和第三全方位面激光分别为蓝色线 激光、红色线激光和绿色线激光,蓝色线激光和绿色线激光安装在红色线激光的上下 两侧,且所有线激光的轴线相交于所述导向支撑杆的轴心线上的一点。

所述的3D全景显示绘制方法还包括以物为中心的全景绘制显示,根据以全方位 视觉传感器的单视点Om为坐标原点的3D全景模型的点云数据,用移动体激光光源扫 描全景场景时产生的扫描切片,提取出蓝色、红色和绿色全方位面激光投射所产生的 点云数据,生成点云数据矩阵,实现以物为中心的全景绘制显示。

本发明的有益效果主要表现在:

(1)提供了一种全新的立体视觉获取方法,利用全方位激光扫描和全方位视觉 的特性使得重构后的三维模型同时具有较高的精度和较好的纹理信息;

(2)能有效地减少计算机资源消耗,具有实时性好、实用性强、鲁棒性高、自 动化程度高等优点,整个3D重构不需要人工介入;

(3)利用全方位激光检测保证了几何的准确性,采用高分辨率的全景图像采集 技术使得在全景图像上的每个像素同时拥有几何信息和颜色信息,从而保证了3D重构 的真实感,整个过程自动扫描、自动解析和计算,不存在着三维重构的病态计算问题, 实现了三维重建过程的自动化;实现了3D全景模型重构的几何准确性、真实感和重建 过程自动化的完美统一;

(4)实现了一种以人为中心的3D全景绘制显示技术,将以物为中心的3D视觉和 以人为中心的3D视觉进行融合,使得绘制出来的全景3D场景更具有亲临其境视觉感。

附图说明

图1为一种全方位视觉传感器的结构图;

图2为单视点折反射全方位视觉传感器成像模型,图2(a)透视成像过程,图2 (b)传感器平面,图2(c)图像平面;

图3为移动体激光光源结构简图;

图4为主动全景视觉传感器的标定说明图;

图5为基于主动全景视觉传感器的全方位三维建模系统的硬件结构图;

图6为全方位激光发生器部件的结构图,图6(a)为全方位激光发生器部件正视 图,图(b)为全方位激光发生器部件俯视图;

图7为全方位视觉传感器的成像原理图;

图8为透视成像原理图;

图9为改变观察距离双目立体成像的原理图,图9(a)为改变观察距离前双目立 体成像的原理图,图9(b)改变观察距离后双目立体成像的原理图;

图10为基于主动全景视觉传感器的全方位三维建模系统及3D全景绘制的软件 架构图;

图11为基于主动全景视觉传感器的全方位三维建模系统中的点云空间几何信息 计算的说明图;

图12为基于主动全景视觉传感器的全方位三维建模系统在获取三维点云数据时 得到的切片全景图像示意图;

图13为在全景图像上解析点云空间几何信息计算的过程说明图;

图14为人眼的水平视野说明图;

图15为人眼的垂直视野说明图;

图16为在解析全景切片图像上分别获取绿色、红色和蓝色激光投影线的说明图。

具体实施方式

实施例1

参照图1~16,一种基于主动全景视觉的3D环境复制系统及3D全景显示绘制方 法,包括全方位视觉传感器、移动体激光光源以及用于对全方位图像进行3D全景重 构和3D全景绘制输出的微处理器。

全方位视觉传感器的中心与移动体激光光源的中心配置在同一根轴心线上。如附 图1所示,全方位视觉传感器包括双曲面镜面2、上盖1、透明半圆形外罩3、下固定 座4、摄像单元固定座5、摄像单元6、连接单元7、上罩8。双曲面镜面2固定在上 盖1上,连接单元7将下固定座4和透明半圆形外罩3连接成一体,透明半圆形外罩 3与上盖1以及上罩8通过螺钉固定在一起,摄像单元6用螺钉固定在摄像单元固定 座5上,摄像单元固定座5用螺钉固定在下固定座4上,全方位视觉传感器中的摄像 单元6的输出与微处理器连接。

如附图3所示,移动体激光光源用于产生三维体结构投射光源,包括:导向支撑 杆2-1、激光发生组合单元2-2、底盘2-3、直线电机移动杆2-4、直线电机组件2-5、 蓝色线激光发生单元2-6、红色线激光发生单元2-7、绿色线激光发生单元2-8。

激光发生组合单元2-2上共开有12个孔,其中每4个孔为一组,分为蓝色线激光 发生单元安装孔组、红色线激光发生单元安装孔组和绿色线激光发生单元安装孔组。4 个红色线激光发生单元安装孔的轴心线分别与激光发生组合单元2-2的圆柱体的轴心 线成正交关系,4个蓝色线激光发生单元安装孔的轴心线分别与激光发生组合单元2-2 的圆柱体的轴心线成倾斜θc关系,4个绿色线激光发生单元安装孔的轴心线分别与激 光发生组合单元2-2的圆柱体的轴心线成倾斜θa关系。这12个孔在激光发生组合单元 2-2的圆柱体的圆周方向上成90°夹角均匀分布,这样保证了12个孔的轴心线相交于 激光发生组合单元2-2的圆柱体的轴心线上的同一点上,如附图6所示。

蓝色线激光发生单元2-6固定在激光发生组合单元2-2的蓝色线激光发生单元安 装孔组的孔中,如附图6所示,经过这样组合后的蓝色线激光能形成一个发出蓝色的 全方位面激光光源;红色线激光发生单元2-7固定在线激光发生组合单元2-2的红色 线激光发生单元安装孔组的孔中,如附图6所示,经过这样组合后的红色线激光能形 成一个发出红色的全方位面激光光源;绿光线激光发生单元2-8固定在线激光发生组 合单元2-2的绿色线激光发生单元安装孔组的孔中,如附图6所示,经过这样组合后 的绿色线激光能形成一个发出绿色的全方位面激光光源。当激光发生组合单元2-2中 的12个孔均固定好相对应的线激光发生单元后,就构成了体激光光源;这样体激光光 源就能依次分别投射出蓝色、红色和绿色的3色全方位面激光,其中红色全方位面激 光与导向支撑杆成垂直关系,蓝色全方位面激光与导向支撑杆的轴心线成θc倾斜角度 关系,绿色全方位面激光与导向支撑杆的轴心线成θa倾斜角度关系。

移动体激光光源的装配关系是将体激光光源套入到导向支撑杆2-1内构成移动副, 导向支撑杆2-1垂直固定在底盘2-3上,直线电机组件2-5固定在底盘2-3上,直线电 机移动杆2-4上端与体激光光源进行固定连接,控制直线电机组件2-5来实现直线电 机移动杆2-4的上下移动,从而带动体激光光源在导向支撑杆2-1的导向作用下上下 移动,形成一种移动的体激光光源,使得重构的全景均被扫描。直线电机组件2-5为 微型交流直线往复式减速电动机,其往复运动范围为700mm,型号为 4IK25GNCMZ15S500,直线往复移动速度为15mm/s,最大移动推力为625N。

全方位视觉传感器通过连接板安装在移动体激光光源中的导向支撑杆2-1上,构 成一个主动式全方位视觉传感器,如附图4所示,全方位视觉传感器通过USB接口与 微处理器相连接。

微处理器的应用软件中主要由标定、3D重构和3D全景显示绘制三个部分组成。 标定部分主要包括:视频图像读取模块、全方位视觉传感器标定模块、全方位面激光 信息解析模块、联合标定模块。3D重构部分主要包括:视频图像读取模块、移动体激 光光源的直线电机的位置估计模块、全方位面激光信息解析模块、移动面的点云几何 信息的计算模块,点云的几何信息和颜色信息的融合模块,以移动面的位置信息构建 全景3D模型构建模块,3D全景模型生成模块和存储单元。3D全景显示绘制部分主 要包括:以物为中心的全景绘制模块、以人为中心的透视图显示绘制模块、全景透视 图循环显示绘制模块、立体透视图显示绘制模块、全景立体图循环显示绘制模块和观 察距离变化立体透视图显示绘制模块。

视频图像读取模块,用于读取全方位视觉传感器的视频图像,并保存在存储单元 中,其输出与全方位视觉传感器标定模块和全方位面激光信息解析模块连接。

全方位视觉传感器标定模块,用于确定三维空间点和摄像机成像平面上的二维图 像点之间映射关系的参数,如附图2所示;具体标定过程是将标定板绕全方位视觉传 感器一周,拍摄若干组全景图像,建立空间点和成像平面中像素点的若干等式,使用 最优化算法求出最优解,计算结果如表1所示,即为本发明中使用的全方位视觉传感 器的标定参数;

表1 ODVS的标定结果

标定出全方位视觉传感器的内外参数后,就能建立一个成像平面的像素点与入射 光线,即入射角之间的对应关系,如公式(1)表示;

tanα=||u||f(||u||)=||u||a0+a1||u||+a2||u||2+...+aN||u||N---(1)

式中,α表示点云的入射角,||u″||为成像平面上的点到该平面中心点的距离,a0、 a1、a2和aN为标定的全方位视觉传感器的内外参数,通过公式(1)建立一张成像平 面任一像素点与入射角之间的对应关系表。

对于本发明中所采用的全方位视觉传感器的标定后,成像平面上的点||u″||与点云 的入射角α关系可以用下面等式来表示;

tanα=||u||-75.12+0.0027||u||2---(2)

本发明中移动体激光光源的两个极限位置是由移动体激光光源中的直线电机组件 的最大行程以及体激光光源的投射角所决定的,上极限位置设置以成年人当站立时眼 睛处于平视状态的高度为基准,上极限位置初始值设置为1500mm,下极限位置设置 以成年人当蹲下时眼睛处于平视状态的高度为基准,下极限位置初始值设置为 800mm;直线电机组件的最大行程为700mm,在上极限位置时还有30°的仰视角, 在下极限位置时还有30°的俯视角;本发明采用的全方位视觉传感器具有28°的仰视 角和65°的俯视角,覆盖了近93°垂直视场和360°水平视场;根据本发明的设计, 移动体激光光源与全方位视觉传感器的单视点Om之间的距离用公式(3)进行计算;

h(z)=hOm-huplimit+hLaserMD---(3)

式中,为全方位视觉传感器的单视点Om离地面的距离,hup lim it为移动体激光光 源的上极限位置,hLaserMD为移动体激光光源的移动距离,h(z)为移动体激光光源与全 方位视觉传感器的单视点Om之间的距离;如附图4所示。

这里规定全方位视觉传感器的采集图像速率为15Flame/s,本发明中设定了移动体 激光光源的垂直方向上的直线往复移动速度为15mm/s,两个帧间之间移动体激光光源 的垂直方向上的直线移动距离为1mm,两个极限位置之间距离为700mm,因此完成 一次垂直方向上扫描时间为47s,共会产生700个全景切片图像;在一次垂直扫描过 程中要处理700帧图像,在1帧图像中存在着蓝色激光线、红色激光线和绿色激光线 的三条投影线,其中第1帧和700帧图像就是两个极限位置的扫描全景切片图像。

全方位面激光信息解析模块,用于在全景图像上解析出激光投影信息。解析在全 景图上的蓝色激光、红色激光和绿色激光投射点的方法是根据蓝色激光、红色激光和 绿色激光投射点的像素的亮度要大于成像平面上的平均亮度,首先是将全景图的RGB 颜色空间转化成HIS颜色空间,然后将成像平面上的平均亮度的1.2倍作为提取蓝色 激光、绿色激光和红色激光投射点的阈值,在提取出蓝色激光、红色激光和绿色激光 投射点后需要进一步区分蓝色激光、红色激光和绿色激光投射点,本发明中根据HIS 颜色空间中的色调值H进行判断,如果色调值H在(225,255)之间就判断为蓝色激 光投射点,如果色调值H在(0,30)之间就判断为红色激光投射点,如果色调值H 在(105,135)之间就判断为绿色激光投射点,其余像素点就判断为干扰;为了得到 激光投射线的准确位置,本发明采用高斯近似方法来抽取出激光投射线的中心位置, 具体实现算法是:

Step1:设置初始方位角β=0;

Step2:在全景图像上以方位角β从全景图像的中心点开始检索绿色激光、红色激 光和蓝色激光投射点,对于方位角β上存在着若干个连续的某种颜色激光投射的像素, 这里选择HIS颜色空间中的I分量,即亮度值接近最高值的三个连续像素通过高斯近 似方法来估算激光投射线的中心位置;具体计算方法由公式(4)给出,

d=ln(f(i-1))-ln(f(i+1))2×[ln(f(i-1))-2ln(f(i))+ln(f(i+1))]---(4)

式中,f(i-1)、f(i)和f(i+1)分别为三个相邻像素接近最高亮度值的亮度值,d 为修正值,i表示从图像中心点开始的第i个像素点。因此估算得到的该颜色激光投射 线的中心位置为(i+d),该值对应于公式(1)中的||u″||;由于在全景图像上出现颜色 激光投射的顺序是绿色激光、红色激光和蓝色激光,因此依次顺序来排除其他的投影 噪声对激光信息解析的影响;

Step3:改变方位角继续检索激光投射点,即β=β+Δβ,Δβ=0.36;

Step4:判断方位角β=360,如果成立,检索结束;反之转到Step2。

另一种全方位面激光信息解析方法是基于帧间差的激光投射点提取算法,该算法 是一种通过对两个相邻位置高度所获得的全景切片图像作差分运算来获得激光投射点 的方法,当移动激光面在上下扫描过程中,帧与帧之间在垂直方向,即不同的切面上 会出现较为明显的差别,两帧相减,得到两帧图像亮度差的绝对值,判断它是否大于 阈值来分析提取全景切片图像中的激光投射点;然后根据在全景图像上出现颜色激光 投射的顺序来判定在某一方位角β上的绿色激光、红色激光和蓝色激光投射光。

联合标定,用于对主动式全方位视觉传感器进行标定。由于全方位视觉传感器和 移动体激光光源在装配过程中不可避免的存在着各种装配误差,通过联合标定将这些 误差减少到最低限度。具体做法是:首先,将主动式全方位视觉传感器放置在一个直 径为1000mm的空心圆柱体内,并将主动式全方位视觉传感器的轴心线与空心圆柱体 内的轴心线重合,如附图4所示;接着,使得移动体激光光源ON,发射红色和绿色 激光,将移动体激光光源调整到上极限位置hup lim it,并采集全景图像,观察在全景 图像上的蓝色光圈、红色光圈和绿色光圈的圆心是否与全景图像上的中心一致,检测 在全景图像上的蓝色光圈、红色光圈和绿色光圈的圆度,如果出现中心不一致或者圆 度不满足要求情况需要调整全方位视觉传感器和移动体激光光源之间的连接;进一步, 将移动体激光光源调整到下极限位置hdown lim it,并采集全景图像,观察在全景图像 上的蓝色光圈、红色光圈和绿色光圈的圆心是否与全景图像上的中心一致,检测在全 景图像上的蓝色光圈、红色光圈和绿色光圈的圆度,如果出现中心不一致或者圆度不 满足要求情况需要调整全方位视觉传感器和移动体激光光源之间的连接;最后,将上 极限位置hup lim it、下极限位置hdown lim it、移动体激光光源的最大移动距离 hLaserMD、全方位视觉传感器的标定参数信息存放在联合标定数据库中,以便在三 维重构时调用。

本发明中在全方位视觉传感器中采用高清成像芯片,具有4096×2160分辨率;移 动体激光光源的移动步长为1mm,垂直扫描范围700mm,因此由移动体激光光源产 生的切片全景图像的分辨率为700,这样完成一次垂直扫描就能完成全景图像上的每 一个像素点几何信息和颜色信息的采样、融合直至三维重构及绘制显示输出,如附图 10所示。

对于三维重构部分,其处理流程是:

StepA:通过视频图像读取模块读取全景视频图像;

StepB:根据直线电机的移动速度以及到达两个极限点的时间估计移动体激光光源 的直线电机的位置;

StepC:在全景图像上解析出全方位面激光信息,计算移动面点云几何信息;

StepD:从内存中读取无激光投射情况下的全景视频图像,根据StepC中处理结果 将移动面几何信息和颜色信息进行融合;

StepE:逐步构建全景3D模型;

StepF:判断是否已经到达极限点位置,如果是的话转到StepG,不成立的话转到 StepA;

StepG:设置移动体激光光源为OFF,读取无激光投射情况下的全景视频图像,并 将其保存在内存单元中,输出3D全景模型并保存到存储单元,设置移动体激光光源 为ON,转到StepA。

下面对三维重构的处理流程作详细说明,在StepA中专门采用一个线程读取全景 视频图像,视频图像的读取速率是15Flame/s,采集后的全景图像保存在一个内存单元 内,以便后续的处理调用;

在StepB中,主要用于估算移动体激光光源的当前位置;规定在重构开始时将移 动体激光光源的初始位置定在上极限位置hup lim it,初始步长控制值zmove(j)=0,相 邻两帧时间移动体激光光源的移动步长为Δz,即存在着以下关系,

zmove(j+1)=zmove(j)+Δz                   (5)

式中,zmove(j)为第j帧时步长控制值,zmove(j+1)为第j+1帧时步长控制值,Δz为 移动体激光光源的移动步长,这里规定从上极限位置hup lim it向下方向移动时, Δz=1mm;从下极限位置hdown lim it向上方向移动时,Δz=-1mm;程序实现时通过 以下关系式进行判断,

Δz=1ifzmove(j)=0-1ifzmove(j)=hLarerMDΔzelse---(6)

用公式(5)的计算结果值zmove(j+1)代入公式(3)中的hLaserMD,得到移动体激光 光源与全方位视觉传感器的单视点Om之间的距离h(z)。

在StepC中,读取内存单元中的全景图像并采用全方位面激光信息解析模块从全 景图像上解析出全方位面激光信息,接着计算移动面点云几何信息。

点云的空间位置信息用高斯坐标系来表示的话,每一个点云的空间坐标相对于全 方位视觉传感器的单视点Om为高斯坐标原点的高斯坐标用3个值来确定,即(R,α,β), R为某一个点云到全方位视觉传感器的单视点Om的距离,α为某一个点云到全方位视 觉传感器的单视点Om的入射角,β为某一个点云到全方位视觉传感器的单视点Om的 方位角,对于附图13中的点云和点,在高斯坐标下的点云数据的计算方法 由公式(7)、(8)、(9)给出,

Ra=h(z)×cosθGsin(αa-θG)αa=arctan(||u||(β)greenf(||u||(β)green))=arctan(||u||(β)greena0+a2||u||(β)green2)---(7)

Rb=h(z)sin(αb)αb=arctan(||u||(β)redf(||u||(β)red))=arctan(||u||(β)reda0+a2||u||(β)red2)---(8)

Rc=h(z)×cosθBsin(αc+θB)αc=arctan(||u||(β)bluef(||u||(β)blue))=arctan(||u||(β)bluea0+a2||u||(β)blue2)---(9)

式中,(β)green为绿色激光投影点云到全方位视觉传感器的单视点Om的方位角, (β)red为红色激光投影点云到全方位视觉传感器的单视点Om的方位角,(β)blue为蓝色 激光投影点云到全方位视觉传感器的单视点Om的方位角,θB为蓝色投射线与Z轴之 间的夹角,θG为绿色投射线与Z轴之间的夹角,h(z)为移动体激光光源到全方位视觉 传感器的单视点Om的距离,αa为绿色激光投影点云到全方位视觉传感器的单视点Om的入射角,αb为红色激光投影点云到全方位视觉传感器的单视点Om的入射角,αc为 蓝色激光投影点云到全方位视觉传感器的单视点Om的入射角,Ra为绿色激光投影点 云到全方位视觉传感器的单视点Om的距离,Rb为红色激光投影点云到全方位视觉传 感器的单视点Om的距离,Rc为蓝色激光投影点云到全方位视觉传感器的单视点Om的 距离,||u"||(β)green为绿色激光投影点在成像平面上的对应点到全景成像平面中心之间 的距离,||u"||(β)red为红色激光投影点在成像平面上的对应点到全景成像平面中心之间 的距离,||u"||(β)blue为蓝色激光投影点在成像平面上的对应点到全景成像平面中心之间 的距离。

如果将点云和点用笛卡尔坐标系和来表示的话,参考附图11,其计算方法由公式(10)、(11)、(12)给出,

xa=Ra×cosαa×sin(β)greenya=Ra×cosαa×cos(β)greenya=Ra×sinαa---(10)

xb=Rb×cosαb×sin(β)redyb=Rb×cosαb×cos(β)redyb=Rb×sinαb---(11)

xc=Rc×cosαc×sin(β)blueyc=Rc×cosαc×cos(β)blueyc=Rc×sinαc---(12)

式中,Ra为绿色激光投影点云到全方位视觉传感器的单视点Om的距离,Rb为红 色激光投影点云到全方位视觉传感器的单视点Om的距离,Rc为蓝色激光投影点云到 全方位视觉传感器的单视点Om的距离,αa为绿色激光投影点云到全方位视觉传感器 的单视点Om的入射角,αb为红色激光投影点云到全方位视觉传感器的单视点Om的入 射角,αc为蓝色激光投影点云到全方位视觉传感器的单视点Om的入射角,(β)green为 绿色激光投影点云到全方位视觉传感器的单视点Om的方位角,(β)red为红色激光投影 点云到全方位视觉传感器的单视点Om的方位角,(β)blue为蓝色激光投影点云到全方位 视觉传感器的单视点Om的方位角。

在StepC计算过程中遍历了全方位360°的蓝色、红色和绿色全方位面激光投射 所产生的点云数据;由于本发明中采用高清成像芯片,为了与垂直扫描精度取得一致, 这里采用计算步长为Δβ=0.36来遍历整个360°的方位角,附图16为移动体激光光源 在某一个高度位置上扫描结果全景图,在全景图上绿色短虚线为绿色全方位面激光投 射所产生的点云数据红色长虚线为红色全方位面激光投射所产生的点 云数据蓝色短虚线为蓝色全方位面激光投射所产生的点云数据 下面具体说明遍历算法;

StepⅠ:设置初始方位角β=0;

StepⅡ:采用全方位面激光信息解析模块,沿射线方向检索点云和得到在成像平面上与点云数据相对应的||u″||(β)green、||u″||(β)red和||u"||(β)blue三个点, 用公式(7)计算点云的距离值Ra和入射角αa,用公式(8)计算点云的距离值 Rb和入射角αb,用公式(9)计算点云的距离值Rc和入射角αc;然后再用公式(10) 计算点云在笛卡尔坐标系下的用公式(11)计算点云在笛卡尔 坐标系下的用公式(12)计算点云在笛卡尔坐标系下的在这一计算步骤中,遍历方位角β分别代入到公式(10)、(11)、(12)中的(β)green、 (β)red、(β)blue;将上述的计算数据保存在内存单元中;

StepⅢ:β←β+Δβ,Δβ=0.36,判断β=360是否成立,如果成立结束计算, 否则转到StepⅡ。

在StepD中,首先从内存中读取无激光投射情况下的全景视频图像,根据StepC 中处理结果将点云的几何信息和颜色信息进行融合;融合后的点云数据将包括该点云 的几何信息和颜色信息,即用(R,α,β,r,g,b)来表达某一个点云的几何信息和颜色信 息,下面具体说明融合算法,

Step①:设置初始方位角β=0;

Step②:根据方位角β和在传感器平面上与点云数据相对应的||u″||(β)red和 ||u″||(β)green两个点的信息,读取无激光投射情况下的全景视频图上的相关像素点的 (r,g,b)颜色数据,与从StepC中处理加工得到的相对应的(R,α,β)进行融合,得到相 对应的点云几何信息和颜色信息(R,α,β,r,g,b);

Step③:β←β+Δβ,Δβ=0.36,判断β=360是否成立,如果成立结束计算, 将计算结果保存在存储单元中;否则转到Step②。

在StepE中根据StepD的计算结果逐步构建全景3D模型,在本发明中,移动体激 光光源完成一次垂直方向的扫描过程,即从一个极限位置到另一个极限位置就完成了 全景3D模型的构建,扫描过程中每一移动步长都会产生在某一个高度情况下的切片 点云数据,如附图12所示;将这些数据以移动体激光光源的高度值作为保存索引,这 样就能按切片点云数据产生顺序进行累加,为最后构建带有几何信息和颜色信息的全 景3D模型;根据上述的描述,本发明有向下全景3D重构和向上全景3D重构两种不 同模式;

在StepF中判断移动体激光光源是否达到极限位置,即判断zmove(j)=0或者 zmove(j)=hLaserMD是否成立,如果成立的话转到StepG,不成立的话转到StepA。

在StepG中,主要工作是输出重构结果并为下一次重构做一些准备;具体做法是: 首先设置移动体激光光源为OFF,读取无激光投射情况下的全景视频图像,并将其保 存在内存单元中;然后输出3D重构全景模型并保存到存储单元,由于本发明中无论 是在切片点云数据产生方面还是在某一个切片上的全方位点云数据产生方面均采用了 高分辨率的采集手段,在成像平面上的每个像素都具备了与实际点云相对应的几何信 息和颜色信息,因此也就有效地回避了在三维重构中的对应点问题、平铺问题和分支 问题;最后设置移动体激光光源为ON,转到StepA,进行新的3D全景模型的重构。

通过上述处理得到了以全方位视觉传感器的单视点Om为坐标原点的3D全景模型 的点云数据;在用全景移动面激光投射光源扫描全景场景时产生了一个个扫描切片, 如附图12所示;图中蓝色部分是由蓝色全方位面激光投射所产生的点云数据、红色部 分是由红色全方位面激光投射所产生的点云数据、绿色部分是由绿色全方位面激光投 射所产生的点云数据。

这些扫描切片图像是在扫描过程中随着全景移动面激光投射光源的移动自然形成 的,每扫描得到一张全景切片图像后就用方位角遍历整个全景切片图像提取出蓝色、 红色和绿色全方位面激光投射所产生的点云数据;点云数据存储以矩阵方式存储,其 中矩阵的1~700行存储蓝色全方位面激光投射所产生的点云数据,矩阵的701~1400 行存储红色全方位面激光投射所产生的点云数据,矩阵的1401~2100行存储绿色全方 位面激光投射所产生的点云数据,列数表示从0°~359.64°方位角扫描的数目,共1000 列;因此,点云存储矩阵为2100×1000的矩阵;每个点云中包括了(x,y,z,R,G,B)6个 属性,这就形成了有序点云数据集,有序数据集的优势在于,在预先了解相邻点的关 系后其邻域操作能更加高效。

以物为中心的全景绘制模块,用于读取点云存储矩阵中数据然后调用PCL中的一 个pcl_visualization库,通过该库可以对获取的点云数据文件进行快速地三维建模并实 现可视化显示,实现以物为中心的全景绘制显示。

以人为中心的透视图显示绘制模块,用于根据观察者处于3D重构环境中的视角 和视场范围绘制3D透视图,其绘制算法步骤如下:

STEP1)以全景视觉传感器的单视点为坐标原点Om(0,0,0),建立三维柱状空间坐 标系;

STEP 2)确定透视窗口的大小,以人眼的视觉范围为基准,宽度方向约108°, 用方位角β为变量;高度方向用h为变量;

STEP 3)在获取主动式全景视觉传感器的检测结果时,得到了以全景视觉传感器 的单视点为坐标原点Om(0,0,0)的点云数据(h,β,r),高度方向的范围就以最小距离hmin和最大距离hmax确定,共有N行数据;考虑到在宽度方向时,方位角β是以0.36°角 度为步长来连续得到点云数据的,每一个切片扫描过程中会产生1000个点云数据;这 里以透视窗口的左侧边缘为初始方位角β1,那么在透视窗口的右侧边缘为β1+300, 共有M列数据,这里M=300;

STEP 4)根据所选择的初始方位角β1确定第一个数据,比如初始方位角β1=36°, 那么就选择第100个数据开始到400个数据为在最小距离hmin的第一列数据,以1100 个数据开始到1400个数据为hmin+Δh的第二列数据,…

STEP 5)透视窗口的显示数据矩阵的加工,比如目前得到的最小距离hmin和最大 距离hmax确定,共有2100行数据;具体算法如下:

STEP51:确定初始方位角β1,读取最小距离hmin和最大距离hmax数据;

STEP52:h=hmin

STEP53:读取距离h的初始方位角β1开始到β1+300的数据,如果β1+300≥1000, 则β1+300=β1+300-1000;将这些值作为矩阵的新一行数据,h=h+Δh;

STEP54:判断h≥hmax,如果不满足转到STEP53;

STEP55:结束。

通过上述算法得到一个80×300的矩阵;

STEP 6)将矩阵中的所有的三维坐标用三角形面片连接起来,连接方法是首先将 每一行的数据用直线进行连接,然后将每一列的数据用直线进行连接,最后将矩阵中 的(i,j)和(i+1,j+1)的点云数据用直线进行连接;连接线的颜色采用连接的两个点的颜 色平均值;

STEP 7)将所有连接的三角形面片显示在输出设备上。

全方位视觉传感器的工作原理是:进入双曲面镜的中心的光,根据双曲面的镜面 特性向着其虚焦点折射。实物图像经双曲面镜反射到聚光透镜中成像,在该成像平面 上的一个点P(x,y)对应着实物在空间上的一个点的坐标A(X,Y,Z)。

附图7中的2-双曲线面镜,12-入射光线,13-双曲面镜的实焦点Om(0,0,c), 14-双曲面镜的虚焦点,即摄像单元6的中心Oc(0,0,-c),15-反射光线,16-成像 平面,17-实物图像的空间坐标A(X,Y,Z),18-入射到双曲面镜面上的图像的空间坐 标,19-反射在成像平面上的点P(x,y)。

附图7中所示的双曲面镜构成的光学系统可以由下面5个等式表示;

((X2+Y2)/a2)-((Z-c)2/b2)=-1      当Z>0时                (20)

c=a2+b2---(21)

β=tan-1(Y/X)                                          (22)

α=tan-1[(b2+c2)sinγ-2bc]/(b2+c2)cosγ                  (23)

γ=tan-1[f/(x2+y2)]---(24)

式中X、Y、Z表示空间坐标,c表示双曲面镜的焦点,2c表示两个焦点之间的距 离,a,b分别是双曲面镜的实轴和虚轴的长度,β表示入射光线在XY投影平面上与X 轴的夹角,即方位角,α表示入射光线在XZ投影平面上与X轴的夹角,这里将α称 为入射角,α大于或等于0时称为俯角,将α小于0时称为仰角,f表示成像平面到双 曲面镜的虚焦点的距离,γ表示折反射光线与Z轴的夹角;x,y表示在成像平面上的一 个点。

实施例2

本实施例的其他结构和工作过程与实施例1相同,所不同的是:针对不同的重构 场景的需求,更换移动体激光光源硬件模块,即改变附图4中的绿色激光线的投射角θa和蓝色激光线的投射角θc,以改变垂直扫描的范围。

实施例3

其余与实施例1相同,针对不同的3D场景绘制显示的需求,以人为中心的全景 透视图循环显示绘制模块,用于根据观察者不断改变3D重构环境中的视角,从人机 工程的角度确定视场范围来绘制3D透视图,其核心就是要不断顺序缓慢改变方位角 β,生成在该方位角β下的显示数据矩阵;其关键算法如下:

STEP1:确定初始方位角β1,读取最小距离hmin和最大距离hmax数据;

STEP2:β=β1,确定循环显示次数N,n=0;

STEP3:h=hmin

STEP4:读取距离值h的初始方位角β开始到β+300的数据,如果β+300≥1000, 则β+300=β+300-1000;将这些值作为矩阵的新一行数据,h=h+Δh;

STEP5:判断h≥hmax,如果不满足转到STEP4;

STEP6:保存在当前β的显示数据矩阵,将显示数据矩阵用三角形面片进行连接, 显示输出;β=β+Δβ;

STEP7:判断β≥3600;

STEP8:如果是β=β-3600,n=n+1;

STEP9:判断n≥N,如果不满足转到STEP3;

STEP10:结束。

实施例4

本实施例的其他结构和工作过程与实施例1相同,所不同的是:针对不同的3D 场景绘制显示的需求,以人为中心的立体透视图显示绘制模块,用于根据观察者不断 改变3D重构环境中的视角,从人机工程的角度确定视场范围来绘制3D立体透视图; 即在以人为中心的透视图显示绘制模块的所生成的透视图作为左视点图像情况下,生 成右视点图像;在以人为中心的透视图显示绘制模块的所生成的透视图作为右视点图 像情况下,生成左视点图像;在以人为中心的透视图显示绘制模块的所生成的透视图 作为中央眼图像情况下,生成左右视点图像,从而实现立体像对生成;因此,需要以 ODVS的单视点坐标Om(0,0,0)及空间物点P(h,β,r)之间的几何关系计算出新视点的 坐标;

将ODVS的单视点坐标Om(0,0,0)作为右眼视点的坐标,用公式(13)计算出空间 P点在左眼视点的坐标;

hR=hLrR=B2+rL2+2×B×rL×cosβLβR=arcsin(rRrL×sinβL)---(13)

式中,hR为空间P点在左眼视点的高度,hL为空间P点在右眼视点的高度,rR为 空间P点在左眼视点的入射角,为空间P点在右眼视点的入射角的平方值,βL为空 间P点在左眼视点的方位角,βR为空间P点在右眼视点的方位角;

将ODVS的单视点坐标Om(0,0,0)作为左眼视点的坐标,用公式(14)计算出空间 P点在右眼视点的坐标;

hL=hRrL=B2+rR2+2×B×rR×cosβRβL=arcsin(rLrR×sinβR)---(14)

式中,hR为空间P点在左眼视点的高度,hL为空间P点在右眼视点的高度,rR为 空间P点在左眼视点的入射角,为空间P点在右眼视点的入射角的平方值,βL为空 间P点在左眼视点的方位角,βR为空间P点在右眼视点的方位角;

将ODVS的单视点坐标Om(0,0,0)作为中央眼的坐标,用公式(15)计算出空间P 点在左右眼视点的坐标;

hL=hrL=(B/2)2+r2-B×r×cosββL=arcsin(rLr×sinβ)hR=hrR=(B/2)2+r2+B×r×cosββR=arcsin(rRr×sinβ)---(15)

式中,hR为空间P点在左眼视点的高度,hL为空间P点在右眼视点的高度,rR为 空间P点在左眼视点的入射角,为空间P点在右眼视点的入射角的平方值,βL为空 间P点在左眼视点的方位角,βR为空间P点在右眼视点的方位角;

B为两眼间的距离,女士两眼的距离在56~64mm,男性两眼的距离在60~70mm, 这里取一个两性之间都能接受的距离60mm,即B=60;

立体透视显示算法如下:

STEP1:确定初始方位角β1,读取最小距离hmin和最大距离hmax数据,确定视点, 中央眼=0,左视点=1,右视点=2;

STEP2:h=hmin

STEP3:读取距离值h的初始方位角β1开始到β1+300的数据,如果 β1+300≥1000,则β1+300=β1+300-1000;根据所确定的视点,如果选择0(中央 眼)用公式(15)计算空间物点在左右眼的柱坐标;如果选择1(左视点)用公式(14) 计算空间物点在右眼的柱坐标,将原坐标数据作为左眼的柱坐标;如果选择2(右视 点)用公式(13)计算空间物点在左眼的柱坐标,将原坐标数据作为右眼的柱坐标; 分别用左右视点将这些值作为左视点矩阵和右视点矩阵的新一行数据,h=h+Δh;

STEP4:判断h≥hmax,如果不满足转到STEP3;

STEP5:结束;

通过上述算法得到二个80×300的矩阵,分别为左右视点的显示矩阵。

分别将矩阵中的所有的三维坐标用三角形面片连接起来,连接方法是首先将每一 行的数据用直线进行连接,然后将每一列的数据用直线进行连接,最后将矩阵中的(i,j) 和(i+1,j+1)的点云数据用直线进行连接;连接线的颜色采用连接的两个点的颜色平均 值。

通过上述处理后生成的立体像对,接着进行双目立体显示。

对于显卡支持的双目立体显示。如在支持立体显示的OpenGL环境下,在创建设 备句柄阶段启动OpenGL的立体显示模式,将生成的立体像对分别输送到左右两个缓 冲区中,实现立体显示。

对于不支持立体显示的显卡上,将立体像对合成为一幅红绿互补色立体图像,从 左右立体像对中的一个图像提取红色通道,另一个图像中提取绿色和蓝色通道,将提 取的通道融合,形成一个互补色的立体图像。

实施例5

本实施例的其他结构和工作过程与实施例1相同,所不同的是:针对不同的3D 场景绘制显示的需求,以人为中心的全景立体图循环显示绘制模块,用于根据观察者 不断改变3D重构环境中的视角,从人机工程的角度确定视场范围来绘制全景立体图, 其核心就是要不断改变方位角β,生成在该方位角β下的左右立体像对;其关键算法 如下:

STEP1:确定初始方位角β1,读取最小距离hmin和最大距离hmax数据,确定视点, 中央眼=0,左视点=1,右视点=2;

STEP2:β=β1,确定循环显示次数N,n=0;

STEP3:h=hmin

STEP4:读取距离值h的初始方位角β1开始到β1+300的数据,如果 β1+300≥1000,则β1+300=β1+300-1000;根据所确定的视点,如果选择0(中央 眼)用公式(3)计算空间物点在左右眼的柱坐标;如果选择1(左视点)用公式(2) 计算空间物点在右眼的柱坐标,将原坐标数据作为左眼的柱坐标;如果选择2(右视 点)用公式(1)计算空间物点在左眼的柱坐标,将原坐标数据作为右眼的柱坐标;分 别用左右视点将这些值作为左视点矩阵和右视点矩阵的新一行数据,h=h+Δh;

STEP5:判断h≥hmax,如果不满足转到STEP4;

STEP6:保存在当前β的显示数据矩阵,分别将左视点矩阵和右视点矩阵用三角 形面片进行连接,生成的立体像对,立体显示输出;β=β+Δβ;

STEP7:判断β≥3600;

STEP8:如果是β=β-3600,n=n+1;

STEP9:判断n≥N,如果不满足转到STEP3;

STEP10:结束。

实施例6

本实施例的其他结构和工作过程与实施例1相同,所不同的是:针对不同的3D 场景绘制显示的需求,以人为中心的观察距离变化立体透视图显示绘制技术,用于根 据观察者不断改变在3D环境中的自身空间位置,从人机工程的角度确定视场范围来 绘制全景立体图;观测者由远及近漫游场景或者由近及远过程中,观察者与被重构空 间之间的位置发生了变化,这涉及到点云坐标的变化和多层次显示技术,同时用于显 示的点云数据的量也会相应发生变化。

首先,我们来观察观测者由远及近漫游场景时,点云空间位置是如何变化的;考 虑点云空间位置时,这里仍然采用中央眼的计算方式,即用两眼之间的中点作为观测 者的视点;

当观测者由远及近漫游场景时,相对观测者的视点来说空间上的P(h,β,r)变成了 P(hDD,rD)。由于在柱坐标系上进行上述运算比较麻烦,我们将观察的方向作为Y轴, 那么当观测者由远及近漫游场景时只是在Y轴上移动了一个距离D。因此我们将柱坐 标系的点云P(h,β,r)点先用公式(16)进行;

x=r×sinβy=r×cosβz=h---(16)

转换成笛卡尔坐标系的点云P(x,y,z)点;根据运算结果为了不失一般性,新的视 点O'm(0,0,0)与原视点Om(0,0,0)的移动距离为D,用公式(17)和公式(18)表示,

D=X02+Y02+Z02---(17)

XYZ=100X0010Y0001Z0XYZ1---(18)

用公式(19)计算出在新的视点O'm(0,0,0)坐标系情况下所有点云的坐标P(x',y',z'), 然后将笛卡尔坐标系的点云P(x',y',z')点再转换成高斯坐标系的点云P(h',β',r')点。对于 在Y轴方向上接近漫游场景的情况,就可以做一个简单运算,即y'=y+y0。将移动 后的视点O'm(0,0,0)作为中央眼的坐标,用公式(19)计算出空间点P(h',β',r')在左右眼 视点的坐标;对于移动后的视点O'm(0,0,0)情况下,与原视点Om(0,0,0)相比,视域会随 之发生变化,上面已经规定视域的水平视野范围为108°、垂直视野范围为66°;因 此,在新视点O'm(0,0,0)的视域需要在公式(19)计算结果上通过对新视点O'm(0,0,0)的 入射角α'和方位角β'来确定,然后用基于ASODVS的以人为中心的立体透视图显示 绘制技术绘制在新视点O'm(0,0,0)的立体透视图;对于在新视点O'm(0,0,0)的以人为中心 的全景立体循环显示绘制用基于ASODVS的以人为中心的全景立体图循环显示绘制 技术;

hL=hrL=(B/2)2+r2-B×r×cosββL=arcsin(rLr×sinβ)hR=hrR=(B/2)2+r2+B×r×cosββR=arcsin(rRr×sinβ)---(19)

式中,h'L为新的视点O'm(0,0,0)坐标系下空间P点在右眼视点的高度,r'L为新 的视点O'm(0,0,0)坐标系下空间P点在右眼视点的入射角,β'L为新的视点O'm(0,0,0) 坐标系下空间P点在左眼视点的方位角,h'R为新的视点O'm(0,0,0)坐标系下空间P点 在左眼视点的高度,r'R为新的视点O'm(0,0,0)坐标系下空间P点在左眼视点的入射角, β'R为新的视点O'm(0,0,0)坐标系下空间P点在右眼视点的方位角。

当对新视角显示时,首先判断新视点到根节点的距离,当距离较近时,即当用于 显示的点云数据少于某一个阈值时,从相邻的根节点数据插值进一步生成低层次点云 数据;生成低层次点云数据,即插值运算是体绘制中的一个基础运算。由于其运算量 大,通过体绘制中的快速插值算法来实现。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号