一种适用于狭小空间的环绕放置多摄像机系统标定方法
技术领域
本发明涉及计算机视觉技术领域,更具体地说,涉及一种适用于狭小空间的环绕放置多摄像机系统标定方法。
背景技术
在摄影测量以及机器视觉应用中,常通过多摄像机组合摄影突破单个摄像机测量丢失一个维度信息的限制,从而完成三维重建、全景图拼接等工作。为实现多摄像机组合工作确定空间物体表面某点的三维几何位置与其在图像中对应点之间的相互关系,必须建立相机成像的几何模型,如何精确求解相机几何模型中的相机内外参数就是其中的关键技术。
文献“Zhang Z.Flexible camera calibration by viewing a plane fromunknown orientations[C]//Proceedings of the Seventh IEEE InternationalConference on Computer Vision.IEEE,2002.”中提出的一种利用平面棋盘格进行相机标定的实用方法。该方法介于摄影标定法和自标定法之间,标定过程仅需使用一个已知尺寸的棋盘格,从不同方向拍摄几组图片即可。可基于上述方法对多摄像机之间两两一组双目标定完成多摄像机的标定,但是该方法在处理狭窄空间下或者多个摄像机处于环绕式放置的相对位置下,其标定参数的准确度会急剧下降。
因此,现亟待设计出一种适用于狭小空间的环绕放置多摄像机系统标定方法,以解决小型物体三维重建或多视图采集中,在狭小空间内围绕物体环绕布置摄像机的多摄像机系统的标定与校正问题。
发明内容
为克服现有技术中的缺点与不足,本发明的目的在于提供一种适用于狭小空间的环绕放置多摄像机系统标定方法;该方法可解决现有多摄像机标定与校正方法复杂的技术问题,使用简单,能够快速准确地实现低重叠视野或狭窄空间的多摄像机之间的标定。
为了达到上述目的,本发明通过下述技术方案予以实现:一种适用于狭小空间的环绕放置多摄像机系统标定方法,其特征在于:包括如下步骤:
S1、各个摄像机分别采集棋盘格标定图像;
S2、用张氏标定法对各个摄像机内部参数进行标定;
S3、采用点光源作为目标物在公共视野内移动,各个摄像机同步采集包含所述点光源的图像形成图像集;
S4、基于欧几里得分层求解进行迭代优化,得到基于世界坐标下的多摄像机旋转矩阵Ri与摄像机中心向量ci;
S5、利用多摄像机旋转矩阵与摄像机中心向量反求摄像机外部参数;
S6、根据各个摄像机的内部参数和外部参数,完成多摄像机系统标定。
优选地,所述步骤S2,是指:
基于小孔成像摄像机模型,计算从图像坐标系到世界坐标系映射关系:
其中,m=[u,v]T为二维图像点坐标,M=[Xw,Yw,Zw]T为三维空间点坐标,其齐次坐标分别为Zc为世界坐标系到图像坐标系的尺度因子,K为摄像机内参矩阵;T为摄像机外参矩阵;(u0,v0)为像主点坐标,(αx,αy)焦距与像素横纵比的融合,γ为径向畸变参数;
对棋盘格标定图像进行角点检测,得到角点的图像坐标;已知棋盘格的角点空间结构和几何关系,以及棋盘格上所有角点的空间坐标满足共面约束,建立各棋盘格标定图像中角点的对应关系;
建立棋盘格三维坐标系,则棋盘格位于Zw=0,记旋转矩阵R3×3的第i列为向量ri,则有
三维空间到图像的映射为:
H=K[r1 r2 t3×1]
其中,H为单应性矩阵;单应性矩阵H通过一系列的角点坐标,利用最小二乘法得到;
对单应性矩阵H进行cholesky分解得到摄像机内部参数矩阵K。
优选地,所述步骤S3,是指:
采用点光源作为目标物在公共视野内移动;点光源的移动方式是:分别沿每个摄像机镜头的纵向方向缓慢移动,其余摄像机采集包含所述点光源的图像,得到包含点光源运动轨迹的图像集。
优选地,所述步骤S4,是指包括如下分步骤:
S41、检测点光源在图像中的位置;
S42、通过成对的随机抽样一致分析算法,丢弃误检点;
S43、根据采集的图像集,计算图像集中的中心图像Imagec,以中心图像Imagec进行投影深度λi j估计,以及对观测矩阵Ws中的丢失点进行填充;填充利用外极几何,使用中心图像Imagec的代替丢失点的方案,适合宽基线立体重建;观测矩阵Ws为:
其中,P=[P1 … Pm]T和X=[X1 … Xn]T分别表示投影运动和投影形状;
S44、使用光束平差法对投影结构进行优化;
S45、对观测矩阵Ws利用矩阵分解,实现放射重构,得到投影形状和投影运动;
S46、利用欧几里得分层求解,求解得4X4非奇异矩阵H,将投影结构更新为欧几里得结构,欧几里得结构包括欧几里得投影形状和欧几里得运动,将世界坐标系的原点放在重构的三维欧氏点的质心上;
S47、通过评估2D重投影误差来检测离群点,删除离群点,重复步骤S43~S46,直到没有离群点;
S48、对非线性失真参数进行估计得到重投影错误值;若重投影错误值低于设定阈值,或者迭代次数超过允许的最大次数,则停止迭代,得到迭代后基于世界坐标下的多摄像机旋转矩阵Ri与摄像机中心向量ci;多摄像机旋转矩阵Ri是指摄像机i方向相对世界坐标系原点的旋转矩阵;摄像机中心向量ci是指摄像机i中心在世界坐标系下的坐标点;否则重复步骤S42~S47。
优选地,所述步骤S43中,投影深度λi j估计方法为:
对已知的确定点up c,设所有p的投影深度为λp c=1,c为中心图像Imagec的序号;对于序号i≠c的图像,当图像i和中心图像c的共同点多于设定值时,则计算基本矩阵Fic,利用基本矩阵Fic和极点eic估计深度:
×为叉乘。
优选地,所述步骤S5,是指:
根据坐标系转换有公式,计算出摄像机i的平移向量Ti,以摄像机i为原点、摄像机j的相对平移向量tij以及以摄像机i为原点、摄像机j的相对旋转矩阵Rij:
Ti=-Ri -1ci
tij=-Rj -1·(Ti-Tj)
Rij=Rj·Ri -1
利用vtk可视化多摄像机位置,验证摄像机的外部参数。
与现有技术相比,本发明具有如下优点与有益效果:
本发明采用迭代欧几里得分层求解参数,配合针对环绕式放置的多摄像头设计的径向运动标定图像的采样策略完成标定。该方法使用简单,且大部分过程能使用程序自动计算,能够快速准确地实现低重叠视野或狭窄空间的多摄像机之间的标定;可解决现有多摄像机标定与校正方法复杂的技术问题,尤其适用于环绕式多摄像头的场景或设备的低共享视野,以及狭窄空间中的坐标标定。
附图说明
图1是本发明适用于狭小空间的环绕放置多摄像机系统标定方法的流程图;
图2是本发明步骤S3中,相对于摄像机1的点光源径向运动采样策略示意图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细的描述。
实施例
本实施例一种适用于狭小空间的环绕放置多摄像机系统标定方法,如图1所示,包括如下步骤:
S1、各个摄像机分别采集棋盘格标定图像。
利用已知尺寸的棋盘格作为标定板,在采集每张标定图片时,要求棋盘格标定板完全在视野中可见,标定板有尽可能多的姿态,采集若干张图片,例如大约25张图片。
S2、用张氏标定法对各个摄像机内部参数进行标定。
具体地说,基于小孔成像摄像机模型,计算从图像坐标系到世界坐标系映射关系:
其中,m=[u,v]T为二维图像点坐标,M=[Xw,Yw,Zw]T为三维空间点坐标,其齐次坐标分别为Zc为世界坐标系到图像坐标系的尺度因子,K为摄像机内参矩阵,与摄像机的焦点畸变有关;T为摄像机外参矩阵,与相机的相对位置关系有关;(u0,v0)为像主点坐标,(αx,αy)焦距与像素横纵比的融合,γ为径向畸变参数;
对棋盘格标定图像进行角点检测,得到角点的图像坐标;已知棋盘格的角点空间结构和几何关系,以及棋盘格上所有角点的空间坐标满足共面约束,建立各棋盘格标定图像中角点的对应关系;
建立棋盘格三维坐标系,则棋盘格位于Zw=0,记旋转矩阵R3×3的第i列为向量ri,则有
三维空间到图像的映射为:
H=K[r1 r2 t3×1]
其中,H(Homography)为单应性矩阵;单应性矩阵H通过一系列的角点坐标,利用最小二乘法得到;
对单应性矩阵H进行cholesky分解得到摄像机内部参数矩阵K。
S3、采用点光源作为目标物在公共视野内移动,各个摄像机同步采集包含所述点光源的图像形成图像集。
首先,对于狭小空间内环绕式多摄像头系统,公共视野空间小,点光源在狭窄空间内,若随机地移动,其狭小空间内的运动轨迹与多摄像头相对位置的特点将难以通过有限的标定图像进行有效的自校正,迭代优化算法往往难以收敛导致标定失败。所以在采集过程中需利用有效的采集策略,使得到的点光源能更有效地表达出运动轨迹与多摄像头相对位置,完成自标定任务。
针对狭小空间内环绕式多摄像头的位置特点,采用点光源作为目标物在公共视野内移动;点光源的移动方式是:分别沿每个摄像机镜头的纵向方向缓慢移动,尽量保持在该摄像头中的标定点投影位置变化不大的前提下,纵向移动点光源,其余摄像机采集包含所述点光源的图像,在其余摄像机上点光源的投影位置有较大的位置变化,得到一系列具有导向性的包含点光源运动轨迹的图像集。以三个摄像机系统为例,相对于摄像机1的点光源径向运动采样策略示意如图2所示。
S4、基于欧几里得分层求解进行迭代优化得到基于世界坐标下的多摄像机旋转矩阵Ri与摄像机中心向量ci。
包括如下分步骤:
S41、检测点光源在图像中的位置;
S42、通过成对的随机抽样一致分析算法(RANSAC算法),丢弃误检点;
S43、根据采集的图像集,计算图像集中的中心图像Imagec,以中心图像Imagec进行投影深度λi j估计,以及对观测矩阵Ws中的丢失点进行填充。
投影深度λi j估计方法为:
对已知的确定点up c,设所有p的投影深度为λp c=1,c为中心图像Imagec的序号;对于序号i≠c的图像,当图像i和中心图像c的共同点多于设定值时,则计算基本矩阵Fic,利用基本矩阵Fic和极点eic估计深度:
×为叉乘。
填充利用外极几何,使用中心图像Imagec的代替丢失点的方案,适合宽基线立体重建;观测矩阵Ws为:
其中,P=[P1 … Pm]T和X=[X1 … Xn]T分别表示投影运动和投影形状;
S44、使用光束平差法(BA算法,Bundle Adjustment)对投影结构进行优化;
S45、对(已进行投影深度估计并已经填充的)观测矩阵Ws利用矩阵分解(rank4factorization),实现放射重构,得到投影形状和投影运动;
观测矩阵Ws的矩阵分解(rank4factorization)中,理想情况下的的秩应该为4,因为它分别是4列和4行的两个矩阵的乘积。将实际测量得到的观测矩阵Ws进行SVD分解,得Ws=UDVT,令D的前4个对角元素外的所有元素取零,得到/>矩阵,矫正的测量矩阵即为/>测量矩阵的秩矫正为4,摄像机矩阵由/>恢复得到,而点则由[X1,X2,...,Xn]=VT恢复。由于重构有射影多义性,使这个分解并不唯一。以上这种方法,假设噪声服从各向同性零均值的Gaussian分布并且每一个测量点的噪声是独立同分布的,则矩阵分解算法可达到一个最大似然仿射重构。这个方法要求每一个点在所有视图中都有测量值,这一前提要求在上述的深度估计及丢失点填充步骤中完成。
S46、由于仿射多义性,利用欧几里得分层求解(Euclidean stratification),求解得4X4非奇异矩阵H,将投影结构更新为欧几里得结构,欧几里得结构包括欧几里得投影形状和欧几里得运动,将世界坐标系的原点放在重构的三维欧氏点的质心上;
欧几里得分层(Euclidean stratification)是指:
其中,H为4X4非奇异矩阵,
S47、通过评估2D重投影误差来检测离群点,删除离群点,重复步骤S43~S46,直到没有离群点;
S48、对非线性失真参数进行估计得到重投影错误值;若重投影错误值低于设定阈值,或者迭代次数超过允许的最大次数,则停止迭代,得到迭代后基于世界坐标下的多摄像机旋转矩阵Ri与摄像机中心向量ci;多摄像机旋转矩阵Ri是指摄像机i方向相对世界坐标系原点的旋转矩阵;摄像机中心向量ci是指摄像机i中心在世界坐标系下的坐标点;否则重复步骤S42~S47。
S5、利用多摄像机旋转矩阵与摄像机中心向量反求摄像机外部参数。
根据坐标系转换有公式,计算出摄像机i的平移向量Ti,以摄像机i为原点、摄像机j的相对平移向量tij以及以摄像机i为原点、摄像机j的相对旋转矩阵Rij:
Ti=-Ri -1ci
tij=-Rj -1·(Ti-Tj)
Rij=Rj·Ri -1
利用vtk可视化多摄像机位置,验证摄像机的外部参数。
S6、根据各个摄像机的内部参数和外部参数,完成多摄像机系统标定。
本发明采用迭代欧几里得分层求解参数,配合针对环绕式放置的多摄像头设计的径向运动标定图像的采样策略完成标定。该方法使用简单,且大部分过程能使用程序自动计算,能够快速准确地实现低重叠视野或狭窄空间的多摄像机之间的标定;可解决现有多摄像机标定与校正方法复杂的技术问题,尤其适用于环绕式多摄像头的场景或设备的低共享视野,以及狭窄空间中的坐标标定。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。