一种基于双目视觉的智能避障算法制造技术

技术编号:21476499 阅读:23 留言:0更新日期:2019-06-29 04:27
本发明专利技术公开了一种基于双目视觉的智能避障算法,包括下述步骤:S1,根据机器人要到达的目的地进行路径的规划,对双目摄像头的左右两个摄像头分别进行标定,分别计算地面在左、右摄像头坐标系下的平面方程;S2,通过双目摄像头采集机器人前方图像,并进行去噪处理;S3,对双目摄像头的左右两个摄像头采集的两幅图像进行畸变和极线校正,消去失真,将匹配点约束在一条直线上,最终匹配得到一张视差图;本发明专利技术的算法满足了高精度正确检测障碍物的要求,且可以达到实时性检测的要求;满足了精确性和实时性的统一,使机器人达到了良好的避障效果。

【技术实现步骤摘要】
一种基于双目视觉的智能避障算法
本专利技术涉及智能避障领域,具体涉及一种基于双目视觉的智能避障算法。
技术介绍
移动机器人在实际运行过程中,大多是处在动态不确定环境里,在这种环境里,机器人运行环境部分未知,并且工作环境中的一些障碍物是动态不确定变化的;在含有动态不确定障碍物的环境里只能采用在线局部路径规划的方式来解决,目前常用的避障方法有模糊导航算法、人工势场算法、滚动窗口算法等,但是,这些智能控制算法不具备动态预测的功能,对快速移动的动态障碍物的避障效果较差。因此现有技术把预测功能加入避障算法中,以提高动态避障的准确性,而常用的预测方法包括时间序列法、回归分析法、灰色预测法等,但是,这些方法大都集中在对其因果关系回归模型和时间序列模型的分析上,因而所建立的模型不能全面和本质的反映所预测动态数据的内在结构和复杂性,从而丢失了信息量。
技术实现思路
本专利技术的目的在于克服现有技术的缺点与不足,提供一种基于双目视觉的智能避障算法,该算法能够使机器人在遇到障碍时进行判断并重新规划路径,以达到避障的效果,且能够满足快速判断和实时性的要求。本专利技术的目的通过下述技术方案实现:一种基于双目视觉的智能避障算法,包括下述步骤:S1,根据机器人要到达的目的地进行路径的规划,对双目摄像头的左右两个摄像头分别进行标定;S2,通过双目摄像头采集机器人前方图像,并进行去噪处理;S3,对双目摄像头的左右两个摄像头采集的两幅图像进行畸变和极线校正,消去失真,将匹配点约束在一条直线上,最终匹配得到一张视差图;S4,计算视差图中匹配点在左摄像头坐标系下的三维坐标(x,y,z),获取其高度与水平距离,并与设定阈值比较,通过障碍物的判别算法来判断障碍物是否存在;使用OpenCV视觉库中的cvFindCon—tours轮廓检测函数检测物体的轮廓,并用其外接矩形框标记;其中,所述障碍物的判别算法具体为:S4.1,随机提取视差图中外接矩形框内若干白色像素点di(i=1,2,3,…),计算其三维坐标di(xi,yi,zi),并按照水平距离zi的大小排序;S4.2,由于提取和计算过程中存在误差,所以可能存在异常数据,因此取所有白色像素点水平距离zi的中位数z0,并设定阈值φ,如白色像素点i的水平距离zi满足|zi-z0|>φ,则将白色像素点i作为异常点剔除,剩余白色像素点构成集合I;S4.3,计算集合I中白色像素点水平距离zi的平均值作为外接矩形框内障碍物距离机器人的水平距离;取集合I中白色像素点三维坐标中xi的最大值xmax作为障碍物的高度;S4.4,设定高度阈值xd和水平距离阈值zd,当满足xmax>xd,且时,则判定外接矩形框内的物体为障碍物;S5,如判断前方无障碍物,则使机器人按照规划的路径行进;如判断前方有障碍物,则令机器人停止动作,并获取障碍物的参数信息,具体过程如下:S5.1,将障碍物的外接矩形框的宽度作为障碍物的宽度,记为Q,外接矩形框的中心作为障碍物中心点,记为O;S5.2,通过深度检测获取障碍物中心点O的三维坐标di(x,y,z),其中y表示中心点相对于左摄像头光心的偏移距离Li;获取外界矩形框中最左侧的一个白色像素点在左摄像头坐标系下的坐标(xL,yL,zL);S5.3,根据障碍物的宽度计算出障碍物中心点O的纵坐标,即O点相对于左摄像头光心的偏移距离Lo:S5.4,由于双目摄像头安装在机器人的中轴线上,两个摄像头光心距离为B,因此障碍物中心点O相对于机器人中轴线的偏距d为:其中d>0表示偏右,d<0表示偏左,d=0表示居中;S6,进行避障路径规划;S6.1,设定障碍物的长度为W;S6.2,当障碍物相对于机器人偏左时,机器人右转角度θ并沿平行安全距离直行一段距离X,机器人中心与障碍物中心的连线与规划路径垂直时,左转角度2θ并直行距离X,使其回归规划路径;对于机器人的避障过程,具体如下述公式所示:上式中,L为机器人的身宽;θ和2θ为机器人的旋转角度;D为障碍物相对机器人的距离;yL为障碍物左侧边界相对于机器人中心的偏移距离;d为考虑存在的误差和安全问题所增加的补偿距离。本专利技术与现有技术相比具有以下的有益效果:(1)本专利技术的算法满足了高精度正确检测障碍物的要求,且可以达到实时性检测的要求;(2)本专利技术的算法满足了精确性和实时性的统一,使机器人达到了良好的避障效果;(3)本专利技术的算法具有精简性,使机器人避障的动作具有高效性;(4)本专利技术的算法实现了对实验空间内不同状态的障碍物进行检测,并采取相应的避障策略。附图说明图1为本专利技术避障路径规划示意图;图2为本专利技术障碍物轮廓检测示意图。具体实施方式下面结合实施例及附图对本专利技术作进一步详细的描述,但本专利技术的实施方式不限于此。本专利技术的机器人在检测到前方物体并判定为障碍物时,立即站立停止,在静止状态下时获取障碍物的尺寸参数和方位信息,并根据障碍物尺寸参数、方位信息控制机器人绕过障碍,具体来说:如图1~2所示,一种基于双目视觉的智能避障算法,包括下述步骤:步骤一,根据机器人要到达的目的地进行路径的规划,对双目摄像头的左右两个摄像头分别进行标定;步骤二,通过双目摄像头采集机器人前方图像,采集周期为T,并进行去噪处理;步骤三,对双目摄像头的左右两个摄像头采集的两幅图像进行畸变和极线校正,消去失真,将匹配点约束在一条直线上,减少误匹配并大大缩短匹配时间,最终匹配得到一张视差图;步骤四,计算视差图中匹配点在左摄像头坐标系下的三维坐标(x,y,z),获取其高度与水平距离,并与设定阈值比较,通过障碍物的判别算法来判断障碍物是否存在;使用OpenCV视觉库中的cvFindCon—tours轮廓检测函数检测物体的轮廓,并用其外接矩形框标记;其中,障碍物的判别算法具体为:首先随机提取视差图中外接矩形框内物体上若干个白色像素点,计算其位于左摄像机坐标系下的三维坐标(x,y,z),其中x和z分别表示物体相对于左摄像头的高度距离与水平距离,y则表示物体相对于左摄像头光心的左右偏移距离,然后根据设定的阈值判断矩形框内的物体是否为障碍物;(1)随机提取视差图中外接矩形框内若干白色像素点di(i=1,2,3,…),计算其三维坐标di(xi,yi,zi),并按照水平距离zi(即三维坐标中的zi值)的大小排序;(2)由于提取和计算过程中存在误差,所以可能存在异常数据,因此取所有白色像素点水平距离zi的中位数z0,并设定阈值φ,如白色像素点i的水平距离zi满足|zi-z0|>φ,则将白色像素点i作为异常点剔除,剩余白色像素点构成集合I;(3)计算集合I中白色像素点水平距离zi的平均值作为外接矩形框内障碍物距离机器人的水平距离;取集合I中白色像素点三维坐标中xi的最大值xmax作为障碍物的高度;(4)设定高度阈值xd和水平距离阈值zd,当满足xmax>xd,且时,则判定外接矩形框内的物体为障碍物;步骤五,如判断前方无障碍物,则使机器人按照规划的路径行进;如判断前方有障碍物,则令机器人停止动作,并获取障碍物的参数信息,对于在行进过程中遇到的障碍物,我们除了需要得到深度信息外,还需要获取其宽度、相对于我们机器人的方向及偏距等信息,以便于机器人绕过该障碍,具体过程如下:(1)将障碍物的外接矩形框的宽度作为障碍物的宽度,记为Q,外本文档来自技高网...

【技术保护点】
1.一种基于双目视觉的智能避障算法,其特征在于,包括下述步骤:S1,根据机器人要到达的目的地进行路径的规划,对双目摄像头的左右两个摄像头分别进行标定;S2,通过双目摄像头采集机器人前方图像,并进行去噪处理;S3,对双目摄像头的左右两个摄像头采集的两幅图像进行畸变和极线校正,消去失真,将匹配点约束在一条直线上,最终匹配得到一张视差图;S4,计算视差图中匹配点在左摄像头坐标系下的三维坐标(x,y,z),获取其高度与水平距离,并与设定阈值比较,通过障碍物的判别算法来判断障碍物是否存在;使用OpenCV视觉库中的cvFindCon—tours轮廓检测函数检测物体的轮廓,并用其外接矩形框标记;其中,所述障碍物的判别算法具体为:S4.1,随机提取视差图中外接矩形框内若干白色像素点di(i=1,2,3,…),计算其三维坐标di(xi,yi,zi),并按照水平距离zi的大小排序;S4.2,由于提取和计算过程中存在误差,所以可能存在异常数据,因此取所有白色像素点水平距离zi的中位数z0,并设定阈值φ,如白色像素点i的水平距离zi满足|zi‑z0|>φ,则将白色像素点i作为异常点剔除,剩余白色像素点构成集合I;S4.3,计算集合I中白色像素点水平距离zi的平均值z作为外接矩形框内障碍物距离机器人的水平距离;取集合I中白色像素点三维坐标中xi的最大值xmax作为障碍物的高度;S4.4,设定高度阈值xd和水平距离阈值zd,当满足xmax>xd,且...

【技术特征摘要】
1.一种基于双目视觉的智能避障算法,其特征在于,包括下述步骤:S1,根据机器人要到达的目的地进行路径的规划,对双目摄像头的左右两个摄像头分别进行标定;S2,通过双目摄像头采集机器人前方图像,并进行去噪处理;S3,对双目摄像头的左右两个摄像头采集的两幅图像进行畸变和极线校正,消去失真,将匹配点约束在一条直线上,最终匹配得到一张视差图;S4,计算视差图中匹配点在左摄像头坐标系下的三维坐标(x,y,z),获取其高度与水平距离,并与设定阈值比较,通过障碍物的判别算法来判断障碍物是否存在;使用OpenCV视觉库中的cvFindCon—tours轮廓检测函数检测物体的轮廓,并用其外接矩形框标记;其中,所述障碍物的判别算法具体为:S4.1,随机提取视差图中外接矩形框内若干白色像素点di(i=1,2,3,…),计算其三维坐标di(xi,yi,zi),并按照水平距离zi的大小排序;S4.2,由于提取和计算过程中存在误差,所以可能存在异常数据,因此取所有白色像素点水平距离zi的中位数z0,并设定阈值φ,如白色像素点i的水平距离zi满足|zi-z0|>φ,则将白色像素点i作为异常点剔除,剩余白色像素点构成集合I;S4.3,计算集合I中白色像素点水平距离zi的平均值z作为外接矩形框内障碍物距离机器人的水平距离;取集合I中白色像素点三维坐标中xi的最大值xmax作为障碍物的高度;S4.4,设定高度阈值xd和水平距离阈值zd,当满足x...

【专利技术属性】
技术研发人员:陈梓瀚杜玉晓黄修平林佳荣王洽蓬
申请(专利权)人:广东工业大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1