法律状态公告日
法律状态信息
法律状态
2017-04-26
授权
授权
2015-03-25
实质审查的生效 IPC(主分类):G01B11/26 申请日:20140928
实质审查的生效
2015-02-25
公开
公开
技术领域
本发明涉及一种基于固定相机和单靶标的单轴旋转角的视觉测量方法,属于视觉测量技术 领域。
背景技术
角位移测量广泛应用于工业、航空航天等领域。由于在恶劣的环境中,角位移传感器的电 气、机械等参数会发生变化,因此需要定期对其进行标定矫正。视觉测量技术因具有结构简单, 非接触实时测量,现场安装和调试方便等优点而备受青睐。现有的视觉测角方法分为双目视觉 和单目视觉的方法。双目视觉方法,因其公共视场小,安装复杂而受到很大的限制。现有的单 目视觉的方法大都对靶标的安装有一定的要求,安装难度大。因此,本专利申请提出了一种基 于固定相机和单靶标的单轴旋转角的视觉测量方法,该方法对靶标的安装没有任何要求。另外, 本发明对有遮挡的情况同样成立,更加实用。
发明内容
本发明提出了一种基于固定相机和单靶标的单轴旋转角的视觉测量方法,它是一种利用单 目相机对绕轴旋转运动的旋转角进行测量的方法。它解决了现有视觉测角方法中靶标安装困难 的问题。同时,本发明对有遮挡的情况同样适用,实用性很好。
该方法,通过二维靶标,对相机内参及相对于轴的外参数进行标定,进而测量旋转角,该 方法对靶标安装没有任何要求,可以将靶标固定到任意位置。
本发明采用的摄像机模型为非线性透视投影模型,模型描述如下:
1.线性摄像机模型
如图(1)所示,空间任何一点P在图像中的成像位置可以用针孔成像模型近似表示,即点P 在图像中的投影位置p,为光心O与点P的连线与图像平面的交点。因而世界坐标系下P点坐 标(Xw,Yw,Zw)T与投影点p的像素坐标(u,v)T之间的关系如下:
其中αx=f/dX为u轴上的尺度因子,αy=f/dY为v轴上的尺度因子。αx,αy,u0,v0只与摄 像机内部参数有关,称为摄像机的内参数。Rcw,Tcw分别为相机坐标系与世界坐标系的旋转矩阵 和平移向量,称为摄像机的外部参数。
1.非线性摄像机模型
实际上,镜头并不是理想的透视成像,而是带有一定程度的畸变。本发明采用的是非线性 畸变模型,由世界坐标(Xw,Yw,Zw)T求取像素坐标(u,v)T的过程如下:
x=Xc/Zc,y=Yc/Zc,r2=x2+y2, (1.3)
其中,k1,k2,k3,k4,k5为畸变系数。αx,αy,u0,v0,k1,k2,k3,k4,k5构成摄像机的内参数,Rcw,Tcw为摄 像机的外参数。
为描述方便,我们记u,v为pin=(αx,αy,u0,v0,k1,k2,k3,k4,k5)T,Rcw,Tcw,Xw,Yw,Zw的函数,即
u=fu(pin,Rcw,Tcw,Xw,Yw,Zw),v=fv(pin,Rcw,Tcw,Xw,Yw,Zw) (1.6)
本发明所建立的世界坐标系如图(2).取转轴为Zw轴,并使得在基准位置时靶标原点位于Xw轴上。假设基准位置靶标坐标系与世界坐标系之间的旋转矩阵和平移向量为并设相机坐标系与世界坐标系的旋转矩阵为Rcw,平移向量为Tcw.
本发明所提出的方法包括两步:内外参数信息标定和任意角度求解。内外参数信息标定, 是在普通相机标定的基础上,利用绕轴旋转运动坐标系之间的特殊几何关系,求取所需要的外 部参数信息的过程。t,Rcw,Tcw及各位置与基准位置之间的夹角是内外参信息标定所要估计 的外参数。任意角度求解则是根据已求得的内外参数信息,求取旋转角。在任意角度求解过程 中,我们提出了一种点匹配算法,从而使测角方法可以求取遮挡问题的解。
综上所述,本发明一种基于固定相机和单靶标的单轴旋转角的视觉测量方法,该方法具体 步骤如下:
步骤一:相机内外参数标定。
在具体实现过程中,我们利用二维棋盘格(如图5)作为靶标。我们采用的图片序列,包 含一张基准位置时的图片和m张旋转部件旋转到不同角度时的图片。假设这m个角度为 θ1,θ2,...,θm。接下来,可以利用MATLAB 2014自带的棋盘格角点提取函数detectChecker- -boardPoints进行角点提取,并结合MATLAB标定工具进行内参标定,求得内参数pin和m+1个 位姿的外部参数。该标定工具箱,可以在http://www.vision.caltech.edu/bouguetj/calib_doc/上下 载。这些外部参数可以表示为
表示在旋转角为θi时,相机与靶标之间的旋转矩阵与平移向量,i=0时表示基准位 置时,相机与靶标之间的旋转矩阵与平移向量。
步骤二:绕轴旋转运动相关的外参数初值求取
1、我们根据步骤一中求得的外参数,由(1.7)求取在旋转角为θi时,靶标相对于基准时靶 标的旋转矩阵和平移向量
2、求取t及θi初值:
定义r1,r2,r3分别为的第1,2,3列,且向量[t]×表示如下矩阵
则,我们可以求得
其中,Si,j表示矩阵S第i行j列的元素。然后,r1可由下式求得
上式可以通过对作SVD分解求得,若
θi=2arctan((ATA)-1(ATB)), (1.12)
其中
3、根据求得的t及θi初值求解,根据(1.16),求Rcw,Tcw的值
步骤三:对内参数pin和外参数pout进行非线性优化。这里pin∈□9,pout∈□10表示如下
其中,分别为Rcw所对应的Rodrigues向量。一个Rodrigues向量v与其对应的 旋转矩阵R间的转换关系如下
其中,I3表示3阶的单位矩阵。
我们对各图像点的坐标作如下标记,靶标1上,在旋转角为θi时,对应于第j个靶标特征点的 角点坐标记为
Xb={(xj,yj,0)T,j=1,2,...,n}.
由于图像提取过程中是存在误差的,因此,我们选取图像的重投影误差和作为优化目标。 由靶标点及pout,获取重投影点的过程如下:
1、旋转角为θi时,靶标点转化为世界坐标系下的点
2、求取相应的重投影点
重投影误差定义为
优化问题可以描述为
该优化问题可以利用稀疏的Levenberg-Marquardt算法来解决优化问题,稀疏LM算法的优 化工具箱可以在http://users.ics.forth.gr/~lourakis/sparseLM/上下载。利用上述优化,我们可以获 得t,Rcw,Tcw的信息,这些信息将用于步骤四的旋转角度求取。
步骤四:利用标定的内外参数,测量旋转角度。
首先,我们根据已经标定好的信息,对角点进行匹配。假设在θ处拍摄的照片的角点坐标 为Xc={(ui,vi)T,i=1,2,...,Nc},此时图片中可能存在遮挡,因此匹配并不能自动完成,可以根 据如下算法:
1、寻找可能匹配的点集。
对每个角点与靶标点对计算一个得分Si,j,计算方法如下:
(1)求取(xj,yj,0)T所对应的世界坐标
(2)求取像点(ui,vi)T在平面上的原像求取方法如下
其中,
(3)我们定义Si,j如下式
(4)选取阈值τm=0.1d,这里d是棋盘格格子的长度,然后定义可能匹配的点的集合
2、利用直方图,计算角度。
对于Ω中的元素,由下式计算θi,j
然后画出分布的直方图,该直方图中有360 个直方块,第k个直方块中的元素为((k-181)°,(k-179)°)∩Ω中的元素个数。我们对θ的估计 值为
3、利用求得的角度,选择正确的匹配对。
i所对应的靶标点M(j)对应于在正确角范围内,得分最小的点,也就是
若不存在θi,j∈[θ-1°,θ+1°],则令M(i)=0.
4、非线性优化
优化问题描述为
其中,
该优化问题可以通过MATLAB自带的lsqnonlin函数进行求解。
优点与功效:
本发明是一种基于固定相机和单靶标的单轴旋转角的视觉测量方法,它是一种利用单目相 机和二维棋盘格对单轴旋转角进行测量的方法,其优点在于,解决了当前视觉测角问题对安装 有诸多要求,不方便的问题。本发明采用二维靶标作为标定特征物,通过优化算法,可以单轴 旋转角。该方法具有安装过程简单,标定精度高,成本低廉等优点,同时该方法在标定后可以 解决遮挡问题。
附图说明
图1:针孔成像模型示意图
图2:实验设备安装示意图
图3a:测量误差均值随噪声变化图
图3b:测量误差方差随噪声变化图
图4a:角度变化时检测出的角点个数图
图4b:角度变化时,角度误差图
图5:真实实验所使用的二维棋盘格靶标图片
图6:本发明流程框图
图中符号说明如下:
图1中的符号说明:O表示摄像机光心,O1表示图像坐标系原点。X,Y表示图像坐标系的 坐标轴,x,y,z表示摄像机坐标系的坐标轴。P(Xw,Yw,Zw)表示三维点在摄像机坐标系下的坐 标,p表示点P在图像上的投影。
图2中的符号说明:Ow-XwYwZw为世界坐标系,Zw轴为旋转轴,靶标在基准位置时的原 点位于Xw轴上;靶标在基准位置时的靶标坐标系为该坐标系绕Zw旋转θi后, 靶标坐标系变为相机坐标系为Oc-XcYcZc。
具体实施方式
见图1—图6,本发明提供了一种基于固定相机和单靶标的单轴旋转角的视觉测量方法, 并进行了仿真实验和真实实验验证。
仿真实验
仿真实验是在主频3.07GHz、内存4.00GB的计算机上,Windows XP环境下的MATLAB 2014a上进行的。仿真所用的摄像机模型为二阶畸变模型,各参数如下:
αx=782.5109,αy=782.9155,u0=357.3909,v0=264.5240
k1=-0.4232,k2=0.2664,k3=-0.000555,k4=-0.0031,k5=0
靶标为6×8的棋盘格,单个棋盘格长度为39.5mm×39.5mm。仿真实验主要验证了标定算法的 稳定性和高精度。仿真步骤如下:
仿真环境设置:根据设定的内参数,及位姿,获取图像点坐标。其中转动时选取的角度为(单 位是度)
θi=2.25×i
步骤一:利用MATLAB标定工具箱,获取内参数的初值,结果如下(标定内参图像噪声为2 像素):
αx=774.34147,αy=773.91064,u0=349.58372,v0=269.85450
k1=-0.43943,k2=0.33274,k3=-0.00222,k4=-0.00206,k5=0
步骤二:根据普通相机标定的结果,计算外参初值。
步骤三:根据内外参数初值,进行捆绑调整。
步骤四:选取角度,进行测量。
为了验证算法的鲁棒性,在步骤四中我们选取100个角度,进行了测量,并将角度误差的 最大值作为测量误差。在图像点中添加均值为μ=0,标准差σ=0□4个像素的高斯白噪声, 取100次实验测量误差的均值和方差作图,结果如图3(a)、(b)所示。结果显示,即使加入了标 准差为4个像素的高斯白噪声,仍能得到角度误差均值小于0.5度的结果,这证明我们的测角 方法对图像噪声时鲁棒的。为了验证我们的方法对遮挡情形有效,我们对靶标在(-180°,180°) 内转动时的情形,进行了仿真。图4(a)、(b)列出了仿真结果,(a)表示检测出的角点的个数,(b) 表示测量的角度误差。实验结果表明,我们的方法可以有效解决遮挡问题。
真实实验
为了进一步验证本发明的可行性,我们进行了真实实验验证。我们采用的靶标为打印的棋 盘格(如图5所示),规格为6×9,每个格子的长度为29.5mm,;所采用的相机为Basler相机, 分辨率为658×492像素,焦距为800像素左右。角度验证采用光电跟踪系统,该系统角度测量 精度为0.01度。结果如表1,误差表明在该实验条件下,角度误差的最大值小于0.15度。
表1.真实实验旋转角度估计结果
机译: 基于单眼相机图像立体视觉的动量估计方法和基于单动相机的动量估计装置
机译: 一种使用该系统通过照相机操纵器来加速视觉反馈的方法和一种用于通过照相机操纵器来加速视觉反馈的系统
机译: 一种使用该系统通过照相机操纵器来加速视觉反馈的方法和一种用于通过照相机操纵器来加速视觉反馈的系统