首页> 中国专利> 一种人工视觉地标的解码定位方法

一种人工视觉地标的解码定位方法

摘要

本发明涉及机器人定位领域。目的是提供一种人工视觉地标的解码方法及人工视觉定位方法,为视觉机器人的应用提供技术基础。技术方案是:一种人工视觉地标的解码定位方法,所述的人工视觉地标包括:1)至少排列成两行与两列的4个及4个以上编码片,所有编码片每两行、每两列交叉排列;每一行的编码片在水平方向直线排列,每一列的编码片在倾斜方向直线排列;2)任意一个编码片上的编码组件,均包括一个中心标定环和环绕中心标定环设置的六个编码块;3)所述中心标定环为圆形的图案,采用红绿蓝黑四种颜色中的一种;4)所述六个编码块为环绕在中心标定环周围的六个六边形图案,每个编码块采用红绿蓝黑四种颜色中的一种。

著录项

  • 公开/公告号CN112270716A

    专利类型发明专利

  • 公开/公告日2021-01-26

    原文格式PDF

  • 申请/专利权人 浙江理工大学;

    申请/专利号CN202011190911.7

  • 申请日2020-10-30

  • 分类号G06T7/80(20170101);G06T7/70(20170101);G06T7/90(20170101);G06T7/187(20170101);H04N19/174(20140101);H04N19/176(20140101);H04N19/186(20140101);

  • 代理机构33101 杭州九洲专利事务所有限公司;

  • 代理人王之怀;王洪新

  • 地址 310018 浙江省杭州市下沙高教园区白杨街道2号大街928号

  • 入库时间 2023-06-19 09:41:38

说明书

技术领域

本发明涉及机器人定位领域,具体涉及一种人工视觉地标解码方法及人工视觉定位方法。

背景技术

在以智能制造为核心的工业4.0时代背景下,工业机器人产业市场呈现爆炸式增长势头,而在机器人协同、运动学参数辨识和机器人离线编程等作业中,首先要解决的问题是机器人的定位问题。

通过地标提供信息是机器人进行定位的主要方法。地标是指能够为机器人提供外部导航定位信息的载体。地标分为人工视觉地标和自然地标。与自然地标相比,人工视觉地标的特征显著、贴放位置随意和可嵌入特定信息更加实用。

针对特定的人工视觉地标进行解码并进行定位,可以更好地对机器人进行误差纠正。

发明内容

本发明的目的在于提供一种人工视觉地标的解码方法及人工视觉定位方法,为视觉机器人的应用提供技术基础。

本发明提供的技术方案是:

一种人工视觉地标的解码定位方法,所述的人工视觉地标包括:

1)至少排列成两行与两列的4个及4个以上编码片,所有编码片每两行、每两列交叉排列;每一行的编码片在水平方向直线排列,每一列的编码片在倾斜方向直线排列;

2)任意一个编码片上的编码组件,均包括一个中心标定环和环绕中心标定环设置的六个编码块;

3)所述中心标定环为圆形的图案,采用红绿蓝黑四种颜色中的一种;

4)所述六个编码块为环绕在中心标定环周围的六个六边形图案,每个编码块采用红绿蓝黑四种颜色中的一种;

其特征在于:所述人工视觉地标的解码方法包括如下步骤:

1)采用摄像机摄取人工视觉地标图像,该图像中心点即摄像头中心点;

2)对前一步骤获得的图像进行解码;

步骤2)所述的解码方法包括:

(1)提取合格的人工视觉地标图像;所述合格的人工视觉地标包含至少一个完整的编码片图像;

(2)对人工视觉地标图像进行预处理,将RGB颜色空间转化为HSV颜色空间,设定HSV取值范围来确定黑红绿蓝四种颜色,实现图像的多值化;

(3)对人工视觉地标图像进行数据提取,包括:对整个人工视觉地标图像进行轮廓链连通域提取、对每个连通域进行像素点个数与质心的提取以及提取距离摄像头中心点最近的中心标定环质心坐标与环绕该中心标定环的六个编码块质心坐标;

(4)对码字进行识别;先对每个编码片中的各个编码块进行位置定义,接着根据解码规则按位置顺序依次顺时针对各个编码片进行解码。

所述RGB颜色空间转化为HSV颜色空间,采用以下公式:

V=max (3)

式中:

H为色调,S为鲜艳程度,V为明暗程度,R为红色,G为绿色,B为蓝色;

max为R,G,B中数值最大的数,min为R,G,B中数值最小的数;

当H>-60&&H<60时,提取的是红色像素点,红色像素点记为1;

当H>110&&H<150时,提取的是绿色像素点,绿色像素点记为2;

当H>180&&H<260时,提取的是蓝色像素点,蓝色像素点记为3;

当V>=0&&V<=180时,提取的是黑色像素点,黑色像素点记为0。

在合格的人工视觉地标图像建立坐标系,使得该图像位于坐标系的第一象限中;在该图像中进行所有连通域提取以及各连通域的像素点个数与质心的提取,方法是:

用Image Moments算法对合格的人工视觉地标图像进行图像处理,提取出所有连通域的像素点个数及质心;Image Moments算法的几何距公式如下所示:

提取离距离摄像头中心点最近的中心标定环质心坐标与环绕该中心标定环的六个编码块质心坐标:

距离摄像头中心点最近的中心标定环的提取方法是:遍历选择像素点个数多于其它连通域的那一部分连通域,将这一部分连通域的质心坐标与图像坐标原点进行差运算,所得值最小那一个连通域的就是距离摄像头中心点最近的中心标定环;该中心标定环圆心坐标即为中心标定环的质心坐标;

环绕该中心标定环的六个编码块质心坐标的提取方法是:将该中心标定环质心坐标与其他所有连通域质心坐标进行差运算,取绝对值最小的六个连通域就是环绕该中心标定环周围的六个编码块。

环绕该中心标定环周围的六个编码块的位置定义方法是:

(1)遍历六个编码块与中心标定环的质心坐标进行对比,横坐标最小的标记为4号位置,横坐标最大的标记为1号位置;

(2)遍历其余四个编码块与中心标定环质心坐标进行对比,横坐标最小且纵坐标最大的的标记为5号位置,横坐标最大且纵坐标最小的标记为3号位置;

(3)遍历最后两个编码块,纵坐标最大的是0号位置,纵坐标最小的是2 号位置。

所述解码规则为:以0,1,2,3,4,5号位置依次顺时针进行编码组件提取;以提取到的黑色编码块为第一位并记录黑色编码块所在位置,依次沿顺时针方向进行编码片解码,解码得到的编码形式包括颜色和位置两部分,编码形式前5位代表了除黑色编码块以外顺时针进行编码组件提取的编码块像素点颜色,编码形式第6位代表了编码组件提取的中心编码片像素点颜色,编码形式字第8位代表了黑色编码块所在的位置数。当H>-60&&H<60时,提取的红色像素点为1,当H>110&&H<150时,提取的绿色像素点为2,当H>180&&H<260 时,提取的蓝色像素点为3,当V>=0&&V<=180时,提取的黑色像素点为0。

通过拟合二次曲面进行像素坐标到现实坐标的变换,同时进行畸变纠正,实现对摄像头中心点进行精准定位,并方便视觉机器人的运动误差纠正;

步骤是:

(1)对离距离摄像头中心点最近的中心标定环周围的六个六边形编码块的轮廓链进行处理,提取六个编码块中的每个锐角顶点坐标,提取每个六边形编码块的中心线;

(2)通过中心线拟合求得六个特征点;

(3)进行二次曲面拟合,包括横坐标方向上的曲面拟合,以及纵坐标方向上的曲面拟合;

(4)进行二次曲面转换将图像中心坐标变换为摄像头中心现实坐标,实现摄像头中心点定位。

提取每个六边形编码块的中心线步骤是:

(1)计算出与六边形编码块质心坐标距离最近的像素点,以这个像素点为起始点,遍历一半轮廓链的像素点个数的点;

(2)计算出在这半个轮廓链上与六边形编码块质心坐标距离最远的像素点,这个像素点就是解决拟合问题的一个锐角顶点;

(3)再从与六边形编码块质心坐标距离最近的像素点开始遍历另外一半轮廓链;

(4)计算出在这半个轮廓链上与六边形编码块质心坐标距离最远的像素点,这个像素点就是解决拟合问题的另一个锐角顶点;

(5)步骤(2)、(4)中的两个锐角顶点的连线,为六边形编码块的中心线,即在每个六边形编码块轮廓链上距离编码块质心距离较大的两个点的连线。

通过中心线拟合求得六个特征点的步骤是:得到六个编码块锐角顶点坐标数据后,对此数据进行最小二乘法拟合,快速实现直线的最小二乘法拟合,拟合之后每相邻两条直线有交点,这六个交点就是六个特征点,也即六个编码块的六条中心线两两连线的交点。

所述二次曲面拟合,是将六个特征点的坐标代入二次曲面方程组求解,随后运用Matlab软件拟合即完成。

本发明的有益效果是:本发明提供的方法,能够运用现有的软件工具拟合二次曲面纠正摄像头的畸变,同时对人工视觉地标进行快速解码和定位,为后续机器人的运动误差纠正提供基础,为视觉机器人的应用提供技术基础。

附图说明

图1为摄像头中心点所在单个编码片的解码位置示意图。

图2为锐角顶点搜索示意图。

图3为直线拟合示意图。

图4为X方向二次曲面示意图。

图5为Y方向二次曲面示意图。

图6为人工视觉地标示意图(图上坐标系的X坐标、Y坐标为现实坐标,单位为mm)。

图7为解码定位结果图。

图8为摄像头作业状态示意图。

图9为摄像头中心点在人工视觉地标上的示意图。

图10为摄像头所拍摄到的人工视觉地标图像的原点示意图(示意图上图像坐标系的x坐标、y坐标为像素坐标,单位为px)。

图11为Image Moments算法流程图。

图12为具体实施例所涉的人工视觉地标。

图13为摄像头获取的其中一个合格的人工视觉地标图像。

图14为图6所示的人工视觉地标拟合后的X方向二次曲面图。

图15为图6所示的人工视觉地标拟合后的Y方向二次曲面图。

具体实施方式

首先定义几个概念:

1、中心标定环:圆形的图案,有红绿蓝黑四种颜色。

2、外圈编码块、编码块:环绕在中心标定环周围的六个六边形图案,有红绿蓝黑四种颜色,大小相同。

3、编码片:由一个中心标定环和环绕在中心标定环周围的六个编码块组成的图案。

4、编码组件:编码片中的一中心标定环和六个编码块都称之为编码组件。

5、人工视觉地标:是地面上具有一定特征,能够从空中识别并进行图像处理的图案。

6、连通域:相同颜色像素点且位置相邻的区域。

7、轮廓链:图像边缘上的所有相同颜色像素点连接起来构成轮廓链。

8、DFS:深度优先遍历,指的是从某个点一直往深处走,走到不能往下走之后,就回退到上一步,直到找到解或把所有点走完。

9、质心:这里指连通域的质量中心。

10、RGB颜色空间:RGB是我们接触最多的颜色空间,由三个通道表示一幅图像,分别为红色(R),绿色(G)和蓝色(B)。

11、HSV颜色空间:在图像处理中使用较多的是HSV颜色空间,表达颜色的色调(H)、鲜艳程度(S)和明暗程度(V)。

12、编码形式:指的是编码的表现方式,共八位,表现为数字+“-”符号。

13、码字:指的是编码形式的前六位。

14、遍历:是指沿着某条搜索路线,依次对每个节点均做一次访问。

15、最小二乘法:是一种数学优化技术,利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。

16、二次曲面:将三元二次方程所表示的曲面称作二次曲面。

17、摄像头中心点:是摄像头光轴和人工视觉地标的交点,图8中摄像头中心点(黑点)只作示意,在人工视觉地标上并不真实显示。

18、现实坐标:指的是人工视觉地标在现实中的坐标,单位为毫米。

19、像素坐标:指的是摄像头拍摄到人工视觉地标图像的坐标,单位为px。

20、二值图像:每个像素点均为黑色或者白色的图像。

以下结合附图所,进一步介绍本发明。

人工视觉地标由4个或者4个以上编码片拼接而成。如图6中所示人工视觉地标为3*3的人工视觉地标,由三行三列共9个编码片拼接而成。

进行解码及定位的前提是对摄像头中心点所在编码片的编码组件进行提取,步骤如下:

(1)摄像头悬挂在人工视觉地标正上方进行图像拍摄,人工视觉地标的由 4个或者4个以上编码片拼接而成,拍摄到的图像只要有1个及1个以上完整的编码片视为拍摄成功的合格图像;将此图像作为人工视觉地标图像,设定图像坐标轴以及原点(0,0),将图像划分在第一象限,如图10所示。

(2)对人工视觉地标图像进行预处理,也就是对RGB颜色空间转化为HSV 颜色空间的图像进行多值化处理,设定HSV取值范围来确定黑红绿蓝四种颜色,实现图像的多值化,当H>-60&&H<60时,提取的是红色像素点,红色像素点记为1,当H>110&&H<150时,提取的是绿色像素点,绿色像素点记为2,当 H>180&&H<260时,提取的是蓝色像素点,蓝色像素点记为3,当V>=0 &&V<=180时,提取的是黑色像素点,黑色像素点记为0,对相同颜色的像素点进行整和成段形成闭合的一段轮廓链。RGB颜色空间转化为HSV颜色空间的过程用到式1,式2,式3。其中max为R,G,B中数值最大的数,min为R,G, B中数值最小的数。

V=max (3)

(3)随后对整个人工视觉地标图像进行连通域提取,运用Image Moments 算法提取出所有连通域的像素点个数、质心,算法流程图如图11所示,几何距公式如式4所示,其中a1是连通域像素点横坐标值最小的那一个值,a2是连通域像素点横坐标值最大的那一个值,b1是连通域像素点纵坐标值最小的那一个值,b2是连通域像素点纵坐标值最大的那一个值,x是像素点横坐标的值,y是像素点纵坐标的值,p,q分别是x和y的阶数,通常用式5表示连通域质心的横坐标值x

(4)遍历选择像素点个数多于其他连通域的那一部分连通域,将这一部分连通域的质心坐标与图像中心坐标(320,240)进行差运算,所得值最小那一个连通域的是距离摄像头中心点最近的中心标定环,差运算原理为式7,其中A,B 是两个连通域的质心,(x

(5)中心标定环质心坐标与其他所有连通域质心坐标进行差运算,取绝对值,提取其最小的六个连通域是中心标定环周围的六个外圈编码块,差运算原理为式7,至此则提取出了摄像头中心点所在的那一个编码片。

进一步的,对码字进行识别,完成解码。对编码片进行坐标轴及原点设定,如图1所示,并对编码块进行位置定义如下:

(1)遍历六个编码块与中心标定环质心坐标进行对比,横坐标最小的标记为4号位置,横坐标最大的标记为1号位置。

(2)遍历其余四个编码块与中心标定环质心坐标进行对比,横坐标最小且纵坐标最大的标记为5号位置,横坐标最大且纵坐标最小的标记为3号位置。

(3)遍历最后两个编码块,纵坐标最大的是0号位置,纵坐标最小的是2 号位置。

(4)随后以0,1,2,3,4,5号位置顺时针排列依次进行编码组件提取,以提取到的黑色编码块为第一位并记录黑色编码块所在位置,依次沿顺时针方向进行编码片解码,解码得到的编码形式包括颜色和位置两部分,编码形式前5 位是除黑色编码块以外顺时针进行编码组件提取提取的编码块像素点颜色,编码形式第6位是编码组件提取的中心编码片像素点颜色,编码形式字第8位代表了黑色编码块所在的位置数。如图1所示解码得到的编码形式为232211-5,码字为232211,黑色编码块所在的位置是5号位置。

进一步的,为方便视觉机器人的运动误差纠正,需要对摄像头中心点进行定位。由于摄像头镜头存在畸变,要进行摄像头畸变纠正以防定位到的摄像头中心点现实坐标不准确。人工视觉地标图像上的坐标是以像素为单位的,摄像头中心点现实坐标是以毫米为单位的,通过拟合二次曲面能够做到像素坐标到现实坐标的变换,同时能够利用二次曲面进行畸变纠正,实现精准定位。

二次曲面拟合需要有六个特征点。通过中心线拟合可以求特征点,中心线的提取首要提取的是六边形编码块的锐角顶点坐标,对六边形编码块的轮廓链进行处理。

(1)计算出与六边形编码块质心坐标距离最近的像素点g,以这个像素点 g为起始点,遍历一半轮廓链的像素点个数的点。

(2)计算出在这半个轮廓链上与六边形编码块质心坐标距离最远的像素点 h,这个像素点h就是解决拟合问题的一个锐角顶点。

(3)再从像素点g开始遍历另外一半轮廓链。

(4)计算出计算出在这半个轮廓链上与六边形编码块质心坐标距离最远的像素点k,这个像素点k就是解决拟合问题的一个锐角顶点,如图3所示。

对上述锐角顶点的搜索进行多次实验,得到六个编码块锐角顶点的数据(x 坐标,y坐标),对此数据进行最小二乘法拟合,原理为式8(其中a,b为y=a+bx 的系数),快速实现直线的最小二乘法拟合,拟合之后每相邻两条直线有交点,这六个交点就是我们所得到的特征点,结果如图3所示。

进行二次曲面拟合,一般的二次曲面方程形如式9,考虑到要调整坐标误差,保持摄像头离地高度Z的值不变,将式9转变成式10,之后得到式11和式12。六个特征点的x,y坐标必定不都相等,满足线性无关性,也就是实现了满秩,那么式11及式12一定有解。其中x,y是特征点像素坐标,X,Y是特征点现实坐标。将六个特征点的坐标代入式11,式12进行方程组求解,随后运用Matlab 软件拟合得到二次曲面。

进一步的,将六个特征点的坐标(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)、 (x5,y5)、(x6,y6)以及现实坐标X1、X2、X3、X4、X5、X6进行方程组求解,得到未知数a1、b1、c1、d1、e1、f1,从而进行横坐标方向上的二次曲面拟合。同样地,进行纵坐标方向上的二次曲面拟合,将六个特征点的坐标(x1,y1)、 (x2,y2)、(x3,y3)、(x4,y4)、(x5,y5)、(x6,y6)以及现实坐标Y1、Y2、Y3、 Y4、Y5、Y6进行方程组求解求得曲面,其中(X1,Y1)、(X2,Y2)、(X3, Y3)、(X4,Y4)、(X5,Y5)、(X6,Y6)为现实坐标,是由千分尺测量出来的,精确到小数点后三位。像素单位为px,测量时的单位为cm。

进一步的,拟合出的二次曲面能够纠正摄像头产生的畸变,省却了复杂步骤,实现像素坐标到现实坐标的变换。通过转换得到摄像头中心点现实坐标,实现摄像头中心点定位,为后续视觉机器人的运动误差纠正提供基础。

进一步的,给出一个例子,给出通过二次曲面得到的摄像头中心点现实坐标和人工视觉地标上实际的摄像头中心点现实坐标之间有多少误差。

该例子所用到的人工视觉地标(如图6所示),采用的六个特征点像素坐标为(327,229)、(352,244)、(352,273)、(325,288)、(300,272)、(300,243)。六个特征点现实坐标为(13.546,9.826)、(14.516,10.364)、(14.516,11.482)、 (13.546,12.046)、(12.528,11.482)、(12.528,10.364),拟合出X,Y方向上的二次曲面如图4、图5所示。

第一次控制摄像头离人工视觉地标10厘米高度处进行直线水平运动1.5厘米,如图8所示;通过二次曲面转换将图像中心坐标(320,240)变换为摄像头中心现实坐标为(12.6452,10.7187),如图7所示。第二次再次控制摄像头沿相同直线水平运动1.5厘米后,摄像头中心点现实坐标为(12.7775,11.1262),这两次运动横坐标差了1.323毫米,纵坐标差了4.075毫米。第三次控制摄像头沿相同直线水平运动1.5厘米,预测摄像头中心点现实坐标为(12.9098, 11.5337),实际得到的摄像头中心点现实坐标为(130.015,115.908),横坐标X 方向有0.917毫米的误差,纵坐标Y方向有0.571毫米的误差。

进一步的,二次曲面模型纠正摄像头畸变能够满足后续视觉机器人的运动误差纠正精度,为后续工作奠定基础。

以下通过具体实施例,进一步说明人工视觉地标解码及定位步骤。

所用人工视觉地标如图12所示,摄像头摄取的合格的人工视觉地标图像如图13所示;可以看到图13中人工视觉地标图像只有一个完整的编码片。

解码得到的编码形式为321221-4,码字为321221。

六个特征点现实坐标为(8.064,5.158)、(8.574,5.432)、(8.574,5.982)、(8.064,4)、(7.604,5.982)、(7.604,5.432)。直线拟合得到的六个特征点像素坐标为(301,129)、(383,173)、(386,264)、(306,312)、(223,268)、 (220,177)。

将六个特征点像素坐标和现实坐标代入式11,式12,运用Matlab软件得到二次曲面如图14,图15所示。通过二次曲面转换将图像中心坐标(320,240) 变换为摄像头中心现实坐标(-5.3674,137.5978)。从而实现了摄像头中心点的精确定位。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号