【自动驾驶】11.百度Apollo对ROS的优化

更详细的介绍可以跳转到:【自动驾驶】百度Apollo对ROS的优化【详细干货】


自从百度All in人工智能之后,无人驾驶汽车平台Apollo就被推上了风口浪尖,甚至还登上了2018春晚的舞台。在这个吸睛无数的Apollo平台背后,就隐藏着ROS的身影。

【自动驾驶】11.百度Apollo对ROS的优化_第1张图片

Apollo平台基于ROS开发,但是对通信机制部分进行了众多改变,有兴趣的小伙伴可以看Apollo改良之后的ROS:

https://github.com/ApolloAuto/apollo-platform

总结而言,百度对ROS的优化有以下三点:(咋看上去,这些优化有点像ROS 2.0干的那些事儿)

【自动驾驶】11.百度Apollo对ROS的优化_第2张图片
1. 去中心化,也就是干掉ROS Master,这部分使用了DDS技术;

DDS虽然提供的也是发布/订阅模型的通信机制,但商用版本可以达到军工标准,国际上有几家大公司也在推进DDSROS 2.0中的应用。

【自动驾驶】11.百度Apollo对ROS的优化_第3张图片

2. 使用共享内存的方法,优化大数据传输的瓶颈;

共享内存也是ROS2.0中时间敏感型数据通信的方法,吞吐量和传输速度肯定可以得到很大程度的优化,同时占用的CPU资源也比较少。

【自动驾驶】11.百度Apollo对ROS的优化_第4张图片

3. 使用Protobuf优化数据格式的兼容性,取代了ROS中的Message

Protobufgoogle开源的一种结构化数据存储格式,百度拿它取代了ROS中的Message,可以向后兼容数据协议的扩展。

无人驾驶汽车的稳定性是一个性命攸关的问题,百度敢对ROS进行大刀阔斧的优化,也正说明了ROS的行业认可度和强大生命力。

你可能感兴趣的:(自动驾驶,Apollo)