前言
??
Apollo (阿波羅)是一個開放的、完整的、安全的平臺,將幫助汽車行業及自動駕駛領域的合作伙伴結合車輛和硬件系統,快速搭建一套屬于自己的自動駕駛系統。
開放能力、共享資源、加速創新、持續共贏是 Apollo 開放平臺的口號。百度把自己所擁有的強大、成熟、安全的自動駕駛技術和數據開放給業界,旨在建立一個以合作為中心的生態體系,發揮百度在人工智能領域的技術優勢,為合作伙伴賦能,共同促進自動駕駛產業的發展和創新。
??Apollo 自動駕駛開放平臺為開發者提供了豐富的車輛、硬件選擇,強大的環境感知、高精定位、路徑規劃、車輛控制等自動駕駛軟件能力以及高精地圖、仿真、數據流水線等自動駕駛云服務,幫助開發者從 0 到 1 快速搭建一套自動駕駛系統。
📕作者簡介:熱愛跑步的恒川,致力于C/C++、Java、Python等多編程語言,熱愛跑步,喜愛音樂的一位博主。
📗本文收錄于恒川的日常匯報系列,大家有興趣的可以看一看
📘相關專欄C語言初階、C語言進階系列等,大家有興趣的可以看一看
📙Python零基礎入門系列,Java入門篇系列正在發展中,喜歡Python、Java的朋友們可以關注一下哦!
塑造自動駕駛技術的未來
- 1. Apollo 里程碑
- 2. 開放平臺架構
- 3. Apollo 開放平臺使用文檔
- 3.1 如果您想快速使用上 Apollo
- 3.2 如果您想了解 Apollo 源代碼
- 4. 下一步
- 5. 文檔意見反饋
1. Apollo 里程碑
??從 2017 年 4 月 Apollo 開放計劃宣布到現在,歷經5年,Apollo 已經發布了12個版本到了 Apollo 8.0,持續的在多維度創新
。 這5年分為3個階段。第一階段是從最開始的封閉場地循跡自動駕駛到2.0的簡單城市路況,Apollo搭建了基礎的自動駕駛基礎能力;第二階段是從2.5限定區域視覺高速到6.0 EDU的教育專版,Apollo積累了豐富的場景能力。第三階段,從7.0 開始,Apollo專注提升工程易用性,從開發者實際需求出發,幫助更多開發者更好更快的使用Apollo。每一次的升級都將自動駕駛開放平臺的能力邊界從多維度向外拓展。
2. 開放平臺架構
??為了更好的使用 Apollo,需要您簡單了解一下開放平臺的架構。以下為 Apollo 8.0 最新架構圖,其分別由硬件設備平臺、軟件核心平臺、軟件應用平臺和云端服務平臺四層組成
。
- 硬件設備平臺:幫助開發者解決 Apollo 自動駕駛系統搭建過程中的線控車輛以及傳感器等硬件設備問題;對于車輛硬件設備而言,又包括認證線控車輛和開放車輛接口標準兩個部分。對于其他硬件設備而言,包括傳感器、計算單元等各類參考硬件和硬件標準。詳細信息可以參考 Apollo 硬件開發平臺。
- 軟件核心平臺:Apollo 軟件核心平臺提供了自動駕駛車端軟件系統框架與技術棧。其包括底層的操作系統,中間層的實時通信框架,以及上層的自動駕駛應用層,如感知、預測、規劃、控制、定位等。
- 軟件應用平臺:
Apollo 軟件應用平臺提供了面向不同應用場景的工程以及自動駕駛應用模塊的能力擴展
。通過應用平臺層,開發者可以更方便得基于Apollo各模塊能力進行裁剪組合并擴展。 - 云端服務平臺:Apollo 云端服務平臺提供了自動駕駛研發過程中的研發基礎設施,提升自動駕駛研發效率。
??自動駕駛與傳統互聯網軟件研發不同,一是實車測試成本高,二是數據量非常大。而一套能夠滿足自動駕駛開發流程需求,并提升研發效率的研發基礎設施就非常之重要。
??Apollo 云端服務平臺通過云端的方式解決了數據利用效率的問題,通過與仿真結合降低了實車測試成本,能夠極大的提升基于 Apollo 的自動駕駛研發效率。從研發流程上講,Apollo 車端通過數據采集器生成開放的數據集,并通過云端大規模集群訓練生成各種模型和車輛配置,之后通過仿真驗證,最后再部署到 Apollo 車端,無縫連接。這整個過程其實包含了 2 個迭代循環,一個是模型配置迭代,一個是代碼迭代,都通過數據來驅動
。
??根據 Apollo 開放的能力和提供的服務,開發者可以既省心又省力的快速搭建和部署自己的自動駕駛系統。
3. Apollo 開放平臺使用文檔
??本文檔旨在讓開發者全面的了解 Apollo 的學習使用。
??Apollo 開放平臺為開發者提供預先編譯好的 Apollo 安裝包,節省大量的編譯時間,環境的部署準備時間從天級別降低到小時級
。開發者在下載安裝包并安裝好 Apollo 之后,便可以在本地電腦上實踐 Apollo 。
- 基于 Apollo 可視化交互工具 Dreamview 做本地的PNC仿真實踐。
- 基于云端仿真平臺 Dreamland 的在線仿真實踐。
- 基于 Apollo 可視化交互工具 Dreamview 做感知開發調試實踐。
??在硬件的選型上,開發者可以參考 Apollo硬件開發平臺 和 Apollo開放車輛認證平臺 來搭建自己的自動駕駛系統硬件;為了更加省心,推薦您使用底盤和傳感器套件一體的 Apollo D-KIT
。開發者搭建自動駕駛車輛的過程中,也可以使用 Apollo Fuel 自動駕駛研發云 來完成諸如車輛動力學標定、傳感器標定等搭建流程,以提升研發效率。
3.1 如果您想快速使用上 Apollo
??您可以參考本文檔一步步完成 Apollo 8.0的安裝、快速上手 Apollo 和上機使用。相信這些文檔會幫助您更加深入的了解 Apollo 的各個核心模塊的能力。
文檔結構
- 發版說明:每次發版更新內容的簡介。
- 安裝說明:關于如何安裝 Apollo 軟件包以及源碼的說明文檔。
- 使用指南:概述上機實踐及上車實踐。通過上級實踐,可以方便的進行感知、決策規劃等各模塊開發與仿真驗證。
上車實踐介紹 Apollo 車輛適配流程,你可以掌握自動駕駛線控設計,并最終開發出適配 Apollo 的線控車輛
。之后,通過車輛硬件集成、標定、循跡流程,可以完成車輛集成閉環驗證。最后,通過實車自動駕駛閉環流程,可以了解車輛安全操作、測試流程以及定位、控制調車。 - 應用實踐:介紹自動駕駛通信的應用實踐案例以及上車實踐操作。
- 數據格式:解釋 Apollo 各模塊間通信的 channel 的數據格式以及各模塊配置參數的含義。
- 軟件包簡介:解釋 Apollo各種軟件包區別及使用軟件包二次開發的實踐操作。
3.2 如果您想了解 Apollo 源代碼
??如果您想從底層了解 Apollo 甚至為 Apollo 代碼庫做貢獻,那么您可以參考 Apollo Github 庫 的源碼及相關資料。
??Apollo Github 庫為開發者提供豐富的技術文檔、使用指南和開放的源代碼。
4. 下一步
??現在您已了解 Apollo 開放平臺以及 Apollo 文檔的相關內容。 接下來,開發者可以參考 安裝說明安裝 Apollo 了。
??最后別忘記加入 Apollo 開發者社區,社區有大量的資料供開發者閱讀使用。
5. 文檔意見反饋
??如果您在使用文檔的過程中,遇到任何問題,請在【開發者社區】建立的 反饋意見收集問答頁面,反饋相關的問題。我們會根據反饋意見對文檔進行迭代優化。
更全面的Apollo社區官網文檔
??Apollo社區官網文檔,主要為新手開發者提供Apollo相關介紹、以及上機場景和上車場景的實踐說明,讓新手開發者能快速了解Apollo并上手實操
。在8.0中,我們優化了社區官網文檔的結構,從開發者使用場景出發,針對不同場景提供應用實踐案例指導以及擴展開發指導。
??社區官網文檔:https://apollo.baidu.com/community/Apollo-Homepage-Document/Apollo_Doc_CN_8_0。
??另外還有活動任務《星火培訓》:星火培訓。
??Apollo 8.0從“新架構”、“新能力”兩個重要層面進行了全面升級,從開發者的實際需求出發進行改良,幫助開發者更好、更快地熟悉和使用Apollo開放平臺。此次Apollo開放平臺8.0的推出,再次讓Apollo開放平臺在工程易用性上向前邁進一大步,降低操作難度、操作成本的門檻,讓更多開發者可以簡單方便地上手Apollo開放平臺、投身自動駕駛技術領域。
如果這份博客對大家有幫助,希望各位給恒川一個免費的點贊👍作為鼓勵,并評論收藏一下?,謝謝大家!!!
制作不易,如果大家有什么疑問或給恒川的意見,歡迎評論區留言。