华为云无人车参赛笔记三

关于华为云无人车大赛,第一篇笔记记录主要知识和技术点, 第二篇笔记记录调试思路和过程,本篇主要记录赛后的反思,包括半决赛和决赛。

赛后反思

半决赛

半决赛中,博主所在的队伍表现尚可,第一场碰撞两次挡板,但是得以完赛;第二场中无碰撞、无压线,仅超时7s,是博主全部比赛中的最好成绩。

总结半决赛问题,挡板的碰撞主要都出现在左转弯的半圈,也就是说左转弯的转弯半径调整不到位。

博主针对转弯半径的调节比较保守,主张在不修改“从像素目标点到真实目标点”的基础上进行修改,主要修改之处有:

  • 转向系数 k
  • 偏移量 loR
  • 透视变换矩阵 M

在一定范围内增加k值,可以让小车转弯半径变小,更快、更猛地转弯;

改变偏移量(注意正负号),可以在转弯半径不变的情况下,调整小车与边线的距离;

透视变换矩阵的改动是最大的改动,一般来说选择一个能够合理转换车道线的透视变换即可,好的透视变换应保证把梯形图片两边映射为直线,本比赛中,透视变换能时刻保证视野中有一条车道线即可。

赛后再观察,以上修改只有透视变换的修改稍微触动根本,其他修改都是调参,足够长的时间和稳定的赛道,就可以调整出一个比较稳定的参数来。

调参过程中发现,由于修改后的透视变换更适应右转车道线(转向平稳),而不适应左转车道线(原因之一是斑马线干扰),所以主要精力针对左转半圈。

左转半圈常见问题:

  • 起步后压右线 - 可能是转角不够大,也可能偏移不够
  • 压右线后猛向左转,压或者出左线 - 转角过大,右车道线超出视野
  • 过斑马线后压右线 - 偏移不够
  • 左转弯进挡板撞右侧挡板 - 偏移不够

但是在尽可能地调整转角和偏移量后,小车还是可能压线、撞挡板等,此时转角和偏移量的调整已经不起作用了,根本问题还是视觉检测车道线的问题,小车根本就没有按照车道线运动!

一种投机取巧的方法是限幅,左转半径1.5米时大约使用32的转角可以实现比较平滑的转向,因此,将转弯幅度限制在25-40之间,可以取得比较好的效果。给转角提供一定的调整余地,有利于其自身调整,如果使用固定角度,可能无法跑完全部。【本方法有较大的局限性】

半决赛中令人鼓舞的一点是验证了提速的可能性,因为之前上限只能到15,但是我们在工程师的引导下,去掉了蓝牙部分,速度成功提高到了25,决赛中一度按照30进行测试,也没有出现问题。

决赛

决赛的关键问题是赛场环境变了:

  • 灯光变得更亮
  • 赛道地毯反光更严重

导致的问题有:

  • 按照原先的二值化阈值(125,分割0-255之间的数值)不能仅保留车道线,白色噪点增加
  • 容易误识别红绿黄灯
  • 雷达检测点数有变动

半决赛及之前使用的保守方法,问题就在于不能很好地适应环境,以上环境变动之所以会影响完赛,原因有:

  • 车道线图片中白色面积增加,无法成功识别出车道线,因此起步后的转角会加大,出右车道线
  • 红绿黄灯的误识别是第二次没有完赛的关键原因
  • 本队所确定的入十字的标准是:1. 白色像素点比例小于某个数值,2. 雷达点数大于某个阈值(单侧或者双侧),因此,光线的改变和环境的改变,影响了入十字的参数,但是现场提供的调试时间完全不足以调参到位

决赛三场全部未能完赛,实在是非常遗憾!

  • 第一场:二值化阈值未调整,转弯半径过大
  • 第二场:入十字碰右挡板两次,最后一次斑马线起步后误识别黄灯
  • 第三场:碰右挡板两次,碰左挡板1次

总结

仅通过参数调节以适应赛道的方法面对如本次决赛中环境变换的情况会很糟糕,亟待探索鲁棒性更好的方法。

减少判断条件,尤其是依赖赛道环境的判断条件。

增加自适应的变化调节,比如不是定值,而是不断地微调。

  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2020-2022 Sun Yue

请我喝杯咖啡吧~

支付宝
微信