CN102679960A - 基于圆形路标成像分析的机器人视觉定位方法 - Google Patents

基于圆形路标成像分析的机器人视觉定位方法 Download PDF

Info

Publication number
CN102679960A
CN102679960A CN2012101440743A CN201210144074A CN102679960A CN 102679960 A CN102679960 A CN 102679960A CN 2012101440743 A CN2012101440743 A CN 2012101440743A CN 201210144074 A CN201210144074 A CN 201210144074A CN 102679960 A CN102679960 A CN 102679960A
Authority
CN
China
Prior art keywords
point
ellipse
sign
road sign
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012101440743A
Other languages
English (en)
Other versions
CN102679960B (zh
Inventor
王宏
杨昉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN201210144074.3A priority Critical patent/CN102679960B/zh
Publication of CN102679960A publication Critical patent/CN102679960A/zh
Application granted granted Critical
Publication of CN102679960B publication Critical patent/CN102679960B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

基于圆形路标成像分析的机器人视觉定位的方法属于机器人视觉定位领域,其特征在于含有以下步骤:设计并放置圆形的道路标识,标识识别:包含特定颜色边缘拟合、RANSAC椭圆拟合以及标识检验三个步骤,最后进行移动体机器人定位等步骤,具有:只需单个路标完成定位,路标样式简单,检测过程快且能用于室外光照条件下以及定位快速简单的优点。

Description

基于圆形路标成像分析的机器人视觉定位方法
技术领域
本发明属于机器人视觉定位领域。
技术背景
移动体在缺乏类似GPS定位的环境下的视觉定位一直是机器人领域一个重要的研究方向,这种不依靠全局定位系统的定位方式拥有非常广阔的应用前景。
在移动机器人上,利用超声或者激光测距传感器检测机器人周围环境信息,根据预先绘制的地图进行匹配,可以对机器人进行定位。这种定位的精度依赖传感器的精度,是一种被广泛使用的定位方法。但是,这种定位方法在一些情况下依然存在问题。当周围环境变化剧烈的情况下,这种依赖环境位置的定位方法将不再适用;当广阔环境下环境位置信息超出传感器检测范围时,该定位方法将无法正确定位;当环境中存在多个环境位置信息相同获相似的位置时,这种定位方法很可能导致错误的定位。
另一种通过视觉传感器获得机器人周围环境信息,然后通过与数据库中的数据对比来确定机器人的位置。这种定位方法同时依赖移动机器人的环境信息,上述环境信息变化或者不足导致定位失败的因素也会对该定位方法产生影响。另外,这种定位方法检测过程缓慢,匹配算法复杂,计算量大,数据库消耗的存储量大,很难做到实时的定位和导航。
在视觉导航和定位中,一种可靠实用的方法就是利用路标。自然路标在样式和放置位置上都存在诸多局限,导致该方法的实用性和可扩展性都不强;而人工路标通过特殊的设计和摆放,能够提供很好的灵活性,其检测过程也更加具有鲁棒性。
专利《一种基于颜色路标的移动机器人视觉导航方法》(公开号CN 101619984A)中也利用的颜色路标进行定位。但该专利采用的是圆柱形路标,通过单一的路标只能获得机器人与该路标的距离,无法获得角度信息。这种方法需要多个有不同编号的人工路标完成定位任务,路标放置复杂,识别任务繁多,定位计算量大。
专利《基于单个路标的视觉导航定位和导航方法》(公开号CN101660908A)利用单个路标进行定位。但该专利使用的路标图案复杂,而且在路标检测过程中采用的是模版匹配的方法。这种方法难于适应室外各种光照环境,在成像质量不理想时难以获得正确的识别结果,这导致该定位方法使用范围局限,缺乏鲁棒性。
发明内容
本发明针对与当前移动体视觉导航定位技术过度依赖环境信息、计算量大、鲁棒性不强等缺点,提出了一种经济、快速、可靠的依靠特定设计的人工路标的视觉定位方法。该方法可以用于移动机器人在预设路线行驶过程中的定位任务,并且已经在视觉导航机器人上实践。
本发明的特征在于,依次含有以下步骤:
步骤(1),设计并放置标识
步骤(1.1),设计标识
标识呈圆形,直径为20公分,在标识边缘处设有宽度为4公分的黄色边缘,标识的内部为黑色;
步骤(1.2),标识放置于道路右侧,标识的位置为O(x,y),标识的中心与包含在移动机器人在内的CCD摄像头同高,以使在移动机器人行进过程中标识始终在移动机器人的视野中;
步骤(2),在计算机中依次执行以下步骤:
步骤(2.1),特定颜色边缘的提取
步骤(2.1.1),把从所述CCD摄像头载入的RGB颜色图像转换为灰度图像,用I表示灰度值:
Figure BDA00001622559900021
其中,R、G、B分别为该像素点红、绿、蓝三色的亮度值;
步骤(2.1.2),用OPENCV函数库中的Canny函数提取边缘:
设定:低梯度阈值tlow=50,高梯度阈值thigh=100;
输入为步骤(2.1.1)得到的灰度图像,输出为同尺寸的二值图像EP,在所述二值图像EP中含有边缘信息的像素点的值为255,其他区域像素点的值为0;
步骤(2.1.3),把步骤(2.1.1)中的RGB颜色图像转换到HSV颜色空间:
对所述的RGB颜色空间的彩色图像按照下式转换成HSV颜色空间的彩色图像,其中每个像素点的色度H、饱和度S和亮度V分量的值分别按照下式计算:
V=max(R,G,B),
Figure BDA00001622559900022
H = 60 ( G - B ) max ( R , G , B ) - min ( R , G , B ) , R = max ( R , G , B ) 120 + 60 ( B - R ) max ( R , G , B ) - min ( R , G , B ) , G = max ( R , G , B ) 240 + 60 ( R - G ) max ( R , G , B ) - min ( R , G , B ) , B = max ( R , G , B ) ,
若H<0则H取值为H+360,
为了方便计算,对每个像素点的H,S,V分量分别做以下转换:
V &LeftArrow; 255 V S &LeftArrow; 255 S H &LeftArrow; H / 2 ,
步骤(2.1.4),从步骤(2.1.3)得到的HSV颜色图像中提取去黄色区域和黑色区域:
步骤(2.1.4.1),设定:
黄色区域内各像素的H,S,V分量值的区间范围,用YS表示:
20<<H<<37,
102<<S<<255,
51<<V<<255,
黑色区域内个像素的H,S,V分量值的区间范围,用BS表示:
0<<H<<255,
0<<S<<255,
0<<V<<51,
步骤(2.1.4.2),设定:HSV颜色空间图像为CP,黄色区域的二值图像为YP,黑色区域的二值图像为BP,则:
对于所述HSV颜色空间图像中的任意一点(x,y),对应的YP(x,y)BP(x,y)的取值为:
YP ( x , y ) = 0 , CP ( x , y ) &NotElement; YS 255 , CP ( x , y ) &Element; YS ,
BP ( x , y ) = 0 , CP ( x , y ) &NotElement; BS 255 , CP ( x , y ) &Element; BS ,
步骤(2.1.5),对步骤(2.1.4)得到的黄色区域和黑色区域进行膨胀操作:
步骤(2.1.5.1),对黄色区域进行膨胀操作:
把黄色区域的二值图像YP和结构元素se输入到OPENCV函数库中的dilate函数,得到膨胀后的黄色区域二值图像YP’;其中结构元素se为如下的矩阵:
se = 1 1 1 1 1 1 1 1 1 ,
步骤(2.1.5.2),对黑色区域进行膨胀操作:
把黑色区域的二值图像BP和结构元素se输入到OPENCV函数库中的dilate函数,得到膨胀后的黑色区域二值图像BP’;其中结构元素se同步骤(2.1.5.1)所述;
步骤(2.1.6),对所述的Canny边缘图像EP、黄色膨胀区域图像YP’、黑色膨胀区域图像BP’求交得到有效边界的二值图像YP,对于其中任意一点(x,y)有:
VP ( x , y ) = 0 , EP ( x , y ) * YP ( x , y ) * BP ( x , y ) = 0 255 , EP ( x , y ) * YP ( x , y ) * BP ( x , y ) > 0 ,
其中:有效边缘的值为255,全部有效边缘上的点即为轮廓点,其他点上的值为0
步骤(2.2),利用RANSAC框架下的最小二拟合对步骤(2.1.6)得到的有效边缘进行椭圆拟合:
步骤(2.2.1),从作为轮廓点的所述有效边缘点中随机抽取6个点Pi(xi,yi),i=1,…,6,构成内点集,用最小二乘法拟合椭圆E;通过6个点得到线性方程组A=P-1B,其中:
P = x 1 2 2 x 1 y 1 y 1 2 2 x 1 2 y 1 x 2 2 2 x 2 y 2 y 2 2 2 x 2 2 y 2 x 3 2 2 x 3 y 3 y 3 2 2 x 3 2 y 3 x 4 2 2 x 4 y 4 y 4 2 2 x 4 2 y 4 x 5 2 2 x 5 y 5 y 5 2 2 x 5 2 y 5 x 6 2 2 x 6 y 6 y 6 2 2 x 6 2 y 6 ,
B=[111111]T
步骤(2.2.2),对于轮廓点中其他的点,计算与椭圆E的误差,所述误差是指:该点与椭圆中点的连线或者其延长线与椭圆相交与两点,所述点与两个交点的距离分别为L1和L2,则所述点到椭圆的误差即为两个距离中较短的距离,误差e=min(L1,L2);
若该点到椭圆的误差小于3个像素点,则将该点加入到内点集S;
步骤(2.2.3),若内点集S中点的数目在所有轮廓点中的比例大于阈值0.9,则利用内点集S中的所有点通过最小二乘法拟合椭圆E’,记录内点集S和对应椭圆E’;
步骤(2.2.4),重复步骤(2.2.1)到步骤(2.2.3)500次,若不存在步骤(2.2.3)中的内点集S,则拟合失败;若存在,选择记录的内点集的集合中点数目最大的内点集,其对应的椭圆即是算法拟合的椭圆;
步骤(2.3),标识检验,步骤如下:
步骤(2.3.1),通过对步骤(2.2.4)得到的内点集与对应的拟合椭圆的误差检验:所述内点集S与拟合椭圆E’的误差是指所述内点集内各点与拟合椭圆的误差的平均值;若该误差小于3个像素点时,进入步骤(2.3.2);否则,椭圆拟合失败,放弃对该区域进行标识检验;
步骤(2.3.2),通过椭圆的形态大小来检验拟合结果:若属于下列情况,则拒绝该检测结果:椭圆的离心率大于5或椭圆的短轴小于50个像素点或椭圆的长轴大于250个像素点;若不在上述情况中,则进入步骤(2.3.3);
步骤(2.3.3),通过颜色比例来检验检测结果,步骤如下:
步骤(2.3.3.1),统计椭圆内部的所有像素点的数目n;
步骤(2.3.3.2),统计椭圆内部在HSV颜色值在黄色颜色区间的点的数目m;
步骤(2.3.3.3),计算比例c=m/n;如果c<0.85,拒绝该检测结果;否则接受检测结果;
步骤(3),移动体定位,步骤如下:
步骤(3.1),摄像头标定,步骤如下:
步骤(3.1.1),摄像头正对标识,设定标识距离CCD摄像头的距离分别为
L=[0.25m 0.5m 0.75m…10m],
步骤(3.1.2),在上述情况下分别从CCD摄像头视觉图像中获得标识的尺寸d,记录如下:
D=[d1d2d3…d40],
步骤(3.1.3),通过L和D以及公式l*d=k利用最小二乘法计算摄像头对应的k值
步骤(3.2),通过椭圆的长轴a计算移动体到路标的距离L:
L = k a ,
步骤(3.3),椭圆的长轴尺寸a和短轴尺寸b估计CCD摄像头与路标连线和路标平面的角度α:
&alpha; = sin - 1 b a ,
步骤(3.4),根据路标的位置O(x,y),CCD摄像头与路标的距离L,CCD摄像头与路标连线和路标平面的角度α计算出CCD摄像头的位置P:
如果路标在放置于道路的右侧,则P点的坐标为(x-Lcosα,y-Lsinα);
如果路标放置于道路的左侧,则P的坐标为(x+Lcosα,y-Lsinα)。
相对于已有专利,本发明使用的定位方法具有以下几个优势:
(1)只需要单个路标完成定位;
(2)路标样式简单;
(3)检测过程快,具有良好的鲁棒性,对成像质量要求低,能用于室外的光照环境。
(4)定位快速简单。
附图说明
图1为路标外观的示意图;
图2为路标在道路一侧放置的示意图;
图3为点到拟合椭圆误差计算的示意图;
图4为对图像中路标检测测量关键值的示意图;
图5为路标成像分析平视示意图;
图6为路标成像分析俯视示意图;
图7为根据路标坐标计算移动体坐标示意图;
图8为基于圆形路标成像分析的机器人视觉定位的方法的流程图。
具体实施方式
1.标识设计
人工标识如图1所示。外型为圆形,标识直径设计为20公分。从正面不同角度观察标识应显示为椭圆形,方便从各种角度检测标识。由于标识在视觉图像中呈现椭圆形的轮廓,采用特殊的检测方法,在有一定遮挡的情况下也能较好的检测;标识的边缘处设有宽度为4公分的黄色边缘,以提高标志检测的准确率,利用标识所提供的颜色特征,也使得检测更加简单可靠;标识的内部为黑色。
标识采用圆形轮廓的样式和黄色和黑色两种颜色主要是为了能够适应室外条件下的检测。首先,室外环境复杂,干扰多。特殊的样式和特殊的颜色能够提供更加强壮的鲁棒性。针对该样式的标识的快速准确检测方法将在面详述。其次,室外光线条件多样,采用黄色和黑色两种对比度强烈的颜色能够在更多的光线条件下检测到标识。
虽然标识设计简单,但在室外环境下易于识别,检测速度快,可靠性高,是一种适用于室外视觉导航的人工路标。
2.标识放置
标识放置放置于道路一侧,标识的中心与移动体视觉传感器同高,移动体平视标识,保证移动体行进过程中,标识在移动体视野中即可。
3.标识识别
标识检测的过程主要分为以下几个步骤:特定颜色边缘提取、RANSAC椭圆拟合、标识检验。图2即是包含路标的移动体的视觉图像。
(1)特定颜色边缘提取
a)将RGB颜色图像转换为灰度图像
每一个像素点的灰度值其中,R、G、B分别为该像素点红、绿、蓝三色的亮度值;
b)用OPENCV函数库中的Canny函数提取边缘
Canny函数的输入参数为上述灰度图像,低梯度阈值tlow=50,高梯度阈值thigh=100;输出为与输入图像同样尺寸的二值图像EP,其中,含有边缘信息的像素点值为255,其它区域像素点值为0.
c)将颜色图像从RGB颜色空间转换到HSV颜色空间
①每个像素点的H,S,V分量的值分别如下计算:
V=max(R,G,B),
Figure BDA00001622559900071
H = 60 ( G - B ) max ( R , G , B ) - min ( R , G , B ) , R = max ( R , G , B ) 120 + 60 ( B - R ) max ( R , G , B ) - min ( R , G , B ) , G = max ( R , G , B ) 240 + 60 ( R - G ) max ( R , G , B ) - min ( R , G , B ) , B = max ( R , G , B ) ,
若H<0则H取值为H+360.
其中R,G,B分别为该点红、绿、蓝三色的亮度值。
②为了方便存储和计算,对每个点的H,S,V分量值做如下计算:
V &LeftArrow; 255 V S &LeftArrow; 255 S H &LeftArrow; H / 2 ,
对于RGB颜色空间的彩色图像,对于每个像素点进行上述计算,可以转化为HSV颜色空间图像。
d)提取黄色区域和黑色区域
①通过实验确定黄色和黑色在视觉图像中HSV颜色空间中的区间范围。
通过分析图片中黄色和黑色的颜色值,确定黄色的HSV各分量的区间范围YS为:
20<<H<<37,
102<<S<<255,
51<<V<<255,
黑色的HSV各分量的区间范围BS为:
0<<H<<255,
0<<S<<255,
0<<V<<51,
②提取黄色区域和黑色区域
设HSV颜色空间图像为CP,黄色区域的二值图像为YP,黑色区域的二值图像为BP。对于图像空间里的一点(x,y),二值图像的取值如下:
YP ( x , y ) = 0 , CP ( x , y ) &NotElement; YS 255 , CP ( x , y ) &Element; YS ,
BP ( x , y ) = 0 , CP ( x , y ) &NotElement; BS 255 , CP ( x , y ) &Element; BS ,
③对提取区域进行膨胀操作
分别对于黄色区域二值图像YP和黑色区域二值图像BP利用OPENCV的dilate函数进行膨胀操作。Dilate函数的输入为二值图像和3*3的矩阵作为结构元素,输出为膨胀之后的二值图像分别为YP’和BP’;其中结构元素se为如下的矩阵:
se = 1 1 1 1 1 1 1 1 1 ,
膨胀操作可以使检测过程适应成像质量较差的视觉图像,提高检测的鲁棒性,
e)求交获得有效边界
为了获得有效的边界,需要结合Canny边缘图像,黄色膨胀区域图像和黑色膨胀区域图像。
设有效边界的二值图像为VP,结合Canny边缘图像EP,黄色膨胀区域图像YP’和黑色膨胀区域图像BP’如下计算VP:
对于图像空间中的一点(x,y)有:
VP ( x , y ) = 0 , EP ( x , y ) * YP ( x , y ) * BP ( x , y ) = 0 255 , EP ( x , y ) * YP ( x , y ) * BP ( x , y ) > 0 ,
通过上述求交操作,可以获得有效边界的二值图像,其中有效边界点的值为255,其点值为0.
这种特殊颜色边缘提取方法相对于单独的Canny利用了颜色信息,排除了一些无用的边界点;相对于直接通过颜色阈值获取相应区域边缘的办法能够更好的保留相关边界信息,获得更加完整真实的边界信息。
(2)RANSAC椭圆拟合
利用RANSAC框架下的最小二拟合对上述边界点进行椭圆拟合。RANSAC是根据一组包含异常数据的样本数据集,计算出数据的数学模型参数,得到有效样本数据的算法。
针对用于标识检测的椭圆拟合,具体方法描述如下:
a)从轮廓点中随机抽样取出6个点构成内点集,用最小二乘法拟合椭圆E最小二乘法拟合椭圆的步骤如下:
①椭圆可以用一般的二次函数来表示:
f(x)=ax2+bxy+cy2+dx+ey+f=0,
其中,只有当b2-4ac为负的时候,函数才表示椭圆,否则就是双曲线或者抛物线。为了将不等约束转化成相等约束的办法,强制4ac-b2=1。
②将系数进行处理,将函数标识为如下形式:
a0x2+2a1xy+a2y2+2a3x+2a4y=1,
③对于内点集中的6个点Pi(xi,yi)(i=1,…,6)构造线性方程组:
A=P-1B,
其中A=[a0a1a2a3a4]T,B=[111111]T
P = x 1 2 2 x 1 y 1 y 1 2 2 x 1 2 y 1 x 2 2 2 x 2 y 2 y 2 2 2 x 2 2 y 2 x 3 2 2 x 3 y 3 y 3 2 2 x 3 2 y 3 x 4 2 2 x 4 y 4 y 4 2 2 x 4 2 y 4 x 5 2 2 x 5 y 5 y 5 2 2 x 5 2 y 5 x 6 2 2 x 6 y 6 y 6 2 2 x 6 2 y 6 ,
④根据上述限制条件和线性方程组,利用拉格朗日乘子法求解最优解A
b)对于轮廓点中其他的点,计算与椭圆E的误差;如果误差小于设定阈值t=3个像素点,则将该点加入到内点集S
点到椭圆的误差计算步骤如下:
①每个点到拟合椭圆的误差如下定义:
设点与椭圆中点连线交椭圆于点D,则该点到拟合椭圆的误差即是该点与点D的距离。
如图3所示,O为椭圆的中心点,则C点到椭圆的误差为线段CD的长度,A点到椭圆的误差为线段AB的长度。
②设点的图像坐标为P,椭圆的中心坐标为O,根据PO两点计算直线PO的方程。
③联立直线PO的方程和椭圆方程求交点。设求得角点为D1和D2,分别计算P点到D1和D2的距离,设距离为L1和L2;
④点P到椭圆的拟合误差e=min(L1,L2)
c)如果内点集S的数目在所有轮廓点中的比例大于某个阈值p=0.9,则利用S中的所有点拟合椭圆E’,记录S和E’;重复上述过程
d)完成一定的500次抽样后,若没有记录的内点集则算法失败;否则,选择记录中最大的内点集,对应的椭圆即是算法的拟合结果。
利用最小二乘法直接拟合椭圆是一种简单高效可行的办法。由于在椭圆拟合前,图像已经过颜色分割,干扰较小。同时注意到,对于每条轮廓,若特征点的数目少于6个时可直接放弃拟合。在这样的情况下,利用最小二乘法直接拟合椭圆是合适的。最小二乘法直接拟合存在的问题是,如果目标轮廓上出现某个较大的干扰点,最终的拟合结果将会出现较大的误差。结合RANSAC算法,可以有效的解决这个问题。
该拟合方法相比于基于Hough变换的拟合具有拟合速度快的优势。基于Hough变换的算法的思想是从整体上考虑所有的特征点,通过所有的特征点投票获得最佳的描述椭圆的参数。这一类算法能够在一定的干扰下取得较好的结果,但当特征点过少时可能导致峰值不明显,难以获得最佳的参数。更大的问题是,Hough变换需要在参数空间进行计算,而椭圆有5个参数,参数空间有5个维度,计算量大,拟合速度慢。
(3)标识检验
为了在一定程度上,防止标识错误检测,需要对检测到的椭圆进行验证,判断该椭圆部分是否为合理的椭圆,进而确定该区域是否为标识。检验步骤如下:
a)通过对应内点集与拟合椭圆的误差来检验检测结果。
①点集与拟合椭圆的误差定义为每个点与拟合椭圆误差的平均;
②当对应内点集与拟合椭圆的误差大于3个像素点时,认为椭圆拟合失败,放弃对于该区域的标识检测。
b)通过椭圆的形态大小来检验检测结果。通过实验可以发现,标识形成的椭圆在图像中的尺寸和角度都是有限的。
③如果椭圆的离心率大于5,拒接该检测结果;
④如果椭圆的短轴小于50个像素点,拒接该检测结果;
⑤如果椭圆的长轴大于250个像素点,拒接该检测结果;
c)通过颜色比例来检验检测结果。实验中采用的是黄色的标识,理论上标识形成的椭圆内部应该都是黄色的点。
⑥统计椭圆内部的所有像素点的数目n;
⑦统计椭圆内部在HSV颜色值在黄色颜色区间的点的数目m;
⑧计算比例c=m/n;如果c<0.85,拒绝该检测结果;否则接受检测结果
4.移动体定位
如图4显示的是标识在视觉图像中成像效果,由于移动体的位置和角度不同,成像一般为椭圆(包括圆形)。其中,椭圆的长轴为a,短轴为b。
根据CCD摄像头成像原理,如图5可知CCD摄像头与路标的距离L,物体实际尺寸s,CCD摄像头焦距f,物体成像尺寸a有如下关系:
L = s a f ,
L = k a ,
实际操作中,通过对于CCD摄像头标定,可以获得比例关系k的数值。注意到,圆形路标成的椭圆图像的长轴尺寸正好是该距离下路标的成像尺寸。对于路标,根据该比例系数和路标在图像中成像的椭圆的长轴尺寸就可以计算路标与CCD摄像头的距离。
结合成像图像中椭圆的长轴尺寸和短轴尺寸可以估计CCD摄像头与路标连线和路标平面的角度α。如图6所示的俯视图中,P点为CCD摄像头,AB为路标尺寸,AC为以该角度成像时根据成像结果以及上述公式计算到的路标尺寸。注意到成像图像是的长轴可以被认为是α为0时的成像结果,则有:
AB = L f a ,
AC = L f b ,
近似ACB为直角,以ABC为α的近似,则有:
sin &alpha; = AC AB = b a ,
&alpha; = sin - 1 b a ,
即通过成像图中的椭圆的长轴短轴的比例可以估计α。
根据路标的位置,CCD摄像头与路标的距离,CCD摄像头与路标连线和路标平面的角度α可以计算出CCD摄像头的位置。
如图7所示,O为路标位置,ON为路标的法向。为了简化计算,以路标的法向为y轴,路标平面的水平线为x轴建立坐标系。OP的长度为L,设O点的坐标为(x,y)。由于路标放置于道路的一侧,路标和CCD摄像头的相对位置只有如下两种情况之一:
P在O的左侧,如图7所示的情况,此时P点的坐标为(x-Lcosα,y-Lsinα);
P在O的右侧,此时P点的坐标为(x+Lcosα,y-Lsinα)。
移动体定位的步骤如下:
(1)摄像头标定
a)摄像头正对标识,标识距离摄像头的距离分别为
L=[0.25m 0.5m 0.75m…10m],
b)在上述情况下分别从CCD摄像头的视觉图像中获得标识的尺寸d:
D=[d1d2d3…d40],
c)通过L和D以及公式l*d=k利用最小二乘法计算摄像头对应的k值
(2)通过椭圆的长轴a计算移动体的CCD摄像头到路标的距离L:
L = k a ,
(3)椭圆的长轴尺寸a和短轴尺寸b估计CCD摄像头与路标连线和路标平面的角度α:
a = sin - 1 b a ,
(4)根据路标的位置O(x,y),CCD摄像头与路标的距离L,CCD摄像头与路标连线和路标平面的角度α计算出CCD摄像头的位置P:
a)如果路标在放置于道路的右侧,则P点的坐标为(x-Lcosα,y-Lsinα);
b)如果路标放置于道路的左侧,则P的坐标为(x+Lcosα,y-Lsinα)。

Claims (1)

1.基于圆形路标成像分析的机器人视觉定位的方法,其特征在于,依次含有以下步骤:
步骤(1),设计并放置标识
步骤(1.1),设计标识
标识呈圆形,直径为20公分,在标识边缘处设有宽度为4公分的黄色边缘,标识的内部为黑色;
步骤(1.2),标识放置于道路右侧,标识的位置为O(x,y),标识的中心与包含在移动机器人在内的CCD摄像头同高,以使在移动机器人行进过程中标识始终在移动机器人的视野中;
步骤(2),在计算机中依次执行以下步骤:
步骤(2.1),特定颜色边缘的提取
步骤(2.1.1),把从所述CCD摄像头载入的RGB颜色图像转换为灰度图像,用I表示灰度值:
Figure FDA00001622559800011
其中,R、G、B分别为该像素点红、绿、蓝三色的亮度值;
步骤(2.1.2),用OPENCV函数库中的Canny函数提取边缘:
设定:低梯度阈值tlow=50,高梯度阈值thigh=100;
输入为步骤(2.1.1)得到的灰度图像,输出为同尺寸的二值图像EP,在所述二值图像EP中含有边缘信息的像素点的值为255,其他区域像素点的值为0;
步骤(2.1.3),把步骤(2.1.1)中的RGB颜色图像转换到HSV颜色空间:
对所述的RGB颜色空间的彩色图像按照下式转换成HSV颜色空间的彩色图像,其中每个像素点的色度H、饱和度S和亮度V分量的值分别按照下式计算:
V=max(R,G,B),
Figure FDA00001622559800012
H = 60 ( G - B ) max ( R , G , B ) - min ( R , G , B ) , R = max ( R , G , B ) 120 + 60 ( B - R ) max ( R , G , B ) - min ( R , G , B ) , G = max ( R , G , B ) 240 + 60 ( R - G ) max ( R , G , B ) - min ( R , G , B ) , B = max ( R , G , B ) ,
若H<0则H取值为H+360,
为了方便计算,对每个像素点的H,S,V分量分别做以下转换:
V &LeftArrow; 255 V S &LeftArrow; 255 S H &LeftArrow; H / 2 ,
步骤(2.1.4),从步骤(2.1.3)得到的HSV颜色图像中提取去黄色区域和黑色区域:
步骤(2.1.4.1),设定:
黄色区域内各像素的H,S,V分量值的区间范围,用YS表示:
20<<H<<37,
102<<S<<255,
51<<V<<255,
黑色区域内个像素的H,S,V分量值的区间范围,用BS表示:
0<<H<<255,
0<<S<<255,
0<<V<<51,
步骤(2.1.4.2),设定:HSV颜色空间图像为CP,黄色区域的二值图像为YP,黑色区域的二值图像为BP,则:
对于所述HSV颜色空间图像中的任意一点(x,y),对应的YP(x,y)BP(x,y)的取值为:
YP ( x , y ) = 0 , CP ( x , y ) &NotElement; YS 255 , CP ( x , y ) &Element; YS ,
BP ( x , y ) = 0 , CP ( x , y ) &NotElement; BS 255 , CP ( x , y ) &Element; BS ,
步骤(2.1.5),对步骤(2.1.4)得到的黄色区域和黑色区域进行膨胀操作:
步骤(2.1.5.1),对黄色区域进行膨胀操作:
把黄色区域的二值图像YP和结构元素se输入到OPENCV函数库中的dilate函数,得到膨胀后的黄色区域二值图像YP’;其中结构元素se为如下的矩阵:
se = 1 1 1 1 1 1 1 1 1 ,
步骤(2.1.5.2),对黑色区域进行膨胀操作:
把黑色区域的二值图像BP和结构元素se输入到OPENCV函数库中的dilate函数,得到膨胀后的黑色区域二值图像BP’;其中结构元素se同步骤(2.1.5.1)所述;
步骤(2.1.6),对所述的Canny边缘图像EP、黄色膨胀区域图像YP’、黑色膨胀区域图像BP’求交得到有效边界的二值图像YP,对于其中任意一点(x,y)有:
VP ( x , y ) = 0 , EP ( x , y ) * YP ( x , y ) * BP ( x , y ) = 0 255 , EP ( x , y ) * YP ( x , y ) * BP ( x , y ) > 0 ,
其中:有效边缘的值为255,全部有效边缘上的点即为轮廓点,其他点上的值为0
步骤(2.2),利用RANSAC框架下的最小二拟合对步骤(2.1.6)得到的有效边缘进行椭圆拟合:
步骤(2.2.1),从作为轮廓点的所述有效边缘点中随机抽取6个点Pi(xi,yi),i=1,…,6,构成内点集,用最小二乘法拟合椭圆E;通过6个点得到线性方程组A=P-1B,其中:
P = x 1 2 2 x 1 y 1 y 1 2 2 x 1 2 y 1 x 2 2 2 x 2 y 2 y 2 2 2 x 2 2 y 2 x 3 2 2 x 3 y 3 y 3 2 2 x 3 2 y 3 x 4 2 2 x 4 y 4 y 4 2 2 x 4 2 y 4 x 5 2 2 x 5 y 5 y 5 2 2 x 5 2 y 5 x 6 2 2 x 6 y 6 y 6 2 2 x 6 2 y 6 ,
B=[111111]T
步骤(2.2.2),对于轮廓点中其他的点,计算与椭圆E的误差,所述误差是指:该点与椭圆中点的连线或者其延长线与椭圆相交与两点,所述点与两个交点的距离分别为L1和L2,则所述点到椭圆的误差即为两个距离中较短的距离,误差e=min(L1,L2);
若该点到椭圆的误差小于3个像素点,则将该点加入到内点集S;
步骤(2.2.3),若内点集S中点的数目在所有轮廓点中的比例大于阈值0.9,则利用内点集S中的所有点通过最小二乘法拟合椭圆E’,记录内点集S和对应椭圆E’;
步骤(2.2.4),重复步骤(2.2.1)到步骤(2.2.3)500次,若不存在步骤(2.2.3)中的内点集S,则拟合失败;若存在,选择记录的内点集的集合中点数目最大的内点集,其对应的椭圆即是算法拟合的椭圆;
步骤(2.3),标识检验,步骤如下:
步骤(2.3.1),通过对步骤(2.2.4)得到的内点集与对应的拟合椭圆的误差检验:所述内点集S与拟合椭圆E’的误差是指所述内点集内各点与拟合椭圆的误差的平均值;若该误差小于3个像素点时,进入步骤(2.3.2);否则,椭圆拟合失败,放弃对该区域进行标识检验;
步骤(2.3.2),通过椭圆的形态大小来检验拟合结果:若属于下列情况,则拒绝该检测结果:椭圆的离心率大于5或椭圆的短轴小于50个像素点或椭圆的长轴大于250个像素点;若不在上述情况中,则进入步骤(2.3.3);
步骤(2.3.3),通过颜色比例来检验检测结果,步骤如下:
步骤(2.3.3.1),统计椭圆内部的所有像素点的数目n;
步骤(2.3.3.2),统计椭圆内部在HSV颜色值在黄色颜色区间的点的数目m;
步骤(2.3.3.3),计算比例c=m/n;如果c<0.85,拒绝该检测结果;否则接受检测结果;
步骤(3),移动体定位,步骤如下:
步骤(3.1),摄像头标定,步骤如下:
步骤(3.1.1),摄像头正对标识,设定标识距离CCD摄像头的距离分别为
L=[0.25m 0.5m 0.75m…10m],
步骤(3.1.2),在上述情况下分别从CCD摄像头视觉图像中获得标识的尺寸d,记录如下:
D=[d1d2d3…d40],
步骤(3.1.3),通过L和D以及公式l*d=k利用最小二乘法计算摄像头对应的k值
步骤(3.2),通过椭圆的长轴a计算移动体到路标的距离L:
L = k a ,
步骤(3.3),椭圆的长轴尺寸a和短轴尺寸b估计CCD摄像头与路标连线和路标平面的角度α:
&alpha; = sin - 1 b a ,
步骤(3.4),根据路标的位置O(x,y),CCD摄像头与路标的距离L,CCD摄像头与路标连线和路标平面的角度α计算出CCD摄像头的位置P:
如果路标在放置于道路的右侧,则P点的坐标为(x-Lcosα,y-Lsinα);
如果路标放置于道路的左侧,则P的坐标为(x+Lcosα,y-Lsin α)。
CN201210144074.3A 2012-05-10 2012-05-10 基于圆形路标成像分析的机器人视觉定位方法 Expired - Fee Related CN102679960B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210144074.3A CN102679960B (zh) 2012-05-10 2012-05-10 基于圆形路标成像分析的机器人视觉定位方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210144074.3A CN102679960B (zh) 2012-05-10 2012-05-10 基于圆形路标成像分析的机器人视觉定位方法

Publications (2)

Publication Number Publication Date
CN102679960A true CN102679960A (zh) 2012-09-19
CN102679960B CN102679960B (zh) 2014-01-01

Family

ID=46812247

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210144074.3A Expired - Fee Related CN102679960B (zh) 2012-05-10 2012-05-10 基于圆形路标成像分析的机器人视觉定位方法

Country Status (1)

Country Link
CN (1) CN102679960B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103196440A (zh) * 2013-03-13 2013-07-10 上海交通大学 M序列离散式人工路标设置及相关移动机器人定位方法
CN103400134A (zh) * 2013-06-28 2013-11-20 哈尔滨工程大学 非接触式手指静脉样本感兴趣区域提取方法
CN103810488A (zh) * 2012-11-09 2014-05-21 阿里巴巴集团控股有限公司 图像特征提取方法、图像搜索方法、服务器、终端及系统
WO2016115714A1 (zh) * 2015-01-22 2016-07-28 江玉结 基于色块标签的定位与地图构建方法及其装置
CN105841687A (zh) * 2015-01-14 2016-08-10 上海智乘网络科技有限公司 室内定位方法和系统
CN106153012A (zh) * 2015-04-13 2016-11-23 苏州科沃斯商用机器人有限公司 指定目标的空间姿态参数测量方法及其应用
CN106570470A (zh) * 2016-10-26 2017-04-19 重庆大学 基于机器视觉的智能扫雪机器人信标识别方法
CN108168431A (zh) * 2017-12-29 2018-06-15 思博赛睿(北京)科技有限公司 一种基于视觉辨识的网球机器人定位系统及方法
CN108827316A (zh) * 2018-08-20 2018-11-16 南京理工大学 基于改进的Apriltag标签的移动机器人视觉定位方法
CN109993790A (zh) * 2017-12-29 2019-07-09 深圳市优必选科技有限公司 标志物、标志物的形成方法、定位方法以及装置
CN114179056A (zh) * 2021-12-13 2022-03-15 国网湖南省电力有限公司 一种gis室内多自由度挂轨式巡检机器人及其应用方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1236018A1 (en) * 1999-11-12 2002-09-04 Go Sensors, L.L.C. Robust landmarks for machine vision and methods for detecting same
CN101144708A (zh) * 2007-09-26 2008-03-19 东南大学 三维扫描系统中圆形标志点的检测方法
CN101915573A (zh) * 2010-08-04 2010-12-15 中国科学院自动化研究所 一种基于标记物的关键点检测的定位测量方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1236018A1 (en) * 1999-11-12 2002-09-04 Go Sensors, L.L.C. Robust landmarks for machine vision and methods for detecting same
CN101144708A (zh) * 2007-09-26 2008-03-19 东南大学 三维扫描系统中圆形标志点的检测方法
CN101915573A (zh) * 2010-08-04 2010-12-15 中国科学院自动化研究所 一种基于标记物的关键点检测的定位测量方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
卢成静等: "视觉检测中圆形标志的定位方法研究", 《宇航计测技术》, vol. 28, no. 02, 25 April 2008 (2008-04-25) *
孙鹏等: "视觉测量中圆形标志点的全场自动识别和提取", 《北京信息科技大学学报(自然科学版)》, vol. 26, no. 03, 30 June 2011 (2011-06-30) *
殷永凯等: "圆形标志点的亚像素定位及其应用", 《红外与激光工程》, vol. 37, 15 June 2008 (2008-06-15) *
邢诚等: "一种基于随机Hough变换的椭圆检测方法", 《计算机与数字工程》, vol. 36, no. 01, 20 January 2008 (2008-01-20) *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810488A (zh) * 2012-11-09 2014-05-21 阿里巴巴集团控股有限公司 图像特征提取方法、图像搜索方法、服务器、终端及系统
CN103196440B (zh) * 2013-03-13 2015-07-08 上海交通大学 M序列离散式人工路标设置及相关移动机器人定位方法
CN103196440A (zh) * 2013-03-13 2013-07-10 上海交通大学 M序列离散式人工路标设置及相关移动机器人定位方法
CN103400134B (zh) * 2013-06-28 2016-08-10 哈尔滨工程大学 非接触式手指静脉样本感兴趣区域提取方法
CN103400134A (zh) * 2013-06-28 2013-11-20 哈尔滨工程大学 非接触式手指静脉样本感兴趣区域提取方法
CN105841687A (zh) * 2015-01-14 2016-08-10 上海智乘网络科技有限公司 室内定位方法和系统
CN105841687B (zh) * 2015-01-14 2019-12-06 上海智乘网络科技有限公司 室内定位方法和系统
WO2016115714A1 (zh) * 2015-01-22 2016-07-28 江玉结 基于色块标签的定位与地图构建方法及其装置
CN106153012A (zh) * 2015-04-13 2016-11-23 苏州科沃斯商用机器人有限公司 指定目标的空间姿态参数测量方法及其应用
CN106570470A (zh) * 2016-10-26 2017-04-19 重庆大学 基于机器视觉的智能扫雪机器人信标识别方法
CN108168431A (zh) * 2017-12-29 2018-06-15 思博赛睿(北京)科技有限公司 一种基于视觉辨识的网球机器人定位系统及方法
CN109993790A (zh) * 2017-12-29 2019-07-09 深圳市优必选科技有限公司 标志物、标志物的形成方法、定位方法以及装置
CN108827316A (zh) * 2018-08-20 2018-11-16 南京理工大学 基于改进的Apriltag标签的移动机器人视觉定位方法
CN114179056A (zh) * 2021-12-13 2022-03-15 国网湖南省电力有限公司 一种gis室内多自由度挂轨式巡检机器人及其应用方法
CN114179056B (zh) * 2021-12-13 2023-07-25 国网湖南省电力有限公司 一种gis室内多自由度挂轨式巡检机器人及其应用方法

Also Published As

Publication number Publication date
CN102679960B (zh) 2014-01-01

Similar Documents

Publication Publication Date Title
CN102679960B (zh) 基于圆形路标成像分析的机器人视觉定位方法
CN106651953B (zh) 一种基于交通指示牌的车辆位姿估计方法
CN110501018B (zh) 一种服务于高精度地图生产的交通标志牌信息采集方法
CN108168539B (zh) 一种基于计算机视觉的盲人导航方法、装置及系统
CN102682292B (zh) 基于单目视觉的道路边缘检测及粗定位方法
CN103512579B (zh) 一种基于热红外摄像机和激光测距仪的地图构建方法
CN102419178B (zh) 基于红外路标的移动机器人定位系统和方法
CN202702247U (zh) 用于室内移动机器人的快速精确定位系统
CN103487034B (zh) 一种基于立式标靶的车载单目摄像头测距测高方法
CN102135429B (zh) 一种基于视觉的机器人室内定位导航方法
CN103424112B (zh) 一种基于激光平面辅助的运动载体视觉导航方法
CN103925927B (zh) 一种基于车载视频的交通标识定位方法
CN102831595B (zh) 用于自然环境下目标点图像识别的标识物检测方法
CN105180890A (zh) 融合激光点云和数字影像的岩体结构面产状测量方法
CN104835173A (zh) 一种基于机器视觉的定位方法
CN102773862A (zh) 用于室内移动机器人的快速精确定位系统及其工作方法
CN103499337B (zh) 一种基于立式标靶的车载单目摄像头测距测高装置
CN107516077A (zh) 基于激光点云和影像数据融合的交通标牌信息提取方法
KR20190134231A (ko) 차량의 위치 추정 장치, 차량의 위치 추정 방법, 및 이러한 방법을 수행하도록 프로그램된 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능한 기록매체
CN105160322A (zh) 基于航拍图像的室外停车场空置停车位识别方法
CN105335973A (zh) 运用于带钢加工生产线的视觉处理方法
US20220308228A1 (en) System and method for robot localisation in reduced light conditions
CN103759669A (zh) 一种大型零件的单目视觉测量方法
CN104751119A (zh) 基于信息融合的行人快速检测跟踪方法
CN104732553A (zh) 一种基于多台激光辅助靶标的特征点提取方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140101

Termination date: 20180510

CF01 Termination of patent right due to non-payment of annual fee