一种全景视频摄像机组空间位姿标定方法
技术领域
本发明涉及图像处理领域,具体涉及一种全景视频摄像机组空间位姿标定方法。
背景技术
360度全景图是一种基于图像拼接技术实现的低成本虚拟现实技术,是虚拟现实、计算机视觉技术领域中的一个研究热点。全景拼接技术作为一种廉价、直观的实现方式已经在多个领域得到广泛的应用,比如房地产、装潢设计、旅游景点、工程汇报、虚拟校园、街景服务、视频监控等等,有着广阔的市场需求。
做全景拼接图像处理之前,需要对摄像机组的相对位姿进行标定,像机空间关系排列为固定的,因此不同的像机,其内外部参数以及高度角度均不相同。为了利用最少的像机来获得全景视频,不同像机之间的朝向各不相同。为了准确地将不同像机获得的影像投影到共同坐标系下,需要标定出每个像机的内参矩阵和各个像机之间的位姿关系。
像机内参数的标定方法有多种,而两个摄像机进行标定的方法,难以适用较大视场的环境,传统的双像机标定或者多像机标定一般都要求待标定的像机对同一个目标(例如标定板)同时进行成像,从而能够以该目标坐标系为基准,将各个待标定像机统一起来,进而获得待标定像机间的相对位姿关系。需要较大视场的场合不适用于上述的标定方法,因为如果需要用较少的机组获得较大的视场,那么重合影像部分势必较少,这样一来,对标定结果会有较大的影响,要在这有限的重合视场内利用标定目标来对像机间的位姿关系进行标定,十分困难,利用具有高精度立体结构的标定块时,虽然各个像机采集一张图片即可,但标定块的使用非常不便,而当利用标定板时则要求必须采集至少三幅不同姿态的标定板图像,在有限的视场内让标定板变换不同的姿态也是非常的困难;此外,由于图像扭曲,广角镜头成像在图像边缘部分一般都具有很大的畸变,而相邻像机的公共视场部分又刚好处于各自广角镜头像机视场的边缘部分,所以,传统标定方法标定得到的精度也不能保证。
发明内容
本发明的目的在于,提供一种精度较高的位姿标定方法,解决以上技术问题;
本发明所解决的技术问题可以采用以下技术方案来实现:一种全景视频摄像机组空间位姿标定方法,提供复数个摄像机,还包括以下步骤,
步骤1,对所有相邻的摄像机进行空间位姿标定以确定相对位姿关系;
步骤2,根据相邻的所述摄像机的相对位姿关系列出独立约束关系;
步骤3,根据所述独立约束关系列出改正数方程,通过平差法对冗余标定产生的约束进行平差求出改正数向量;
步骤4,根据所述改正数向量求出修正结果;
步骤5,判断所述改正数向量是否小于一预设阈值,如果是执行步骤7,如果否根据所述改正数向量求出修正结果;
步骤6,将所述修正结果代入所述独立约束关系,并返回所述步骤3;
步骤7,根据所述独立约束关系得到空间位姿关系。
首先,对相邻的摄像机组进行空间位姿标定,就可以确定出相邻两个摄像机之间的相对位姿关系,但是这样确定的相邻的位姿关系势必存在一定的误差,这个误差对实际而言,会产生较大的影响,所以本发明通过对多组摄像机两两之间构建独立约束关系的方法,列出修正参数方程,再通过计算获得出修正结果,通过不断的迭代,将修正结果反复代入约束关系,直至结果满足所有的约束关系,这样就能获得精度较高的空间位姿关系,满足图像拼接的需求。
进一步的,步骤1包括
步骤1-1,任选相邻的两个摄像机分别作为第一摄像机和第二摄像机,分别对第一摄像机和第二摄像机进行内参数标定;
步骤1-2,在第一摄像机的视场中放置第一标定板,在第二摄像机的视场中放置第二标定板;
步骤1-3,在第一摄像机和第二摄像机之间设置一基准摄像机,使基准摄像机的视场中包括第一标定板和第二标定板,基准摄像机同时对第一标定板和第二标定板成像,获得基准摄像机与第一标定板之间的位姿关系HA→C0以及基准摄像机与第二标定板之间的位姿关系HC0→B;
步骤1-4,获得第一标定板和第二标定板的位姿关系HA→B=HC0→B HA→C0;
步骤1-5,获得第一摄像机与第一标定板之间的位姿关系HA→C1以及第二摄像机与第二标定板之间的位姿关系HB→C2;
步骤1-6,获得第一摄像机和第二摄像机之间的位姿关系HC1→C2=HB→C2HA→BHC1→A;
步骤1-7,返回步骤1-1,直至得到所有相邻的两个摄像机的相对位姿关系。
为了消除广角镜带来的边缘成像误差对相对位姿关系确定的影响,本发明通过设计基准摄像机进行相对位姿关系的确定,这样一来,就可以增加重复视场的大小,保证确定相对位姿关系的精度。
进一步的,步骤1包括
步骤1-1,任选相邻的两个摄像机分别作为第一摄像机和第二摄像机,分别对第一摄像机和第二摄像机进行内参数标定;
步骤1-2,在第一摄像机的视场中放置第一标定板,在第二摄像机的视场中放置第二标定板;
步骤1-3,在第一摄像机和第二摄像机之间设置一基准摄像机,使基准摄像机的视场中包括第一标定板和第二标定板;
步骤1-4,通过同步触发信号使基准摄像机、第一摄像机和第二摄像机分别对第一标定板和第二标定板成像,获得基准摄像机与第一标定板之间的位姿关系HA→C0、基准摄像机与第二标定板之间的位姿关系HC0→B、第一摄像机与第一标定板之间的位姿关系HA→C1以及第二摄像机与第二标定板之间的位姿关系HB→C2;
步骤1-5,获得第一摄像机和第二摄像机之间的位姿关系HC1→C2=HB→C2HC0→B HA→ C0HC1→A;
步骤1-6,返回步骤1-1,直至得到所有相邻的两个摄像机的相对位姿关系。
与上一改进的区别在于,此处采用了同步触发的方式进行位姿关系的获取,这样一来,可以消除因环境光线变化而带来的误差。
进一步的,步骤1包括
步骤1-1,任选相邻的两个摄像机分别作为第一摄像机和第二摄像机,并分别对第一摄像机和第二摄像机进行内参数标定;
步骤1-2,在第一摄像机的视场中放置第一标定板,在第二摄像机的视场中放置第二标定板;
步骤1-3,获得第一摄像机与第一标定板之间的位姿关系HA→C1以及第二摄像机与第二标定板之间的位姿关系HB→C2;
步骤1-4,改变第一摄像机和第二摄像机的位姿,重新获得第一摄像机与第一标定板之间的位姿关系
以及第二摄像机与第二标定板之间的位姿关系
步骤1-5,根据公式
获得第一摄像机和第二摄像机之间的位姿关系H
C1→C2;
步骤1-6,返回步骤1-1,直至得到所有相邻的两个摄像机的相对位姿关系。
而这种改进方式无需增加基准摄像机,只需要通过两个摄像机的转动就可以求解相对位姿关系。
进一步的,在步骤1中,保持第一标定板与第二标定板的相对位置不变。
进一步的,所述的摄像机配置为鱼眼摄像机。
进一步的,所述内参数标定标定的参数类型包括该摄像机的等效焦距、成像模型、主点坐标以及像差系数。
有益效果:由于采用以上技术方案,本发明适用于更大更全的视场图像拼接技术的要求,位姿确定关系精度更高,所需摄像机更少。
附图说明
图1为像机固联结构示意图;
图2为实施例1-1中鱼眼镜头像机组像机间位姿关系标定方法;
图3为实施例1-2中鱼眼镜头像机组像机间位姿关系标定方法;
图4为实施例1-3中鱼眼镜头像机组像机间位姿关系标定方法;
图5为鱼眼镜头像机组像机间位姿关系标定数据修正。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
首先为了方便理解本发明的实质内容,以鱼眼摄像机为例,对位姿关系作出解释,
对于世界坐标系W中任意一个三维空间点PW,设其在摄像机坐标系C中的空间点坐标为PC,则有:
PC=RW→CPW+tW→C (1)
其中RW→C为由世界坐标系W到摄像机坐标系C的旋转矩阵,tW→C为由世界坐标系W到摄像机坐标系C的平移向量;同样,如果设RC→W为由摄像机坐标系C到世界坐标系W的旋转矩阵,tC→W为由摄像机坐标系C到世界坐标系W的平移向量,则有:
PW=RC→WPC+tC→W (2)
式(2)可以重写为:
显然,由上式可得:
为了更简约的表示坐标系变换,可以将坐标扩展为齐次坐标,如下式所示:
与上述推导类似,有:
对于鱼眼镜头像机组来说,首先进行的就是相邻像机空间位姿关系的标定,不失一般性,下面的阐述均以像机C1和像机C2之间位姿关系标定为例,其他相邻像机间空间位姿关系的标定步骤与像机C1-C2的标定完全相同。
一种全景视频摄像机组空间位姿标定方法,
步骤1,对所有相邻的摄像机进行空间位姿标定;
步骤2,根据相邻摄像机的相对位姿关系列出独立约束关系;
步骤3,根据独立约束关系列出改正数方程,通过平差法对冗余标定产生的约束进行平差求出改正数向量;
步骤4,根据改正数向量对测量值进行修正;
步骤5,判断所述改正数向量是否小于一预设阈值,如果是执行步骤7,如果否根据所述改正数向量求出修正结果;
步骤6,将所述修正结果代入所述独立约束关系,并返回所述步骤3;
步骤7,根据所述独立约束关系得到空间位姿关系。
实施例1-1是在上述基础上对本发明中相邻摄像机的位姿关系进行确定,如图2所示,C1和C2为待标定空间位姿关系的相邻鱼眼镜头像机,A和B分别为像机C1和C2视场中的标定板,为了标定C1和C2的位姿关系;还需引入一个高精度摄像机C0,并利用C0来标定A和B之间的位姿关系。
理论推导如下:
如图2左图所示,与前述式相类似,对于标定板A所在坐标系中的任一空间点PA来说,其在像机C1坐标系中的空间位置为:
PC1=HA→C1PA (8)
同样的,像机C1坐标系中的空间点PC1在像机C2坐标系中的位置为:
PC2=HC1→C2PC1 (9)
像机C2坐标系中的空间点PC2在标定板B坐标系中的位置为:
PB=HC2→BPC2 (10)
最后,标定板B坐标系中的空间点PB在标定板A坐标系中的位置为:
PA=HB→APB (11)
由上式可得:
HB→AHC2→BHC1→C2HA→C1=I (12)
从而有:
HC1→C2=HB→C2HA→BHC1→A (13)
上式中HB→C2和HC1→A为摄像机C2与标定板B之间的位姿关系和摄像机C1与标定板A之间的位姿关系,可利用张正友方法得到,量HA→B为标定板A和标定板B之间的位姿关系,为未知量;
如图2右图所示,对于摄像机C0和标定板A、标定板B之间,也存在类似于式(12)的关系:
HA→BHC0→AHB→C0=I (14)
从而有:
HA→B=HC0→BHA→C0 (15)
依据上述理论,具体的标定实施步骤如下:
a).分别对C1和C2进行内参数标定,包括等效焦距、鱼眼成像模型、主点坐标以及像差系数等;
b).在C1的视场中放置一个标定板A,在C2的视场中放置一个标定板B,保持A与B的相对位置不变;
c).保持A与B的相对位置不变,利用高精度像机C0同时对标定板A和标定板B成像,利用张正友方法分别获得像机C0与标定板A之间的位姿关系HA→C0和像机C0与标定板B之间的位姿关系HC0→B,根据公式(15)得到标定板A与B的位姿关系HA→B=HC0→B HA→C0;
d).继续保持A与B的相对位置不变,利用张正友方法获得鱼眼镜头摄像机C1与标定板A之间的位姿关系HC1→A和鱼眼镜头摄像机C2与标定板B之间的位姿关系HB→C2;
e).相邻像机C1和C2之间的位姿关系HC1→C2=HB→C2HA→BHC1→A;这里步骤c与步骤b之间是分开进行的,不要求同步;
f).返回步骤d)和e)分别得到其它相邻像机之间的位姿关系。
实施例1-2,与实施例1-1类似,设C1和C2为待标定空间位姿关系的相邻鱼眼镜头像机,标定方法2也是在鱼眼镜头像机C1和C2的视场中各放置一个标定板A和标定板B,并利用张正友方法分别标定,如图3所示。本方法与方法1的区别在于中间量HA→B是另外利用像机C0另外标定出来的,而本方法则是不再去得到这个间接量,而是在标定HC1→A和HB→C2时就直接同步得到HC0→B和HA→C0,这就要求像机C0与鱼眼镜头像机C1和C2同步;
具体的实施步骤如下:
a).分别对C1和C2进行内参数标定,包括等效焦距、鱼眼成像模型、主点坐标以及像差系数等;
b).在C1的视场中放置一个标定板A,在C2的视场中放置一个标定板B,保持A与B的相对位置不变;
c).利用同步信号触发等装置将鱼眼镜头像机C1、鱼眼镜头像机C2、以及高精度像机C0连接起来,保证三个像机同步采图;
d).分别利用张正友方法,获得鱼眼镜头摄像机C1与标定板A之间的位姿关系HC1→A和鱼眼镜头摄像机C2与标定板B之间的位姿关系HB→C2,同时,在采集C1对A、C2对B的图像时,利用高精度像机C0同时对标定板A和标定板B成像,利用张正友方法标定像机C0与标定板A之间的位姿关系HA→C0,以及像机C0与标定板B之间的位姿关系HC0→B;
e).鱼眼镜头像机C1和C2间的位姿关系HC1→C2=HB→C2HC0→B HA→C0HC1→A;
f).返回步骤d)和e)分别得到其它相邻像机之间的位姿关系。
实施例1-3,设C1和C2为待标定空间位姿关系的相邻鱼眼镜头像机,与前面两种标定方法需要额外的借助一个高精度像机C0,直接或间接的获得标定板A与B之间的位姿关系不同,本标定方法只需要待标定像机组中每个像机视场中均包含一块标定板即可,如图4所示。设摄像机C1视场中有标定板A,摄像机C2视场中有标定板B,标定过程中保证A与B的相对位姿关系不变。
理论推导如下:
如图4所示,与前述式相类似,对于标定板A所在坐标系中的任一空间点PA来说,其在像机C1坐标系中的空间位置为:
PC1=HA→C1PA (16)
同样的,像机C1坐标系中的空间点PC1在像机C2坐标系中的位置为:
PC2=HC1→C2PC1 (17)
像机C2坐标系中的空间点PC2在标定板B坐标系中的位置为:
PB=HC2→BPC2 (18)
最后,标定板B坐标系中的空间点PB在标定板A坐标系中的位置为:
PA=HB→APB (19)
由上式可得:
HB→AHC2→BHC1→C2HA→C1=I (20)
将HB→A移到等式右边即有:
在上式中,HA→B和HC1→C2分别为标定板A与B和摄像机C1与C2之间的位姿关系,均为不变量;而HC2→B和HA→C1则分别为摄像机C2与标定板B之间以及标定板A与摄像机C1之间的位姿关系,均为变化量,当像机组的位姿变化时会跟着变化,也即在另一组状态下有:
由(21)和(22)式可得:
AX=XB (25)
这即典型的机器人手眼标定方程,利用手眼标定法即可求解得到X,也即HC1→C2;
依据上述理论,具体的标定实施步骤如下:
a).分别对C1和C2进行内参数标定,包括等效焦距、鱼眼成像模型、主点坐标以及像差系数等;
b).在C1的视场中放置一个标定板A,在C2的视场中放置一个标定板B,保持A与B的相对位置不变;
c).分别利用张正友方法,获得鱼眼镜头摄像机C1与标定板A之间的位姿关系HA→C1和鱼眼镜头摄像机C2与标定板B之间的位姿关系HC2→B;
d).改变摄像机组的位姿,重新获得一组摄像机C1与标定板A之间的位姿关系和摄像机C2与标定板B之间的位姿关系,分别记为
和
e).设鱼眼镜头像机C1和C2间的位姿关系为HC1→C2,则根据公式(24)有,利用手眼标定法即可求解出位姿关系矩阵HC1→C2;
f).返回步骤a)到e)分别得到其它相邻像机之间的位姿关系。
实施例2是对通过构建独立约束关系求修正向量通过迭代求出最后的位姿关系的一种算法,也是本发明的核心,通过实施例2可以与实施例1-1、1-2和1-3中任一一项实施例配合实现对摄像机空间位姿关系的确定,通过上面步骤,我们解决了如何对任意两个鱼眼镜头像机进行空间位姿关系标定的难题。显然,对于由N个(N>=2)鱼眼镜头像机组成的像机组来说,进行N-1次相邻像机间相对位姿关系的标定,即可将所有像机的位姿关系统一起来。但是,考虑到标定过程中必然会存在误差,所以为了进一步提高精度,一般我们采用冗余标定的方法来提高最终的标定精度;也即进行N(N-1)次两两标定,最后,再对所有的两两标定结果进行平差,也即使所有的标定值能够自洽。
一般的,对于任意的由n个像机组成的像机组,共有n-1个独立的相对位姿参数,共有
个可测量的相对位姿参数,这些可测量的位姿参数之间共存在
个约束关系,而这些约束关系间只有
个相互独立。设R
Ci→Cj,t
Ci→Cj(i≠j)分别表示由摄像机坐标系Ci变换到摄像机坐标系Cj的姿态旋转矩阵和平移向量,显然有约束关系:
如图5所示为由四个像机组成的像机组,其空间位姿约束为:
在全景像机组中,对拼接效果影响最大的是各个像机间的相对姿态,下面我们就针对姿态的平差修正来推导。一般来说,通过两两像机位姿标定的方法可以得到任意两个摄像机之间的相对位姿关系,这些位姿关系之间通过不同的组合方式存在大量固有的约束关系,为了充分利用所有的约束关系,同时最大程度的减小计算量,需要首先探讨多目传递站中各个摄像机间之间存在的组合约束关系。为了简单起见,下面以如图5所示的四像机结构为例进行说明,其存在如下的约束关系:
由于四目传递站中独立的位姿关系的数目为n-1=3,因此由R
C1→C2,R
C2→C3和R
C3→C4即可完全确定四目传递站中各摄像机间的相对位姿关系。四目传递站中可以两两标定的位姿关系数目为
即R
C1→C2,R
C1→C3,R
C1→C4,R
C2→C3,R
C2→C4和R
C3→C4,由于R
Ci→Cj·R
Cj→Ci=I,(i≠j),因此由R
Ci→Cj即可求出R
Cj→Ci.四目传递站中独立的位姿约束关系数目为
因此选式(28)中的任意3个即可组成一组独立的约束关系,不妨选前3个等式,并记旋转矩阵R
Ci→Cj对应的欧拉角为Aq
Ci→Cj(q=x,y,z),则存在如下形式的独立约束关系:
由于两两标定过程中必然带有误差,因此,标定得到的欧拉角将不能满足上述约束关系,这时可以利用平差法对冗余标定产生的约束进行平差,从而减小误差,具体步骤如下:
a).首先根据具体的像机结构列出其独立的位姿约束关系;
b).由得到的独立约束关系,列出待平差量的改正数方程;
c).根据改正数方程,列出平差方程组并求解改正数向量;
d).由改正数向量对测量值进行修正,反复迭代,直至满足所有的约束关系。
以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。