2016年空中机器人大赛花絮
2016年空中机器人大赛综合报道
作者:文均,吴侃,鉴津
概要:2016年9月22日到25日,中大空中机器人团队派出4名队员前往北京参加亚太国际空中机器人比赛。在此次比赛中,我们参加了比赛技术答辩会,并与其他比赛队伍进行深度的互动和交流,同时也在比赛现场试飞无人机,收集了大量的有用的场地信息和飞行数据。我们感受到了比赛的困难性和挑战性,但同时也激发了我们的斗志,我们将会在取长补短,吸取其他队伍的经验教训的基础上力争上游,争取在明年的比赛中斩获佳绩。
「作者:文均」
队伍情况:
(1)浙江大学
浙江大学是本次比赛实力最强,完成度最高的队伍,队伍由博士生和硕士生组成。队伍分工分为:策略,360°视觉,目标识别,轨迹规划,导航,边界检测,避障,平台安装。导航方面,采用光流,地面方格信息,以及捷联惯性导航三种方法进行数据融合得到机体坐标。目标识别和跟踪方面,先是使用样本训练出的颜色阈值来二值化,然后使用BIOB算法得到机器人的轮廓(地面机器人上带颜色的板的轮廓)。而对于机器人的运行方向则采用一种叫PnP变换的算法来得到(未知具体含义,是从基于AR tag的定位算法启发而来的)。而对于目标的跟踪则采用光流来得到,因为光流的矢量结果中,目标机器人的与背景不一致。对于避障,采用的是与我们之前一致的人工势场法,路径规划采用随机最优控制。对于拦截目标的轨迹规划,分成三个阶段,巡航,跟踪,接近,其中,巡航采用的是固定路线,在比赛中观察得知是场地的绿边的一个角的1/4场地。巡航一圈后停到场地正中央降落并再次起飞。而当发现需要拦截的机器人时,会开始进行跟踪,并与其在水平方向上达到同步,在此过程中飞行器本身下降高度至约0.5m高度处,最后实行拦截,据我猜测,应该是开环控制延原运动方向加速并降落。观察现场比赛可知,这种拦截方法成功率很高。对于场地边缘的检测,采用的方法是,先进行SVM二值化操作(估计是一个根据颜色的SVM分类器),然后进行形态滤波(腐蚀,膨胀去除杂点),然后进行边缘检测,最后通过hough变换得到边界线。而对于机器人的识别以及360°视觉,还采用了一个PTZ相机(Plan Tilt Zoom)来实现,算法方面采用HOG特征与SVM分类器来得到iRobot和障碍机器人位置(分别得到),在答辩的视频演示中可看到有误识别的问题。而策略方面,他们先是通过模拟得到一个预先训练好的回报函数,然后飞行器根据回报函数来得到策略,目标是使回报最大化。但现场看来,这种策略存在很大问题,经常发生无意义的拦截,可能的原因是模拟的结果与实际的运行结果的存在很大的差异。硬件方面,浙江大学使用的是M100飞行器,UTL-30LX激光雷达,intel i5 NUC主机,Bluefox的摄像头,guidance辅助激光雷达。软件方面,使用ubuntu系统并采用ROS控制飞行器,使用ROS的Gazebo仿真平台进行仿真。
(2)厦门大学
厦门大学是比赛现场表现仅次于浙江大学的学校。硬件平台方面,采用M100飞行器,激光雷达,GoPro4相机,集成的姿态传感器,Guidance以及intel NUC。算法方面由于厦门大学在答辩时很多地方并没有详细说明,因此只能结合猜测以及答辩描述来得知。关于边界检测,基于的是灰度图来识别边缘,根据猜测,没有完全地检测边缘,只是在检测到边缘时往场地内飞,避免出界。而机器人识别方面,由于GoPro相机存在图像畸变问题,因此先进行图像的校正,然后根据机器人上方颜色板的形状进行模板匹配。定位导航方面,采用图像拼接,通过前后两帧图像间通过特征点的匹配来拼接图像并得到两帧图像间的位移,根据位移来得到飞行器的飞行轨迹。拦截跟踪方面并没有在答辩中提及。据比赛中的飞行器表现猜测其跟踪应该是通过使得模板的匹配程度最高来实现,而拦截则是预测其轨迹并提前降落至目标机器人前方,但可能由于预测不准确,导致每次目标机器人都与飞行器擦肩而过,并不能实现有效的拦截。
(3)哈尔滨工业大学
比赛结果中,哈尔滨排第二,因为哈尔滨工业大学三次起飞均成功,答辩方面比厦门大学更详细,因此我认为在完成度方面,哈尔滨工业大学应该与厦门大学持平。硬件方面:同样使用M100飞行器,Guidance,Intel RealSense,机载电脑应该也是Intel NUC。软件方面,首先介绍的是其搜索策略:他们从模拟结果中,得到这样的搜索策略:0~240s,绕场地中心为圆心2.5m半径的圆飞行,240s~480s,绕场地中心为圆心7.5m半径的圆飞行,480s~600s,定点飞行。而目标的选择则根据距离,运行方向,纠正方向所需交互次数(按压与碰撞次数),每次交互时间来得到一个开销,然后选择开销最低的机器人作为交互目标。定位方面采用的是光流和地面格子信息的结合。避障方面,采用4个Guidance传感器和两个RealSense组成双层的六芒星型,;来达到360°无盲区的目的。目标机器人的识别使用HOG+SVM,方向通过色块边缘来识别,而跟踪通过Camshift来实现。而交互前的跟踪飞行,则分成两部分实现,一部分是通过识别目标机器人的方向和速度,然后使飞行器在平行方向上得到同样的速度分量,另一部分这是在目标机器人与飞行器连线方向上采用PID控制得到一个连线方向的速度分量,最终的飞行器速度则由这两个速度分量叠加而成。在答辩中展示的视频里,哈尔滨工业大学实现了碰撞以及顶部按压两种交互方式,而实际比赛则没有碰撞成功,原因是降落停留时间太短。哈尔滨工业大学下一步改进的地方是:绿色检测困难,边缘识别的适用性,扩展视野。
(4)清华大学
清华大学目前的队伍是新成立的,因此实际上飞行器并没有完成。最终在比赛中弃赛。硬件上采用M100飞行器,Guidance,激光雷达,软件架构上使用ROS。机器人识别采用颜色特征,目标机器人选取根据雷达数据,障碍物位置,地面机器人运行预测,飞行器自身飞行预测得到一个开销,使用贪心算法选择开销最小的一个。这些只是答辩中展现的,比赛现场没有进行过试飞和比赛,因此,预计是没有完成。
(5)香港科技大学
香港科技大学答辩中展示的内容与实际比赛的有很多差异,具体原因未知,在答辩中展示的是各种相关技术的展示,而不是实际比赛的展示,以下分答辩与比赛进行描述。答辩方面,全局的定位采用光流,地面格子计数,以及IMU数据计算,与浙江大学方案近似。可飞行区域采用2D激光雷达进行确定。轨迹规划采用基于QCQP的最低加加速度轨迹。而目标识别跟踪方面介绍了两个方案,方案A、B均基于几何以及外观特征进行识别,采用Robust Clustering进行分类和标记。方案A是使用DJI X3一体化云台摄像头,方案B则采用电子增稳技术的鱼眼摄像头。在答辩中,香港科技大学展示了在复杂环境中跟踪地面机器人(非本次比赛中的机器人)的视频,以及设定目标点的在复杂环境中的飞行,(采用了Velodyne的3D激光雷达,型号是VLP-16,参数:16线,水平360°,垂直±15°,每秒300,000点,重量830克,价格$7999),而在答辩中没有与比赛直接相关的视频展示。实际比赛中,第一轮则以很高的速度飞出界,第二轮起飞后很不稳定,剧烈摇摆,第三轮,起飞后无目标乱飞。
(6)北京航空航天大学
北京航空航天大学使用的是自制飞行器,八旋翼,分四组,每组上下共两个桨。答辩时描述,机器人识别采用HOG+SVM的方法。定位采用地面格子计数。实际比赛由于飞行器过重,无法起飞离开地面,过重的原因经观察应为未对飞行器负载进行减重,其搭载的NUC电脑甚至连铝合金外壳都没有拆除,搭载的负载过重,并且动力不足是其无法起飞的原因。
(7)南京航空航天大学
南京航空航天大学使用的是自制六旋翼飞行器,搭载了Pixhawk飞控,云台,摄像头,激光雷达和一块工控板。机器人识别使用的是图像分别分离红绿通道,然后根据阈值进行二值化,然后查找边缘得到目标机器人。导航使用光流。避障使用激光雷达。除此以外就没有更多的技术细节了。而实际比赛时,绝大部分时间处于悬停状态。
(8)海军航空工程学院
海军航空工程学院使用的同样是自制飞行器,四旋翼,搭载了摄像头,激光雷达,云台,Pixhawk飞控,Odroid作为机载计算设备。答辩上没有描述技术细节,只提到通过地面格子技术定位,以及可以识别跟踪机器人,根据其机载计算平台的运算能力推测,其识别方法是根据颜色阈值来识别。实际比赛飞行时,飞行器不稳定。
(9)印度理工学院
印度理工学院使用自制的六旋翼飞行器,飞行器支架为木质,使用开源的飞控,树莓派作为计算设备,使用两个罗技的单目摄像头作为图像传感器,安装方向为45°朝下,分布在飞行器两侧。第一天的时候,他们一整天都在用万用板焊一块电路,猜测他们在来的路上某块电路损坏。第二天修好飞行器后,手动遥控能稳定飞行。而世纪比赛时,自动控制下,起飞后飞行约10~15m就降落到地面,无法执行任务,原因未知。
队伍改进建议:
- 改用Intel i7 NUC 作为机载计算设备,据现场比赛考察,没有一个队伍使用妙算作为计算设备,他们不使用妙算的原因基本是CPU性能太低。而根据之前的测试,若使用4代i5移动版的处理器已经能实现LBP分类器的实时局部识别,因此即使不使用GPU,CPU本身已经能实时处理所有信息。而反观妙算,虽然有强大的GPU支持,但任务中能迁移到GPU进行的工作只有机器人的识别,而对于完成其他任务,其CPU是一个瓶颈,无法流畅处理所有信息。因此,只要机器人的识别能在CPU上实时流畅运行,则可以把计算平台从妙算迁移到NUC上,并且由于NUC是x86平台,因此开发工具更多,开发效率更高。
- 辅助激光雷达避障的设备由Guidance换成Intel RealSense。这项改动的前提是计算平台改成Intel 的NUC。对比Guidance,Intel RealSense有着更好的深度获取能力,深度图噪音更少。而且Intel RealSense的R200模组与Guidance的一组传感器大小几乎一致,不会造成负载重量的增加。
- 新增一个激光测距模块用于高度检测。比赛现场发生了多次起飞定高出问题的事故,甚至是采用M100和Guidance的厦门大学,原因估计是Guidance在某些情况下无法获取到高度数据。因此,为了更准确地获知高度并且作为冗余设备,有必要新增一个小型的激光测距模块测量高度。
- 定位方面采用浙江大学的数据融合方法,新增一个低分辨率的摄像头用于地面格子计数。
- 摄像头换成GoPro Hero4,云台换成GoPro专用云台,原因是在试飞过程发现DJI X3摄像头可视范围太小,视野中能看到的机器人基本只有一个两个,很容易跟丢。而GoPro是广角摄像头,可以避免这个问题。除了使用GoPro的方案外,可考虑采用电子增稳技术的全景摄像头,其好处是可以不需要开发云台的驱动,坏处是图像质量没有使用机械云台那么好。
- 拦截的轨迹规划参考浙江大学的方案,而其中的跟踪部分可参考哈尔滨工业大学的方案。
- 尝试将ROS的Gazebo平台与原有的自己编写的仿真平台结合起来,实现更好的模拟功能。
- 更换性能更好的无线网卡和路由器,提高空中机器人与地面站的无线数据连接质量。在试飞准备时,发现现有网卡很难连上路由器,造成无法通过地面站实时观察记录飞行数据。
总体回顾:
经过两天的参赛,可以体会到第七代任务的困难,并且现场出现了很多意想不到的意外情况。而浙江大学的方案给了我们很多的启发,让我们有了一个参考的突破口。要完成这个任务,必须要有团结的队伍,过硬的技术实力,以及足够的时间投入才有可能完成。
图1 队员在现场观赛
图2 大赛创始人乔治亚理工大学罗伯特教授在现场
「作者:鉴津」
比赛现场
一、其他队伍参赛情况
此次共有10个队伍参赛,2个队伍观赛,其中清华大学和伊朗查巴哈大学弃赛。
二、正式比赛情况
第一轮
印度理工学院:弃权;
海军航空:飞机失控,起飞后撞到场地边缘电脑,上场几秒后下场;
哈工大:起飞后在边界徘徊,最后出界,被击落;
浙江大学:正常飞行5分钟,但没有成功赶出任何一架机器人,第6分钟时因为飞手操作失误,切换了飞机的飞行模式,被迫中止比赛;
南航:悬停6分钟后没电;
香港科技大学:飞行过猛,出界;
厦门大学:起飞定高出现问题,直接飞到5米高,越界终止比赛;
北航:弃权
第二轮
印度理工学院:弃权;
海军航空:起飞时定高出错,上场8秒之后下场;
哈工大:悬停10分钟;
浙江大学:正常飞行,出界1个地面机器人, 但没有成功赶出任何一架机器人,策略是围绕场地飞行,最后回到中心;
南航:起飞后飞行出界,被击落;
香港科技大学:起飞后大幅度摇摆,不稳定,队员自行终止飞行。
厦门大学:正常飞行,比赛中有两次尝试将边缘的一个机器人赶出场地,但因降落地点偏离,阻拦失败,(厦门大学飞机从降落到起飞需时间较长,大概10s停机后才继续飞行)8分钟后雷达掉落(估计是没有接稳)终止飞行。
北航:起飞后低空位移一段距离,降落后未能再次起飞,队员自行终止飞行。
第三轮
香港科技大学:成功起飞,飞行迅速,自动绕场一圈之后出现飞行问题,队员自行终止比赛;
哈工大:成功起飞,随后飞行出界,终止比赛;
印度理工:飞行15米后坠落
浙江大学:正常飞行10分钟,有两个地面机器人自行从绿边离开场地
海军航天:起飞后高度和定位均出现问题,飞行不稳定,1分钟后飞机在地面翻转,终止比赛
北航: 起飞后飞行不稳定,终止比赛;
厦门大学:正常飞行10分钟,但未赶出机器人;
南航: 起飞后飞行出界,终止比赛。
图3 比赛现场
队伍改进建议
1.改进备赛策略
改为小步快跑,不断设立可衡量的小目标,迭代优化。
(1)制定详细的备赛计划;
(2)将备赛改为任务制,要求队员在规定的时间内实现完成某个可具体衡量的技术指标;
(3)不要求队员在固定时间段到达实验室;
(4)确保每个人都有具体的任务,避免人浮于事,队员的进度由队长监督,队长进度由副队长监督。
2.前期多次开展技术探讨会
(1)结合北京一行的对其他队伍的调查,在队员充分准备的前提下,探讨今年可能采用的技术方案;
(2)让新队员尽快进入角色,熟悉比赛规则和相关技术,必要时应该开展培训;
(3)在全体队员的讨论下共同制定一年的备赛计划,使队员做好充分准备。
3.进行多次模拟实战
在比赛后期,应该争取多次进行模拟实战,避免本次比赛其他队伍出现的种种失误。
4.增进队员情感联系
良好温馨的队员关系是比赛顺利筹备的前提,一是能够加强团队归属感,使队员愿意为团队付出;二是能够提高队员之间的交流频率,互通技术有无;三是能够提高队员的抗压能力,即便在较大的压力下也能互相支持。所以我相信即便是一些小小的联谊活动,对比赛的筹备也是有莫大的帮助的。
(1)在队伍内部举办小型的飞手比赛,目标有二,一是使队员有良好的飞行器操作能力(北京比赛中多次出现飞行器失控的情况,如果没有良好的操作能力可能会对飞行器和人造成损伤);二是通过极具趣味的飞行比赛增进队员情感。
(2)队服和名片在本学期制作完毕;
(3)增进队员与研究生师兄的联系;
比赛资讯
鉴于今年没有队伍完成比赛(美国赛区的情况与中国相似),比赛方将会降低7a任务的难度,很有可能明年修改规则,赶出4个地面机器人即算完成7a任务并进行7b任务的比拼。
「作者:吴侃」
一、摄像头
这次参加比赛,发现大多数队伍不使用云台,而是直接安装摄像头。摄像头可以照到的范围不大,飞行器高度为2米到3米时,X3摄像头看到的地面面积大约为4米乘3米。这说明需要在局部范围内驱赶机器人。
二、避障
看到的队伍都是采用被动避障,测试时是避障,跟踪独立测试
避障传感器:
多个队伍使用雷达加Guidance,解决雷达的盲区问题。 有一支队伍是3个guidance加3个Intel的传感器,组成两层三角形。
三、模拟器
和我们之前的思路相似,动力模拟使用DJI的模拟器,模拟摄像头将模拟器的画面传给图像处理模块。
四、策略
有队伍采用内置地面机器人模拟器的方法,预测地面机器人移动位置,我觉得不怎么可行,因为地面机器人移动存在噪声,难以预测全局。但根据地面机器人20秒转向,可以预测短时间内机器人走向。我觉得需要做局部规划。多数队伍只做了阻挡180部分,没有采用顶上触碰45。
部分队伍一直在靠近绿边的矩形内飞
五、搜索地面机器人
浙大采取的策略是当搜索不到地面机器人时,先飞向一个白边,然后沿白边飞,最后飞向场地中心。
六、降落
分为多个状态
七、定位
使用光流,或者数地面格子。
用雷达测距定位是否可行?
使用状态机
八、图像识别
实现多目标识别,相对方向,地面机器人运动方向,大概相对位置(不需要具体数据)
九、问题
定高出问题(可能因为得到的高度数据为0)
guidance得到的数据为0
我觉得我们还需要做这些工作
让模拟器更易用,给模拟器添加模拟摄像头,模拟器触碰阻挡模拟
采用被动避障,独立测试
降落阻挡与触碰的实现(使用onboard SDK, 针对一个地面机器人)
地面机器人识别(SVM?)
硬件组装
图4 试飞前的紧张调试
图5 与竞赛组委会合影
16级新生眼中的空中机器人大赛
2016级电子与信息学院 电子信息类二班 孙天野
2016年9月23日,我有幸随同钱宁老师和各位新葡的京集团8888vip空中机器人团队的学长们前往北京,观摩2016国际空中机器人大赛(亚太赛区)比赛。
同我校一起参加本次比赛的队伍有:北京航空航天大学队、哈尔滨工业大学队、香港科技大学队、印度理工学院队、伊朗查巴哈大学队、海军航空工程学院海翼队、南京航空航天大学队、清华大学队、厦门大学白鹭队、浙江大学ZMART队共十支。
本次比赛22日-23日上午为准备时间,以方便各队熟悉场地与调试飞行器,同时进行技术答辩;23日下午、24日上午、24日下午各进行一场比赛,由各场分数综合计算出比赛前三名。经过三天的努力,浙江大学ZMART队夺冠,哈尔滨工业大学队、厦门大学白鹭队分别获得第二、三名。
在比赛期间,我校代表队进行了三次模拟飞行,分别对自动控制、图像识别、精准定位进行功能测试。图像识别算法的应用使地面机器人能够识别监控地面机器人,guidence算法实现了基本避障功能,飞行策略规划等技术已基本达到比赛要求。另外,我校与其他学校队伍进行合作交流学习,参与队伍技术答辩与技术研讨会。
图:清华大学队技术答辩
体验
与一支有料又有趣的队伍同行可谓一件乐事,新葡的京集团8888vip空中机器人团队就是一支这样的队伍。
一年来从无到有,从有到精,空中机器人团队在成慧老师的指导和队长洪诗钢(研究生)的带领下,加入到国际顶尖的具有挑战性的比赛备赛中。高挑战性和高难度性是国际空中机器人大赛的显著特点,第七代任务中图像识别、室内定位、自动避障等一个个难关均被该团队破解,为明年参赛角逐做好了准备。
学术性强不意味着不苟言笑。他们既是赛场上专注调试飞行器、收集飞行数据、整理拍摄数据的团队,又是比赛间隙牺牲午休时间闲逛北京城的团队;既是一口流利英文与外国参赛队员认真交流技巧的团队,又是段子不断笑声不断和各个参赛队聊成一片的团队。“做件有意义的事、做个有意思的人”可能是对他们最好的描述吧。
图:钱宁老师与队员深入交流
启发
既然目的是推进空中机器人最先进技术的进步,并且这些任务在提出时是几乎不可能实现的,每一支团队都直接站在国际前沿,迎接最大的挑战。25年来,国际空中机器人竞赛已成功完成6代任务,意味着空中飞行器至少六点技术难点已经被各个大学教授和学生团队攻克,第七代任务“空中牧羊犬”是迄今为止最难的一项,我校明年即将参加第七代第四年的比赛。
16级新生初进校园,多彩活动是我们多元发展的平台,学术精钻是我们不懈的追求。我们既有自己主攻学习的追求,又有发展能力的渴望。新葡的京集团8888vip决定参加国际空中机器人大赛,无疑向同学们展示了新一片课内外能力同事发展的天地,也向同学们展示了学习和活动的互相促进的学习工作状态,这对新生来说尤为重要。
由一场比赛引发同学们对高端技术的探索,由一台飞行器飞进国际比赛的殿堂。新葡的京集团8888vip空中机器人团队明年将继续参赛,水下机器人团队今年将首次组队,一贯而来,学院的高度重视、教授们的鼎力支持、中大学子孜孜不倦,定会使我们披荆斩棘、前程似锦!
图: 队员与指导老师合影