基于SCARA机器人的快速视觉定位方法及系统与流程

文档序号:13642034阅读:426来源:国知局

本发明涉及图像识别技术领域,更为具体地,涉及一种基于scara机器人的快速视觉定位方法及系统。



背景技术:

scara(selectivecomplianceassemblyrobotarm,平面关节型机器人)机器人是一种应用于装配作业的机器人手臂,也就是说,其是一种应用于生产的工业机器人(下称机器人)。目前应用于生产中的工业机器人大都是根据特定的任务使用离线编程或者示教的方法进行机器人运动轨迹的编程或轨迹的规划,对机器人的操作过程只是反复执行一系列已定义好的动作,一旦工作环境发生变化,或者操作对象的状态发生改变,都会致使机器人无法准确进行工作。

随着工业的发展和机器人应用领域的不断扩大,现代化工业对机器人有了更高的要求,机器人在工业生产中需要对环境有更强的适应能力并且拥有更高的智能化,为满足这些要求,可以为机器人配备视觉系统,使机器人自行感知周围环境来进行信息采集、处理和理解并做出决策;而机器人视觉定位技术的引入可以提高工业机器人对现场环境的感知能力和适应能力,同时还可以提高工业生产的效率和工业机器人的应用范围。因此,如何使工业机器人快速准确地从工业现场或流水线上识别定位并抓取指定的物体是工业机器人视觉的主要研究内容之一,这将有助于提高工业机器人在码垛、装配、包装、焊接、搬运、涂装等领域的智能化水平,具有重大的意义。

在目前的机器人视觉定位中,大多采用模板匹配方法对目标进行定位,例如有基于灰度的模板匹配方法、基于特征的模板匹配方法、基于边缘点距离的几何模板匹配方法等。现有的模板匹配方法的流程一般如下:

1、加载模板与图像;

2、提取模板与待搜索图的特征;

3、遍历图像,计算图像上每一个位置的相似度量值;

4、得出目标的位置。

然而,在利用现有的模板匹配方法进行目标定位时,存在提取图像特征过程的时间长,在遍历图像时,需要在原始图像上逐一位置地进行搜索匹配,匹配时间长且目标位置精度不高的问题。



技术实现要素:

鉴于上述问题,本发明的目的是提供一种基于scara机器人的快速视觉定位方法及系统,以解决现有的视觉定位方法存在匹配时间长且目标位置精度不高的问题。

本发明提供一种基于scara机器人的快速视觉定位方法,包括:

对待测图像进行采样,建立待测图像金字塔;

根据所建立的待测图像金字塔,获取待测图像金字塔中的顶层图像的边缘图和梯度方向图;

对所获取的顶层图像的边缘图进行距离变换,同时获取顶层图像的距离图与标记图,并根据顶层图像的梯度方向图与顶层图像的标记图建立顶层图像的梯度方向特征标记图;

经过预先处理的顶层模板以第一预设步长,以及模板旋转和模板缩放的方式遍历顶层图像,获取目标在顶层图像中的匹配区域;其中,在顶层模板以第一预设步长遍历顶层图像的过程中,

将顶层模板的模板特征与顶层模板的模板特征在顶层图像的梯度方向特征标记图中的对应区域进行匹配;在匹配的过程中,

获取模板特征与所述模板特征在顶层图像的梯度方向特征标记图中的对应区域的相似度,获取相似度量值矩阵;

对相似度量值矩阵进行局部极大值去重获取目标在顶层图像中的匹配区域;

根据所获取的匹配区域,顶层模板以第二预设步长遍历匹配区域,获取目标在顶层图像中的精确位置;

将所获取的目标在顶层图像中的精确位置从待测图像金字塔的顶层跟踪到待测图像金字塔的底层,在待测图像金字塔的底层图像中,通过最小二乘平差算法获取目标在待测图像中的位置。

另一方面,本发明提供一种基于scara机器人的快速视觉定位系统,包括:

待测图像金字塔建立单元,用于对待测图像进行采样,建立待测图像金字塔;

边缘图与梯度方向图获取单元,用于根据待测图像金字塔建立单元所建立的待测图像金字塔,获取待测图像金字塔中的顶层图像的边缘图和梯度方向图;

梯度方向特征标记图建立单元,用于对边缘图与梯度方向图获取单元所获取的顶层图像的边缘图进行距离变换,同时获取顶层图像的距离图与标记图,并根据顶层图像的梯度方向图与顶层图像的标记图建立顶层图像的梯度方向特征标记图;

匹配区域获取单元,用于获取目标在顶层图像中的匹配区域;其中,

经过预先处理的顶层模板以第一预设步长,以及模板旋转和模板缩放的方式遍历顶层图像,获取目标在顶层图像中的匹配区域;其中,

在顶层模板以第一预设步长遍历顶层图像的过程中,将顶层模板的模板特征与顶层模板的模板特征在顶层图像的梯度方向特征标记图中的对应区域进行匹配;在匹配的过程中,

获取模板特征与模板特征在顶层图像的梯度方向特征标记图中的对应区域的相似度,获取相似度量值矩阵;

对相似度量值矩阵进行局部极大值去重获取目标在顶层图像中的匹配区域;

目标顶层精确定位单元,用于根据匹配区域获取单元所获取的匹配区域,顶层模板以第二预设步长遍历匹配区域,获取目标在顶层图像中的精确位置;

目标定位单元,用于将目标顶层精确定位单元所获取的目标在顶层图像中的精确位置从待测图像金字塔的顶层跟踪到待测图像金字塔的底层,在待测图像金字塔的底层图像中,通过最小二乘平差算法获取目标在待测图像中的位置。

利用上述根据本发明的基于scara机器人的快速视觉定位方法及系统,首先建立图像金字塔,然后通过顶层图像的梯度方向图和经对顶层图像的边缘图的距离变换所获取的标记图建立顶层图像的梯度方向特征标记图;在顶层模板以第一预设步长遍历顶层图像的过程中,将顶层模板的特征与顶层模板的模板特征在顶层图像的梯度方向特征标记图中的对应区域进行匹配,在匹配的过程中获取相似度量矩阵,通过对相似度量矩阵进行局部极大值去重获取目标在顶层图像中的匹配区域(该匹配仅仅只是一个大概的匹配位置),在获取目标在顶层图像中的匹配区域之后,顶层模板以第二预设步长遍历该匹配区域,从而获取目标在顶层图像中的精确位置,在获取目标在顶层图像中的精确位置之后,将该精确位置从待测图像金字塔的顶层跟踪到底层,在待测图像金字塔的底层图像中,通过最小二乘平差算法获取目标在待测图像中的位置。在本发明中,通过建立的顶层图像的梯度方向特征标记图能够增强快速定位方法的稳定性;而通过预设步长对图像进行遍历,以及进行相似度计算能够加速对目标进行定位;通过图像金字塔跟踪和最小二乘平差算法能够保证目标定位的精度。

为了实现上述以及相关目的,本发明的一个或多个方面包括后面将详细说明特别指出的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。

附图说明

通过参考以下结合附图的说明内容,并且随着对本发明的更全面理解,本发明的其它目的及结果将更加明白及易于理解。在附图中:

图1为根据本发明实施例的基于scara机器人的快速视觉定位方法的流程图;

图2为根据本发明实施例的基于scara机器人的快速视觉定位系统的逻辑结构框图。

在所有附图中相同的标号指示相似或相应的特征或功能。

具体实施方式

以下将结合附图对本发明的具体实施例进行详细描述。

针对前述,现有的对机器人的视觉定位存在匹配时间长且目标位置精度不高的问题,本发明首先建立图像金字塔,然后通过顶层图像的梯度方向图和经对顶层图像的边缘图的距离变换所获取的标记图建立顶层图像的梯度方向特征标记图;在顶层模板以第一预设步长遍历顶层图像的过程中,将顶层模板的特征与顶层模板的模板特征在顶层图像的梯度方向特征标记图中的对应区域进行匹配,在匹配的过程中获取相似度量矩阵,通过对相似度量矩阵进行局部极大值去重获取目标在顶层图像中的匹配区域(该匹配仅仅只是一个大概的匹配位置),在获取目标在顶层图像中的匹配区域之后,顶层模板以第二预设步长遍历该匹配区域,从而获取目标在顶层图像中的精确位置,在获取目标在顶层图像中的精确位置之后,将该精确位置从待测图像金字塔的顶层跟踪到底层,在待测图像金字塔的底层图像中,通过最小二乘平差算法获取目标在待测图像中的位置。在本发明中,通过建立的顶层图像的梯度方向特征标记图能够增强快速定位方法的稳定性;而通过预设步长对图像进行遍历,以及进行相似度计算能够加速对目标进行定位;通过图像金字塔跟踪和最小二乘平差算法能够保证目标定位的精度。

为说明本发明提供的基于scara机器人的快速视觉定位方法,图1示出了根据本发明实施例的基于scara机器人的快速视觉定位方法的流程。

如图1所示,本发明提供的基于scara机器人的快速视觉定位方法包括:

s110:对待测图像进行采样,建立待测图像金字塔。

其中,待测图像可以通过图像采集器(例如相机)获取,对待测图像进行采样的过程实质就是将待测图像转换成有限个像素点构成的集合的过程,下述的匹配也就是像素点内对应的图像特征的匹配;所建立的待测图像金字塔一般为2层到4层,可以根据实际情况进行动态调整。

s120:根据所建立的待测图像金字塔,获取待测图像金字塔中的顶层图像的边缘图和梯度方向图。

s130:对所获取的顶层图像的边缘图进行距离变换,同时获取顶层图像的距离图与标记图,并根据顶层图像的梯度方向图与顶层图像的标记图建立顶层图像的梯度方向特征标记图。

其中,在根据顶层图像的梯度方向图与顶层图像的标记图建立顶层图像的梯度方向特征标记图的过程中,通过使用串行的腐蚀操作同时获取顶层图像的距离图与标记图;根据所获取的顶层图像的梯度方向图和顶层图像的标记图,通过哈希算法建立顶层图像的梯度方向特征标记图。

具体地,在通过使用串行的腐蚀操作同时获取顶层图像的距离图与标记图的过程中,可以将腐蚀操作定义如下:

(f-g)(x,y)=min{f(x+dx,y+dy)-g(dx,dy)|(dx,dy)∈dg}

其中,f为待测图像;g为结构元,其是一个3*3的二维数组,该二维数组里存放的是待测图像的参数;(x,y)是将要进行腐蚀操作像素的位置;(dx,dy)是所在结构元中的位置;f(x+dx,y+dy)是待测图像中(x+dx,y+dy)位置的灰度值;g(dx,dy)是结构元中(dx,dy)的值;dg为结构元的元素范围。

在上述公式中,函数min不仅可以被用来计算当前像素的腐蚀结果(即获取待测图像金字塔中的顶层图像的距离图),也能够使用数字标记法记录最小值的边缘点标号(即可以获取待测图像金字塔中的顶层图像的标记图)。

在根据所获取的顶层图像的梯度方向图和顶层图像的标记图,通过哈希算法建立顶层图像的梯度方向特征标记图的过程中,先建立一个基于顶层图像的梯度方向特征的哈希表,然后遍历图像,根据哈希表,在顶层图像上每一个位置都赋予离它自己最近的边缘点梯度方向特征,以此,则可以建立顶层图像的梯度方向特征标记图。

s140:经过预先处理的顶层模板以第一预设步长,以及模板旋转和模板缩放的方式遍历顶层图像,获取目标在顶层图像中的匹配区域;其中,在顶层模板以第一预设步长遍历顶层图像的过程中,将顶层模板的模板特征与顶层模板的模板特征在顶层图像的梯度方向特征标记图中的对应区域进行匹配;在匹配的过程中,获取模板特征与模板特征在顶层图像的梯度方向特征标记图中的对应区域的相似度,获取相似度量值矩阵;对相似度量值矩阵进行局部极大值去重获取目标在顶层图像中的匹配区域。

需要说明的是,在本发明中,与待测图像进行匹配的模板图像也需要建立模板图像金字塔,在匹配时,是将顶层模板图像与顶层图像相匹配,底层模板图像与底层图像相匹配。其中,在遍历待测图像之前,需要先对模板图像进行预处理(该预处理即是指建立模板图像金字塔,获取顶层模板的模板特征等)。

其中,本发明提供的基于scara机器人的快速视觉定位方法还包括根据所获取的顶层图像的边缘图建立顶层边缘图的积分图;在顶层模板以第一预设步长遍历顶层图像的过程中,根据顶层边缘图的积分图确定顶层模板所遍历的当前位置是否需要进行相似度量计算;如果需要,则根据顶层图像的梯度方向特征标记图获取顶层模板边缘点与所遍历的当前位置的边缘点的相似度,获取相似度量值矩阵。

进一步地,可以根据下述公式建立顶层边缘图的积分图:

i(i,j)=f(i,j)+i(i-1,j)+i(i,j-1)-i(i-1,j-1)

其中,i(i,j)为顶层边缘图的积分图,f(i,j)为所述待测图像金字塔中的顶层图像的边缘图,i和j分别指所述积分图的横坐标和纵坐标。

在根据顶层边缘图的积分图确定顶层模板所遍历的当前位置是否需要进行相似度量计算的过程中,如果当前位置的边缘点数与顶层模板边缘点数之差的绝对值低于顶层模板边缘点数的30%~50%,则对顶层模板所遍历的当前位置进行相似度量计算,相似度量是指顶层模板所遍历的当前位置与顶层模板的相似度。

具体地,设定模板大小为s*s,根据顶层边缘图的积分图来依次计算以每个像素为中心,周围块大小为s*s的边缘点数sum(i,j):

如果当前位置边缘点数sum(i,j)与模板边缘点数之差的绝对值低于模板边缘点数的40%则进行相似度量计算,否则此位置不进行计算。

其中,可通过如下方法进行相似度量计算:

在正常情况下,相似度量函数如下:

在目标物体明暗对比颠倒情况下,相似度量函数如下:

局部明暗对比方向变化情况下,相似性度量函数如下:

其中,在上述的公式(1)~(3)中,di表示模板边缘点的梯度方向向量,ei表示顶层图像边缘点的梯度向量,<di,ei>表示向量点积,||di||、||ei||表示向量的模,n表示模板边缘点数,相似度越高,s值越接近1。

此外,为了提高目标定位精度,还可计算顶层图像的距离图与模板特征的相似度,具体计算方法为:

其中,di表示模板边缘点在顶层图像中的距离,n表示模板边缘点数。

s150:根据所获取的匹配区域,顶层模板以第二预设步长遍历匹配区域,获取目标在顶层图像中的精确位置。

需要说明的是,上述的第一预设步长大于第二预设步长,也就是说,第一预设步长只是进行初步匹配,目的是为了快速寻找到目标的大概位置,在寻找到目标的大概位置之后,通过第二预设步长则可以快速精确定位目标的位置。

其中,顶层模板以第二预设步长遍历匹配区域时,同样需要将顶层模板的模板特征与顶层模板的模板特征在顶层图像的梯度方向特征标记图中的当前区域进行匹配,在匹配时获取模板特征与模板特征在顶层图像的梯度方向特征标记图中的对应区域的相似度,获取相似度量值矩阵,根据相似度量值矩阵得到目标在顶层图像中的精确位置。

s160:将所获取的目标在顶层图像中的精确位置从待测图像金字塔的顶层跟踪到待测图像金字塔的底层,在待测图像金字塔的底层图像中,通过最小二乘平差算法获取目标在待测图像中的位置。

其中,在将所获取的目标在顶层图像中的精确位置从待测图像金字塔的顶层跟踪到待测图像金字塔的底层的过程中,将目标在顶层图像中的精确位置映射到待测图像金字塔的其他各层,在其他各层中,获取目标的匹配位置的特征标记图;在待测图像金字塔的底层,将经过预先处理的底层模板的模板特征与目标的匹配位置的特征标记图进行匹配。

在通过最小二乘平差算法获取目标在待测图像中的位置的过程中,将底层模板的边缘点作为特征点,将底层图像边缘点的切线作为特征线,将特征点经旋转平移变换,使得各特征点到对应特征线的距离和最小。

也就是说,将模板的边缘点作为特征点,将待测图像边缘点的切线作为特征线。通过图像金字塔算法逐步求精的过程,特征点和特征线的对应关系已基本确定,则模板匹配求亚像素精度和高精度旋转的问题可以转换为通过最小二乘平差理论来求得。经过一次最小二乘平差位姿调整之后,可能存在部分特征点和特征线的对应关系改变的情况,因而,一次最小二乘平差调整不能保证足够高的精度,而利用调整后的特征点和特征线的对应关系,利用2-3次最小二乘平差即可获得稳定可靠的亚像素平移精度和准确度更高的旋转角度值(即:确定目标在待测图像中的精确位置)。

与上述方法相对应,本发明提供一种基于scara机器人的快速视觉定位系统,图2示出了根据本发明实施例的基于scara机器人的快速视觉定位系统的逻辑结构。

如图2所示,本发明提供的基于scara机器人的快速视觉定位系统200包括待测图像金字塔建立单元210、边缘图与梯度方向图获取单元220、梯度方向特征标记图建立单元230、匹配区域获取单元240、目标顶层精确定位单元250和目标定位单元260。

其中,待测图像金字塔建立单元210用于对待测图像进行采样,建立待测图像金字塔。

边缘图与梯度方向图获取单元220用于根据待测图像金字塔建立单元210所建立的待测图像金字塔,获取待测图像金字塔中的顶层图像的边缘图和梯度方向图。

梯度方向特征标记图建立单元230用于对边缘图与梯度方向图获取单元220所获取的顶层图像的边缘图进行距离变换,同时获取顶层图像的距离图与标记图,并根据顶层图像的梯度方向图与顶层图像的标记图建立顶层图像的梯度方向特征标记图。

匹配区域获取单元240用于获取目标在顶层图像中的匹配区域;其中,经过预先处理的顶层模板以第一预设步长,以及模板旋转和模板缩放的方式遍历顶层图像,获取目标在顶层图像中的匹配区域;其中,在顶层模板以第一预设步长遍历顶层图像的过程中,将顶层模板的模板特征与顶层模板的模板特征在顶层图像的梯度方向特征标记图中的对应区域进行匹配;在匹配的过程中,获取模板特征与模板特征在顶层图像的梯度方向特征标记图中的对应区域的相似度,获取相似度量值矩阵;对相似度量值矩阵进行局部极大值去重获取目标在顶层图像中的匹配区域。

目标顶层精确定位单元250用于根据匹配区域获取单元所获取的匹配区域,顶层模板以第二预设步长遍历匹配区域,获取目标在顶层图像中的精确位置。

目标定位单元260用于将目标顶层精确定位单元250所获取的目标在顶层图像中的精确位置从待测图像金字塔的顶层跟踪到待测图像金字塔的底层,在待测图像金字塔的底层图像中,通过最小二乘平差算法获取目标在待测图像中的位置。

通过上述可知,本发明提供的基于scara机器人的快速视觉定位方法及系统,通过建立顶层图像的梯度方向特征标记图能够增强快速定位方法的稳定性;使用顶层边缘图的积分图对相似度量是否需要计算进行判断能够加快目标定位;使用图像金字塔跟踪以及最小二乘平差算法能够保证目标的定位精度;使用相似度量函数可识别定位出局部或者整体明暗对比方向变化的目标。因此,本发明提供的基于scara机器人的快速视觉定位方法及系统与现有的模板匹配方法相比具有以下优点:

(1)在线性光照变化、非线性光照变化、噪声干扰、被遮挡、旋转情况下定位目标具有高稳定性;

(2)查找目标快速、精确;

(3)亚像素的定位精度以及高旋转精度;

(4)在目标物体明暗对比颠倒,甚至可能需要忽略局部的明暗对比方向变化情况下,同样能搜索到目标。

如上参照附图以示例的方式描述根据本发明的基于scara机器人的快速视觉定位方法及系统。但是,本领域技术人员应当理解,对于上述本发明所提出的基于scara机器人的快速视觉定位方法及系统,还可以在不脱离本发明内容的基础上做出各种改进。因此,本发明的保护范围应当由所附的权利要求书的内容确定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1