融合嵌入式视觉与激光测距的机器人自主避障方法
2023-07-25赵玲峰
周 晖, 赵玲峰
(广西农业职业技术大学,南宁 530007, E-mail:iii47474@163.com)
自主避障是机器人在未知的环境中完成路径导航的关键功能。自主避障要求机器人充分感知周围环境信息,同时,还需满足机器人对相应指令的回应效率。现阶段,应用较多的光学测距仪器具有一定应用缺陷,例如易受操作者的手眼误差、测距时自然光照射条件以及被测量物体的光学成像清晰度等因素影响,除此之外,如果待测物体与测距仪的距离过远时,也会增大测距仪的误差。因此,在现阶段的机器人避障问题研究中,常用的有超声波、激光测距传感器等。例如李鹏等人[1]提出了一种激光雷达测距的机器人最优移动路径选择方法。在该方法中,首先构建了人工势场模型,对机器人移动过程建模。应用激光雷达测距技术,以机器人行动区域为背景,设计栅格地图。利用栅格地图获取机器人移动的最短路径。但是,该方法中仅应用了一种激光测距技术,其无法适应复杂的机器人部署工作环境,且单一的传感器在应用时候具有局限性,很难在复杂的环境中实现机器人的自主避障和导航。因此需要将多种传感器融合,更好的完成机器人轨迹特征提取与匹配。
多传感器数据融合技术很早就备受关注,从一开始的军事指挥领域逐渐延伸到非军事领域。国外首次提出将多传感器融合技术应用在机器人上,牛津大学研制了一系列机器人,并从多个不同的角度将多传感器融合技术应用在机器人上。国内一些专家学者也在机器人与多传感器数据融合技术方面进行深入探讨,并取得了惊人的成绩。但是总的来说,现有机器人自主避障方法中,大多只停留在算法层面,实用性还有待提高。
基于此,本文将嵌入式视觉传感器与激光测距传感器融合在一起,提出一种机器人自主避障方法。与经典的机器视觉系统相比,嵌入式视觉系统可以适应复杂部署工作环境。建立激光测距传感器模型和嵌入式视觉传感器模型,并将两个模型采集到的数据融合在一起,获取完整的障碍物信息。在实验测试中,研究方法展现出了优秀的障碍物提取结果,将该结果输入到机器人内部系统中,实现机器人自主避障。
1 传感器模型及特征提取
1.1 激光测距传感器模型
激光测距传感器具有超高的解析度和精度,与声纳传感器相比,其在角度分辨率、采集效率、抗干扰性能方面均具有无法比拟的优势。激光测距传感器可精准辨别机器人周围环境中的目标点[2],将距离、方向等信息进行采集,以极坐标的形式表示为:
sn=(ρn,φn)(n=1,2,…,N)
(1)
式中:ρn、φn分别表示目标点在极坐标横、纵方向上的位置点,n表示目标点的数量。
假设原始激光扫描数据线段特征在极坐标系下的表达式为(ρ,θ),那么直角坐标系[3]下的表达式为:
xcosθ+ysinθ-ρ=0
(2)
式中:ρ>0表示线段特征垂直距离,-π≤θ≤π。
通过式(3)计算直角坐标与特征直线之间的距离:
dn=ρncos (φn-θ)
(3)
考虑到噪声对激光测距传感器产生的干扰,假设dn服从高斯白噪声分布,利用误差传递公式可得到激光数据噪声分布情况:
(4)
利用式(7)计算所有共线点的加权总长度:
(5)
式中:ln表示激光线段起始点;e表示不满足特征直线准则的终止点。
通过式(4)~式(7)计算得到离散角度方向上的L(θ)值,最大值所对应的θ角就是激光线段特征值[4]。由此一来,得到ρ的估计值计算公式为:
(6)
激光线段经过离散化处理后,得到(ρ’,θ’),它仅仅是激光线段实际特征的大致估计,要想得到精准结果,本文借助加权最小二乘拟合法得到。加权最小二乘函数表达式为:
(7)
1.2 嵌入式视觉传感器模型
激光测距传感器能够保证测距结果具有较高精度,但是由于该类传感器只能采集平面数据,获取水平方向上机器人与障碍物的距离,因此还需结合嵌入式视觉传感器获取获取数据特征,以此实现对周围环境的有效感知[5]。嵌入式视觉传感器是将一台或多台CCD(Charge-coupled Device,电荷耦合元件)摄像机[6]进行结合,用以代替眼球,以此感知周围环境信息,实现对障碍物的躲避。
1.3 数据特征提取与融合
在机器人的某种位姿状态下,所在环境特征要经过提取和融合后,才能存储到系统内部的全局地图[7]中。通过引用尺度不变特征变换(SIFT)算法,对机器人视觉图像的特征完成提取和融合。利用高斯差分尺度空间算法[8],从环境中抽取特征点,从特征层次上对这些点融合。
融合后得到两传感器模型的匹配对,在高斯牛顿迭代法[9]的基础上,对匹配对中的参数优化。将激光测距传感器直角坐标(xn,yn)转换为二维齐次坐标向量[10]m′=[x′,y′,1]的形式,三维空间齐次坐标向量m=[X,Y,Z,1],使m=H3×4,由此可得:
(8)
mi(χk+Δk)=mi(χk)+JχkΔk
(9)
式中:Δk表示正规化方程;Jχk表示Jacobian矩阵[11],Jχk=ϑmi/ϑχ|χ=χk,继续寻求下一个迭代点χk+1=χk+Δk,并满足:
(10)
(11)
将式(14)代入到高斯牛顿迭代格计算公式中,得到:
(12)
通过上述计算得到两个传感器匹配点集[13],将B和B′分别看作是匹配点集中的起始点集和目标点集,这两个点集的重心坐标分别为b、b′,表达式为:
(13)
计算两个数据点集之间的协方差矩阵:
(14)
式(14)经过转换后得到旋转变换矩阵R3×3,根据两个中心坐标可得到平移变换向量C3×1为:
C3×1=b′-R3×3b
(15)
通过式(12)计算得到满足式(15)的变换参数[14],即可得到传感器模型最终融合结果。
2 机器人自主避障实现
当传感器模型感知到前方出现障碍物后,机器人会选择在障碍物左侧通行,如果机器人位置相对来说比较偏右侧时,则根据最优路径选择右侧通行,具体如图1所示。
▲图1 机器人自主避障示意图
图1中,A、B、C、D四个点构成一个矩形障碍物,小车位置1~4表示机器人行驶的路径方向以及当前所在位置。dOA表示机器人中心点与障碍物A、D的距离,dOD同理。在实际应用中,机器人要实现自主避障,首先确定自身所在位置,然后判断dOA和dOD的值,最后进行最优路径规划。本文通过式(16)计算得到机器人相对位置坐标信息:
(16)
由图1可知,机器人的长、宽分别为2z、2c,计算得到从位置1行驶到位置2总的路径长度:
(17)
式中:λ表示机器人行进过程中,与障碍物之间的最佳安全距离系数。
那么机器人从位置1移动到位置2所花费的时间为:
(18)
式中:v0表示机器人的行驶速度,a表示时间系数。
机器人行驶过程中转弯产生的角度值为:
(22)
机器人从位置2移动到位置3的行驶路径长度为:
s2=dCD
(23)
机器人从位置2移动到位置3所花费的时间为:
(24)
机器人从位置3移动到位置4,并保持与位置1相同的方向和状态,此时转弯角度为:
θ2=-θ1
(25)
机器人从位置3移动到位置4所花费的时间为:
t3=t1
(26)
综上所述,机器人实现自主避障的步骤为:首先,设定右转向角度为θ1,在t1时间内,机器人以v0/3的速度从位置1行驶到位置2;然后,再以v0/3的速度从位置2行驶到位置3;最后,将左转向角度设定为θ1,同样以v0/3的速度从位置3行驶到达位置4,所花费时间为t1。
3 实验测试
为验证融合嵌入式视觉与激光测距的机器人自主避障方法在实际应用中是否同样合理有效,对其展开了相关实验测试。实验机器人选用的是AS-RE型移动机器人,按照研究方法配备有激光测距传感器和嵌入式视觉传感器。激光测距传感器将扫描模式设置为180°/0.5°,每采集一组激光数据所需的时间大约为40 ms;嵌入式视觉传感器的分辨率模式设置为512×384。在某工厂室内环境中,首先验证研究方法多传感器的融合结果,然后再对机器人的避障效果进行验证。将机器人放置在工厂室内环境中的某个位置上,机器人的扫描结果如图2,障碍物的位置通过黑色栅格表示,且每个栅格通过15 cm×15 cm的正方形表示。
▲图2 工厂室内环境扫描结果
通过观察图2可以看出,实景图中部分障碍物低于激光测距传感器的扫描平面,所以栅格中没有体现,而嵌入式视觉传感器正好弥补了这一缺点,使融合后的栅格图像可以完整地展现出实景图中所有的障碍物。同时,由于嵌入式视觉传感器精度较低,而激光测距传感器则具有较高的精度,二者融合在一起,可保证最终的测量结果具有一定的精度。
接下来测试研究方法的避障性能。在栅格图中,机器人根据要求依次对每一列货物巡视,最终返回起始点位置。对比研究方法和文献[1]方法得到的机器人避障行驶路径如图3所示。
▲图3 机器人避障实验结果
根据图3可以看出,在同一场景的障碍物影响下,文献[1]提出的方法下机器人出现了多次重复路径,对相同货物重复巡检,且该方法无法完成自主避障。相比之下,研究方法在存在多障碍环境下完成了货物的按序巡检,并且线路无重复。由此可以说明研究方法适用性和应用性能更强。这是因为研究方法采用了嵌入式视觉传感器与激光测距传感器融合方法,有效实现了对障碍物的自主避障。
图4为研究方法和文献[1]方法经过多次迭代后得到的机器人避障路线长度以及对应的收敛曲线。
▲图4 不同方法的巡检路径长度收敛曲线
通过观察图4可知,研究方法在迭代到第10次时就取得了最优路径,且路径长度最大值小于17 m,而文献[1]方法在第40次才取得最优路径,路径长度最大值在18 m~19 m之间。因此可以得出研究方法的整体避障效率较高,选择的路径最短,满足机器人实际使用需求。这是因为研究方法采用了尺度不变特征变换算法,提取并将数据特征融合,感知障碍物并实现自主避障。
4 结论
由于机器人在执行任务时对周围环境是未知的,若不能采取有效的避障措施,对于机器人自身和任务执行情况都会产生不良影响。因此,本文将激光测距传感器与嵌入式视觉传感器融合在一起,提出一种自主避障方法,并与其他方法展开对比实验测试,结果表明,研究方法通过融合两传感器信息,精准定位障碍物位置,帮助机器人实现自主避障。