一种面向虚拟现实交互的冗余视场全景影像构建方法与流程

文档序号:18235794发布日期:2019-07-24 08:41阅读:436来源:国知局
一种面向虚拟现实交互的冗余视场全景影像构建方法与流程

本发明属于计算机视觉领域,涉及全景影像构建方法,尤其涉及一种面向虚拟现实交互的冗余视场全景影像构建方法。



背景技术:

随着计算机视觉基础理论和处理器性能的不断进步,以虚拟现实(Virtual Reality,VR)为代表的新型人机交互模式在近年得到了快速发展。全景影像支持大角度范围内视线方向的自由变换,能够给用户提供良好的沉浸式体验,因此广泛应用于各种虚拟现实系统,是实现虚拟现实交互的重要途径之一。全景影像的呈现效果成为影响虚拟现实交互体验的重要因素。

现有的全景影像构建方法可分为折反射全景、鱼眼全景与拼接式全景三类。其中,折反射全景与鱼眼全景都难以完全覆盖360×180度的全立体角,并且存在局部虚焦和分辨率不均匀的问题。而拼接式全景兼具高分辨率和高成像质量的优点,通过合理的分镜头布局能够覆盖全立体角,逐渐成为目前主流的全景影像构建方法。

拼接式全景成像首先采用拼接融合的方式将多路影像合成为一路更大视场角(Field-Of-View,FOV)、更高分辨率的全景影像,然后根据用户的视线方向和视场角大小,将全景影像的部分内容经投影变换后呈现给用户。在多路影像采集过程中,由于光学结构的限制,多路相机的光心并不能完全重合,导致图像重叠区域的物体形状和大小不一致,即存在结构偏差,进而造成拼接所得全景影像中存在模糊、扭曲、断裂等视觉异常现象。近年来,大量基于不同数学原理的局部自适应全景拼接方法被提出,以消除结构偏差对全景影像质量的影响。但由于拍摄过程中大量不可控因素的存在以及自然场景本身的复杂性,这一难题并未得到完善的解决。



技术实现要素:

本发明的目的是通过以下技术方案实现的。

本发明提出一种面向虚拟现实交互的冗余视场全景影像构建方法。不同于现有方法先拼接后投影变换的技术路线,所提方法并不显式地生成全景影像,而是通过对影像采集装置以及相应交互算法的设计,在多图像配准等初始化操作基础上,直接将投影变换后的原始影像呈现给用户,当用户视线方向变化或视场角增大以致视野范围超出当前原始影像时,平滑地将当前呈现的影像内容来源切换为相应方向的另一原始影像,避免了全景拼接过程中视觉异常现象的出现,改善了虚拟现实交互的用户体验。

具体地,本发明采用的技术方案是:

一种面向虚拟现实交互的冗余视场全景影像构建方法,包括以下步骤:

S1.设计并搭建冗余视场的多路影像采集装置,确保在视场角不超过一定阈值的情况下,任意视线方向的整个视野范围都同时被至少两路原始影像覆盖;

S2.在S1中搭建得到的多路影像采集装置的基础上,采用光束平差法配准得到多路原始影像、全景成像平面以及呈现给用户的观察图像平面之间的投影变换关系;

S3.在S1中搭建得到的多路影像采集装置与S2中配准所得投影变换关系的基础上,基于视线方向与视场角的变化,建立用户视野中所呈现影像内容来源的平滑切换策略,以实现高质量的虚拟现实交互。

进一步地,所述步骤S1的具体方法包括:

为实现任意实现方向的冗余视场,相邻两路相机的重叠视场要大于常规情况下的人眼视场。本发明采用环形分布于水平圆周支架上的四路超广角鱼眼相机进行原始影像的采集。记单路鱼眼相机的水平方向视场角为θf,各路相机均匀地分布于圆周支架上,因此相邻两相机的光轴夹角为θr=90°,则相邻两路相机水平方向的重叠视场角为θa=θf-θr=θf-90°。

人眼在放松状态下左右扫一眼的横向视场角为120度,极限状态可接近180度。虚拟现实头显所呈现的画面要符合人体构造和行为习惯才能保证沉浸感的实现,因此,对于头戴式显示器,最佳视场角是120度。对于借助手机等移动设备显示屏的VR眼镜,由于设备体积的限制,沉浸感最好的视场角则通常在80到90度之间。

若采用θf=220°的超广角鱼眼相机进行原始影像采集,则重叠视场角θa=130°,大于常规情况下人眼120度的水平视场角,能够满足一般情况下虚拟现实交互的需求。

不同相机之间采用外触发的形式进行帧间同步,以确保各路影像之间的时间一致性。

进一步地,所述步骤S2的具体方法包括:

鱼眼镜头能够比普通镜头拍摄到更大试场的图像,但会造成图像中被拍摄物体的形变,原因在于鱼眼镜头的成像过程是非线性的,其映射函数(Mapping Function)不同于普通镜头,通常可写为:

r=fθ

其中,θ为进入镜头的入射光线与光轴的夹角,f为相机的等效焦距,r为入射光线成像点与主点(光轴与图像平面的交点)的距离。

记空间中一点P在相机Ci的相机坐标系中的坐标为xCi=(xCi,yCi,zCi)T,将xCi映射到单位球面上得xni=(xni,yni,zni)T=xCi/|xCi|,则入射角

θi=arccos(zni)

考虑畸变的影响,实际入射角可表示为

θdi=θi(1+ki1θi2+ki2θi4+ki3θi6+ki4θi8)

其中,ki=(ki1,ki2,ki3,ki4)为鱼眼透镜的径向畸变参数。进一步计算沿x轴与y轴方向的入射角

上述变换过程可简化表示为

其中,fi(·)是参数为k的可逆非线性函数。

最终,根据映射函数,可得入射光线成像点的图像坐标为

其中,为成像点的齐次图像坐标,Ki为相机Ci的内参数矩阵,具体形式为

记点P在相机Ci与Cj的相机坐标系中的坐标分别为xCi与xCj,二者之间的变换关系可表示为

xCj=RijxCi+tij

其中,Rij与tij分别为Ci相机坐标系到Cj相机坐标系的旋转矩阵与平移向量,属于多相机成像系统的外参数。通常情况下,被拍摄场景到相机的距离远大于相机之间的基线长度,即|xCj|≈|xCi|>>tij,因此,可近似地认为xCj=RijxCi。

通过特征提取与匹配,得到相机Ci与Cj同步采集所得图像中的匹配特征点{(xi,l,xj,l)l=1,…,nij}。其中,nij为匹配特征点数量。则应有如下关系成立:

上式可简化表示为

xj,l=Qij(xi,l;Ki,Kj,ki,kj,Rij)

其中,Qij(·)表示根据相机Ci与Cj的内外参数确定的投影变换关系,将相机Ci中成像点坐标映射到相机Cj图像平面的投影函数。

调用光束平差法(Bundle Adjustment),将所有成像参数(相机内外参数与畸变参数)作为一个整体进行估计,其代价函数为

其中,m为相机数量。最小化代价函数E(·)可得相机内参数Ki,i=1,…,m,畸变参数ki,i=1,…,m与外参数Rij,i,j=1,…,m。

记Ri1=(ri1x,ri1y,ri1z),在C1的相机坐标系中,相机Ci的光轴方向(即Ci相机坐标系z轴方向)可由Ri1的第三列ri1z表示。设置用于生成全景影像的虚拟相机CP,则CP的y轴方向rPy取为

其中,Z=(r11z,r21z,…rm1z)。上式可通过奇异值分解求解,rPy的取值为ZT最小特征值对应的右奇异向量(least significant right singular vector)。

CP的x轴方向rPx取为

rPx=rPy×r11z=rPy×(0,0,1)T

CP的z轴方向rPx取为

rPz=rPx×rPy

则CP到C1相机坐标系的旋转矩阵可表示为RP1=(rPx,rPy,rPz)。进一步地,可计算CP到任意实体相机Ci的相机坐标系的旋转矩阵为RPi=R1iRP1。则Ci相机坐标系下的空间点xCi在CP相机坐标系下的坐标可表示为xCP=RPiTxCi。

根据虚拟现实交互的需求设置虚拟相机CP的的等效焦距fP,通常取以等距矩形投影(Equirectangular Projection)作为全景影像的投影模型,则覆盖360×180度全立体角全景影像的分辨率为(2πfP)×(πfP),CP的内参数矩阵为

将xCP映射到单位球面上xnP=(xnP,ynP,znP)T=xCP/|xCP|,则等距矩形投影所对应球面坐标可计算如下:

上述变换过程可简化表示为

其中,gi(·)为可逆非线性函数

进一步可得到空间点xCP在全景影像中的成像点xP=(xP,yP)T

其中,为xP的齐次坐标表示。

全景影像与实体相机Ci拍摄所得影像之间的投影关系可表示为

上式可简化表示为

其中,QPi(·)为可逆非线性函数。

设置虚拟现实交互过程中用于生成第一人称透视影像的虚拟相机CV,则CV的光轴方向(即CV相机坐标系z轴方向)平行于用户视线方向。设CV相对于CP的欧拉角为(β,α,γ),其中β为偏航角,α为俯仰角和γ为滚转角(旋转依此围绕y轴、x轴、z轴,即先偏航,再俯仰,再滚转,顺时针为正),则可得CP到CV相机坐标系的旋转矩阵为

则CP相机坐标系下的空间点xCP在CV相机坐标系下的坐标可表示为xCV=RPVxCP。

虚拟相机CV的内参数矩阵为

其中,fV为CV的等效焦距,θVx与θVy分别为CV在x方向与y方向的视场角。进一步可得到空间点xCV在第一人称透视影像中的成像点xV=(xV,yV)T

其中,为xV的齐次坐标表示。

第一人称透视影像与全景影像之间的投影关系可表示为

上式可简化表示为

xP=QVP(xV;KP,KV,RPi,RPV)

其中,QVP(·)为可逆非线性函数。

第一人称透视影像与实体相机Ci拍摄所得影像之间的投影关系可表示为

上式可简化表示为

xi=QVi(xV;Ki,ki,KV,RPi,RPV)

其中,QVi(·)为可逆非线性函数。

进一步地,所述步骤S3的具体方法包括:

在虚拟现实交互过程中,用户可以自主的选择视线方向(即相机CV的光轴方向,也是CV相机坐标系z轴方向)与绕视线方向的画面倾斜。据此可以确定CV相对于CP的欧拉角,进而得到CP到CV相机坐标系的旋转矩阵RPV。本发明直接由实体相机拍摄所得原始影像通过投影变换生成第一人称画面。通常情况下,交互过程中欧拉角的变化是连续的,并且不会高速旋转视线方向(高速旋转视线方向会造成眩晕)。因此,用户视野中所呈现影像内容来源的切换不会过于频繁。为得到高质量的虚拟现实交互,首先要确定影像内容来源的切换时机。

根据多路影像采集装置结构可知,除视线方向指向正上方或正下方附近的极限情况外,用户的整个视野范围都被当前影像内容来源相机Ci所采集原始影像覆盖的条件为

θVfi<(θf-θV)/2

其中,θf为Ci的水平视场角,θV为虚拟相机CV沿水平方向的视场角,由于CV是透视的,则θV可计算如下

虚拟相机CV视场角θVx与θVy通常固定为某一特定值或由用户自由设定。θVfi为当视线方向与相机Ci光轴的在水平方向的夹角,可计算如下

θVfi=β-βPi

其中,βPi分别为相机Ci光轴相对于相机CP光轴的偏航角。记

则βPi可计算如下

当用户的整个视野范围即将无法被当前影像内容来源相机Ci所采集原始影像覆盖时,由于任意视线方向的整个视野范围都同时被至少两路原始影像覆盖,将影像内容来源切换为相邻的另一路原始影像即可。

为得到高质量的虚拟现实交互,本发明采用短时间内蒙太奇(Montage)渐变的方式进行影像内容来源的切换。给定以帧数表示的时间窗口tM,则在切换过程中,第一人称影像的画面I(x,y;t)随时间t由当前时刻t0到t0+tM的渐变过程可表示为

其中,Iinit(x,y;t)与Inext(x,y;t)分别为切换前后原始影像来源经投影变换所得第一人称影像画面。

对于视场角θV>θa或视线方向指向正上方或正下方附近等较少出现的极限情况,采用多路原始影像经投影变换后羽化融合的方式生成用户第一视角影像,此时可能出现由拼接引起的视觉异常现象。

本发明提出一种面向虚拟现实交互的冗余视场全景影像构建方法。不同于现有方法先拼接后投影变换的技术路线,所提方法并不显式地生成全景影像,而是通过对影像采集装置以及相应交互算法的设计,在多图像配准等初始化操作基础上,直接将投影变换后的原始影像呈现给用户,当用户视线方向变化或视场角增大以致视野范围超出当前原始影像时,平滑地将当前呈现的影像内容来源切换为相应方向的另一原始影像,避免了全景拼接过程中视觉异常现象的出现,改善了虚拟现实交互的用户体验。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1为本发明的总体流程图。

图2为多路影像采集装置示意图。

图3为影像内容来源切换示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

本发明提出一种面向虚拟现实交互的冗余视场全景影像构建方法。首先,设计并搭建冗余视场的多路影像采集装置,确保在视场角不超过一定阈值的情况下,任意视线方向的整个视野范围都同时被至少两路原始影像覆盖。然后,采用光束平差法配准得到多路原始影像、全景成像平面以及呈现给用户的观察图像平面之间的投影变换关系。最后,基于视线方向与视场角的变化,建立用户视野中所呈现影像内容来源的平滑切换策略,以实现高质量的虚拟现实交互。总体流程图如图1所示。

本发明提供的面向多人增强现实交互的空间一致性保持方法通过以下步骤实现:

S1.设计并搭建冗余视场的多路影像采集装置,确保在视场角不超过一定阈值的情况下,任意视线方向的整个视野范围都同时被至少两路原始影像覆盖;

为实现任意实现方向的冗余视场,相邻两路相机的重叠视场要大于常规情况下的人眼视场。如图2所示,本发明采用环形分布于水平圆周支架上的四路超广角鱼眼相机进行原始影像的采集。记单路鱼眼相机的水平方向视场角为θf,各路相机均匀地分布于圆周支架上,因此相邻两相机的光轴夹角为θr=90°,则相邻两路相机水平方向的重叠视场角为θa=θf-θr=θf-90°。

人眼在放松状态下左右扫一眼的横向视场角为120度,极限状态可接近180度。虚拟现实头显所呈现的画面要符合人体构造和行为习惯才能保证沉浸感的实现,因此,对于头戴式显示器,最佳视场角是120度。对于借助手机等移动设备显示屏的VR眼镜,由于设备体积的限制,沉浸感最好的视场角则通常在80到90度之间。

若采用θf=220°的超广角鱼眼相机进行原始影像采集,则重叠视场角θa=130°,大于常规情况下人眼120度的水平视场角,能够满足一般情况下虚拟现实交互的需求。

不同相机之间采用外触发的形式进行帧间同步,以确保各路影像之间的时间一致性。

S2.在S1中搭建得到的多路影像采集装置的基础上,采用光束平差法配准得到多路原始影像、全景成像平面以及呈现给用户的观察图像平面之间的投影变换关系;

鱼眼镜头能够比普通镜头拍摄到更大试场的图像,但会造成图像中被拍摄物体的形变,原因在于鱼眼镜头的成像过程是非线性的,其映射函数(Mapping Function)不同于普通镜头,通常可写为:

r=fθ

其中,θ为进入镜头的入射光线与光轴的夹角,f为相机的等效焦距,r为入射光线成像点与主点(光轴与图像平面的交点)的距离。

记空间中一点P在相机Ci的相机坐标系中的坐标为xCi=(xCi,yCi,zCi)T,将xCi映射到单位球面上得xni=(xni,yni,zni)T=xCi/|xCi|,则入射角

θi=arccos(zni)

考虑畸变的影响,实际入射角可表示为

θdi=θi(1+ki1θi2+ki2θi4+ki3θi6+ki4θi8)

其中,ki=(ki1,ki2,ki3,ki4)为鱼眼透镜的径向畸变参数。进一步计算沿x轴与y轴方向的入射角

上述变换过程可简化表示为

其中,fi(·)是参数为k的可逆非线性函数。

最终,根据映射函数,可得入射光线成像点的图像坐标为

其中,为成像点的齐次图像坐标,Ki为相机Ci的内参数矩阵,具体形式为

记点P在相机Ci与Cj的相机坐标系中的坐标分别为xCi与xCj,二者之间的变换关系可表示为

xCj=RijxCi+tij

其中,Rij与tij分别为Ci相机坐标系到Cj相机坐标系的旋转矩阵与平移向量,属于多相机成像系统的外参数。通常情况下,被拍摄场景到相机的距离远大于相机之间的基线长度,即|xCj|≈|xCi|>>tij,因此,可近似地认为xCj=RijxCi。

通过特征提取与匹配,得到相机Ci与Cj同步采集所得图像中的匹配特征点{(xi,l,xj,l)|l=1,…,nij}。其中,nij为匹配特征点数量。则应有如下关系成立:

上式可简化表示为

xj,l=Qij(xi,l;Ki,Kj,ki,kj,Rij)

其中,Qij(·)表示根据相机Ci与Cj的内外参数确定的投影变换关系,将相机Ci中成像点坐标映射到相机Cj图像平面的投影函数。

调用光束平差法(Bundle Adjustment),将所有成像参数(相机内外参数与畸变参数)作为一个整体进行估计,其代价函数为

其中,m为相机数量。最小化代价函数E(·)可得相机内参数Ki,i=1,…,m,畸变参数ki,i=1,…,m与外参数Rij,i,j=1,…,m。

记Ri1=(ri1x,ri1y,ri1z),在C1的相机坐标系中,相机Ci的光轴方向(即Ci相机坐标系z轴方向)可由Ri1的第三列ri1z表示。设置用于生成全景影像的虚拟相机CP,则CP的y轴方向rPy取为

其中,Z=(r11z,r21z,…rm1z)。上式可通过奇异值分解求解,rPy的取值为ZT最小特征值对应的右奇异向量(least significant right singular vector)。

CP的x轴方向rPx取为

rPx=rPy×r11z=rPy×(0,0,1)T

CP的z轴方向rPx取为

rPz=rPx×rPy

则CP到C1相机坐标系的旋转矩阵可表示为RP1=(rPx,rPy,rPz)。进一步地,可计算CP到任意实体相机Ci的相机坐标系的旋转矩阵为RPi=R1iRP1。则Ci相机坐标系下的空间点xCi在CP相机坐标系下的坐标可表示为xCP=RPiTxCi。

根据虚拟现实交互的需求设置虚拟相机CP的的等效焦距fP,通常取fP=miax(fi)。以等距矩形投影(Equirectangular Projection)作为全景影像的投影模型,则覆盖360×180度全立体角全景影像的分辨率为(2πfP)×(πfP),CP的内参数矩阵为

将xCP映射到单位球面上xnP=(xnP,ynP,znP)T=xCP/|xCP|,则等距矩形投影所对应球面坐标可计算如下:

上述变换过程可简化表示为

其中,gi(·)为可逆非线性函数

进一步可得到空间点xCP在全景影像中的成像点xP=(xP,yP)T

其中,为xP的齐次坐标表示。

全景影像与实体相机Ci拍摄所得影像之间的投影关系可表示为

上式可简化表示为

其中,QPi(·)为可逆非线性函数。

设置虚拟现实交互过程中用于生成第一人称透视影像的虚拟相机CV,则CV的光轴方向(即CV相机坐标系z轴方向)平行于用户视线方向。设CV相对于CP的欧拉角为(β,α,γ),其中β为偏航角,α为俯仰角和γ为滚转角(旋转依此围绕y轴、x轴、z轴,即先偏航,再俯仰,再滚转,顺时针为正),则可得CP到CV相机坐标系的旋转矩阵为

则CP相机坐标系下的空间点xCP在CV相机坐标系下的坐标可表示为xCV=RPVxCP。

虚拟相机CV的内参数矩阵为

其中,fV为CV的等效焦距,θVx与θVy分别为CV在x方向与y方向的视场角。进一步可得到空间点xCV在第一人称透视影像中的成像点xV=(xV,yV)T

其中,为xV的齐次坐标表示。

第一人称透视影像与全景影像之间的投影关系可表示为

上式可简化表示为

xP=QVP(xV;KP,KV,RPi,RPV)

其中,QVP(·)为可逆非线性函数。

第一人称透视影像与实体相机Ci拍摄所得影像之间的投影关系可表示为

上式可简化表示为

xi=QVi(xV;Ki,ki,KV,RPi,RPV)

其中,QVi(·)为可逆非线性函数。

S3.在S1中搭建得到的多路影像采集装置与S2中配准所得投影变换关系的基础上,基于视线方向与视场角的变化,建立用户视野中所呈现影像内容来源的平滑切换策略,以实现高质量的虚拟现实交互。

在虚拟现实交互过程中,用户可以自主的选择视线方向(即相机CV的光轴方向,也是CV相机坐标系z轴方向)与绕视线方向的画面倾斜。据此可以确定CV相对于CP的欧拉角,进而得到CP到CV相机坐标系的旋转矩阵RPV。本发明直接由实体相机拍摄所得原始影像通过投影变换生成第一人称画面。通常情况下,交互过程中欧拉角的变化是连续的,并且不会高速旋转视线方向(高速旋转视线方向会造成眩晕)。因此,用户视野中所呈现影像内容来源的切换不会过于频繁。为得到高质量的虚拟现实交互,首先要确定影像内容来源的切换时机。

如图3所示,根据多路影像采集装置结构可知,除视线方向指向正上方或正下方附近的极限情况外,用户的整个视野范围都被当前影像内容来源相机Ci所采集原始影像覆盖的条件为

θVfi<(θf-θV)/2

其中,θf为Ci的水平视场角,θV为虚拟相机CV沿水平方向的视场角,由于CV是透视的,则θV可计算如下

虚拟相机CV视场角θVx与θVy通常固定为某一特定值或由用户自由设定。θVfi为当视线方向与相机Ci光轴的在水平方向的夹角,可计算如下

θVfi=β-βPi

其中,βPi分别为相机Ci光轴相对于相机CP光轴的偏航角。记

则βPi可计算如下

当用户的整个视野范围即将无法被当前影像内容来源相机Ci所采集原始影像覆盖时,由于任意视线方向的整个视野范围都同时被至少两路原始影像覆盖,将影像内容来源切换为相邻的另一路原始影像即可。

为得到高质量的虚拟现实交互,本发明采用短时间内蒙太奇(Montage)渐变的方式进行影像内容来源的切换。给定以帧数表示的时间窗口tM,则在切换过程中,第一人称影像的画面I(x,y;t)随时间t由当前时刻t0到t0+tM的渐变过程可表示为

其中,Iinit(x,y;t)与Inext(x,y;t)分别为切换前后原始影像来源经投影变换所得第一人称影像画面。

对于视场角θV>θa或视线方向指向正上方或正下方附近等较少出现的极限情况,采用多路原始影像经投影变换后羽化融合的方式生成用户第一视角影像,此时可能出现由拼接引起的视觉异常现象。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1