女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于Apollo分布式可擴展平臺的自動駕駛設計

YB7m_Apollo_Dev ? 來源:互聯網 ? 作者:佚名 ? 2018-04-26 08:52 ? 次閱讀
長沙智能駕駛研究院產品研發總監 黃英君

Apollo集中運行感知、決策、控制模塊,對資源、實時性、可靠性需求是不同的,對計算平臺、操作系統、運行環境的要求也各不相同。黃英君將這些模塊進行解耦,分布式集成運行在不同的計算平臺和操作系統上,即在一個高可靠的雙機備份低成本平臺上運行決策與控制模塊,在多個低成本高性能技術平臺上運行感知模塊,實現一個分布式可擴展的解決方案。

以前要搭建Apollo開發平臺的初期投入不菲,至少需要幾萬元。根據他提供的低成本方案,只需5000元左右(最新的價格是教育機構299美元),就能搭建起Apollo的開發平臺,大大降低了自動駕駛開發的門檻。(提示:目前還只是能夠部署,讓Apollo的所有模塊跑起來,還無法做到很流暢的實時的跑,這里有待大家一起去努力完善)。

以下是分享的全部內容。

作為一名普通的開發者,我在接觸Apollo幾個月的時間里,一直把Apollo作為學習的平臺和工具。

首先Apollo代碼更新很快,但是最近一次大規模的更新是在3月25日左右,后面幾天發現有十幾個到二十幾個文件在更新---建議大家每天早上上班之后先查看GitHub一下。

第一個值得關注的文件是perception_lowcost.sh,這個名字非常有意思,腳本內容如下:

1
run perception "$@"--flagfile=modules/perception/conf/perception_lowcost.conf

這個加載了一個配置文件,打開后發現:

1234567
#Camera node subnodes {   id: 3   name: "CameraProcessSubnode"   reserve: "device_id:camera;"   type: SUBNODE_IN }

上面這個subnode是新增加的攝像機節點;原來的配置文件中的兩個信號燈攝像機節點、激光雷達節點都沒有出現:

12345678910111213141516171819
 #TrafficLight Preprocess node.subnodes {  id: 41  name: "TLPreprocessorSubnode"  type: SUBNODE_IN } #TrafficLight process node.subnodes {  id: 42  name: "TLProcSubnode"  type: SUBNODE_OUT } #64-Lidar Input nodes.subnodes {  id: 1  name: "LidarProcessSubnode"  reserve: "device_id:velodyne64;"  type: SUBNODE_IN }

關于這幾個攝像機,我們可以在驅動目錄里面查看更詳細的信息:

2.0版本有兩個攝像機。打開目錄:pollomodulesdriversusb_camlaunch的start_leopard.launch文件,定義了三個攝像機。

123
"traffic_short_topic_name"fault="/apollo/sensor/camera/traffic/image_short" />"traffic_long_topic_name" default="/apollo/sensor/camera/traffic/image_long"/>"perception_obstacle"default="/apollo/perception/obstacle/camera" />

前兩個是用來針對交通信號燈的,第三個針對障礙物,推測這個攝像機就是用來檢測障礙物的。

打開源碼perception目錄,有一個camera目錄,這個目錄變化最大,也是開放代碼量最多的一個目錄,增加了車道線功能。我們是不是就可以得出結論,第三個攝像機將是執行障礙物檢測和車道線檢測。

綜上所述,最新版本的Apollo,特別強調低成本,具體的方式是在高速場景下弱化了弱化了激光雷達和兩個信號燈檢測攝像機,增加了一個攝像機,專門執行障礙物檢測和車道線檢測。這個變化跨度非常大,一個激光雷達的價格就是70多萬(64線),可以說是非常大的一個跨越。

另外說一句題外話,Apollo這個代碼寫的特別好,寫代碼的是很資深的架構師,所以Apollo這套代碼有非常濃重的谷歌風格,并使用了大量的谷歌系工具,看它的架構非常舒服的,可以作為一個經典的大型c++工程demo,來學習他的c++編程和大型項目的構建。為什么考慮對Apollo進行分布式擴展?

為什么考慮對Apollo進行分布式擴展?

為什么考慮對Apollo進行分布式擴展?因為去年9月份我安排一個實習生,他開始做了幾天,就說目錄挺多,但是總裝不上。后來我發現坑越來越多,問題越來越多。

去年9月份我們訂購了PX2,但卻缺貨。后來代理商把他們自己的一塊給我們用了,左邊是Apollo推薦的計算平臺,是***一家公司的,這個工控機非常小巧和緊湊,它的散熱做得非常好,但是價格還是有點貴,而且訂貨周期比較長,還有就是PX2價格是十萬。

上圖是TX2,256個GPU核,一般性能好的計算機的開發環境對程序員非常友好,東西全,資料非常多,很快上手。最重要的是TX2非常便宜,教育用戶版不到三百美元,可以用它做臺式機做不了的事情,供應充足,我們公司用TX2做了非常漂亮緊湊的車載盒子。

其他還有一些性能、定位差不多的芯片,比如NXP,它在車企用的非常多,可靠性、安全性都很好。現在新推出的i.MX8性能穩定,是六核的架構,帶GPU,但也有供貨問題。它在車載和智能儀表領域的占有率非常高。

另一個是Renesas,一家汽車電子老牌廠家,在自動駕駛計算平臺占有一席之地。

為什么我要把它做成分布式的?分布式部署真正是由功能和性能決定的。我們把自動駕駛模塊劃分一下,有兩種分法。一種是Apollo分法,分成四個模塊:感知、規劃、決策和控制,另一種從性能區分,Sensor、Planning和Action。

現在智能駕駛計算平臺的現狀如何呢?目前沒有一個芯片、計算平臺、操作系統能夠同時滿足上述4個指標。

我們讓控制模塊跑在可靠的、安全的芯片上,但是滿足了安全條件,計算力就跟不上了。感知模塊要求強大的計算力,但是這種情況下再做安全,可能成本無法承受。所以最好的辦法就是讓合適的芯片運行合適的模塊,讓合適的操作系統來承載合適的模塊。

我們把Apollo的四個模塊拆分開,感知模塊可以跑在高性能的感知平臺上,控制模塊可以跑在高可靠性的操作系統上。

我們提出一個構想,把控制模塊跑在高可靠性的芯片上,感知模塊用低成本的處理器。即使一臺車要接十二個攝像機,一塊芯片不能用了,感知部分攝像機宕掉,問題也不大,車還在控制中。但是控制模塊出現問題就不行了。

我們增加了TX2對Docker的支持,使用JetPack3.1刷機。內核缺少containers運行所需的支持,這是我們定制刷新內核的文件,這些都是在網上公開的。編譯之后更新,然后重啟,重啟以后只要帶container就說明這個內核已經可以安裝到Apollo上了。

增加TX2對Docker的支持

Docker onTegra本身有下面的問題:

?TX-2 or other Tegra devices 不支持nvidia-docker

? 使用JetPack3.1刷機,內核缺少containers 運行所需的支持

?JetPack3.2解決了這個問題(我還沒驗證)

?nvidia-docker wrapper在TX2上不能正常運行,無法獲取GPU設備

解決方法是:

?定制內核,增加對containers 的支持

?傳遞所需的參數給Docker,使之能夠獲取GPU設備

通過如上面幾幅圖中所述,增加TX2對docker的支持、定制內核配置文件、編譯內核、修改Apollo docker腳本后,Apollo docker中可以運行cuda程序了。

編譯Apollo

接下來編譯Apollo:

? 構建缺少的依賴庫:caffe(GPU版),vtk,需要自己寫build文件,修改workspace配置文件;

? 重新編譯arm版本的依賴庫:QPSASES,IPopt,libfastcdr,libfastrtps;

? 重新編譯版本不一致的依賴庫:glog,gflags,protobuf;

? 修改Apollo中某些不兼容的代碼;

感知模塊Trafficlight中,caffe只提供了X86平臺動態庫,X86架構下SSE系列,arm平臺無法使用,要么改寫,要么直接跳過。

在Apollo中構建tensorRT 開發環境

在Apollo中構建tensorRT,存在以下問題:

? docker內缺少一系列的庫;

? 缺少tx2相機驅動;

? 需要使用tegra定制的libGL.so;

? libgbm版本不匹配;

? 攝像機守護進程在主機端,docker內無法驅動;

解決辦法如下:

1、用掛載或者copy的形式準備好所需的動態庫,接近100多個;

12345678
cp host /var/nvidia/nvcam/settings -> dockercp host /var/nvidia/nvcam/input -> docker-v/usr/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu:ro -v/usr/lib/aarch64-linux-gnu/gstreamer-1.0:/usr/lib/aarch64-linux-gnu/gstreamer-1.0:ro -v/usr/lib/aarch64-linux-gnu/tegra-egl:/usr/lib/aarch64-linux-gnu/tegra-egl:ro  -v/usr/lib/aarch64-linux-gnu/mesa-egl:/usr/lib/aarch64-linux-gnu/mesa-egl:ro   -v/run:/run:rw   -v/lib/firmware/tegra18x:/lib/firmware/tegra18x:ro    

2、使用libdrm-2.4.80以上版本重新編譯;

3、為tegra版本libGL.so建立軟連接;

4、修改主機配置,讓攝像機守護進程在docker內啟動;

構建tensorRT完成后,就可以在Apollo Docker中運行tensorRT,實現12-14幀的多目標檢測。

目前成果和后續工作

為大家說一下我們的階段性成果,目前已發布部分資源供測試:

?Apollo docker on TX-2的完整鏡像;

?使用不同操作系統重刷Jetpack時會遇到編譯錯,這里提供完整的內核源碼,無需自行下載并執行xconfig;

? 一些需要在arm下單獨編譯的庫;

?修改的Apollo的docker腳本文件;

? 基于Bazel構建的cuda應用程序開發模板

后續我們將做的工作有:

  • 解決ROS跨版本通信問題

  • 全面使用Nvidia Visionworks對圖像操作進行改寫

  • 使用TensorRT對深度學習相關的功能模塊進行inference優化

  • 對其他車載計算平臺的測試和驗證

  • 針對QNX的移植適配工作

  • 車載嵌入式設備的封裝

到2018年5月份,我們會提出專門針對ADAS的QNX開發包。如果說可以解決ROS跨版本通信的問題,那么我們把Apollo往QNX發展是可行的。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 汽車電子
    +關注

    關注

    3035

    文章

    8252

    瀏覽量

    169510
  • 自動駕駛
    +關注

    關注

    788

    文章

    14204

    瀏覽量

    169588
  • Apollo
    +關注

    關注

    5

    文章

    347

    瀏覽量

    18709

原文標題:自動駕駛公開課 | Apollo的分布式可擴展計算平臺探索

文章出處:【微信號:Apollo_Developers,微信公眾號:Apollo開發者社區】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    新能源車軟件單元測試深度解析:自動駕駛系統視角

    )和AI模塊(如激光雷達目標檢測)。例如,在測試自動駕駛路徑規劃模塊時,同步注入CAN總線信號(車速、轉向角)和虛擬點云數據(模擬障礙物),實現多維度耦合驗證。 ? 智能覆蓋率引導: ? 通過
    發表于 05-12 15:59

    Apollo與神州租車合作探索全球首個自動駕駛汽車租賃服務

    ? 2025年5月8日,Apollo與中國最大的租車平臺神州租車在北京舉行戰略簽約儀式,并宣布正式達成深度合作。雙方將聯合推出全球首個自動駕駛汽車租賃服務,依托技術創新與場景應用,為廣大用戶提供普惠
    的頭像 發表于 05-08 17:31 ?375次閱讀

    MCU-40型自動測量是如何實現分布式模塊化?

    在巖土工程、大型基建和能源設施的安全監測中,傳統的集中式數據采集系統往往面臨布線復雜、擴展性差、容錯率低等挑戰。南京峟思工程儀器有限公司推出的MCU-40型自動測量系統,憑借其創新的分布式模塊化
    的頭像 發表于 04-10 14:03 ?202次閱讀
    MCU-40型<b class='flag-5'>自動</b>測量是如何實現<b class='flag-5'>分布式</b>模塊化?

    偉創力攜手英偉達與Torc開啟自動駕駛卡車新紀元

    近年來,自動駕駛技術的發展如火如荼。作為世界領先的汽車級計算平臺提供商的偉創力成為自動駕駛8級卡車商業化先驅——Torc的合作伙伴,并攜手技術巨頭英偉達(NVIDIA),合作開發了用于自動駕駛
    的頭像 發表于 03-26 16:10 ?369次閱讀

    百度Apollo開放平臺10.0正式發布

    12月4日,百度正式發布Apollo開放平臺的全新升級版本——Apollo開放平臺10.0,基于自動駕駛大模型ADFM設計重構算法,助力全球
    的頭像 發表于 12-04 16:20 ?928次閱讀

    百度獲香港首個自動駕駛先導牌照

    近日,百度旗下自動駕駛品牌Baidu Apollo International傳來喜訊,根據香港運輸署的正式通知,該公司成功獲得了香港首個自動駕駛車輛先導牌照。這一牌照的獲得,標志著百度自動駕
    的頭像 發表于 12-03 17:22 ?671次閱讀

    深入解析自動駕駛系統中的DCU、MCU、MPU、SoC及整車電子架構

    摘要本文探討了自動駕駛中的DCU、MCU和MPU在電子電氣架構中的作用,比較了分布式與集中式架構的優勢,以及ADAS系統從L0-L2+的發展歷程。著重分析了MCU和MPU的區別,以及它們在汽車智能化
    的頭像 發表于 11-20 17:08 ?2503次閱讀
    深入解析<b class='flag-5'>自動駕駛</b>系統中的DCU、MCU、MPU、SoC及整車電子架構

    Apollo自動駕駛開放平臺10.0版即將全球發布

    百度在自動駕駛領域的創新步伐再次加快,今年5月,公司率先推出了全球首個支持L4級自動駕駛應用的自動駕駛大模型——Apollo ADFM。這一突破性技術的問世,不僅標志著百度在
    的頭像 發表于 11-07 11:24 ?1158次閱讀

    自動駕駛汽車安全嗎?

    隨著未來汽車變得更加互聯,汽車逐漸變得更加依賴技術,并且逐漸變得更加自動化——最終實現自動駕駛,了解自動駕駛汽車的安全問題變得非常重要,這樣你才能回答“自動駕駛汽車安全嗎”和“
    的頭像 發表于 10-29 13:42 ?975次閱讀
    <b class='flag-5'>自動駕駛</b>汽車安全嗎?

    自動駕駛HiL測試方案案例分析--ADS HiL測試系統#ADAS #自動駕駛 #VTHiL

    自動駕駛
    北匯信息POLELINK
    發布于 :2024年10月22日 15:20:19

    自動駕駛競賽升溫:全球頭部企業爭相出牌

    Apollo自動駕駛開放平臺10.0,該平臺將搭載全新的自動駕駛大模型ADFM,進一步推動自動駕駛
    的頭像 發表于 10-11 15:28 ?1120次閱讀

    分布式工業物聯網平臺:引領智能制造的新篇章

    隨著全球化和信息化進程的加速,分布式工業物聯網平臺作為智能制造的重要基石,正逐步展現出其強大的潛力和廣泛的應用前景。這一平臺通過整合不同地區的人力物力資源,實現產品生產的最低消耗,并借助物聯網技術將
    的頭像 發表于 09-27 17:09 ?462次閱讀

    基于分布式對象存儲WDS的信托非結構化數據整合平臺

    基于分布式對象存儲WDS的信托非結構化數據整合平臺
    的頭像 發表于 08-28 09:56 ?595次閱讀
    基于<b class='flag-5'>分布式</b>對象存儲WDS的信托非結構化數據整合<b class='flag-5'>平臺</b>

    FPGA在自動駕駛領域有哪些優勢?

    需更換整個硬件平臺。 綜上所述,FPGA在自動駕駛領域具有高性能、靈活性、低延遲、高能效比、硬件級安全、易于集成與擴展以及長期可維護性等顯著優勢。這些優勢使得FPGA成為自動駕駛技術
    發表于 07-29 17:11

    FPGA在自動駕駛領域有哪些應用?

    是FPGA在自動駕駛領域的主要應用: 一、感知算法加速 圖像處理:自動駕駛中需要通過攝像頭獲取并識別道路信息和行駛環境,這涉及到大量的圖像處理任務。FPGA在處理圖像上的運算速度快,并行性強,且功耗
    發表于 07-29 17:09