实验中的原始输入图像是USB摄像头采集320×240像素的RGB格式图像,最大帧数30帧/s。
图像预处理的效果对后续哈夫变换检测路径信息的速度和准确性有很大影响。对整幅图像进行抽取时计算量过大、也无必要,故先将彩色图像转换为灰度图像,再将图像的大小依据最近邻域插值法原理进行缩小以节约后续计算时间。在实验室环境下,经测试,将原始图像缩小到30%仍然能满足需要,处理时间缩短了72%。
由于图像传感器从时间和空间上对介质(光)采样,其图像质量对现场的非均匀光场和其他干扰因素非常敏感,二值化时,不同光照条件下阈值的确定是一件比较困难的工作。目前常用的阈值选取方法有双峰法、迭代法和最大类间方差法。从执行时问和处理效果2方面考虑,对3种方法比较后(结果如表1所示),在优先考虑实时性的前提下,选用双峰法来求取阈值。在实验室条件下,路径环境相对理想,黑色引导线与背景反差较大。在灰度直方图上,引导线和背景都形成高峰,对这2个峰值及谷底的求取也可简化,使用灰度级的最大值和最小值代替2个峰值,那么这2个峰值的中间值即可作为谷底用作图像的阈值。
地面的反光和阴影,以及不均匀的光照都会导致同一幅图像的二值化效果表现出很大差别,图2和图3是对同一幅图像在不同光照条件下二值化的结果,可以看到在光照条件2下会出现大量的黑点,这些黑点将严重影响提取路径信息的速度并且可能导致错误的路径信息。然而,相对于灰度、颜色特征,边缘特征受光照影响较小。为此,对缩小后的图像先进行引导线的边缘检测,边缘检测后图像中引导线边缘像素灰度的对比度得到增强,通过实验确定合适的阈值,然后对图像进行二值化以提取路径信息。
1.2 引导线角度检测
采用哈夫变换检测路径引导线的角度。为了简单而又不失一般性,引导线分1条路径和2条相交的路径。当2条直线的夹角等于90°时即认为是两条相互垂直的路径。直线的哈夫变换利用如下直线的极坐标方程:
式(1)中,(x,y)表示图像空间xy中所有共线的点即图像中的黑点;θ表示直线法线和x轴的夹角,取值范围为0~180°;λ表示直线到原点的距离。
2 视觉导航的机器人运动控制
机器人运动控制部分分为直行控制和转弯控制2部分。