一种基于实心圆标定板的立体视觉系统标定平台及标定方法与流程

文档序号:12179019阅读:852来源:国知局
一种基于实心圆标定板的立体视觉系统标定平台及标定方法与流程

本发明涉及基于实心圆标定板的立体视觉系统标定平台及标定方法。



背景技术:

在立体视觉理论体系中,像机内外参数求解(摄像机标定)和左右图像立体匹配是两大核心问题,从某种意义上讲,像机标定技术和立体匹配算法的发展决定了立体视觉方法的发展。像机畸变系数的求解会影响无论单像机还是双像机在应变场测量方面的结果。

经典的两步法标定技术采用三维标定块进行摄像机标定,该方法精度高但标定块制作复杂,考虑的畸变模型简单粗略,使用较少。目前,常用的标定工具为平面标定板与标定尺。其中,经典的张正友棋盘格标定算法通过提取Harris角点寻找世界坐标与图像坐标之间的关系,算法的复杂度降低,并且标定板制作容易,得到了广泛的应用。在国内,西安交通大学,南京航空航天大学等在标定算法方面做了大量研究,将带有编码的实心圆圆心作为靶点进行标定,使用的靶标为标定板、高精度标定十字架、渐变标定板等。此外,也有学者使用高精度标尺作为标定工具。然而,这些靶标的圆心需要通过查找编码表进行排序,不易编程实现;而高精度标尺和标定十字架虽方便用于大视场标定,但造价较高,不适用于普通测量试验。此外,传统边缘检测方法有Roberts算子、Laplace算子、Prewitt算子和Canny算子等,这些方法只能定位到像素级,不能满足精确定位要求。



技术实现要素:

本发明的目的是为了解决现有各种标定方法的优化变量数目过多,计算繁复的问题,而提出一种基于实心圆标定板的立体视觉系统的标定系统及方法。

一种基于实心圆标定板的立体视觉系统标定平台包括:

用于输入待标定图片张数以及标定板上相邻实心圆的圆心距参数的参数输入模块;

用于对参数输入模块中的待标定图片进行预处理的图像预处理模块;

用于对图像预处理模块处理后的图片进行左图像标定、右图像标定和立体标定的系统标定模块;

用于对系统标定模块标定后的图片进行标定结果输出的参数输出模块。

一种基于实心圆标定板的立体视觉系统标定方法,具体过程为:

步骤一:对左右相机采集的图像进行处理,得到圆形标识点中心的图像坐标;

步骤二:根据圆形标识点中心的图像坐标进行圆心排序;

步骤三:对步骤二排序后的图像进行立体视觉系统标定,得到左右摄像机外参数的优化解;

步骤四、根据左右摄像机外参数的优化解求解平移向量和旋转矩阵。

一种基于实心圆标定板的立体视觉系统包括两台CCD相机、实心圆标定板、射灯、光学镜头、相机支架、射灯支架、多通道图像采集卡和计算机;

所述实心圆标定板为白色底面上均匀分布49个黑色圆形斑点;

光学镜头与CCD相机相连,CCD相机安装在相机支架上;射灯安装在射灯支架上;

其中,安装的CCD相机型号性能相同,且CCD相机都具有较高图像分辨率;光学镜头尺寸与CCD相机尺寸匹配,接口类型匹配;光学镜头像素为百万像素级光学镜头;相机支架用于固定相机;

所述较高图像分辨率为百万像素以上;

每台CCD相机通过导线连接到多通道图像采集卡上,多通道图像采集卡安装在计算机上,将计算机接通电源;将射灯接通电源,射灯作为补偿光源;

所述多通道图像采集卡采用模拟采集卡或数字采集卡,接口类型为IEEE1394、千兆网卡或USB接口。

本发明的有益效果为:

首先利用Canny-Zernike组合算法对靶标圆心进行识别并提出基于三角形标记的圆心排序方法。接着基于线性针孔模型获得立体视觉系统的内外参数,然后分别对左右摄像机内外参数进行优化,优化变量数目减半,获得外参数近似解。最后以实心圆靶标对角线上两实心圆的距离作为约束条件,对摄像机外参数进行优化,获得外参数最优解。本标定方法具有较高的精度,可以实现自动化标定,具有工程应用性。

附图说明

图1为基于实心圆标定板的立体视觉系统标定软件界面示意图,A为图4f表示的识别实心圆标定板上的所有点示意图;

图2为立体视觉三维测量模型示意图;

图3为圆形标识识别算法流程图;

图4a为实心圆标定板示意图;

图4b为实心圆标定板的二值化图像示意图;

图4c为识别实心圆标定板上的3点示意图;

图4d为识别实心圆标定板上的4点示意图;

图4e为重排实心圆标定板上的角点示意图;

图4f为识别实心圆标定板上的所有点示意图,为图1、图7、图8、图9、图10、图11、图12中A的放大图;

图5为实施例提出的基于实心圆标定板的立体视觉系统标定软件的初始界面示意图;

图6为实施例提出的图片预处理界面示意图;

图7为实施例提出的左相机标定界面示意图,A为图4f表示的识别实心圆标定板上的所有点示意图;

图8为实施例提出的左相机标定结果示意图,A为图4f表示的识别实心圆标定板上的所有点示意图;

图9为实施例提出的右相机标定界面示意图,A为图4f表示的识别实心圆标定板上的所有点示意图;

图10为实施例提出的右相机标定结果示意图,A为图4f表示的识别实心圆标定板上的所有点示意图;

图11为实施例提出的立体标定界面示意图,A为图4f表示的识别实心圆标定板上的所有点示意图;

图12为实施例提出的立体标定结果示意图,A为图4f表示的识别实心圆标定板上的所有点示意图。

具体实施方式

具体实施方式一:本实施方式的一种基于实心圆标定板的立体视觉系统标定平台包括:

用于输入待标定图片张数以及标定板上相邻实心圆的圆心距参数的输入模块(Parameter input);

用于对参数输入模块中的待标定图片进行预处理的图像预处理模块(Pretreatment);

用于对图像预处理模块处理后的图片进行左图像标定、右图像标定和立体标定的系统标定模块(Calibration);

用于对系统标定模块标定后的图片进行标定结果输出的参数输出模块(Calib result)。

具体实施方式二:本实施方式与具体实施方式一不同的是:所述图像预处理模块(Pretreatment)包括:

用于考虑光照的影响,对不符合要求的图片进行剔除的的Light子模块.

用于对标定图片进行图像预处理的预处理First_elim子模块。

其它步骤及参数与具体实施方式一相同。

具体实施方式三:本实施方式与具体实施方式一或二不同的是:所述系统标定模块Calibration包括:

用于显示待标定的标定板图片的标定显示Calib window子模块;

用于对左相机进行标定的左相机标定Left_calib子模块;

用于对右相机进行标定的右相机标定Right_calib子模块;

用于进行立体标定的立体标定Stereo_calib子模块;

用于标定完成后退出界面并保存标定结果的输出Exit子模块。

其它步骤及参数与具体实施方式一或二相同。

具体实施方式四:本实施方式与具体实施方式一至三之一不同的是:所述参数输出模块Calib result包括:

用于显示左相机标定结果的左参数Left_parameter子模块;

用于显示右相机标定结果的右参数Right_parameter子模块;

用于显示立体标定结果的立体参数Stereo_parameter子模块。

其它步骤及参数与具体实施方式一至三之一相同。

具体实施方式五:结合图1、2、3、4a、4b、4c、4d、4e、4f说明本实施方式,本实施方式的一种基于实心圆标定板的立体视觉系统标定方法,具体过程为:

根据针孔透视模型,空间点P在摄像机成像平面上的投影表示为

其中[u,v,1]T为点P在图像坐标系下投影点的无畸变图像的齐次坐标,[xw,yw,zw]T是点P在世界坐标下的坐标;[xc,yc,zc]T是点P在摄像机坐标下的坐标;R和T分别为世界坐标系到摄像机坐标系的旋转矩阵和平移向量,A为摄像机的内参数矩阵;

由于摄像机镜头存有畸变,实际成像点与理想成像点之间有一定偏差。考虑径向畸变及切向畸变,本发明选择4参数畸变模型,畸变模型表示为

其中(Xu,Yu)为无畸变情况下的像点归一化坐标,(Xd,Yd)为有畸变情况下的像点归一化坐标;k1,k2为径向畸变,p1,p2为切向畸变;式(1)中的摄像机的内参数矩阵A及k1,k2,p1,p2统称为摄像机的内部参数;

一般情况下,立体视觉测量系统对两摄像机的位置不做任何要求。如图2所示,P为空间中某一测点;设左摄像机坐标系位于世界坐标系o-xwywzw的原点处且无旋转,图像坐标系为Ol-XlYl;右摄像机坐标系为or-yrxrzr,图像坐标系为Or-XrYr;假定图像中对应点匹配关系已知,则根据两摄像机几何约束求得空间点P在世界坐标系下的三维坐标,如式(3)所示;

式中fl,fr分别为左右像机有效焦距;r1,...,r9,tx,ty,tz为两摄像机相互位置关系的外参数;

一种基于实心圆标定板的立体视觉系统实现的,所述基于实心圆标定板的立体视觉系统包括两台CCD相机、实心圆标定板、射灯、镜头、相机支架、射灯支架、多通道图像采集卡和计算机。

步骤一:对左右相机采集的图像进行处理,得到圆形标识点中心的图像坐标;

步骤二:根据圆形标识点中心的图像坐标进行圆心排序;

步骤三:对步骤二排序后的图像进行立体视觉系统标定,得到左右摄像机外参数的优化解;

步骤四、根据左右摄像机外参数的优化解求解平移向量和旋转矩阵。

具体实施方式六:本实施方式与具体实施方式五不同的是:所述步骤一中对左右相机采集的图像进行处理,得到圆形标识点中心的图像坐标;具体过程为:

选用实心圆标定板进行标定的过程中,因不能保证标定板与两像机光轴绝对垂直,故图像识别过程中看到的圆为椭圆。本发明通过提取实心圆标定板上圆形标识点的圆心坐标来实现圆形标识的定位,涉及圆形标识点的边缘检测、特征识别及中心拟合算法等,具体工作流程如图3所示。

步骤一一、对左右相机采集的图像进行滤波去噪及二值化处理,得到实心圆标定板上各个圆形标识点目标参数,圆形标识点目标参数包括形状参数、偏心率、球状度、圆形度及边缘长度等,以便进行实心圆靶标的边缘检测;

步骤一二、根据实心圆标定板上各个圆形标识点目标参数,利用Canny算法进行初步的边缘点粗定位,得到单一的边缘,为下一步精确定位提供了方便;使用Zernike矩算法对单一的边缘进行亚像素定位,以提高定位精度,两者的结合充分发挥了二者优点,可快速精确地得到实心圆标定板上圆形标识点的边缘;为了满足测量系统高精度实时检测要求,本发明提出一种Canny-Zernike组合算法进行边缘检测。

步骤一三、由于透视投影变换所固有的特性,根据步骤一二得到的实心圆标定板上各个圆形标识点的边缘在相机成像平面上呈现的往往是一个椭圆,利用最小二乘法拟合椭圆方程,设定各个边缘点到拟合椭圆距离的阀值,通过迭代提高拟合椭圆中心的精度,每次剔除5%的边缘点,直到距离标准差小于阀值位置,这样可以有效控制椭圆的拟合精度。通过对试验中圆形标识中心坐标的定位发现,采用以上算法可以实现0.02pixel的精度,实现亚像素定位,得到实心圆标定板上各个(49个)圆形标识点中心的图像坐标。

其它步骤及参数与具体实施方式五相同。

具体实施方式七:本实施方式与具体实施方式五或六不同的是:所述步骤二中根据圆形标识点中心的图像坐标进行圆心排序;具体过程为:

步骤二一、识别距离最远的两点坐标:

经过椭圆圆心识别,得到的实心圆靶标的圆心坐标是随机排序的;而要实现各圆心世界坐标与图像坐标的一一对应,需要对这些圆心坐标进行重排序。为此,本发明提出基于三角形标记的圆心排序方法。如图4a所示,实心圆标定板的一角为等边直角三角形,根据该三角形可确定1号实心圆的位置,由此实现标定板上所有实心圆的排序。该标定板含有49个实心圆,所以靶点即为实心圆圆心。实心圆标定板上的圆心坐标排序可通过如下过程实现:

对实心圆标定板上49个坐标点的任意两点求距离,距离最远的两点位于对角线上,令其编号为1、2;这是由于标定板上靶点几乎在同一平面上。

步骤二二、通过搜索剩余坐标点圆心坐标使得与点1、2所形成的角度达到最小,利用余弦绝对值最小的方式得到第3个点;如图4c所示。

步骤二三、由搜索到的1、2、3三个点发现,1及3形成一条直线,而剩余的46个点同样与2点形成直线,存在一个点与2点形成的直线平行1、3点形成的直线,且与2点的距离最远,这时找到的点编号为4;见图4d。

步骤二四、从图4a看出,该实心圆标定板左上角有一个等边直角三角形,将最靠近该等边直角三角形部位的圆心作为坐标原点建立坐标系,需要对步骤二一、步骤二二、步骤二三识别到的四个角点重新排序;

排序方法是让编号为1、2、3、4的4个点向外搜索,首先进入到黑色区域的点重新编号为1点,编号为1的点位于实心圆标定板的左上角,即最靠近等边三角形的圆心;

对另外三个点与点1求距离,将距离最远的点定义为点4,剩余两个点与点1形成两条相交的直线,交点为点1;对这两直线做叉积运算,若叉积大于零,为正方向,从而得到点2、3的位置;见图4e;若叉积小于零时,点2,3位置互换;

步骤二五、对49个圆心进行排序,首先对所有点与1、2点形成的直线求距离,可以定出7列,在对这些点与1、3形成的直线求距离,对每一列进行再次排序,通过这两个步骤,最终完成了49个点的排序;如图4f所示。

其它步骤及参数与具体实施方式五或六相同。

具体实施方式八:本实施方式与具体实施方式五至七之一不同的是:所述步骤三中对步骤二排序后的图像进行立体视觉系统标定,得到左右摄像机外参数的优化解;具体过程为:

本发明对经典两步标定算法进行改进,提出一种基于实心圆标定板的立体视觉系统标定方法,具体标定过程如下:

步骤三一、与传统两步法的第一步相同,皆是以不考虑像机畸变的线性针孔模型为计算模型,分别对左右标定板的靶点进行像点重建,通过极大似然估计方法求解映射矩阵,结合旋转矩阵的正交特性求解左右像机线性参数;

步骤三二、以左右像机线性参数为初值,考虑摄像机的畸变,减半优化变量数目,分别对左右像机进行Levenberg-Marquardt(LM)优化,求解左右摄像机外参数近似解;具体过程为:

基于畸变模型的摄像机内外参数求解,对左右摄像机进行Levenberg-Marquardt(LM)优化,优化目标函数见式(4)

式中,上标j表示第j个实心圆,上标i表示第i幅标定图片;AL为线性针孔模型下的左像机内参数矩阵,为左相机的径向畸变,为左相机的切向畸变,AR为线性针孔模型下的右像机内参数矩阵,为右相机的径向畸变,为右相机的切向畸变,为左相机第i幅图片上第j个实心圆经式(1)与(2)计算得到的图像坐标,为右相机第i幅图片上第j个实心圆经式(1)与(2)计算得到的图像坐标,为真实图像坐标,i、j取值为正整数,Rr2l为表征左右像机相对位置的旋转矩阵,Tr2l为表征左右像机相对位置的平移向量,为左靶标平面和左像机坐标系间的旋转矩阵,为左靶标平面和左像机坐标系间的平移向量,n、取值范围为正整数,n为左或右标定图片幅数,为左图片实心圆个数,为右图片实心圆个数;

由式(4)可知,该目标函数优化变量共14个,即AL、AR、Rr2l、Tr2l为优化变量数目,式(4)中优化参数过多,在初值选择不合适的情况下可能导致结果不收敛。为避免结果不收敛,本发明减少优化变量数目,利用式(5)的目标函数分别对左右摄像机进行Levenberg-Marquardt(LM)优化;相比(4)式,(5)式优化变量数目从14个降为7个;

式中,m为标定板上实心圆的个数,n为标定图片张数;为第i幅图片上第j个实心圆经式(1)与(2)计算得到的图像坐标,Xij为第i幅图片上第j个实心圆的真实图像坐标,A为线性针孔模型下的单像机内参数矩阵,k1、k2为径向畸变,p1、p2为切向畸变,R为旋转矩阵,T为平移向量;R、T为外参数;

A、k1、k2、p1、p2、R、T为优化变量数目;

将式(5)计算结果带入式(6)

Rr2l=Rr(Rl)-1,Tr2l=Tr-Rr(Rl)-1Tl (6)

得到不同姿态下左右摄像机外参数Rr2l,Tr2l

理论上所有姿态下Rr2l,Tr2l应该相等。但由于噪声的存在,且没有经过传统二步法的全局优化处理,会导致不同标定姿态下两像机外部参数的差异。因此对所有姿态得到的左右摄像机外参数Rr2l,Tr2l取平均,得到左右摄像机外参数Rr2l,Tr2l的近似值;

步骤三三、以步骤三二得到的不同标定姿态下左右摄像机外参数近似解的均值为初值,以实心圆标定板的对角线长度为约束条件对左右摄像机进行LM全局优化,获得左右摄像机外参数的优化解;具体过程为:

根据步骤三三以实心圆标定板的对角线长度为约束条件对左右摄像机进行LM全局优化,通过该长度缩放修正步骤三二得到的左右摄像机外参数Rr2l,Tr2l的近似值,步骤三优化变量仅包含外参数Rr2l,Tr2l,算法复杂度大幅降低,且获得Rr2l,Tr2l的优化解。

其它步骤及参数与具体实施方式五至七之一相同。

具体实施方式九:本实施方式与具体实施方式五至八之一不同的是:所述步骤四中根据左右摄像机外参数的优化解求解平移向量和旋转矩阵;具体过程为:

根据步骤三三中左右摄像机外参数的优化解求解平移向量和旋转矩阵;具体过程为:

设经过畸变校正获得的左右图像理想图像坐标为(Xl,Yl),(Xr,Yr),则根据式(3)的第三个公式有

(frtx-Xrtz)(r4Xl+r5Yl+flr6)-(frty-Yrtz)(r1Xl+r2Yl+flr3)=(Yrtx-Xrty)(r7Xl+r8Yl+flr9) (7)

式中,fr为右像机有效焦距,fl为左像机有效焦距,r1,...,r9,tx,ty,tz为表征两像机相互位置关系的外参数;

由于tx≠0,上式两边同时除tx,且令α=1/tx,则T'=αT,T'=(1,t'y,t'z)T,式(7)得到含有11个未知数的方程,11个未知数为t'y、t'z、r1、r2、r3、r4、r5、r6、r7、r8、r9,该方程可表示为f(x)=0,其中x=(t'y,t'z,r1,r2,r3,r4,r5,r6,r7,r8,r9);

式中,α为比例系数,T'为参数归一化向量,t'y=ty/tx,tz′=tz/tx

此外,旋转矩阵R具有正交性,因此作为f(x)=0的罚函数,形式如下:

这样,可得到式(9)所示的49个点的无约束最优目标函数;

其中,M1,M2,...,M6六个系数为罚因子,fi(x)为第i个圆心对应的非线性函数,由公式(7)做公式变形得到,n取值为1≤n≤49;

为了保证正交性,6个罚因子都取较大的值为105,当罚因子大于105时,得到的49个点的无约束最优目标函数不变;通过LM优化方法求得x值,再利用式(3)求解得到带有比例系数的zi',需要通过确定比例系数α值来求解平移向量和旋转矩阵真实值,下面介绍α的求解方法;

设图4f所示实心圆标定板编号1、49两圆圆心形成的对角线长度为L,已知圆心距,通过几何计算得到L值;圆1、49对应的左图像坐标分别为(Xl1,Yl1)、(Xl49,Yl49);通过式(3)有以下等式成立:

式中,z1为实心圆标定板编号1,z49为实心圆标定板编号49,Xl1为实心圆标定板编号1对应的左图像横坐标,Xl49为实心圆标定板编号49对应的左图像横坐标,Yl1为实心圆标定板编号1对应的左图像纵坐标,Yl49为实心圆标定板编号1对应的左图像纵坐标;

又由于z'1=αz1,z'49=αz49,则式(10)变为

由式(11)可求得

事实上α的符号由坐标选取法决定,本发明中取负号,至此,得到平移向量T*和旋转矩阵R*可以求得,而T*可能仍含有比例因子,需要进一步进行缩放;通过式(3)再一次重建圆1,49形成的对角线长度,设此时重建的长度为L*,因此,最终得到的平移向量为T=LT*/L*,旋转矩阵R=R*

其它步骤及参数与具体实施方式五至八之一相同。

具体实施方式十:本实施方式的一种基于实心圆标定板的立体视觉系统包括:

(1)基于实心圆标定板的立体视觉系统包括两台CCD相机、实心圆标定板、射灯、镜头、相机支架、射灯支架、多通道图像采集卡和计算机;所述实心圆标定板为白色底面上均匀分布49个黑色圆形斑点;标定板本身须有较大刚度,不会轻易发生变形;

(2)将光学镜头与CCD传感器相连,并将CCD相机安装在相机支架上;将射灯安装在射灯支架上;

其中,安装的CCD相机型号性能相同,并且CCD相机都具有较高图像分辨率;光学镜头尺寸与CCD传感器尺寸匹配,接口类型匹配;光学镜头根据物距和靶标成像的大小来选择镜头焦距;光学镜头像素为百万像素级光学镜头;相机支架用于固定相机;较高图像分辨率为百万像素以上;

(3)每台CCD相机通过导线连接到多通道图像采集卡上,多通道图像采集卡安装在计算机上,将计算机接通电源;将射灯接通电源,射灯作为补偿光源,根据拍摄照片时的光照需要来选择射灯是否打开;

(4)打开CCD相机,调整CCD相机的角度和焦距,使标定板位于视场中央且图像清晰,然后将CCD相机固定;打开射灯,并调整射灯的角度来对准靶标;调整完成后,将射灯固定;打开电脑,安装CCD相机驱动程序,确保CCD相机正常工作;

(5)打开计算机,运行计算机中的基于实心圆标定板的立体视觉系统标定软件进行图片标定;

所述步骤(5)中多通道图像采集卡采用模拟采集卡或数字采集卡,接口类型为IEEE1394、千兆网卡或USB接口。

其它步骤及参数与具体实施方式六相同。

采用以下实施例验证本发明的有益效果:

实施例一:

本实施例一种基于实心圆标定板的立体视觉系统的标定系统及方法具体是按照以下步骤制备的:

步骤一:运行计算机中的基于实心圆标定板的立体视觉系统标定软件得到标定初始界面,如图5所示;

步骤二:将待标定图片存放到当前目录下;

步骤三:选择光照条件“dark”,在“Parameter_input”中输入相应的参数,点击“First_elilm”进行图片预处理,如图6所示;

步骤四:选择要进行标定的图片张数,对“Parameter_input”中参数进行修改,点击“Left_calib”,进行左相机标定,如图7所示。得到左相机标定结果如图8所示;

步骤九:点击“Right_calib”,得到右相机标定界面如图9所示。得到右相机标定结果如图10所示;

步骤十:点击“Stereo_calib”,选择标定板序号“1”,得到图11。

至此,如图12所示,整个标定过程完毕,相应的数据保存在当前路径下。

本实施例为立体视觉标定提供一种优化变量数目少,计算简单、快速和精度高的标定软件和方法。

本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

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