杨静
关键词:单目视觉;三角测量;垂直刻度指针式仪表;AMR激光定位姿态;仪表平面
1引言
巡检机器人通过智能识别算法结合各种环境探测器,可智能收集分析烟雾、温湿度、PM2.5、有毒气体、水浸、气流组织等环境信息数据,实现各设备状态信息的识别与分析[1]。同时,结合实时通信系统、供电系统、后台软件,可实现城轨交通机房设备与环境的无人巡检。真正实现实时告警、远程监测、智能巡检的目标。在轨道交通中的自动化巡逻监控中,包括各式各样的仪器仪表,由于工作环境原因,其中大部分属于指针式仪表,如何自动、准确、高效地完成各式仪表的数字化数据采集工作尤为重要[2]。
本文提出一种基于单目视觉的三角测量法,可高度定位,从而精准地捕捉仪器仪表读数。
2单目测量处理基本过程
2.1使用单目相机采集待检测的仪表图像
单个相机固定在可移动自动化巡逻机器人顶部,通过巡逻机器人的导航系统移动到垂直刻度指针式仪表盘所在区域,机器人每次采集图像的位置不固定,摄像机实时采集现场仪表盘以及表盘周围背景环境的图像[3-4]。相机事前经过针孔模型的标定,存有针孔模型的内参参数和相机安装位置的相机外参参数。
2.2实时预处理,定位有效仪表像素区域
对采集的图像进行预处理。因为采集的图像通常含有非感兴趣区域,即表盘像素区域以外的环境背景像素。为了去除背景,对图像进行一系列预处理,包括利用OpenCV自带的库函数对整幅图像进行高斯模糊、Canny边缘检测、二值化、形态学处理、顶帽变换,去除明显的离群点噪声,以及去除明显的环境背景区域,即仪表表盘以外的区域。然后进行轮廓提取,根据设置最大连通域的阈值和最小轮廓外接矩形的大小,最大限度保留仪表的有效区域,以得到含有仪表的图像像素区域,以及表盘图像像素区域。
2.3提取固定数量的消失点
在数字图像领域,消失点又被称为灭点[5]。空间上相同方向的平行线相交在图像上的点即为消失点。因为仪表的刻度区域以及仪表的外观轮廓都符合曼哈顿世界的假设,即轮廓线段和表盘刻度线段都处于或近似处于空间正交状态。所以,对上一步得到的目标区域图像进行消失点的提取,进一步筛选欧拉空间中X,Y,Z轴对应的消失点。
3单目视觉三角测量法
3.1测量依据
在单目视觉中,仅通过单张图像无法获得像素的深度信息,需要通过三角测量(Triangulation)(或三角化)的方法来估计实物点的深度[6-8]。三角测量是指,通过在两处观察同一个点的夹角,确定该点的距离。三角测量最早由高斯提出并应用于测量学中,它在天文学、地理学的测量中都有应用。例如,我们可以通过不同季节观察到星星的角度,估计它离我们的距离。在单目视觉中,主要用三角化来估计像素点的距离。
如图1所示,考虑图像11和12,以左图为参考,右图的变换矩阵为。相机光心为01和02。在11中有特征点P1,对应12中有特征点P2。理论上直线OiP1与02P2在场景中会相交于一点P,该点即两个特征点所对应的地图点在三维场景中的位置。然而,由于噪声的影响,这两条直线往往无法相交。因此,(又)可以通过最二小乘去求解。
按照对极几何中的定义,设x1,x2为两个特征点的归一化坐标,那么它们满足:
对于单目视觉来说,无论是单目的对极几何或是单目的三角测量,都存在一个尺度问题,如图2和图3所示。
尺度问题会带来单位问题,意味着测量结果的单位不确定,这使得三角测量在实际应用中存在一个“比例尺”问题。但在本测试中,采用了具有定位导航功能的AMR自动导航叉车,利用了AMR的准确定位姿态,为三角测量提供具有绝对尺度的姿态齐次矩阵,从而解除了单目视觉三角测量的应用限制。
3.2仿真论证
按照立体矩形的轮廓,给定一组先验3D点,如图4所示,并假设如下。
(1)-个理想状态下的相机内参矩阵。
(2)在相机的所有可视角内,所有3D都能“被”看见。为不失一般性,仿真中采用的空间坐标点取自立体矩形的边框,具体的,是沿着立体矩阵的所有边,以2cm为间隔,均匀取点。如图4所示。
(3)在实际中,在相机的视角里面,立体矩阵会有部分遮挡而不会出现在相机的图像画面中。但在仿真中,可以假设所有点都能“被”看见,由此,能更好地验证空间3D点与三角测量的关系。如图5所示。
3.3现场测试
测试设备:AMR叉车具备室内自动导航定位功能,能够提供精确的激光定位数据,定位精度为+0.005 m,角度为±0.10。本测试中的单目视觉三角测量功能,使用的是AMR叉车上的相机,型号是FM830-45 RI。这是一款工业用相机,能够以30 fps的帧率不间断地采集1280*720的彩色图片,并使用全局曝光的SONY CMOS,消除因曝光延时差异造成的“果冻”现象,确保视觉特征点匹配的准确性和视觉测量的精度。如图6所示。
在实际测量时,为了能定量地测试三角测量的效果和精度,本次测试使用人工布置的角点作为待检测的特征点,这可以免掉特征匹配的步骤,消除对极几何匹配时的误匹配的外点,从而可以准确地定量测量三角测量的精度。
3.4测试方法和步骤
(1)在测试现场,随机选择一个位置,使得大部分人工角点能够被AMR上的相机观测到;(2)记录此时的AMR激光定位姿态与相机图像画面;(3)移动AMR到地图中的另一位置,并保证此位置与初始位置有一定的旋转差异和平移,记录下此时AMR激光定位姿态与相机图像画面;(4)将前后两次的测试数据(包括AMR姿态和相机图像)放到指定目录,运行事先编写好的测试程序;(5)重复(1)~(4),记录多次数据。如图7和图8所示。
3.5现场测试情况
基于单目视觉的三角测量,可以充分利用相机可视角度和丰富的视觉信息[9-13]。通过AMR自动引导车给出的姿态齐次矩阵Rt,多次采集AMR移动前后两幅图片,验证了通过单目视觉三角化可以正确算出角点对应物体的距离。
事先编写好的测试程序会将重投影误差与对应的图像投影点显示出来,以便于定性地排除测量过程中出现的错误匹配。如圖9所示。
项目组打印了每个空间点在两个相机坐标系下的投影坐标与像素坐标——相当于P的投影位置与看到的特征点位置。由于误差的存在,它们会有一些微小的差异。以下是某一特征点的信息:可以看到,误差的量级大约在小数点后第三位。
另外,针对单目视觉的三角测量,在使用中需要注意:三角测量是由平移得到的,有平移才会有对极几何中的三角形约束,才谈得上三角测量。因此,纯旋转是无法使用三角测量的,因为对极约束将永远满足。这一点在实际使用中要特别注意。如图10所示。
4测试与验证结论
通过以上测试验证,可以得出以下结论。
(1)单目视觉的定位精度高:通过以上定量的测试结果可以看出,使用单目相机的情况下,定位的精度能够达到毫米级别。
(2)基于单目视觉的深度三角测量具有一定的局限陛:如图10的分析,三角测量的结果严重依赖姿态平移量,因此,测量精度与平移量有负相关的关系,即随着姿态平移量的减少而使误差增大;使用辅助手段提供精确的姿态矩阵,如使用具有定位功能的AMR叉车,基于视觉的深度测量方法,特别是基于单目视觉的深度测量方法是可行的,是能够应用于实际测量的。