本发明涉及图像处理方法技术领域,尤其涉及一种基于鱼眼镜头立体视觉的虚拟空间定位方法及系统。
背景技术:
近年来,随着计算机软硬件的进步以及国内外研究水平的提高,带动了计算机视觉技术的飞速发展。相对于普通镜头的立体视觉技术,基于鱼眼镜头的立体视觉相关技术得到了广泛的应用。普通的视觉镜头视场范围有限,已经无法满足一些特殊场合的要求。例如机器人导航或视觉定位中,普通相机只能对前方障碍物进行检测,并不能捕捉到道路两侧环境的目标。然而,鱼眼镜头的出现克服了传统镜头视场角的不足。鱼眼镜头是一种大视场、短焦距的特殊广角镜头,通过牺牲形变得到广阔的视野范围。由于鱼眼镜头的视场特点,使得它在运动目标跟踪以及机器人导航中受到了很大的关注和应用,并且鱼眼镜头作为一种仿生学技术,其在军事领域也具有极其重要的战略价值。
基于鱼眼镜头的双目视觉技术是目前机器视觉的一个新型的研究方向之一。普通镜头的双目立体视觉的视场范围较小,导致拍摄的图像重叠的区域很小,然而鱼眼双目视觉的视场范围很大,它能够涵盖更多的外界信息,图像重叠区域大,更利于后续两幅图像的匹配重建,因此构建鱼眼双目立体视觉系统有着不可估量的研究价值。
技术实现要素:
本发明所要解决的技术问题是如何提供一种可提高鱼眼镜头立体视觉空间定位的精确性与稳定性的方法。
为解决上述技术问题,本发明所采取的技术方案是:一种基于鱼眼镜头立体视觉的虚拟空间定位方法,其特征在于包括如下步骤:
通过等立体角投影的成像关系,建立理想的鱼眼双目立体视觉定位模型;
获取拍摄的图像的真实坐标与所述定位模型对应的图像坐标点;
求出鱼眼双目立体视觉定位模型参数的初始值;
通过质心点优化方法建立目标函数,实现基于鱼眼镜头的虚拟空间定位。
进一步的技术方法在于,鱼眼双目立体视觉定位模型的建立方法如下:
使用遵循等立体角投影定理的鱼眼镜头,以镜头内部结构中每组镜片的入射角与折射角之间的关系作为成像理论;引入径向畸变δr和切向畸变δt的畸变模型;i1、i2、j1、j2、m1、m2为畸变模型参数,通过引入畸变公式来修正镜头的径向畸变δr以及切向畸变δt,(xd,yd)t为加入畸变后的图像坐标;加入畸变后的成像平面转化到以像素为单位的图像坐标系
其中m=(u,v)t为图像的像素坐标,mu、mv、(u0,v0)为鱼眼相机的内部参数;令c为该鱼眼相机定位模型,则有:
m=c(xw)(2)。
进一步的技术方法在于,所述的步骤获取拍摄的图像的真实坐标与对应的图像坐标点的方法如下:
设标定板上某一标定圆的圆心坐标为xw=(x0,y0,0)t,半径为r,则该圆内任意一点xi表示为xi(a,θ),由所述鱼眼双目立体视觉定位模型求出点xi对应的图像坐标点,其中a表示标定圆的半径,a∈[0,r],θ表示标定圆的角度。
进一步的技术方法在于,所述的步骤求出鱼眼双目立体视觉定位模型参数的初始值的方法如下:
将需要使用的目标方程建立以后,判断需要知道的内部参数有:a、n2、mu、mv、u0和v0共6个内部参数;外部参数有旋转矩阵r和平移向量t;畸变参数为i1、i2、j1、j2、m1和m2;设置各个参数的初始值的方法分别如下:
设置内部参数初始值:光学折射模型中的参数a和n2的初值由已有数据求得;对于以椭圆为成像边界的鱼眼图像,可以求出该椭圆的一般方程:对于(u0,v0)的第一个数据是椭圆中心,mu和mv的第一个数据可以由已有数据得到;
设置外部参数初值:估计上述内部参数初始值后,求出空间点对应的摄像机坐标点xc;用λxc=hxw表示摄像机坐标点和空间点之间的关系,h为单应性矩阵,并用张正友标定方法估计外部参数的初始值;
设置畸变参数初始值:先将摄像机视为理想成像系统,并选取图像中心区域作为标定的初始像点,用不含畸变的质心点优化法获得理想图像坐标点(xp,yp),由鱼眼双目立体视觉定位模型得到实际图像坐标点(xd,yd);
由鱼眼双目立体视觉定位模型得到理想与实际图像坐标点的关系,通过这个关系求出畸变参数的初值;根据径向畸变以及切向畸变的定义,只取径向畸变δr的前半部分和切向畸变δt的后半部分;
由于r可求,因此上述两个公式均为线性,有4个待求畸变参数,选取图像中心附近区域的2组对应点求出这些未知参数,采用多组对应点并求畸变参数算数平均的方法,作为畸变参数的初始值。
进一步的技术方法在于,所述的质心点优化方法如下:
投影椭圆为标定圆通过鱼眼镜头模型c投影到图像上形成的椭圆,图像椭圆为鱼眼图像上检测到的椭圆;对投影椭圆与图像椭圆分别求质心得到质心点
式中m为提取标志圆的个数,mi为实际图像中第i个椭圆的质心坐标,
本发明还公开了一种基于鱼眼镜头立体视觉的虚拟空间定位系统,其特征在于包括:
理想定位模型建立模块:用于通过等立体角投影的成像关系,建立理想的鱼眼双目立体视觉定位模型;
图像坐标点获取模块:用于获取拍摄的图像的真实坐标与所述定位模型对应的图像坐标点;
定位模型参数初始值计算模块:用于求出鱼眼双目立体视觉定位模型参数的初始值;
虚拟空间定位模块:用于通过质心点优化方法建立目标函数,实现基于鱼眼镜头的虚拟空间定位。
进一步的技术方法在于,所述理想定位模型建立模块使用遵循等立体角投影定理的鱼眼镜头,以镜头内部结构中每组镜片的入射角与折射角之间的关系作为成像理论;引入径向畸变δr和切向畸变δt的畸变模型;i1、i2、j1、j2、m1、m2为畸变模型参数,通过引入畸变公式来修正镜头的径向畸变δr以及切向畸变δt,(xd,yd)t为加入畸变后的图像坐标;加入畸变后的成像平面转化到以像素为单位的图像坐标系
其中m=(u,v)t为图像的像素坐标,mu、mv、(u0,v0)为鱼眼相机的内部参数;令c为该鱼眼相机定位模型,则有:
m=c(xw)(2)。
进一步的技术方法在于,所述图像坐标点获取模块获取拍摄的图像的真实坐标与所述定位模型对应的图像坐标点的方法如下:
设标定板上某一标定圆的圆心坐标为xw=(x0,y0,0)t,半径为r,则该圆内任意一点xi表示为xi(a,θ),由所述鱼眼双目立体视觉定位模型求出点xi对应的图像坐标点,其中a表示标定圆的半径,a∈[0,r],θ表示标定圆的角度。
进一步的技术方法在于,所述定位模型参数初始值计算模块求出鱼眼双目立体视觉定位模型参数的初始值的方法如下:
将需要使用的目标方程建立以后,判断需要知道的内部参数有:a、n2、mu、mv、u0和v0共6个内部参数;外部参数有旋转矩阵r和平移向量t;畸变参数为i1、i2、j1、j2、m1和m2;设置各个参数的初始值的方法分别如下:
设置内部参数初始值:光学折射模型中的参数a和n2的初值由已有数据求得;对于以椭圆为成像边界的鱼眼图像,可以求出该椭圆的一般方程:对于(u0,v0)的第一个数据是椭圆中心,mu和mv的第一个数据可以由已有数据得到;
设置外部参数初值:估计上述内部参数初始值后,求出空间点对应的摄像机坐标点xc;用λxc=hxw表示摄像机坐标点和空间点之间的关系,h为单应性矩阵,并用张正友标定方法估计外部参数的初始值;
设置畸变参数初始值:先将摄像机视为理想成像系统,并选取图像中心区域作为标定的初始像点,用不含畸变的质心点优化法获得理想图像坐标点(xp,yp),由鱼眼双目立体视觉定位模型得到实际图像坐标点(xd,yd);
由鱼眼双目立体视觉定位模型得到理想与实际图像坐标点的关系,通过这个关系求出畸变参数的初值;根据径向畸变以及切向畸变的定义,只取径向畸变δr的前半部分和切向畸变δt的后半部分;
由于r可求,因此上述两个公式均为线性,有4个待求畸变参数,选取图像中心附近区域的2组对应点求出这些未知参数,采用多组对应点并求畸变参数算数平均的方法,作为畸变参数的初始值。
进一步的技术方法在于,所述虚拟空间定位模块实现基于鱼眼镜头的虚拟空间定位的方法如下:
投影椭圆为标定圆通过鱼眼镜头模型c投影到图像上形成的椭圆,图像椭圆为鱼眼图像上检测到的椭圆;对投影椭圆与图像椭圆分别求质心得到质心点
式中m为提取标志圆的个数,mi为实际图像中第i个椭圆的质心坐标,
采用上述技术方案所产生的有益效果在于:所述方法针对圆形标定板中标志圆圆心与椭圆质心不对应的问题,给出了新的计算投影椭圆质心的方法,将标志圆整体通过鱼眼镜头模型投影到鱼眼图像上,形成投影椭圆,再对其求质心,最后建立新的代价函数。由于椭圆质心计算式含复杂的积分运算,本发明还采用了离散数值求积分的方式计算质心点坐标。本发明提出的方法能够极大的提高鱼眼相机的标定精度。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1是本发明实施例所述方法的主流程图;
图2是本发明实施例所述系统的原理框图。
图3是本发明实施例所述系统中标定板的主视结构示意图;
其中:1、标定板2、标定圆。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
本发明的实验平台涉及的硬件设备包括:nm33-f鱼眼摄像头,视场角为180°,ccd分辨率为640×480pixel,焦距为1.27mm;420×594mm规格的标定板,如图3所示,其中标定圆的半径r=15mm,相邻圆心间距40mm;视觉支架台;intelcore2处理器的计算机。
通过两个鱼眼镜头对标定板进行标定。由于离散点n是此定位方法求图像椭圆质心的一个重要的参数。本发明实验从不同角度对标定板共拍摄12次,共选取432个标定圆,每个标定圆用n个离散点进行近似积分运算。可以看出,当n增加到一定程度时,标定误差变化不明显,基本趋于稳定,而标定时所需时间却越来越长。综合以上因素,本发明选取n=25×25进行近似积分运算,在保证精度的同时,兼顾了标定时间。
如图1所示,本发明实施例公开了一种基于鱼眼镜头立体视觉的虚拟空间定位方法,包括如下步骤:
s101:通过等立体角投影的成像关系,建立理想的鱼眼双目立体视觉定位模型;
拍摄标定板图像,所述标定板具有整齐排列的圆形标定点,投影到图像平面为椭圆。求出标定板上所有标定圆的圆心坐标,由建立的鱼眼定位模型可求出圆心坐标对应的图像点。
s102:获取拍摄的图像的真实坐标与所述定位模型对应的图像坐标点;
s103:求出鱼眼双目立体视觉定位模型参数的初始值;
s104:通过质心点优化方法建立目标函数,实现基于鱼眼镜头的虚拟空间定位。
所述的步骤s101的具体实现方法如下:
本发明使用遵循等立体角投影定理的鱼眼镜头,以镜头内部结构中每组镜片的入射角与折射角之间的关系作为成像理论。引入径向畸变δr和切向畸变δt的畸变模型。i1、i2、j1、j2、m1、m2为畸变模型参数。通过引入畸变公式来修正镜头的径向以及切向畸变,(xd,yd)t为加入畸变后的图像坐标。加入畸变后的成像平面转化到以像素为单位的图像坐标系
其中m=(u,v)t为图像的像素坐标,mu、mv、(u0,v0)为鱼眼相机的内部参数。令c为该鱼眼相机成像模型:
m=c(xw)(2)
所述的步骤s102的具体实现方法如下:
设标定板上某一标定圆的圆心坐标为xw=(x0,y0,0)t,半径为r,则该圆内任意一点xi表示为xi(a,θ)由步骤(1)建立的鱼眼定位模型可求出点xi对应的图像点。
所述的步骤s103的具体实现方法如下:
模型参数初始化。将需要使用的目标方程建立以后,判断需要知道的参数有:a、n2、mu、mv、u0和v0共6个内部参数;外部参数有旋转矩阵r和平移向量t;畸变参数为i1、i2、j1、j2、m1和m2。设置各个参数的第一个数值分别如下:
设置内部参数初值:光学折射模型中的参数a和n2的初值可由已有数据求得。对于以椭圆为成像边界的鱼眼图像,可以求出该椭圆的一般方程:对于(u0,v0)的第一个数据是椭圆中心,mu和mv的第一个数据可以已有数据得到。
设置外部参数初值。估计上述内部参数初值后,可以由求出空间点对应的摄像机坐标点xc。这里,用λxc=hxw表示摄像机坐标点和空间点之间的关系,h为单应性矩阵,并用张正友标定方法估计外部参数的初值。
设置畸变参数初值,为解决畸变参数初值的求解问题,本发明提出两步求解法,为优化目标函数提供一个准确的初值。具体方法如下:
第一步,先将摄像机视为理想成像系统,并选取图像中心区域作为标定的初始像点,以减少畸变的影响,用质心点优化法(不含畸变)获得理想图像坐标点(xp,yp),由公式(2)得到实际图像坐标点(xd,yd)。
第二步,由所述步骤(1)可以得到理想与实际图像坐标点的关系,通过这个关系可以求出畸变参数的初值。根据径向畸变以及切向畸变的定义,只取径向畸变δr的前半部分和切向畸变δt的后半部分。
由于r可求,因此上述两个公式均为线性,有4个待求畸变参数,可选取图像中心附近区域的2组对应点求出这些未知参数。采用多组对应点并求畸变参数算数平均的方法,作为畸变参数的初值。
所述的步骤s104的具体实现方法如下:
投影椭圆为标定圆通过鱼眼镜头模型c投影到图像上形成的椭圆,图像椭圆为鱼眼图像上检测到的椭圆。对投影椭圆与图像椭圆分别求质心得到质心点
标定板可认为是均匀密度的薄板,质量元素即为面积元素dσ。由质心的定义可得投影椭圆的质心
式中m为提取标志圆的个数,mi为实际图像中第i个椭圆的质心坐标,
与上述方法相对应的,本发明实施例还公开了一种基于鱼眼镜头立体视觉的虚拟空间定位系统,其特征在于包括:
理想定位模型建立模块101:用于通过等立体角投影的成像关系,建立理想的鱼眼双目立体视觉定位模型;
图像坐标点获取模块102:用于获取拍摄的图像的真实坐标与所述定位模型对应的图像坐标点;
定位模型参数初始值计算模块103:用于求出鱼眼双目立体视觉定位模型参数的初始值;
虚拟空间定位模块104:用于通过质心点优化方法建立目标函数,实现基于鱼眼镜头的虚拟空间定位。
所述理想定位模型建立模块101使用遵循等立体角投影定理的鱼眼镜头,以镜头内部结构中每组镜片的入射角与折射角之间的关系作为成像理论;引入径向畸变δr和切向畸变δt的畸变模型;i1、i2、j1、j2、m1、m2为畸变模型参数,通过引入畸变公式来修正镜头的径向畸变δr以及切向畸变δt,(xd,yd)t为加入畸变后的图像坐标;加入畸变后的成像平面转化到以像素为单位的图像坐标系
其中m=(u,v)t为图像的像素坐标,mu、mv、(u0,v0)为鱼眼相机的内部参数;令c为该鱼眼相机定位模型,则有:
m=c(xw)(2)。
所述图像坐标点获取模块102获取拍摄的图像的真实坐标与所述定位模型对应的图像坐标点的方法如下:
设标定板上某一标定圆的圆心坐标为xw=(x0,y0,0)t,半径为r,则该圆内任意一点xi表示为xi(a,θ),由所述鱼眼双目立体视觉定位模型求出点xi对应的图像坐标点,其中a表示标定圆的半径a∈[0,r],θ表示标定圆的角度。
所述定位模型参数初始值计算模块103求出鱼眼双目立体视觉定位模型参数的初始值的方法如下:
将需要使用的目标方程建立以后,判断需要知道的内部参数有:a、n2、mu、mv、u0和v0共6个内部参数;外部参数有旋转矩阵r和平移向量t;畸变参数为i1、i2、j1、j2、m1和m2;设置各个参数的初始值的方法分别如下:
设置内部参数初始值:光学折射模型中的参数a和n2的初值由已有数据求得;对于以椭圆为成像边界的鱼眼图像,可以求出该椭圆的一般方程:对于(u0,v0)的第一个数据是椭圆中心,mu和mv的第一个数据可以由已有数据得到;
设置外部参数初值:估计上述内部参数初始值后,求出空间点对应的摄像机坐标点xc;用λxc=hxw表示摄像机坐标点和空间点之间的关系,h为单应性矩阵,并用张正友标定方法估计外部参数的初始值;
设置畸变参数初始值:先将摄像机视为理想成像系统,并选取图像中心区域作为标定的初始像点,用不含畸变的质心点优化法获得理想图像坐标点(xp,yp),由鱼眼双目立体视觉定位模型得到实际图像坐标点(xd,yd);
由鱼眼双目立体视觉定位模型得到理想与实际图像坐标点的关系,通过这个关系求出畸变参数的初值;根据径向畸变以及切向畸变的定义,只取径向畸变δr的前半部分和切向畸变δt的后半部分;
由于r可求,因此上述两个公式均为线性,有4个待求畸变参数,选取图像中心附近区域的2组对应点求出这些未知参数,采用多组对应点并求畸变参数算数平均的方法,作为畸变参数的初始值。
所述虚拟空间定位模块104实现基于鱼眼镜头的虚拟空间定位的方法如下:
投影椭圆为标定圆通过鱼眼镜头模型c投影到图像上形成的椭圆,图像椭圆为鱼眼图像上检测到的椭圆;对投影椭圆与图像椭圆分别求质心得到质心点
式中m为提取标志圆的个数,mi为实际图像中第i个椭圆的质心坐标,
所述方法针对圆形标定板中标志圆圆心与椭圆质心不对应的问题,给出了新的计算投影椭圆质心的方法,将标志圆整体通过鱼眼镜头模型投影到鱼眼图像上,形成投影椭圆,再对其求质心,最后建立新的代价函数。由于椭圆质心计算式含复杂的积分运算,本发明还采用了离散数值求积分的方式计算质心点坐标。本发明提出的方法能够极大的提高鱼眼相机的标定精度。