【自动驾驶】11.百度Apollo对ROS的优化
更詳細(xì)的介紹可以跳轉(zhuǎn)到:【自動(dòng)駕駛】百度Apollo對ROS的優(yōu)化【詳細(xì)干貨】
自從百度All in人工智能之后,無人駕駛汽車平臺(tái)Apollo就被推上了風(fēng)口浪尖,甚至還登上了2018春晚的舞臺(tái)。在這個(gè)吸睛無數(shù)的Apollo平臺(tái)背后,就隱藏著ROS的身影。
Apollo平臺(tái)基于ROS開發(fā),但是對通信機(jī)制部分進(jìn)行了眾多改變,有興趣的小伙伴可以看Apollo改良之后的ROS:
https://github.com/ApolloAuto/apollo-platform
總結(jié)而言,百度對ROS的優(yōu)化有以下三點(diǎn):(咋看上去,這些優(yōu)化有點(diǎn)像ROS 2.0干的那些事兒)
1. 去中心化,也就是干掉ROS Master,這部分使用了DDS技術(shù);
DDS雖然提供的也是發(fā)布/訂閱模型的通信機(jī)制,但商用版本可以達(dá)到軍工標(biāo)準(zhǔn),國際上有幾家大公司也在推進(jìn)DDS在ROS 2.0中的應(yīng)用。
2. 使用共享內(nèi)存的方法,優(yōu)化大數(shù)據(jù)傳輸?shù)钠款i;
共享內(nèi)存也是ROS2.0中時(shí)間敏感型數(shù)據(jù)通信的方法,吞吐量和傳輸速度肯定可以得到很大程度的優(yōu)化,同時(shí)占用的CPU資源也比較少。
3. 使用Protobuf優(yōu)化數(shù)據(jù)格式的兼容性,取代了ROS中的Message。
Protobuf是google開源的一種結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)格式,百度拿它取代了ROS中的Message,可以向后兼容數(shù)據(jù)協(xié)議的擴(kuò)展。
無人駕駛汽車的穩(wěn)定性是一個(gè)性命攸關(guān)的問題,百度敢對ROS進(jìn)行大刀闊斧的優(yōu)化,也正說明了ROS的行業(yè)認(rèn)可度和強(qiáng)大生命力。
總結(jié)
以上是生活随笔為你收集整理的【自动驾驶】11.百度Apollo对ROS的优化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【C++】32. Boost C++ 库
- 下一篇: 【自动驾驶】12.百度Apollo对RO