Py学习  »  Git

如何评价百度自动驾驶ApolloAuto在Github上发布的代码?

量子位 • 6 年前 • 829 次点击  
作者:fly qq
上海交通大学|机器人所博士生
量子位 已获授权编辑发布

原本想编译完代码再评论的,但这段时间实在太忙,就先试着说说看。权当抛砖引玉。

首先,这个项目是基于ROS的,这可能有两个原因(自行二选一):

① 这个平台主要是面向研究机构的,使用ROS可以大大提高开发速度;

② 开发人员一时半会没法搞出一个「无人车操作系统」,所以就先用现有的ROS(机器人操作系统) 来替代,反正上面的人不懂。

其次,这个项目整体框架是比较合理的,无人车系统所需要的大多数关键模块都包含了,开发者也很容易就能将自己的算法整合到这个框架里。说明百度自己的无人车项目还是有一定技术积累的。

(我不是专业的码农,所以在代码角度没办法过多评论,但我看它代码时有一种看g2o代码既视感,所以应该是写得不错的)。

然而,算法方面就如 知乎网友@伊呼呼所说的那样不如人意了。似乎只公开了控制(control)与定位(localization)的代码,搭建无人车系统的另外两个关键模块(perception 和 planning)都没有公开:

定位 Localization:RTK GPS + IMU,没看到 Kalman Filter;

感知 Perception:这块应该是用来识别障碍物,车道线,交通灯等各种信息的模块,算是无人驾驶系统中非常关键的一块。这次百度并没有公开这个;

预测Prediction:这个主要是基于感知信息进行预测,所以也没有公开;

决策Decision:这个属于无人车系统最高层的决策系统,它的作用是基于现有的信息来判断下一步动作,没有感知,所以这部分也没公开;

规划Planning:这个应该是一般意义上的全局规划器,用途是找到可行路径,一般会采用各种各样的花式规划算法,然后这次 Apollo 中也没有提供这部分内容;

控制Control:这个其实就是局部规划器,用途是让无人车沿着规划的轨迹运行,这个项目中提供了基于 LQR 的算法,这部分还算可以。

由于这么多关键算法都没有公开,所以,就目前的情况来看,想花三天时间用Apollo搭建自己的无人驾驶系统基本是不可能的

(虽然Apollo的文档里没有说用它就能搭建完整的无人车系统,但是百度这次的「开发者大会」着实有这样宣传的误导倾向,以致于不懂技术的媒体都跟风报道)

再者,就是所谓的仿真系统。百度「开发者大会」上,陆奇着重强调用他们的仿真系统,就可以大大减少实际车辆的实验时间。

当然,仿真环境在无人系统中的作用是不言而喻的。但是,从下面这个界面,我是看不出它能提供多少仿真信息。(如果之后有时间测试,我会补充修改)

另外,我想问,ROS中本来就有的gazebo,或者那么多其他仿真平台不好用么?做动力学控制,强化学习都是可以的:


总体上来说,我感觉Apollo项目作为一个定位为开放的「无人车操作系统」,实在是诚意不够,用我当时第一眼看到它代码后发的朋友圈来形容简直合适:

PS: 开发者大会上陆奇和李彦宏信心满满的态度让我不禁怀疑,百度高层似乎对这个情况不自知,这是最可怕的地方。


点击左下角“阅读原文”处,可以参与话题讨论

也可以解锁更多作者的回答~

一则通知

量子位读者5群开放申请,对人工智能感兴趣的朋友,可以添加量子位小助手的微信qbitbot2,申请入群,一起研讨人工智能。

另外,量子位大咖云集的自动驾驶技术群,仅接纳研究自动驾驶相关领域的在校学生或一线工程师。申请方式:添加qbitbot2为好友,备注“自动驾驶”申请加入~

招聘

量子位正在招募编辑/记者等岗位,工作地点在北京中关村。相关细节,请在公众号对话界面,回复:“招聘”。

 扫码强行关注『量子位』

追踪人工智能领域最劲内容



今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/XWAPZJkVH3
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/2606
 
829 次点击