基于机器人视觉的边缘线微分算法分析与改进

2014-10-29 07:43孔旭影
机器人技术与应用 2014年2期
关键词:模拟器微分二阶

孔旭影

(北京信息职业技术学院,北京,100018)

0 引言

笔者的课题研究总目标是实现基于视觉的类人型足球机器人,按照预定目标进行自主决策,并赢取RoboCup机器人大赛奖项。这包括实现类人型足球机器人能够进行快速自定位,并较快速地辨识足球和球门,能够进行自主决策、智能规划且将足球射进球门,其中一个子目标就是实现基于视觉的机器人快速自定位。

北京信息职业技术学院自2009年开始研究类人型足球机器人,并参加RoboCup机器人中国公开赛;2010年开发了机器人视频图像处理器和类人型足球机器人视觉定位系统软件,并在国际组织SICE协会年会上发表了“Research and Practice about Positioning Algorithms of Humanoid Robot in RoboCup Soccer Stadium”论文;2011年开始展开对类人型足球机器人自主决策、智能规划的全面研究,并对类人型足球机器人视觉定位系统进行了全面改进。

1 基于视觉机器人的定位技术

基于视觉机器人的定位技术目前主要采用的是视觉测距技术和图像特征点提取策略,另外还运用了不变矩算法等。

1.1 视觉测距技术

视觉测距是实现足球机器人定位的一个基本方法,也是该机器人所有视觉行动的重要前提,要实现视觉测量就必须标定摄像机的参数和参照物,通过小孔成像模型进行测距。机器人视觉测距系统利用标定结果,即摄像机的内、外部参数,通过三角测量原理,即机器人的两个摄像机(双目)的光心和对应的两幅图像中的像点所成的射线相交于物点,用最小二乘法解出物体的坐标,对物体的位姿进行测量,从而实现实时定位。单目机器人也用小孔成像模型,计算量会小很多,因此计算速度比较快。由于小孔成像模型的误差、测量系统的误差且图像存在畸变,系统会不可避免地出现误差,误差率约11%。[1]

1.2 图像特征点提取策略

机器人可以根据球门形状和颜色以及标志杆的形状和颜色来判断对方球门、己方球门、左侧边线、右侧边线。颜色与形状均是事先预知的图像特征点,通过RGB色彩通道,识别蓝色球门或黄色球门,识别左侧标志杆或右侧标志杆;通过R、B通道灰化图像并采用聚类的方法,比对近点、中点、远点的目标成像像素,判断距离目标的远近,从而定位机器人。这种方法的误差率也不能保证在10%以下。[2]

1.3 不变矩的运用

不变矩因其具有旋转、平移、缩放等特性的不变特征而得名,不变矩特征主要表征了图像区域的几何特征,又称为几何矩或简称为矩。在图像处理中,几何不变矩可以作为一个重要的特征来表示物体,可以据此特征来对图像进行分类等操作。不变矩被用作刻画空间物体的质量分布,如果将图像的灰度值看作是一个二维或三维的密度分布函数,那么不变矩方法即可用于图像分析领域并用作图像特征的提取。

有两种不变矩效果明显,Hu不变矩组成的特征量(零阶矩和一阶矩)对图片进行识别,优点是速度很快,缺点是识别率比较低。Zernike 不变矩相比 Hu 不变矩识别效果会好一些,但速度慢,它采用了高阶矩。[3]

总之,不变矩的运用提高了对球门、标志杆的识别率。

2 边缘线微分算法分析

边缘线微分算法是笔者在国际组织SICE协会年会上发表的论文(“Research and Practice about Positioning Algorithms of Humanoid Robot in RoboCup Soccer Stadium”)中提出的。

边缘线是指不同颜色对象的分界线。使用VC++中getpixel(x,y)函数,通过扫描和像素值比对可以找到一幅图像中的边缘线。边缘线微分算法就是沿着边缘线做微分运算,求边缘线的切线斜率,从而根据斜率值的变化情况判断线形的方法。斜率值可以被表述为:

如果斜率值保持不变,这条边缘线就是直线;如果斜率值连续、渐进地变小或变大,它就是一条圆弧线。圆弧线的半径r,可以通过三角形MNO(见图1所示)计算。M、N是圆弧线上的切点,MO、NO是过切点的垂线,交点是圆心O。O点的坐标为O(x,y)。

图1 圆弧半径r

上式(1)是O点的x坐标,上式(2)是O点的y坐标。O点的坐标是解MO、NO两条直线方程的结果。式中b、b'是两条直线分别在y轴上的截距,△b= b-b',kM是过M点的切线斜率,kN是过N点的切线斜率。

获得O点坐标后,可以计算出圆弧半径r,通过r值的变化范围可与典型特征值进行比对,再参考其他图,从而判断机器人所处的位置。如图2所示。

图2 机器人在不同位置拍到的球场图像

实践结果验证了对边缘线微分算法在直线图形识别方面应用的正确性,也验证了对弧线形的判断,算法能计算出区域分割法所定义的球场上各个区域的典型特征值,这些特征值可以作为机器人定位时进行数据比对的标准。各区域的典型k值和r值为机器人自定位奠定了基础,也为机器人的路径区域规划奠定了基础[4]。该方法对机器人迷失、场外色彩和图形干扰问题已经改进了很多,但是图像特征值提取过程的计算量不小,在提高机器人的自定位速度方面不明显。

3 边缘线微分算法的改进

为了提高机器人自定位的速度和准确性,笔者又尝试了新的改进方法。一方面对上述边缘线微分算法进行二阶微分运算,因为在球场的某些特定区域所拍图像的特征有出现椭圆、甚至接近正圆的情况。众所周知,椭圆或圆的二阶微分是常量,而且形状不同时常量的值不同,这使得二阶微分的特征值比对更加容易、准确。另一方面,借鉴HU不变矩对图形的识别效率,当定位过程需要时可以作为一个补充。

3.1 改进后机器人定位算法的步骤

改进后,机器人定位算法实现的具体步骤如下:

1)机器人通过自带摄像头获取图像。

2)对图像进行处理,包括灰化、二值化、去噪,并确认场内图像。

3)判断边缘线是否为直线,并计算直线斜率k;若为圆弧或椭圆,计算圆弧半径r。当边缘线不清晰或出现k值无规则变化时,启用HU不变矩的计算方法。

4)如果r值的变化形成环连续,进行二阶微分运算。由于r值在一阶微分程序中已经进行了运算,这使得二阶微分程序可以大大简化,不增加太多运算。

5)调用球场上各分区的典型特征值,将实时测出的数据与典型特征值进行比对,判断机器人所处的位置。

3.2 边缘线二阶微分算法的实现

对于椭圆而言,二阶微分的本质是长轴和短轴的值为常量,当长轴与短轴相等时为正圆。

在一阶微分的程序中计算圆弧半径r,如果r值的变化形成环连续,即从某起点的某一个值Ro变化又回到Ro值,则这是一个椭圆。在这个变化过程中必然有一个最大值和一个最小值,当这两个值比较接近时判断结果是近乎一个正圆。这样,二阶微分程序可以大大简化,从而不用增加太多运算就可以实现目标。r值达到最大值时,定义为RMAX,达到最小值时,定义为RMIN。

最终的实现代码结构如下:

由于篇幅所限,这里不能展示更多代码。CountR(RMAX,RMIN)的具体代码行及运算已经简化了许多,比预计的运算量省略了椭圆轴长的计算和二阶微分的实际运算,但这对于特征值的比对已经够用,基本实现了改进的目标。在经过模拟器的测试后,也通过了机器人的实际验证。

4 算法改进效果

为了统计测试改进算法的效果,便于图像处理算法的调试,也为了减少机器人的磨损,笔者开发了称为模拟器的图像处理软件实验平台,这样可以很容易地在PC上(不是机器人上)验证关于视觉系统的一些程序和测试改进算法的效果。模拟器的UI如图3所示。其中,左上角位置的图像是已经灰化的图像,左下角是灰度分布图,阈值很容易在这张图上找到。[5]

图3 模拟器UI

目前模拟器实现了以下功能:

将机器人拍摄的彩色图像转换为灰度图像,并显示灰度分布图;显示机器人拍摄的图片;可将像素颜色信息用RGB、YUV和HSI空间中的值描述出来,并将其在图像中的坐标显示出来;可基于原图的R通道、G通道、B通道或亮度特征实现转换;可以设置阈值;可将图像转换为二值图(黑白图);可通过打标记的方法实现目标聚类,以识别出图像中的不同对象并消除噪声;对识别出来的对象自动描出轮廓线;可计算包括面积、周长、中心坐标和圆形目标特征参数;根据特征参数找出目标;保留出一些接口供进一步算法实验使用。

表1是在模拟器上测到的数据和统计结果。

表1 : 测量记录与统计表

其中,平均误差率比原来的数据9.6提高了约12%,定位平均用时比原数据47.3s提高了约10%。

5 结束语

本项研究借鉴了色彩RGB通道识别技术以及不变矩识别图形技术,进一步探索以前开发的边缘线微分算法,不断改进系统;另一方面,加强实践,即在搭建的足球场使用类人型足球机器人反复验证、不断实践,再改进系统、修正系数,直到逼近目标。为了减少机器人的磨损,笔者开发了模拟器,以便调试改进的程序,在模拟器上运行无误后再进行真实机器人验证。

本文阐述了基于视觉机器人的边缘线微分算法与改进措施,重点考虑了椭圆函数的二阶微分为常量的因素。这一改进结果经过自创的模拟器测试,也通过了MOS07型机器人的实际验证(如图4所示),最终实现了预期目标,提高了约10%的效率,机器人定位的准确性也提高了约12%。

图4 边缘线微分改进算法的实际验证

本文提出的算法仍有改进的空间,定位效率仍有待提高。今后,一方面要研究探讨多种方法,根据不同情况选用,如色彩通道与“不变矩”和“相对矩”理论的运用;另一方面,要深入分析特征值的变化规律,进一步简化计算过程,优化程序代码。

[1]李永佳.基于视觉的机器人定位研究[D].浙江:浙江大学,2011.

[2]任旭虎.图像特征点提取技术研究[J].仪表技术和传感器,2009(11):83-85.

[3]杜庆海.基于不变矩特征的图像识别[J].信息技术与信息化,2008(6):96-98.

[4]孔旭影,张志斌,林志红,等.Research and Practice about Positioning Algorithms of Humanoid Robot in the RoboCup Soccer Stadium[A]//Proceedings of SICE Annual Conference 2010 in Taiwan[C],Japen:SICE,2010:3546-3549.

[5]林志红,孔旭影.机器人足球识别算法改进与研究[J].机器人技术与应用,2010(4):42-44。

猜你喜欢
模拟器微分二阶
了不起的安检模拟器
拟微分算子在Hp(ω)上的有界性
盲盒模拟器
划船模拟器
一类二阶迭代泛函微分方程的周期解
上下解反向的脉冲微分包含解的存在性
一类二阶中立随机偏微分方程的吸引集和拟不变集
二阶线性微分方程的解法
一类二阶中立随机偏微分方程的吸引集和拟不变集
借助微分探求连续函数的极值点