天天看點

你聽過無人駕駛,但你了解無人駕駛的算法嗎?1.傳感2.感覺3.決策

引言:我們已經拉開了全自動無人駕駛的序幕,在幕布之後是我們精彩的未來,但你可能不知道的是無人駕駛系統是一個複雜的系統,系統主要由三部分組成:算法端、client端和雲端。算法端從傳感器原始資料中提取有意義的資訊以了解周遭的環境情況,并根據環境變化做出決策。跟随本文一起簡單了解下無人駕駛算法吧。 本文選自《第一本無人駕駛技術書》。

  算法系統由幾部分組成:第一,傳感,并從傳感器原始資料中提取有意義資訊;第二,感覺,以定位無人車所在位置及感覺現在所處的環境;第三,決策,以便可靠、安全地抵達目的地。

  通常來說,一輛無人車裝備有許多不同類型的主傳感器。每一種類型的傳感器各自有不同的優劣,是以,來自不同傳感器的傳感資料應該有效地進行融合。現在無人駕駛中普遍使用的傳感器包括以下幾種。

  (1)gps/imu:gps/imu 傳感系統通過高達200 hz頻率的全球定位和慣性更新資料,以幫助無人車完成自我定位。gps是一個相對準确的定位用傳感器,但是它的更新頻率過低,僅有10hz,不足以提供足夠實時的位置更新。imu的準确度随着時間降低,是以在長時間距離内并不能保證位置更新的準确性;但是,它有着gps所欠缺的實時性,imu的更新頻率可以達到200hz或者更高。通過整合gps與imu,我們可以為車輛定位提供既準确又足夠實時的位置更新。

  (2)lidar:雷射雷達可被用來繪制地圖、定位及避障。雷達的準确率非常高,是以在無人車設計中雷達通常被作為主傳感器使用。雷射雷達是以雷射為光源,通過探測雷射與被探測物互相作用的光波信号來完成遙感測量。雷射雷達可以用來産生高精度地圖,并針對高精地圖完成移動車輛的定位,以及滿足避障的要求。以velodyne 64-束雷射雷達為例,它可以完成10hz旋轉并且每秒可達到130萬次讀數。

  (3)攝像頭:攝像頭被廣泛使用在物體識别及物體追蹤等場景中,在車道線檢測、交通燈偵測、人行道檢測中都以攝像頭為主要解決方案。為了加強安全性,現有的無人車實作通常在車身周圍使用至少八個攝像頭,分别從前、後、左、右四個次元完成物體發現、識别、追蹤等任務。這些攝像頭通常以60hz的頻率工作,當多個攝像頭同時工作時,将産生高達1.8gb每秒的巨額資料量。

  (4)雷達和聲呐:雷達把電磁波的能量發射至空間中某一方向,處在此方向上的物體反射該電磁波,雷達通過接收此反射波,以提取該物體的某些有關資訊,包括目标物體至雷達的距離、距離變化率或徑向速度、方位、高度等。雷達和聲呐系統是避障的最後一道保障。雷達和聲呐産生的資料用來表示在車的前進方向上最近障礙物的距離。一旦系統檢測到前方不遠有障礙物出現,則有極大的相撞危險,無人車會啟動緊急刹車以完成避障。是以,雷達和聲呐系統産生的資料不需要過多的處理,通常可直接被控制處理器采用,并不需要主計算流水線的介入,是以可實作轉向、刹車或預張緊安全帶等緊急功能。

  在獲得傳感資訊之後,資料将被推送至感覺子系統以充分了解無人車所處的周遭環境。在這裡感覺子系統主要做的是三件事:定位、物體識别與追蹤。

  gps以較低的更新頻率提供相對準确的位置資訊,imu則以較高的更新頻率提供準确性偏低的位置資訊。我們可以使用卡爾曼濾波整合兩類資料各自的優勢,合并提供準确且實時的位置資訊更新。如下圖所示,imu每5ms更新一次,但是期間誤差不斷累積精度不斷降低。所幸的是,每100ms,我們可以得到一次gps資料更新,以幫助我們校正imu積累的誤差。是以,我們最終可以獲得實時并準确的位置資訊。然而,我們不能僅僅依靠這樣的資料組合完成定位工作。原因有三:其一,這樣的定位精度僅在一米之内;其二,gps信号有着天然的多路徑問題将引入噪聲幹擾;其三,gps必須在非封閉的環境下工作,是以在諸如隧道等場景中gps都不适用。

你聽過無人駕駛,但你了解無人駕駛的算法嗎?1.傳感2.感覺3.決策

                      基于gps/imu定位的原理圖

                 

  是以作為補充方案,攝像頭也被用于定位。

  

你聽過無人駕駛,但你了解無人駕駛的算法嗎?1.傳感2.感覺3.決策

                      基于立體視覺測距的流程圖

               

  簡化來說,基于視覺的定位由三個基本步驟組成:① 通過對立體圖像的三角剖分,首先獲得視差圖用以計算每個點的深度資訊;② 通過比對連續立體圖像幀之間的顯著特征,可以通過不同幀之間的特征建立相關性,并由此估計這兩幀之間的運動情況;③ 通過比較捕捉到的顯著特征和已知地圖上的點計算車輛的目前位置。然而,基于視覺的定位方法對照明條件非常敏感,是以其使用受限且可靠性有限。

  是以,借助于大量粒子濾波的雷射雷達通常被用作車輛定位的主傳感器。由雷射雷達産生的點雲對環境進行了“形狀化描述”,但并不足以區分各自不同的點。通過粒子濾波,系統可将已知地圖與觀測到的具體形狀進行比較以減少位置的不确定性。

  為了在地圖中定位運動的車輛,可以使用粒子濾波的方法關聯已知地圖和雷射雷達測量過程。粒子濾波可以在10cm的精度内達到實時定位的效果,在城市的複雜環境中尤為有效。然而,雷射雷達也有其固有的缺點:如果空氣中有懸浮的顆粒(比如雨滴或者灰塵),那麼測量結果将受到極大的擾動。

你聽過無人駕駛,但你了解無人駕駛的算法嗎?1.傳感2.感覺3.決策

                        定位中的多傳感器融合

  是以,我們需要利用多種傳感器融合技術進行多類型傳感資料融合,處理以整合所有傳感器的優點,完成可靠并精準的定位。

  雷射雷達可提供精準的深度資訊,是以常被用于在無人駕駛中執行物體識别和追蹤的任務。近年來,深度學習技術得到了快速的發展,通過深度學習可達到較顯著的物體識别和追蹤精度。

卷積神經網絡(cnn)是一類在物體識别中被廣泛應用的深度神經網絡。通常,cnn由三個階段組成:① 卷積層使用不同的濾波器從輸入圖像中提取不同的特征,并且每個過濾器在完成訓練階段後都将抽取出一套“可供學習”的參數;② 激活層決定是否啟動目标神經元;③ 彙聚層壓縮特征映射圖所占用的空間以減少參數的數目,并由此降低所需的計算量;④ 一旦某物體被cnn識别出來,下一步将自動預測它的運作軌迹或進行物體追蹤。

                       

你聽過無人駕駛,但你了解無人駕駛的算法嗎?1.傳感2.感覺3.決策

                        物體識别和跟蹤示意

  物體追蹤可以被用來追蹤鄰近行駛的車輛或者路上的行人,以保證無人車在駕駛的過程中不會與其他移動的物體發生碰撞。近年來,相比傳統的計算機視覺技術,深度學習技術已經展露出極大的優勢,通過使用輔助的自然圖像,離線的訓練過程可以從中學習圖像的共有屬性以避免視點及車輛位置變化造成的偏移,離線訓練好的模型直接應用在線上的物體追蹤中。

  在決策階段,行為預測、路徑規劃及避障機制三者結合起來實時地完成無人駕駛動作規劃。

  在車輛駕駛中主要考驗的是司機如何應對其他行駛車輛的可能行為,這種預判斷直接影響司機本人的駕駛決策,特别是在多車道環境或者交通燈變燈的情況下,司機的預測決定了下一秒行車的安全。是以,過渡到無人駕駛系統中,決策子產品如何根據周圍車輛的行駛狀況決策下一秒的行駛行為顯得至關重要。

  為了預測其他車輛的行駛行為,可以使用随機模型産生這些車輛的可達位置集合,并采用機率分布的方法預測每一個可達位置集的相關機率。

你聽過無人駕駛,但你了解無人駕駛的算法嗎?1.傳感2.感覺3.決策

                        面向行為預測的随機模型示意

  為無人駕駛在動态環境中進行路徑規劃是一件非常複雜的事情,尤其是在車輛全速行駛的過程中,不當的路徑規劃有可能造成緻命的傷害。路徑規劃中采取的一個方法是使用完全确定模型,它搜尋所有可能的路徑并利用代價函數的方式确定最佳路徑。然後,完全确定模型對計算性能有着非常高的要求,是以很難在導航過程中達到實時的效果。為了避免計算複雜性并提供實時的路徑規劃,使用機率性模型成為了主要的優化方向。

  安全性是無人駕駛中最重要的考量,我們将使用至少兩層級的避障機制來保證車輛不會在行駛過程中與障礙物發生碰撞。第一層級是基于交通情況預測的前瞻層級。交通情況預測機制根據現有的交通狀況如擁堵、車速等,估計出碰撞發生時間與最短預測距離等參數。基于這些估計,避障機制将被啟動以執行本地路徑重規劃。如果前瞻層級預測失效,則第二級實時反應層将使用雷達資料再次進行本地路徑重規劃。一旦雷達偵測到路徑前方出現障礙物,則立即執行避障操作。

                     

你聽過無人駕駛,但你了解無人駕駛的算法嗎?1.傳感2.感覺3.決策

  想及時獲得更多精彩文章,可在微信中搜尋“博文視點”或者掃描下方二維碼并關注。

你聽過無人駕駛,但你了解無人駕駛的算法嗎?1.傳感2.感覺3.決策

繼續閱讀