姬嗣愚 王永生
(海军航空大学 烟台 264001)
随着科技的进步,越来越多的行业向着智能化和自动化的方向发展,同无人机、无人车等其他无人设备一样,无人艇能够自主规划和自主航行,通过各类设备及传感器完成一系列环境感知、目标检测、自动避障等任务[1],因此在执行海上作战、训练等任务时,通过在无人艇上加装测距装置可以更加方便、快速、准确地获取所需目标的位置及距离信息,对感知战场态势、制定下一步计划具有重要意义。
在各类传感器中,视觉传感器凭借在信息获取及成本、精度等综合性能方面的优势,在环境感知研究中逐渐成为主流研究之一[2],视觉传感器主要包括单目视觉、双目视觉以及多目立体视觉等,双目视觉可以测量景深,但其系统复杂,计算量大,使用受限;单目视觉[3]通过小孔成像原理定位目标,成本较低操作简单,具有更加广阔的应用前景。除视觉传感器外,激光雷达测距精度高,探测立体度好[4],也逐渐成为广泛应用的测距传感器。因此,本文主要研究了基于单目视觉和激光雷达的测距方法,通过实验进行了验证和误差分析。
小孔成像是摄像机成像的基本原理[5],如图1所示。由于光线沿直线传播,由光源P发出的光线经过相机光心Oc后会在成像平面O-XY呈现出像点P',Oc-Zc是相机的光轴方向,Oc-XcYcZc为相机坐标系。根据三角形相似关系,即可求解相应参数,这就是小孔成像模型,该模型确定了现实世界中目标物体的三维图像与投影平面上的二维图像之间的映射关系,是后续三维信息恢复与重构的基础[6]。
图1 小孔成像原理
为了建立空间点与图像点之间的映射关系,涉及到坐标系的转换。在进行相机标定之前需要明确坐标系的关系,主要包括以下四种坐标系[7]:
1)图像像素坐标系:定义一个直角坐标系O-uv,原点O设定在图像平面的左上角,每个点都是一个像素,点的横纵坐标分别代表相应像素在图像中的行列值。
3)摄像机坐标系:以相机的光心为坐标系原点OC,ZC轴与光轴相重合,坐标系中XC轴和YC轴分别与图像物理坐标系的x轴和y轴平行,OCo连线距离就是摄像机的焦距f,单位为m。
4)世界坐标系:用来描述摄像机以及环境中任意物体的位置信息,定义为OW-XWYWZW,单位是m。
图2描述了一个三维空间点和二维平面点之间的坐标投影转换关系。在针孔摄像机模型中,物像之间可通过相似三角形来表示,空间任意一点P与成像位置P'的变换关系即为透视投影。
图2 摄像机成像几何模型
世界坐标系下真实物体上的点P(XW,YW,ZW)与其在二维图像平面上的点的图像像素坐标(u,v)之间的对应关系为
摄像头由于透镜的光学特性使得成像存在径向畸变,两个摄像头由于装配方面存在误差,不可能绝对平行放置,故成像存在切向畸变。因此,需要求解畸变参数对图片进行矫正[8],使后续的图像处理等过程的结果更加精准。
目前,那西肽的检测方法主要有气相色谱-质谱联用法[7]、高效液相色谱紫外检测法[8-9]、高效液相色谱荧光检测法[10-12]和微生物检定法[2]等。农业部公告第2382号[13]发布的那西肽发酵液干燥品配制的那西肽预混剂质量标准中规定,采用高效液相色谱紫外检测法测定那西肽组分,采用抗生素微生物检定法测定含量。
根据小孔成像原理,利用单目相机进行测距时,需要利用已知尺寸的标志物进行距离的近似求解,而在执行海上作战和训练任务时,目标物的尺寸往往无法获得,因此对小孔成像测距方法进行改进,通过两帧图像之间目标物体的宽度差异完成距离测量,图3为测距方法示意图。
图3 单目测距示意图
当摄像机位于A点时,为目标物体拍摄第一张图片。假设物体宽度为W,在摄像头成像平面上的投影宽度为W1,摄像头焦距为f,则根据相似三角形原理,目标与摄像头之间的距离d为
当摄像头从A点向前移动d1距离到达C点,为目标物体拍摄第二张图片,目标物体的宽度和摄像机的焦距都不变,此时目标物体在摄像头成像平面上的投影宽度为W2,目标与摄像头之间的距离d2为
又由于d2=d-d1,且目标物体的宽度W在计算过程中始终是个常数,根据式(2)和式(3),可以计算出目标物体与摄像头镜头的距离d:
因此,只要求出摄像头移动距离d1及目标在两张图片上的投影宽度,即可求解出目标与摄像头之间的距离。
实验过程中,选择萤石C6系列摄像头作为实验用相机。在进行测距实验前,先要对摄像头进行标定获得相机的内外参数。Matlab自带工具箱的标定原理来自张正友标定法[9],图4为对拍摄的多张棋盘格图片进行角点检测,图5为标定过程中产生的误差,其中,图5(a)为重投影误差分布,图5(b)为通过不同方位拍摄的棋盘格和摄像头位姿信息。
图4 Matlab角点检测
当重投影误差值比较大时,可选择删除该张图像后重新标定,直至重投影误差分布均匀且数值较小时,可以结束该过程,导出标定结果。最终得到的相机内参矩阵为[1.1409e+03,0,0;-0.8944,1.1407e+03,0;641.7514,378.7003,1],畸变参数为[-0.5110,0.3670,0.0019,0.0025,-0.1335]。
图5 摄像头标定误差
实验平台搭建如图6所示,具体的测距流程如下:
图6 单目视觉测距实验平台
1)每隔0.5m对目标进行一次拍照,得到不同距离下目标在图片中所占据的像素宽度,利用最小二乘法将图像中占据的像素宽度与实际距离进行拟合,建立距离与像素宽度之间的函数关系;
2)根据相机的内外参数,对拍摄得到的图片进行去畸变处理;
3)改变相机的位置,分别计算目标在相机拍摄的先后两张图片中的宽度值,由式(4)得到具体实验结果如表1所示。其中,相机与目标之间的实际距离为纤维尺测量,存在一定测量误差。
表1 单目测距结果
由表1可知,当目标物体与摄像头之间的距离在中间距离阶段(100cm~500cm)时,误差比较小,基本保持在2%以内,当测量距离大于500cm或小于100cm时,误差相对较大,其原因主要是较近距离时,虽然已经对图片做了去畸变处理,但目标在图片中还是会发生轻微变形,导致目标在图像中的像素宽度发生变化,产生较大误差;在较远距离时,目标在图片中的像素宽度占比较小,获取像素宽度值时容易造成较大的误差。
激光雷达以激光作为载波,其工作原理是通过测量发射信号与被目标反射回来的回波信号之间的时间差获得距离信息。因其体积小、精度高、响应速度快所以被广泛应用在三维建模[10]、地形测绘[11]、无人驾驶[12]等领域。目前,根据测距体制的不同,激光测距的方法主要有脉冲法和相位法两种。
脉冲法激光测距通过激光雷达的信号处理系统控制发射端发出激光脉冲,与目标物体接触后产生漫反射,雷达接收端捕捉到反射后的激光,通过高精度的时间计数器测量激光在大气空间中的飞行时间,由于激光在自然条件下的传播速度是恒定的,进而可以计算出目标与激光雷达之间的距离[13],计算公式为
其中,c=2.99792458*108m/s,是光在真空中的传播速率;T为激光在大气空间中的飞行时间,D即为目标物体与激光雷达之间的距离[14]。由上式可以看出,脉冲法激光雷达测距的精度由时间测量精度决定,系统能够测量的最远距离主要取决于时间测量单元的上限。
利用相位法进行激光测距时,发射的是幅度经过调制的连续激光信号,通过测量回波信号与发射信号之间幅度的相位差,再根据调制信号的频率(波长)计算目标的距离[15]。假设激光幅度调制信号的频率为f,N是信号传播的整数个周期,Δφ是相位差,则目标与激光雷达之间的距离D可以表示为
不同于脉冲法测距,相位法不直接计算时间差,因此其测距精度不受系统时钟频率的影响,可以达到更高的测距精度。然而相位法在实际应用中,其整数周期个数N通常不可测,由此造成距离缠绕的现象。
结合以上两种分析,脉冲法和相位法虽然都可以实现距离测量,但也存在各自的优缺点。相位法虽然精度高,但在信号的一个周期外容易带来多值问题。而脉冲法作用距离更远,测距速率更快,虽然精度稍差,但其精度标准已经足够满足大多数测距任务的需要。因此在本文测距任务中,选择深圳镭神智能有限公司研发的CH32系列激光雷达作为实验设备,其相关参数如表2所示。
表2 CH32激光雷达相关参数
为了对比单目视觉定位与激光雷达测距效果,首先在室内相同条件下进行了激光雷达测距实验,利用激光雷达的上位机软件可以获得与目标之间的距离值,图7所示为1m测距时上位机的工作界面。
图7 1m测距时上位机工作界面
由图7可以看出,在距离较近时,可以清晰地识别出目标的点云图像,由于目标的点云图像包含多个点,因此选择对应区域可以得到包含目标多个点的距离信息,产生的误差值是一个区间。
为了测试激光雷达远距离测距的性能,在室外同样进行了测距实验,图8所示为室外实验平台搭建,图9为50m测距时上位机的工作界面。
图8 室外测距实验平台
图9 50m测距时上位机工作界面
分别在近、远两种距离下进行实验后,得到的测距结果如表3所示。
表3 激光雷达测距结果
由表3可以看出,激光雷达的测距精度非常高,50m以内相对误差不超过0.1%,但激光雷达不可避免的问题是当距离较远时,目标在视场中占比较小,在点云图像中只有几个点,因此确定目标的对应点时比较困难,容易因选择失误而引起较大的测量误差。
在执行海上作战、训练任务时,及时、准确地获得目标的距离信息对于战场态势感知以及制定下一步作战计划有着重要意义。本文对基于单目视觉和激光雷达的测距原理进行了深入探究,针对单目视觉测距方法,主要介绍了针孔成像模型以及坐标系的转换,提出了通过两帧图像之间目标成像的宽度差异建立的测距模型;针对激光雷达测距方法,主要选择脉冲式激光雷达作为实验设备进行了测距实验与误差分析。结果表明,激光雷达测距精度更高,响应速度更快,但激光雷达成本较高,且目标在视场中占比较小时难以识别对应的点云图像。在实际任务中,需要根据实际情况对两种测距方法进行选择或结合,通过单目视觉方法对目标进行识别并进行粗略测距,同时利用激光雷达对距离信息进行进一步校正。