目前的研究需要使用CARLA仿真环境进行数据集的录制,从github上面clone了一份从A点移动到B点的代码,这份代码是在地图中人工选择两个坐标然后进行移动,虽然能够满足数据录制的需求,但是只能沿直线移动。所以我参考carla给的automatic_control.py这个例子对代码进行了修改,基本的修改思路是利用get_spawn_points()从地图中提取点,然后将车辆放置在起点,利用BehaviorAgent对象控制车辆,同时设置终点给BehaviorAgent对象。在代码跑起来之后,车辆能够自主前进,但是完全不按照道路走,相当于给了一个目标,然后车就沿直线冲过去,最后撞到墙上停下。
遇到的这个问题确实不好描述,所以也不知道怎么搜索。查了许多资料,基本确定可能出错的位置有三个:地图加载错误、车辆出错以及agent对象错误。
最后通过各种搜索,无意中发现了在carla的github评论区,有一个老哥也遇见了这个问题,并且作者和其他人给出了一些解决方案。个人理解是这个属于系统的一个bug,在初始化车辆后,必须要使用同步系统的tick函数同步一下,否则设置的车辆并不出现在起点,而是出现在原点,所以在将这个车辆actor对象赋值给agent时,车辆自身的初始位置就是错的,进而导致了后续路标点计算的错误。
修改过后的carla代码放在gitte里面了,链接如下:
今天的文章 cruise软件教程(cruise2019安装教程)分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/57328.html