基于三维视觉六足机器人多模式测量系统设计*

2018-03-07 02:57张腾飞温秀兰崔俊宇白冰峰
组合机床与自动化加工技术 2018年2期
关键词:畸变步态标定

张腾飞,温秀兰,崔俊宇,芮 平,白冰峰

(南京工程学院 自动化学院,南京 211167)

0 引言

六足机器人具有丰富的步态和冗余的肢体结构, 是仿生机器人的典型代表之一[1]。目前国内外研究热点多是机械结构的优化设计[2-5]。国内哈尔滨工业大学邓宗全教授对六足机器人步行腿节段比例进行研究,找出最适合基节比例[2],并且提出一种低冲击运动规划方法的液压六足机器人,该方法以低冲击平顺运动为目标,减小足地接触冲击的足端轨迹规划方法[3]。河北工业大学张建华副教授设计了一种基于马尔可夫决策过程的自由步态六足机器人,有变形关节和轮式足端,具备较好的灵活性及环境适应能力[4]。国外,美国密歇根大学和卡内基梅隆大学合作组成的研究团队通过模仿蟑螂步态成功地研制了仿生六足步行机器人RHex,通过改变5个参数值控制机器人的步态,平均速度0.5 m/s[5]。总结目前研究成果,多是通过对六足昆虫运动时的观察来进行模拟仿真确定其所设计六足机器人的运动步态,虽然可以满足六足机器人运动的要求,但提出的运动步态各有不同,没有具体的针对多模式下步态的测量系统开展深入研究。因此,为了进一步探究六足机器人的运动特性问题,结合Kinect相机,设计出一种空间多模式下的六足机器人运动测量系统。

1 六足机器人运动测量系统硬件构成

六足机器人多模式运动测量系统硬件结构主要包括六足机器人、视觉采集系统和图像处理系统三部分。六足机器人通过控制器CM-530编程,利用绝对值AX-12A 舵机来实现多模式下步态设计[6]。视觉采集系统主要是利用Kinect视觉相机来获取测量六足机器人在空间三维下的位置信息。通过微软Kinect系统的单目RGB摄像机以及深度距离RGB-D像机,来获取六足机器人在世界坐标系X-0-Y平面的坐标和Z轴方向上的坐标进而求得六足机器人在空间坐标系X-Y-Z下的三维坐标参数。图像处理系统主要是通过PC机来处理Kinect相机采集到的数据。通过opencv库进行图像处理,在VS2010软件平台下,进行数据的分析处理,从而实现六足机器人多模式下的步态检测[7]。系统的硬件环境如图1所示。

图1 六足机器人运动测量系统硬件环境

1.1 六足机器人的设计

本系统所设计的六足机器人,由一个Robot机器人控制器、两块大小不等的PP塑料、18个RX-23舵机和若干个舵机连接件组成。Robot机器人控制器是六足仿生机器人的控制中心,控制器与6只脚连接,每只脚由3个RX-23舵机组成。两块大小不等的PP塑料,分别是矩形红色和正方形白色。

为了更好的验证六足机器人在不同步态下的运动稳定性问题,共设计单足、双足、三足三种步态。考虑到六足机器人在平面运动时Z轴方向的稳定性因素的影响,设计了旋转运动步态。单足步态指六足机器人每个运动周期只有一只脚作为前进脚,剩下的5只脚作为支撑足。同理,双足步态就是两只脚作为前进足,三足步态就是三只脚作为前进足。旋转步态是六足机器人绕Z轴,在X-O-Y平面上做旋转运动。上述4种步态结构图如2所示。

图2 六足机器人步态

1.2 Kinect相机的标定

本测量系统要求对六足机器人在世界坐标系下的三维坐标做到实时反馈。要想保证测量系统的准确性,必须要保证Kinect相机的精度。因此,要对Kinect设备进行标定。Kinect相机的参数分为内参,畸变参数和外参。由于Kinect相机模型采用的是针孔成像原理,中心轴安装偏心问题会产生精度误差,所以要进行内参数标定。考虑到Kinect相机为了提高采光效率而使用透镜,这种透镜会造成畸变误差的问题,所以对畸变参数进行标定。畸变误差分为径向畸变误差和切向畸变误差。径向畸变误差是因为透镜会使得成像的中心O产生畸变,并且越偏离光学中心O,畸变误差越大。切向畸变误差是透镜所在平面不完全平行于图像平面而产生[8]。Kinect相机外参数误差标定是针对旋转3个角度和平移的6个方向参数进行标定。

1.2.1 标定原理

由于光学畸变的影响,使得彩色图和深度图对应的像素点不一致,采用Kinect摄像头标定的方法可以校正二者对齐。Kinect的标定采用棋盘式标定方法。在棋盘中,黑色格子与白色格子相见排列,不同颜色的格子之间有明显的边界,即“角点”。通过程序来识别二维图像上的彩色像素点,从而获取坐标[9]。对Kinect设备的彩色相机和深度相机进行标定,设景物点P1的坐标为(x1,y1,z1),P1在成像平面的成像点P2的坐标为(x2,y2,z2),则:

(1)

f是相机的焦距,f=z2。在Kinect相机内参数标定中,成像平面上的像经放大处理得到数字图像,成像平面上成像点(x2,y2)转换为图像点(u,v)。将光轴中心线在成像平面的交点的图像坐标记为(u0,v0),则:

(2)

ax和ay成像平面到图像平面在X轴和Y轴方向上的放大系数。联立(1)和(2)可以得到摄像机内参矩阵(3):

(3)

式中,kx=axf,f是X轴方向的放大系数;ky=ayf,f是Y轴方向的放大系数,Min即为内参矩阵。

(4)

Kinect外参数的矩阵为:

(5)

式中,(xc,yc,zc)表示景物点在摄像机坐标系中坐标,(xw,yw,zw)表示景物点在owxwywzw中坐标,cMw是外参矩阵。

1.2.2 标定误差

通过软件编程,利用opencv开源库,对14幅不同角度的棋盘图标定得到Kinect相机的标定参数为:

(1)内参数

(2)畸变参数

式中,k1为径向参数,k2为畸变参数,p1为切向参数,p2为畸变参数,k3为可选参数无实际意义。

(3)外参数

通过对每幅图像像素进行计算,得出红外相机到彩色相机的旋转矩阵和平移矩阵,进而计算出Kinect的外参矩阵。

标定结果:

由旋转矩阵得,红外相机与彩色相机之间无明显的旋转变换。由平移矩阵得,红外相机与彩色相机在X轴方向上有0.023m的平移量,Y轴和Z轴方向上的平移可以忽略不计。

(4)标定像素误差s

通过对不同角度的14幅图的像素进行采样分析,得到每幅采样图像的平均误差如图3所示。

图3 标定像素误差

计算图3中不同角度的14幅图的像素平均误差为0.05像素,标准差0.0066,满足实验的要求。

2 多模式运动测量系统软件设计

六足机器人多模式测量系统软件流程图如图4所示。当程序开始运行时,首先对各个硬件设备进行初始化设置,包括六足机器人、Kinect相机等。设计六足机器人的运动步态轨迹,当六足机器人进入Kinect相机工作区域时,程序就会采集图片信息,进行二值化、RGB识别处理,然后根据处理结果,输出处理过后的图片和所需的三维坐标信息。运行主界面设计主要是分为三部分,第一部分是RGB颜色显示区域,分别显示采集到的图片的红色、绿色和蓝色三种颜色;第二部分用一幅图来显示Kinect相机输入经过VS2010处理过后输出的图片,包含定位点在整个世界坐标系的三维坐标信息。第三部分是数据的实时显示和存储。程序开始运行,所采集到的坐标就会在编辑框中显示并且生成文本文件,记录所需数据。

图4 软件流程

3 多模式运动测量实验及结果

3.1 多步态监测实验

通过对六足仿生机器人的舵机编程,实现六足机器人的单足、双足、三足和旋转四种步态下的运动。使用Kinect彩色相机和红外相机采集到的图像进行处理,得到不同步态下六足机器人在空间坐标系X、Y、Z轴的坐标和当前运动方向与X轴的夹角。

3.2 实验结果与分析

使用所设计的多步态运动测量系统,采集到在各步态下的三维坐标数据,将数据导入MATLAB 7.0中进行分析计算,得出各步态Z平面如图5所示,各步态运动轨迹如图6所示。如图5所示,是为了验证各步态的稳定性,对四种步态下参考点到Kinect相机距离进行计算得到的点云数据。由图可得,四种步态下的整体数据均无较大波动。图6中X、Y轴为图像坐标系转换为世界坐标系的坐标轴,(x,y)坐标点是六足机器人定位点,所拟合出来的曲线为六足机器人定位点的运动轨迹。分析四幅图可知,六足机器人沿直线运动时,单足步态下,拟合出的轨迹线与直线最为贴合,但在运动过程中,会出现数据突变现象。双足步态下,轨迹线较为贴近直线且运动过程中,不会发生突变现象。三足步态下,六足机器人摆动幅度较大,因此实验拟合出来的轨迹线与直线相差较大,且波形不稳定。旋转步态,六足机器人在X-0-Y平面上做椭圆运动,由于六足机器人步态设计运动周期与程序运行周期存在时间间隔,轨迹线出现了一定的错位和交叉现象。综上所述,该测量系统实现了对不同步态下六足机器人运动特性的测量,改进了仅仅通过软件仿真对六足机器人运动特性描述方法的不足,通过对实验结果的分析得出的结论,更可靠,具有说服力。

图5 Z轴距离点云

图6 步态运动轨迹

4 总结

本文针对目前缺乏对六足机器人多模式下运动特性探究的问题,通过对舵机控制器进行编程来控制舵机实现仿生运动,利用Kinect相机RGB-D特征提取等图像处理技术完成对六足机器人空间的定位,从而实现了六足机器人在多模式下的空间运动的跟踪和测量功能。系统可应用在六足机器人的多模式的运动参数测量中,并且由实验得出六足机器人在双足步态直线前进中有较高的稳定性,为仿生机器人运动特性研究提供了一定的参考价值。

[1] Chen X, Wang L Q, Ye X F, et al. Prototype development and gait planning of biologically inspired multi-legged crablike robot[J]. Mechatronics, 2013, 23(4): 429-444.

[2] 邓宗全,刘逸群,高海波,等. 液压驱动六足机器人步行腿节段长度比例研究[J]. 机器人,2014,36(5):544-551.

[3] 刘逸群,邓宗全,刘振,等. 液压驱动六足机器人一种低冲击运动规划方法[J]. 机械工程学报,2015,51(3):10-17.

[4] 李满宏,张建华,张明路. 新型仿生六足机器人自由步态中足端轨迹规划[J]. 中国机械工程,2014,25(6):821-825.

[5] 李满宏,张明路,张建华,等. 六足机器人关键技术综述[J]. 机械设计,2015,32(10):1-8.

[6] J Zhang J Wang, W Chen, et al.Virtual model optimization and locomotion control of bionic hexapod robot[C].2012 7th IEEE Conference on Industrial Electronics and Applications (ICIEA), Singapore, 2012:497-501.

[7] 杨东方,王仕成,刘华平,等. 基于Kinect系统的场景建模与机器人自主导航[J]. 机器人,2012,34(5):581-589.

[8] 乔凤斌,张松,郭立杰. 基于机器视觉的枪式微型电阻焊接系统设计与应用[J]. 组合机床与自动化加工技术,2013(4):86-88,92.

[9] 郑梓均.基于ROS系统的简易服务机器人关键技术的研究[D].无锡:江南大学,2016.

猜你喜欢
畸变步态标定
基于步态参数分析的老年跌倒人群步态特征研究
使用朗仁H6 Pro标定北汽绅宝转向角传感器
几何特性对薄壁箱梁畸变效应的影响
CT系统参数标定及成像—2
CT系统参数标定及成像—2
基于面部和步态识别的儿童走失寻回系统
“刷脸”正盛,步态识别又来了
在Lightroom中校正镜头与透视畸变
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
基于MATLAB 的CT 系统参数标定及成像研究