0 引言
自动导引车(AutomaticGuidedVehicleAGV)指能够沿着磁性或光路自动引导路径行驶,并配备安全设备,具有编程调试、停车选择等多种功能的无人运输车,是物流系统中重要的自动化装置。近年来,随着自动化水平的提高,AGV的应用范围不断扩展,被广泛地应用于军事、工业、交通等领域。
在工业应用中,AGV主要用来完成车间物料的运送。尽管布局安排会尽量保证AGV的工作路径没有障碍,但是由于车间环境比较复杂,堆放随意的物料和工人都可能影响小车的运动,需要小车本身具有快速检测障碍物、智能准确地避开障碍和停车等待的能力。完整的避障系统主要包括障碍物检测、障碍物信息计算和避障操作3部分。目前障碍物检测方法主要有激光雷达检测、超声波传感器检测、红外传感器检测、机器视觉检测等,视觉检测通常是利用电荷耦合器件(charge-coupled-de-vice CCD)相机采集外界信息,通过计算机对图像进行处理和计算,得到障碍物的运动信息,因其具有精度高、信息量大等优点,受到国内外的广泛关注。王荣本等设计了一种基于视觉导航的AGV,能够沿着视觉标识带行驶,并实现自主避障;杨福增等提出一种基于立体视觉技术的障碍物检测方法,该方法稳定、可靠,识别准确率较高。从目前的情况来看,对不同状态下障碍物检测的研究尚不全面,因此本文提出一种基于双目视觉的障碍物检测技术,对车间内不同状态下障碍物进行检测,并采取相应的避障策略。
1 障碍物检测原理
1.1 障碍物检测流程
首先对摄像头进行标定,计算地面在左摄像头坐标系下的平面方程。障碍物检测流程如下:
步骤1 通过双目摄像头采集AGV前方图像,采集周期为T。
步骤2 对左右两幅图像进行畸变和极线校正,消除失真,将匹配点约束在一条直线上,减少误匹配并大大缩短匹配时间。
步骤3 对左右图像进行立体匹配,获取视差图。
步骤4 计算图像匹配点在左摄像头坐标系下的三维坐标,获取其高度距离与水平距离,并与设定阈值比较,判定障碍物是否存在。
步骤5 无障碍时继续检测,有障碍物则减速停车,检测障碍物的运动状态,并获取参数信息。
1.2 基于深度检测的障碍物判定算法
本文利用OpenCV视觉库中的cvFindCon-tours轮廓检测函数检测物体的轮廓,并用其外接矩形框标记,如图1所示。根据其中的白色像素点,利用双目视觉测距原理计算出物体相对左摄像头坐标系下的三维坐标。
这里提出一种障碍物的判定算法:首先随机提取若干个矩形框中的白色像素点,计算其位于左摄像机坐标系下的三维坐标(x,y,z),其中x和z分别表示物体相对于左摄像头的高度距离与水平距离,然后根据设定的阈值判断是否为障碍物。具体步骤如下:
步骤1 随机提取视差图矩形框内若干白色像素点di(i=1,2,3,…),计算其三维坐标di(x,y,z),并按照水平距离z的大小排序。
暂无评论内容