APP下载

用于机器人视觉引导的GrabCut算法的改进

2020-11-12王绍杰党学明金伟伟

电子元器件与信息技术 2020年8期
关键词:模板背景物体

王绍杰,党学明,金伟伟

(合肥工业大学仪器科学与光电工程学院,安徽 合肥 230009)

0 引言

GrabCut算法是由Rother C[1]等人于2004年提出的一种高效的复杂背景下交互式图像分割算法[2],该算法对于实现复杂背景与前景目标的分割有着非常不错的效果,可以实现目标物体的准确定位,但是由于该算法需要人工交互,且当图像较大时,分割时间较长,会严重影响工业机器人的工作效率以及自动化程度,因此一直以来无法适用于机器人的视觉引导方面。本文针对这两个问题,提出了利用ORB特征匹配的结果对GrabCut算法进行初始化以及根据目标物体重新划分背景区域以加快图像分割速度的改进方法,改善了GrabCut算法的这两个弊端,最后通过目标物体识别与定位实验,验证了改进算法的效率和鲁棒性,证明了将改进的算法应用于机器人视觉引导中,可以实现目标物体的自动识别与定位,并且加快了目标定位的速度。

1 目标物体的识别

机器人视觉引导的第一步需要对目标物体进行识别,现有的目标匹配算法包括基于模板的匹配算法和基于特征的匹配算法[3]两种。在工业生产的过程中,外部环境充满了不确定性考虑到视觉引导时对识别速度以及准确度的要求,本文选择了ORB特征匹配算法进行目标识别,ORB特征匹配算法,即原Brief算法的改进,它的识别效率快且识别准确率高,可以较好的满足实际的工业需求。

2 GrabCut算法

GrabCut算法的基本思想是把整幅图像映射为s-t网络图[4],根据人工标记的矩形框划分前景和背景,分别计算图像中的点到前景和背景的距离以及他们之间像素的距离[5],把这两个距离的线性组合当作图中边的分割能量权值,此时图的分割问题就转化为求图中分割边的能量最小值问题。

2.1 算法的自动初始化

针对GrabCut算法需要人工标记进行初始化的问题,本文将ORB特征检测与GrabCut算法融为一体,把目标识别与图像分割这两个过程结合起来,利用匹配结果确定的目标区域对GrabCut算法进行初始化,以实现图像的自动分割。目标区域确定方法可以分为两个步骤:首先,根据正确匹配的特征点计算模板图像与目标物体图像之间的单应矩阵;然后,利用单应矩阵将模板图像的四个顶点映射到待匹配图像中去,确定目标物体的区域。

由于单应矩阵是根据正确匹配的特征点确定的,然而图像中的特征点并不是全部符合这个条件,因此根据该方法初步确定的目标区域,并不是规则的矩形。为了能得到符合要求的矩形框,本文采取对初步确定的目标区域求最小外接矩形的方法初始化GrabCut算法。

2.2 背景区域的重新划分

由GrabCut算法步骤可以了解到,在算法进行初始化时,用户利用矩形框将待匹配的图像分割为前景和背景,如果背景区域很大,在背景区域建立高斯模型以及后续进行迭代能量函数的最小化将会消耗大量的时间,影响算法的及时性,针对该问题,提出了根据包含目标物体的矩形框来重新划分背景区域的改进方法,通过减少建立背景区域高斯模型以及实现能量函数最小化所需时间的方法来提高算法的运行效率。设确定矩形框的左上角点与右下角点的坐标值分别为a(x1,y1),b(x2,y2),重新划分背景区域方法的流程图如图1,图2中红色矩形框与绿色矩形框之间的图像为重新划分的背景区域。

3 目标物体的定位

识别出目标物体后,还需要根据识别的结果,确定目标物体在待匹配图像中的像素坐标,对目标物体进行定位以便机器人完成对物体的后续动作。在一般的工业抓取过程中,为了使抓取工程稳定,通常使用物体的质心坐标作为抓取位置[6]。为了获取目标物体在图像中的质心坐标,利用GrabCut算法将目标物体与背景分离后,利用目标物体的轮廓获取其最小外接矩形,根据目标物体的轮廓得到其质心。目标物体轮廓对应的(h+k)阶矩可以表示为:

其中Mhk为图像在不同的h和k值下的矩,物体的质心可以表示为:

其中M10为图像对n轴的惯性矩,M00为区域密度的总和,M01为图像对m轴的惯性矩。

4 实验结果分析

本次实验针对上文中三种不同的背景,在windows平台下,采用 Visual Studio 2017 配置 opencv4.1.0的环境,利用文中的算法对目标物体进行了识别与定位,并对得到的结果进行了分析。图3和图4为改进算法与原算法的分割效果对比。

由分割结果图像可以看出,利用ORB特征匹配的结果可以实现GrabCut算法的自动初始化,但是根据图像很难判断重新划分背景后的算法与原算法在分割效果上的优劣,为了能够更客观的评价分割效果[7-8],本文利用模板图像与分割后物体图像的不变矩以及分割所需的时间作为判断的依据,其中不变矩可以表征图像在旋转、平移及尺寸变化等操作时不变的特征,利用不变矩判断两个图像的差异有三种方法,本文选取两图像不变矩之差的绝对值求和的方法进行判断,该方法的计算公式为:

其中和分别为模板图像与分割后物体图像的不变矩。式中的值越接近0,表示两幅图像的匹配程度越高,即分割效果越好。表1为三幅图像使用原算法与改进算法的分割效果对比表。表2为原算法与改进算法对三幅待匹配图像中目标物体定位结果的对比表。

表1 分割效果对比表

由表中数据对比可知,改进后算法的匹配程度,定位结果与原算法相差很小,证明了重新划分背景的改进方法对分割效果没有影响,但在分离目标物体与背景时,改进算法的耗时更少,效率更高。

5 结语

对于复杂背景中物体的识别与定位,GrabCut算法可以较好的分离目标物体与背景,但是该算法需要人工交互来标记包含目标物体的矩形区域,影响机器人在目标识别与定位过程中的自动化,针对该问题,提出了通过ORB特征匹配的方法获得包含目标物体的矩形框,利用该矩形框对GrabCut算法进行初始化;针对GrabCut算法耗时长的缺点,根据目标物体的大小重新划分了背景区域,通过比较分割所需时间以及分割后目标物体与模板物体的匹配程度,可以有效说明改进的算法可以实现目标物体识别和快速,准确地定位,将其应用于视觉引导领域,对于实现工业机器人的自动化具有一定的意义。

猜你喜欢

模板背景物体
高层建筑中铝模板系统组成与应用
铝模板在高层建筑施工中的应用
“新四化”背景下汽车NVH的发展趋势
特高大模板支撑方案的优选研究
《论持久战》的写作背景
Inventors and Inventions
黑洞背景知识
揭开物体沉浮的秘密
为什么同一物体在世界各地重量不一样?
“力”常考易错点扫描