法律状态公告日
法律状态信息
法律状态
2013-04-10
授权
授权
2012-01-04
实质审查的生效 IPC(主分类):G01C11/00 申请日:20110402
实质审查的生效
2011-11-23
公开
公开
技术领域
本发明涉及机器视觉的空间中物体三维定位方法,特别是涉及一种应用于机器视觉的球状体三维定位方法。
背景技术
空间中物体的三维位置估计,是机器视觉中的一个重要问题。通过二维图像信息来估计三维空间中物体的位置,通常需要多个摄像头来产生立体视觉。
为了描述实际空间中球体球心坐标与图像中坐标的转换关系,首先建立三种坐标系,即图像坐标系、摄像机坐标系以及世界坐标系。如图1所示,除图像坐标系OI -uv为二维坐标系外,摄像机坐标系OC-xcyczc及世界坐标系OW-xwywzw均为三维坐标系。
图像坐标系描述了每一个象素点在图像中的坐标,摄像机坐标系描述了空间物体相对于摄像机光心的位置,而摄像机又是处于空间中某一点,则可通过世界坐标系描述其位置。世界坐标系通过旋转与平移得到摄像机坐标系。而图像坐标系与世界坐标系的映射关系即为三维重建的关键。
根据坐标转换模型,世界坐标系到图像坐标系的映射可用式(1)表示,该式描述了世界坐标系中三维坐标(Xw,Yw,Zw)与图像空间中二维坐标(u,v)的转换关系:
(1)
其中,为一个33的矩阵,其参数只与摄像机本身属性有关,称为摄像机内部矩阵。[R t]则为一个34的矩阵,它描述了摄像机坐标系与世界坐标系之间的旋转与平移关系,称为摄像机外部矩阵。摄像机的内部参数和外部参数可通过张氏标定法进行预先标定。
其中,摄像机坐标系与世界坐标系的转换关系如下:
(2)
将(2)代入(1)式,可得:
(3)
因在摄像机坐标系中,不等于零。于是,式子两边同时除于可得:
(4)
或者:
(5)
于是,得到了一个物点在摄像机坐标系下的方向向量计算公式:
(6)
其中,为物点在图像中所成像点坐标的增广向量。由于射线必过原点,所以唯一决定了对应于图像中任意像素点的射线方向。该向量经过归一化之后得到射线的单位方向向量。此公式为球体立体坐标的计算奠定了基础。
通过摄像机对球体进行拍摄,球体的投影成像如图2所示。球体投影在成像面上形成图像,图像轮廓上的每一点与光心Oc形成射线,射线与球体表面有且仅有一个交点,所有交点与光心共同形成一个正圆锥。该成像模型具有以下重要几何特性:
当球心C不在摄像机光轴上时,成像面截圆锥形成椭圆;当球心位于光轴上时,成像面截圆锥形成圆。由于摄像机焦距远小于球体距离成像面的距离,故球体所成图像基本近似为圆。
为了找到椭圆长轴端点,需要在图像中进行椭圆识别。然而特性表明球体成像通常为圆,因此若使用椭圆识别,一方面将要付出大量计算,另一方面即使是微弱的图像噪声都会使得识别结果误差巨大。
Negahdaripour S. Epipolar geometry of opti-acoustic stereo imaging[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2007, 29(10):1776-1778.一文中记载了利用双目摄像头来进行三维定位,需要专门的同步摄像机设备和庞大的计算量,成本昂贵,若已知待检测物体的几何特征,则可通过单目视觉来估计一些基本几何体的三维位置,如点、线和圆等。
Zhang Lei, Xu Kejun, et al. Improvement of position and orientation measurement algorithm of monocular vision based on circle features [J]. Journal of Hefei University of Technology, 2009, 32(11):1669-1673. [张磊, 徐科军等. 一种基于圆特征的单目视觉位姿测量算法的改进 [J]. 合肥工业大学学报(自然科学版), 2009, 32(11): 1669-1673.]一文中记载了利用激光测距仪加单幅图像测量空间圆的位姿。
Chen Jing, Tang Weihong. 3D model analysis of circular feature for machine vision [J]. Journal of Applied Optics, 2009, 30(6): 964-969. [陈静, 汤卫红. 机器视觉中圆形特征的三维模型分析研究 [J]. 应用光学, 2009, 30(6): 964-969.]一文中记载了利用拉格朗日乘子法求得椭圆的参数,从而求解已知半径的空间圆的位姿。
Zhang Yuanhui, Wei Wei, et al. Shadow Based Single Camera Vision System Calibration [J]. Journal of Image and Graphics, 2009, 14(9):1895-1899. [张远辉,韦巍等. 基于影子的乒乓球机器人单目视觉系统标定[J]. 中国图像图形学报, 2009, 14(9):1895-1899.]一文中记载了一种能够测量半径已知的空间球体的位置的方法,其中还记载了使用了影子来进行辅助定位,需要提供合适的的光照条件产生影子。
Safaee-Rad R, Tchoukanov I, et al. Three-dimensional location estimation of circular features for machine vision [J]. IEEE Transactions on Robotics and Automation, 1992, 8(5): 624-640一文中记载了的方法涉及坐标系的转换以及矩阵特征值的求解。
以上的方法其数学运算量的复杂程度大大超过本文提出的方法。
发明内容
本发明的目的是在于克服提出现有技术缺点,提出一种应用于机器视觉的球状体三维定位方法。
一种应用于机器视觉的球状体三维定位方法,包括以下步骤:通过图像获取装置获取球状体的图像,将图像输入到图像处理装置,通过圆识别算法,得出位于图像成像面上的待识别椭圆,并计算出待识别椭圆的中心及长轴半径,根据所述待识别椭圆的中心与图像中心,计算出待识别椭圆的中心与图像中心所在直线与待识别椭圆相交的两点a、b的坐标,并计算出a、b两点所对应的在图像获取装置坐标系下的方向向量,根据球状体的预知半径及所述计算出球状体在世界坐标系下的三维坐标。
所述图像获取装置为摄像机,摄像机通过预标定的内、外部参数进行图像拍摄,所述内、外部参数通过张氏标定法进行标定,摄像机内部几何和光学特性即内部参数, 以及摄像机在世界坐标系中的位置和方向, 即外部参数。
基于传统霍夫变换的圆识别算法的实时性和抗干扰性较差,因此所述圆识别算法采用边缘跟踪识别圆的算法。
所述根据球状体的预知半径及计算出球状体在世界坐标系下的三维坐标包括以下步骤:
1)、根据球状体的半径及,通过双射线定位法计算出球状物位于图像获取装置坐标系的坐标,所述双射线定位法为:
其中代表了球状体的球心在图像获取装置标系下的空间位置坐标,d为球状体的半径;
2)、计算出球状体位于图像获取装置坐标系的坐标后,通过坐标系转换公式:
将所述图像获取装置坐标系的坐标转换为球状体在世界坐标系下的三维坐标,其中[R t]为一个34的矩阵,是图像获取装置坐标系与世界坐标系之间的旋转与平移关系,只跟图像获取装置的外参数相关,为球状物位于图像获取装置标系的坐标,为球状物在世界坐标下的坐标。
所述步骤1)还包括先将所述方向向量进行归一化计算,转化为单位方向向量的预处理步骤。
与现有技术相比,本发明具有以下优点:
与传统方法相比,该方法只需预先标定好一个摄像机内外参数,图像处理也仅需要识别圆,代入公式即可求解。实验表明,该算法鲁棒性强、速度快,且能达到较好的精度,具有良好的应用前景。
附图说明
图1为三种坐标系及其联系;
图2为立体球投影成像的原理图;
图3为双射线定位的示意图;
图4为本发明的方法流程图;
图5为本发明实施例的示意图;
图6为本发明实施例的误差分析空间图;
图7为本发明实施例的误差变化示意图。
具体实施方式
以下结合实施例及附图对本发明进行详细的描述。
根据摄像机成像模型具有的特性推导出以下:
(1)光心Oc发出并穿过椭圆长轴两端点的射线与球面交于A、B两点。A、B、C、Oc四点共面。
(2)A、B在成像面上投影点为a、b,即椭圆长轴的两端点。直线ab穿过成像面中心原点(u0,v0)。
根据特性2,A、B、C、Oc四点共面,如图3所示。对于图像上的每一个像素,由公式 可求解出该点所唯一对应射线的方向向量。球体在图像中所成椭圆长轴端点分别对应一条射线,分别为这两条射线的单位方向向量,球心在两条射线构成的平面上并且到两条射线距离相等,都等于球体的已知半径d。射线穿过球心,由模型的几何特征可得,必然位于的角平分线上,记:
(7)
由于:
(8)
得到,或者:
(9)
而:
(10)
由(9)、(10)最后可得:
(11)
代表了球心在摄像机坐标系下的空间位置。因此,在球体实际半径已知的前提下,求得并代入公式(11)即可求解出球体的三维坐标。
根据上述内容,如图4所示,本发明公开了一种球状体三维定位的方法,其具体步骤为:
步骤1通过圆识别算法求得椭圆中心(uc,vc)及长轴半径r。基于传统霍夫变换的圆识别算法的实时性和抗干扰性较差,因此本发明采用边缘跟踪识别圆的算法。
步骤2 连接椭圆中心(uc,vc)和图像中心原点(0,0),连线与识别椭圆相交,求得椭圆长轴两个端点a、b。
步骤3 利用公式计算A、B两点所对应的射线的方向向量,并将其归一化为单位方向向量。
步骤4 通过双射线定位法,根据球体半径d,代入公式计算,获取位于图像获取装置标系的坐标(xc,yc,zc)。
步骤5利用通过公式:
将所述图像获取装置坐标系的坐标转换为球状体在世界坐标系下的三维坐标,其中[R t]为一个34的矩阵,是图像获取装置坐标系与世界坐标系之间的旋转与平移关系,只跟图像获取装置的外部参数相关,为球状物位于图像获取装置标系的坐标,为球状物在世界坐标下的坐标。
如图5所示,以机器视觉识别乒乓球的立体坐标作为实验场景。将乒乓球台的其中一角作为世界坐标系的原点,将球台台面作为Zw=0平面。
验证实验分两步进行:1)通过张氏标定法标定摄像机的内部参数及相对球台坐标系的外部参数。2)取5个坐标乒乓球置于球台上,调整伸缩支架高度,记录其实际坐标(Xi,Yi,Zi)(i=1-5);通过2.2计算的步骤得到估计坐标(Xi’,Yi’,Zi’)。记录数据及误差如表1。
实验结果及误差分析
如图6所示,由于图像噪声或者圆识别算法引入的误差,图像上面的点 p会偏移到,这样就会使得通过模型计算出来实际的偏移到。由于三角形Ocpp’和三角形OcPP’是相似三角形,所以有pp’/PP’=Ocp/OcP=相距/物距。由于对一个摄像机来说,像距是一定的,而物距是变化的,所以,算法的误差随着物距的增加而增加。
随着球体球心与摄像机光心欧氏距离以及球心偏离光轴角度α的增大,三维坐标计算误差受到摄像机畸变的及图像中球识别精确性的影响更加明显,误差有所加大,如图7所示。
表1 立体坐标计算测量误差
经过标定好的相机参数可以直接代入射线公式及定位公式中进行计算。实验中的电脑使用AMD 2.40GHz CPU,在摄像机60fps的高速采集模式下均能快速并较精确地计算出球体立体坐标,可运用于实时球体的三维检测及轨迹追踪。
机译: 一种制备母乳干细胞(bsc)或包含或由bsc,母乳干细胞组成的球状体或包含bsc,母乳干细胞(bsc)或由其组成的球状体的方法,其组成,在需要其的患者中治疗细胞的方法,在需要其的女性哺乳期婴儿中治疗乳汁生成不足的方法以及在需要此的患者中治疗疾病的方法
机译: 使用机器视觉定位三维物体的系统和方法
机译: 利用机器视觉定位三维物体的系统和方法