基于OpenMV的四足巡线机器人算法设计*
2022-07-13赵晨曦陈海龙唐为浩付晨刘鑫慧傅怀梁
赵晨曦 陈海龙 唐为浩 付晨 刘鑫慧 傅怀梁
开发设计
基于OpenMV的四足巡线机器人算法设计*
赵晨曦1陈海龙2唐为浩1付晨1刘鑫慧1傅怀梁1
(1.南通大学张謇学院,江苏 南通 226000 2.南通大学交通与土木工程学院,江苏 南通 226000)
四足机器人是足式机器人的典型代表,其仿生性强、结构简单。针对四足巡线机器人运动过程中,路径识别与跟踪存在识别率低、易受干扰、解算周期长等问题,在图像处理模块OpenMV基础上,提出特征点检测与线性回归法相结合的方法,对地面标识线进行识别与跟踪控制,提高了四足机器人巡线的精度、速度及抗干扰性能。
四足巡线机器人;OpenMV;线性回归;特征点检测;路径识别与跟踪
0 引言
随着工业4.0进程的不断推进,能够自主移动的各类机器人被广泛应用于工业生产及生活中,典型代表有工业AGV小车、餐厅送餐机器人、导游机器人等。四足机器人是一种典型的多足式机器人,具有结构可变、机动性强、控制容易、运动灵活等特点,在跨越障碍、适应地形方面有较大优势[1];在巡检、勘察、娱乐等领域有较大的发展空间。
为进一步拓展四足机器人的应用领域,本文以四足机器人巡线送快递为研究背景。目前,已有科研人员对机器人巡线进行研究:文献[3]利用线性回归算法进行路径识别,并通过PID算法不断修正无人机方向,从而实现路径跟踪;文献[4]对目标路径实行多段标记,通过权重加和算法与线性回归得出小车偏移量,对弯道识别有较好效果;文献[5]提出“连点成线”的巡线方法,通过中值滤波方法对图像进行处理,去除地面噪点后,重新将有效路径点连接成线并进行跟踪,提高了系统的抗干扰性能。上述文献对常规无人小车、无人机等巡线功能做了深入研究,并取得一定成果。但因四足机器人与无人小车及无人机在行进的结构和方向上都存在不同,以上方法并不能完全适用于四足巡线机器人,因此本文针对四足巡线机器人行进时的路径识别与跟踪问题进行重点研究。
1 机器人总体搭建与构成
本文采用的四足巡线机器人本体自主设计,结构框图如图1所示。
图1 机器人总体结构框图
其中,姿态控制器采用32位低成本处理器STM32控制器;机器人本体由12个舵机关节组成,并使用9轴陀螺仪进行姿态反馈,可实现原地踏步、小跑、前进后退,左右平移等动作,满足机器人路径跟踪的基本要求。
1.1 机器人本体
四足巡线机器人站立高度为19.2 cm,整体重量为3.5 kg,机身采用PLA材质3D打印而成,如图2所示。
图2 四足巡线机器人本体侧视图
四足巡线机器人每条腿都有3个自由度,可通过侧摆关节、大腿关节、小腿关节的不同动作组合实现机器人前进、后退与转弯等动作。
在四足巡线机器人腹部中间的固定板上安装图像处理模块OpenMV,安装高度约为15 cm。该安装方式不仅能降低机身摆动对OpenMV的影响,还能保证四足巡线机器人获得足够的前瞻性视角,以识别5~25 cm范围内的清晰路径图像。
1.2 图像处理单元
图像处理单元采用开源的OpenMV,其集成了OV7725摄像头芯片[4],采集四足巡线机器人路径图像,并利用STM32H427CPU处理器进行图像处理与分析。为减少计算量,图像采集的分辨率为QQQVGA(80×60)。四足巡线机器人路径采集图像示例如图3所示。
图3 四足巡线机器人路径采集图像示例
2 算法设计
2.1 线性回归算法
线性回归算法对二值化后的图像进行处理,首先,通过Otsu大津算法对四足巡线机器人路径采集图像中的关键色块进行二值化预处理[7];然后,利用findbloks算法搜索视野中所有符合阈值的色块,并筛选出最大的色块作为目标路径;最后,对目标路径线性回归得出拟合直线方程,计算水平偏移量与角度偏移量,并将偏移量发给STM32控制器,实现对四足巡线机器人行进方向矫正。OpenMV线性回归算法流程图如图4所示。
图4 OpenMV线性回归算法流程图
线性回归计算具体过程如下:
1)以四足巡线机器人视野左上角为坐标系原点建立坐标系,设四足巡线机器人视野中心点坐标为(0,0),待拟合直线角度为line.theta,目标路径水平偏移量为,角度偏移量为theta_err,如图5所示;
图5 四足巡线机机器人视野示意图
2)利用get_regression函数得到line.theta()角度值及拟合直线的2个顶点坐标(1,1)、(2,2);
3)通过坐标变换得到拟合直线相对于视野中心垂直竖线的角度即角度偏移量theta_err,角度变换过程如下:
if line.theta()>90:
else:
theta_err = line.theta()
4)根据拟合直线的2个顶点坐标(1,1)、(2,2),计算拟合直线点斜式的方程为
该算法易受光线及路面反光影响,且当视野中有多条路径或有“人”字形路径时,容易出现路径提取错误,因此,需结合特征点检测算法进行路径识别。
2.2 特征点检测算法
既定目标的检测和提取常用模板匹配和特征点检测2种算法。机器人行进是一个动态过程,受环境影响较大,且每次到达目标位置时,摄像头与之距离和角度均不一致。模板匹配算法,需提前对同一特征保存多种角度图像,降低了OpenMV运行速度,影响巡线效果。特征点检测算法对图像角度、亮度等依赖性较小,因此,本文采用特征点检测算法辅助机器人进行路径识别。
首先,提取四足巡线机器人路径特征点,即利用find_keypoints函数的Fast角点检测器提取路径的关键点(路径角点),并用空心圆圈标出,如图6所示;然后,利用save_descriptor函数将提取关键点后的路径图像保存至OpenMV的SD卡中;接着,在机器人行进过程中,OpenMV不断拍摄当前视野中的图像,并对图像进行特征点检测,与之前保存在SD卡中的图像进行特征点比对,利用match_ count()函数输出2幅图像的近似特征点个数,当个数大于设定值3时,判定当前图像为目标路径;最后,与线性回归算法相结合,对目标路径进行回归、拟合处理,得出偏移量,控制机器人正确运动。特征点检测流程如图7所示。
图6 十字路口的特征点提取
图7 特征点检测流程
在利用find_keypoints函数提取路径特征点过程中,需要对参数Scale_factor进行调整,Scale_factor越大,OpenMV运行越快;Scale_factor越小,则OpenMV运行越慢,但图像匹配度会相应变好。因此,选择合适的Scale_factor值,在兼顾帧率的同时可提高特征点检测精度。经实验发现,Scale_factor取1.4左右时,OpenMV图像处理达到最佳状态。
特征点检测算法可直接对四足巡线机器人路径原始采集图像进行处理,能避免地面反光、噪点等干扰。但特征点检测算法无法实现路径的偏差分析,因此,本文利用特征点检测算法与线性回归算法相结合的方式实现路径识别。
2.3 基于特征点检测的线性回归算法
基于特征点检测的线性回归算法的主要思想:首先,利用特征点检测算法,快速定位四足巡线机器人视野中的直线、弯道、十字路口、人形分岔口等关键路径元素,并利用方框对相关元素进行框选;然后,将目标框在视野坐标系中的偏移量与框内路径元素的线性回归偏移量进行叠加后,得到机器人相对路径的实际偏移量,以实现机器人对不同路径的识别与筛选,具体流程如下:
1)四足巡线机器人启动前,利用OpenMV拍摄目标路径各路段的具体特征,并保存至OpenMV;
2)四足巡线机器人启动后,利用特征点检测算法扫描视野中的目标路径;
3)对目标路径进行色块框选,得到色块方框在视野坐标系中的坐标;
4) 对方框内的色块线性回归,得到框内路径的偏移量;
5)将方框坐标与路径偏移量叠加,由OpenMV通过串口向STM32控制器发送图像处理结果,控制四足巡线机器人运动。
3 算法测试与分析
为验证基于特征点检测的线性回归算法的可行性,定制具有直道、弯道、十字路口的地图,并在地图上设置简易楼梯、纸团以及与路径颜色类似的干扰物。将四足巡线机器人置于地图中,观察OpenMV摄像头返回的图像处理情况与机器人实际巡线效果,并测试灯光、颜色对四足巡线机器人路径识别的影响。
3.1 算法测试
针对巡线功能,若仅采用线性回归算法,在视野局限下,识别简单路径可得到不错效果。但随着路径复杂化,机器人移动速度加快,当视野中出现多条路径,且有障碍物时,仅采用线性回归算法易造成视觉误判,误将所有符合设定阈值的像素点均进行线性回归,使拟合直线与实际路径大相径庭。
针对上述问题,运用特征点检测算法,能有效排除形状不符合要求的色块,避免视野中其他物体的干扰,降低了灯光、颜色对四足巡线机器人的影响。采用线性回归算法与基于特征点检测的线性回归算法的路径识别效果对比如图8所示。
由图8可知,结合了特征点检测的线性回归算法能够更精准地识别路径,排除干扰物,达到较好效果。
3.2 实验对比与分析
在测试路径识别算法过程中,遇到的主要问题是丢线和无法正确识别路径。针对丢线问题,在每拍摄一幅图像后,便将其返回的偏差量与角度值保存在数组中,一旦发现视野中没有色块,便继续听从上一幅图像指挥,直至出现色块。
针对由于反光以及周围干扰因素过多,导致机器人无法正确识别路径的问题,在OpenMV的摄像头中增加滤光片,并调整摄像头位置,使路径识别效果有显著提升,实验测试效果如图9、图10所示。
图9 四足巡线机器人实际路径识别效果图
图10 四足巡线机器人总体测试效果图
由图9、图10可知,算法优化后,硬件设计也会对四足巡线机器人路径识别的效果产生影响。虽然采用基于特征点检测的线性回归算法可以识别路径,但是需增加滤光片才能有效解决光线干扰问题。
4 结语
本文根据四足巡线机器人行进特点提出基于特征点检测的线性回归算法。实验结果表明:先在视野中寻找最大色块再线性回归可有效避免干扰物影响;结合特征点检测算法可提高四足巡线机器人路径识别与跟踪的准确性。
[1] 汪世庆,单鑫,刘逸驰.四足机器人的发展现状及趋势[J].造纸装备及材料,2020,49(4):227-228.
[2] 陈超,郑彦宁,江鹏,等.基于两自由度模块化关节的巡线机器人设计[J].仪器仪表学报,2014,35(S2):28-35.
[3] 刘轩宇,李浩阳,胡子琨.基于OpenMV的自动巡线无人机研究[J].电子测试,2021(12):18-19.
[4] 李思熠,王少坤.基于OpenMV和Arduino的智能巡线机器人[J].科技与创新,2020(22):50-53.
[5] 欧寒芝,匡盈霏,丁慧玉,等.一种机器视觉巡线避障小车的设计[J].电脑与信息技术,2022,30(2):13-17.
[6] 张文青,龙奕帆.基于OpenMV视觉模块的智能小车巡线系统设计[J].集成电路应用,2021,38(10):232-233.
[7]沈中坤,徐劲节.基于OpenMV视觉模块和MPU6050角度传感器的智慧寻路小车[J].电子制作,2022,30(3):28-30,19.
[8]张宇成,王潮涌.基于STM32和OpenMV的图形识别与测量系统[J].电子测试,2021(15):43-46.
[9] 夏胜杰,杨昊,艾伟清.基于Arduino单片机和OpenMV的颜色目标定位与跟踪小车的设计与实现[J].常熟理工学院学报,2021,35(5):59-64.
[10] 易静,李光,薛晨慷,等.四足机器人Trot步态偏航分析及其控制[J].机械与电子,2022,40(3):58-64.
[11] 张伟,谭文浩,李贻斌.基于深度强化学习的四足机器人运动控制发展现状与展望[J].山东大学学报(医学版), 2020,58(8):61-66.
[12] 李琳,薛泽浩,蔡蒂,等.管道内壁四足爬壁机器人的运动学与步态规划[J].浙江大学学报(工学版),2021,55(12): 2286-2297.
[13] 张良安,唐锴,李鹏飞,等.基于复合摆线轨迹的四足机器人稳定性分析[J].江苏大学学报(自然科学版),2022, 43(1):62-66,74.
[14] 毛先胤,吕黔苏,马晓红,等.基于双目视觉的电力线巡检机器人障碍物定位测距[J].自动化与仪器仪表,2021(9): 244-248.
[15] 毛先胤,刘宇,马晓红,等.基于SSD算法的电力巡线机器人障碍物识别[J].自动化与仪器仪表,2020(5):45-48.
[16] 纵怀志,张军辉,张堃,等.液压四足机器人元件与液压系统研究现状与发展趋势[J].液压与气动,2021,45(8):1-16.
Algorithm Design of Quadruped Line Inspection Robot Based on OpenMV
ZHAOChenxi1CHENHailong2TANGWeihao1FUChen1LIUXinhui1FUHuailiang1
(1.Zhang Jian College, Nantong University, Nantong 226000, China 2.School of Transportation and Civil Engineering, Nantong University, Nantong 226000, China)
Quadruped robot is a typical representative of quadruped robot, which has strong bionics and simple structure. Aiming at the problems of low recognition rate, easy interference and long calculation cycle of path recognition and tracking during the movement of quadruped line patrol robot, a method combining feature point detection and linear regression is proposed on the basis of image processing module OpenMV to recognize and track the ground marking line, which improves the accuracy, speed and anti-interference performance of quadruped line patrol robot.
quadruped line patrol robot; OpenMV; linear regression; feature point detection; path recognition and tracking
赵晨曦,陈海龙,唐为浩,等.基于OpenMV的四足巡线机器人算法设计[J].自动化与信息工程,2022,43(3):31-36.
ZHAO Chenxi, CHEN Hailong, TANG Weihao, et al. Algorithm design of quadruped line inspection robot based on OpenMV[J]. Automation & Information Engineering, 2022,43(3):31-36.
TP242.6
A
1674-2605(2022)03-0006-06
10.3969/j.issn.1674-2605.2022.03.006
江苏省高等学校省级创新创业训练计划项目(202010304181H)
赵晨曦,女,2000年生,本科,学生,主要研究方向:电气工程及其自动化。E-mail: 1328464346@qq.com
陈海龙(通信作者),男,1986年生,工学硕士,实验师,主要研究方向:电气自动化控制,嵌入式,智能机器人。E-mail: hilong521@163.com
唐为浩,男,2001年生,本科,学生,主要研究方向:电气工程及其自动化。E-mail: 1739055918@qq.com
付晨,男,2001年生,本科,学生,主要研究方向:电气工程及其自动化。E-mail: 1713952775@qq.com
刘鑫慧,女,2002年生,本科,学生,主要研究方向:电气工程及其自动化。E-mail: 2364132501@qq.com
傅怀梁,男,1979年生,博士,副研究员,主要研究方向:凝聚态物理学。E-mail:16807901@qq.com