基于合作靶标的单目视觉测量系统

(整期优先)网络出版时间:2019-02-12
/ 2

基于合作靶标的单目视觉测量系统

于彬

国家知识产权局专利局专利审查协作天津中心天津300304

摘要:飞行器位姿测量系统是飞行器测控的重要课题。利用相机和计算机视觉原理进行位姿测量是众多测量方式中重要的一种,其具有信息充分、非接触、精度高、受测量环境影响小等特点,在米量级范围有着广泛的应用。本文设计了一种基于特定靶标合作目标的单目视觉测量系统。通过识别棋盘格靶标得到后续计算的特征点,经过计算可以得到被测目标的三维信息。本文采用基于共面矩形特征的算法,可以确定距离和角度的唯一解;在靶标识别方面提出一种连续帧检测方法,可以解决棋盘格靶标角点对称带来的角点跳变问题。搭建了三维精密位移台测试系统,研制了测量系统人机交互软件。实验表明可以在300mm~1000mm内达到2mm精度,可以满足一种室内/舱内飞行器的位姿测量指标,其系统也可以应用到机器人自身位置确定、两个飞行器相对位置确定等场景,具有一定的实用价值。

关键词:单目视觉;棋盘格靶标;识别;测量

1引言

飞行器位姿测量系统是飞行器测控的重要课题。常用的测量方法包括雷达定位方法、激光测距方法、惯性导航方法等。不同的方法有着不同的应用场景。雷达定位方法、GPS方法都可以在远距离大范围内对飞行器目标的测量,但对于姿态信息测量不敏感,精度不高;基于加速度计陀螺的惯性导航方法只能对飞行器自身进行定位;视觉测量包含的信息丰富,适用于近距离的场景,在米级范围内能够有较高的位姿确定精度。

视觉测量分为合作目标和非合作目标两种。测量合作目标时,可以在目标上安装特定尺寸和形状的靶标,利用单个相机即可确定距离和位姿信息。单目视觉测量的核心问题是目标检测和位姿解算。目标检测是检测出用于后期计算的特征点;位姿解算是指基于摄像机数学模型,建立空间目标特征与图像特征之间的对应投影关系,从而确定目标位姿信息的过程。在目标检测方面,本文采用以棋盘格为靶标检测边界四个角点,从而将问题转化为以四点为特征点的类似P4P问题。实验表明可以在300mm~1000mm内达到2mm精度,满足一种室内/舱内飞行器的位姿测量指标。

2系统设计

该系统由1、模拟飞行器;2、特定靶标;3、镜头;4、摄像机;5、光源;6、计算机;7、安装固定工件组成。采用8*8黑白相间棋盘格作为靶标;镜头选择为computarH0514-MP2,焦距为5mm;相机采用某工业摄像机型号,所采集图像尺寸为1286*962,像元尺寸3.2μm*3.2μm,GigE(千兆以太网)接口;光源为自然光;计算机为i3处理器。该硬件系统可以应用在空间飞行器自身位置确定上,在舱内可以设置多个棋盘格靶标,通过飞行器对靶标的识别可以确定自身飞行器的位置,从而做到飞行器自身精确定位。

3靶标设计与识别

实现靶标在图像中的快速、自动识别和高精度提取是整个测量工作的前提,因此设计使用一种合理的靶标显得尤为重要。基于此我们直接使用标定过程中的棋盘格当作靶标,来实现测量过程中的角点高精度提取。

3.1角点检测原理

在角点检测过程中,如何将棋盘格内部角点和背景中存在的干扰角点区分开是角点检测的重点和难点。之所以运用棋盘格作为靶标,正是因为其具有显著的特征,这些特征具有一定的鲁棒性并且易于识别。棋盘格具有以下三个特征:

(1)内部每一个黑白格的顶点均为角点;

(2)黑格和白格正交;

(3)黑白格的角点均为栅格线的交点。

利用上述三个特征,在MicrosoftVisualStudio2010平台上,从摄像头读入的待检测图像经过降噪,灰度化等预处理后,基于Opencv函数cvFindChessBoard()进行编程,可以将背景中的干扰角点筛除,进而得到棋盘格靶标内部每一个角点的像素坐标。此外,每一个角点的像素坐标均定义为32位浮点型,使角点的像素坐标达到亚像素的要求。

3.2对摄像头采集图像的实时处理

为了实时测量,必须将角点检测算法应用于相机采集的每一帧图像并达到一定速度。根据测量算法实际要求,四个点必须保证为矩形的四个顶点,因此选择棋盘格最外部的四点作为测量用点。按照遍历角点的顺序,输出第1个,第8个,第57个,第64个角点像素坐标:由于棋盘格靶标具有对称性,因此当靶标旋转180°后将导致角点完全相反。为了解决上述情况,提出基于视频流的连续帧图像处理法。具体步骤如下:

(1)读取图像;

(2)检测键盘某一按键是否被触发。若触发,则连续存储两帧图像,并将第一帧图像定义为初始帧;

(3)对两帧图像进行预处理;

(4)检测初始帧图像中的角点,输出第1号,8号,57号,64号角点坐标并标记;

(5)检测第二帧图像角点,计算其与初始帧图像中步骤4的四个角点之间的距离。若该距离小于5个像素,则认为此四个角点为初始帧图像中四角点运动到的位置。输出四角点坐标并标记;

(6)读取并存储第三帧图像,检测所有角点;

(7)遍历第三帧图像中棋盘格角点,计算其与第二帧图像中步骤5的四个角点之间的距离。若该距离小于5个像素,则认为此四个角点为第二帧图像中四角点运动到的位置。输出四角点坐标并标记;

(8)重复步骤5,6,7。

由于跟踪初始帧角点措施的采用,连续帧图像的角点检测方法很好地解决了棋盘格靶标角点对称所带来的角点跳变问题。

4测量原理

应用点特征进行位姿定位,最著名的有PnP问题,通过n个特征点进行识别来进行位姿解算。经过研究表明,当n≤2时,已知条件不足不能确定位姿参数;当n>5时,该问题可应用线性方法求解;当3≤n≤5时,位姿解算有多个可能解。在P4P问题中,根据研究当空间四个点共面时,摄像机坐标系和物体坐标系之间的旋转矩阵R和平移向量T可以线性求解。本文所合作的靶标为基于四点的共面方形特征,在经过四个特征点的像素坐标输入后,可以解算出四个点的位置坐标以及所在平面相对于相机坐标系的旋转角度在摄像机成像模型的基础上,构建位姿解算的数学模型,基于平面坐标系与相机坐标系和世界坐标系之间的转换,通过计算获得了基于共面方形(同时也适用于共面双平行线)的合作靶标的位姿计算结果。