本文针对草地图像边缘检测进行研究,传统的草地图像边缘检测算法,如canny算法,不仅边缘不够清文章引用: 刘卫光, 李洋, 杨关. 草地图像边缘检测算法研究[J]. 计算机科学与应用, 2017, 7(5): 457-462.
图像是客观对象的一种相似性描述,边缘是图像中的重要特征,边缘检测是基于灰度突变来分割图像的最常用的方法,包含着许多重要信息[1]。本文介绍的算法主要应用于智能割草机器人,现在常见的割草机器人,一般都采用铺设线轨的方法,但是铺设线轨成本很高。目前关于草地图像边缘检测的算法偏于实验,硬件成本和算法移植是核心问题,因此,研究改进草地图像边缘检测算法对提高割草机器人智能化水平和计算机图形交互领域的发展有着重要意义。本文针对草坪的环境特点[2],选取合适的边缘检测算法并进行了优化,能够快速准确的识别出草地边缘。
针对不同的图像,采取的边缘检测方法也不同[3]。要对草坪与背景进行分离以及针对草坪上障碍物的识别,就必须明白草坪环境的特点:范围大,边缘轮廓多种多样且曲折可变,图片像素值相对集中。
根据对草地图像的边缘进行提取,判断合理的路线,然后再反馈给机器人,基于此,对草地边缘的检测和提取在一定的准确性上还需要一定的实时性。有些算法虽然能准确的识别出草地边缘,但是需要花费较长的时间,并不能满足工业标准[4]。
2. 草地边缘提取 对一张草坪图像的边缘进行提取,应该选定绿色为目标色,非绿色的部分就是背景,整体设计思路如图1 所示。
首先,将彩色图像置于lab 色彩空间中,lab 色彩空间是基于人体感知所创造的一种色彩空间体系, L 轴表示亮度,A 轴代表红绿色,B 轴代表黄蓝色,相比于RGB 等传统的色彩空间,lab 色彩空间分布非常均匀[5],比如,在RGB 空间中蓝色到绿色的过渡色较多,但是绿色到红色又缺少黄色等色彩。正是因为lab 色彩空间的丰富色彩,使得对于图像中绿色的提取准确率相比其他色彩空间要准确的多。
接下来是对lab 色彩空间进行颜色划分,以便于后面把绿色作为目标色进行提取,这里采用k-means算法对lab 色彩空间的颜色进行分类[6], k-means 算法是一种硬聚类算法, 是通过迭代的方法求得数据点到中心距离最优的一种优化算法,原理是:计算各点的坐标平均值求得一个中心点,根据每个点到中心点的欧式距离进行分类,发现分区,使得每个集群中的对象尽可能彼此接近,并且尽可能远离其他集群中的对象。然后根据分好的颜色区间,对目标色进行抓取,并二值化处理,原图及处理结果分别如图2, 图3 和图4 所示,图5 是在lab 色彩空间里的颜色分布: 二值化以后的图像,可以看到,其边缘并不连续,而且草地区域有非常多的噪音,这对后续的边缘 458