[发明专利]一种基于ROS机器人操作系统的机器人自动跟随方法有效
申请号: | 201710455840.0 | 申请日: | 2017-06-16 |
公开(公告)号: | CN107272680B | 公开(公告)日: | 2019-10-18 |
发明(设计)人: | 田联房;郑灿涛;杜启亮;陈浩权 | 申请(专利权)人: | 华南理工大学 |
主分类号: | G05D1/02 | 分类号: | G05D1/02 |
代理公司: | 广州市华学知识产权代理有限公司 44245 | 代理人: | 冯炳辉 |
地址: | 510640 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于ROS机器人操作系统的机器人自动跟随方法,该方法是使用激光雷达采集数据,对数据进行预处理,使用层次聚类算法对数据进行聚类,以行人双腿模型作为行人识别特征,以双腿中间位置代表行人位置,以重采样的方法解决激光雷达特征不明显,识别率低的缺点。本发明方法合理利用ROS机器人系统进行实现,方便各部分之间的消息传递和功能实现,利用了ROS的导航框架,使机器人自动跟随过程中,具备一定的导航避障能力。 | ||
搜索关键词: | 一种 基于 ros 机器人 操作系统 自动 跟随 方法 | ||
【主权项】:
1.一种基于ROS机器人操作系统的机器人自动跟随方法,其特征在于,包括以下步骤:1)传感器数据处理:使用激光雷达采集数据,对数据进行预处理,剔除那些超出预设范围的数据,并将结果转化到全局坐标系;2)数据聚类:使用层次聚类算法对数据进行聚类,去除噪声点并对环境进行分割;3)行人识别:对聚类后的结果进行行人识别,以类圆弧算法识别行人腿部模型,以行人双腿特征作为行人检测特征,识别出可能的行人位置;其中,以类圆弧算法识别行人腿部模型,以行人双腿模型作为行人识别特征,步骤如下:3.1)计算每个类的总长度Lk和首尾元素的直线距离Dk:![]()
其中classk[n]代表聚类后的结果,k表示类的标号,n表示一个类中元素的数量,i代表一个类中元素的标号,classk[i]·x、classk[i]·y分别代表第k个类的第i个元素的横坐标和纵坐标;3.2)计算每个类的弯曲度Curve[k],k表示类的标号:
3.3)判断Curve[k]>δc,且Lmin<Lk<Lmax,则把该类当成候选Leg簇,δc表示最小的曲率,Lmin、Lmax分别代表最小和最大的类长度;3.4)计算所有候选Leg簇的中心坐标:![]()
其中xc和yc分别代表第k个类的中心的横坐标和纵坐标,将所有类的中心坐标记为Leg_Array[n](xc,yc),n代表类的数量;3.5)计算Leg_Array[n]中每两个Leg之间的距离Dist_Leg:
其中,Leg_Array[k].x、Leg_Array[k].y和Leg_Array[k+1].x、Leg_Array[k+1].y分别代表第k个Leg和第k+1个Leg位置的横坐标和纵坐标,若Dist_Leg[k]<Leg_dist,Leg_dist表示允许的最大行人双腿间距,则计算Leg_Array[k]和Leg_Array[k+1]的中间位置,作为可能的行人坐标:xp=(Leg_Array[k].x+Leg_Array[k+1].x)/2yp=(Leg_Array[k].y+Leg_Array[k+1].y)/2xp和yp分别代表可能的行人位置的横坐标和纵坐标,将所有可能的行人位置记为People_Array[n](xp,yp),n代表可能的行人数量;4)重采样:在设定时间内对行人重新进行检测,根据前后两次检测结果,排除干扰项,锁定行人目标,并综合利用机器人当前位置和行人位置,确定下一时刻目标位置,避免机器人与行人碰撞;5)导航:根据行人目标确定导航目标,使用A*算法规划出全局路径,并使用dwa动态窗口算法规划局部路径,控制机器人朝导航目标运动,并实时避开障碍物。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学,未经华南理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710455840.0/,转载请声明来源钻瓜专利网。