大材小用?
還真沒有,雖然道路交通很復雜,但家里也一樣。
不僅要在靠近柜腳床腳時減速,還要在“看見”障礙物(掉在地上的襪子、纏繞的數據線)時來個急剎車。
還得肩負起逗貓遛狗的責任,給上班的你直播寵物的“作案現場”。
問題來了,機器人想要避開物體(如數據線、貓狗),用目標檢測算法不就行了?
但目標檢測算法只能識別已知物體,無法識別、測量未知物體的距離。
想讓機器避障,除了檢測特殊目標,還需要自動駕駛技術中的一項核心算法三維感知,即判斷障礙物距離和三維尺寸(體積大小)的能力。
人眼會下意識地判斷物體與自己的距離。
機器要想“學會”這種能力,同樣需要先擁有“眼睛”。
自動駕駛避障核心:雙目視覺算法
深度感知用到的測距方法有很多,包括紅外、超聲波、激光、3D結構光、3D ToF、單目視覺、雙目視覺等。
那么,為什么要選擇雙目視覺算法?
簡單來說,就是讓機器像人一樣,用兩只眼睛看世界,產生“深度”感。不然,機器人看著你和身后的花瓶,會認為是你正頂著一個花瓶,而不會產生“深度”感。
如果只有單目(只用一只眼睛,利用時間和判定框大小變化去測量距離)的話,機器也有辦法判斷距離,但就與人一樣,沒辦法判斷得那么精確。
例如,左右手各舉一支筆,在閉上一只眼睛后,試著將筆尖對筆尖——是不是容易對不上?因為距離感變差了,所以筆尖總是容易互相錯過。
那么,激光雷達呢?
這的確是一個好東西,如果多個雷達全方位感知,機器就擁有了“神之視角”,每個角落都能看得清清楚楚。
然而,它造價太昂貴。如果在機器人身上裝上可以無死角掃視房間的雷達數量,它就變成了“行走的小金庫”,價格讓人無法直視。
此外,如紅外、超聲波等算法,避障精度不如雙目準確;至于3D ToF、結構光等算法,不僅成本高,需要額外配攝像頭做目標檢測,而且沒有區分物體的能力,只能通過大小判斷障礙物。(例如,薄薄的襪子可能就被誤吸了)
這也是為什么,雙目視覺算法在無人車與無人機領域“備受歡迎”。
而現在,雙目視覺算法也被用在了掃地機器人上。
3cm以上:結合LDS,障礙物全識別
機器的“眼睛”,通俗點來說就是各種大大小小的傳感器。(激光雷達、相機后面的傳感器)
傳感器通常的工作原理,是機器(在角α頂點處)發射紅外線、超聲波、激光,通過“眼睛”(下圖角β的頂點)接收到后,再根據反射回來的角度、相位或時間,來判斷距離(d)。
而雙目視覺的根本原理,就像是將這個三角形變成了3D版:
它的原理就兩步:確定視差,即將兩個相機拍下來的照片進行對比,找出兩張照片中相同的點間像素差,基于視差,通過已知的雙目空間幾何關系,計算立體空間中各點的距離。
但相比人腦的高精度計算,想要實現計算機的雙目識別,并不只有解三角形這么簡單。
一個重要的原因,就是在步驟這一塊,計算機本身并不知道攝像機拍的兩張照片哪里是一樣的。
△在計算機眼里,這些小黃鴨就是一堆數據
這就導致雙目視覺算法的開發變得非常困難,但帶來的收益也很高。
不過,雙目視覺算法仍然有缺點,它受光線影響依舊很大。
所以在光線不足時,就用算法去主動“補上光線”。
以石頭T7 Pro掃地機器人的算法為例,雙目視覺模塊分為視覺控制和深度估計兩部分,一個智能補光,一個估計深度。(甚至專門做個紅外拍出的相片,搞成數據集,訓練補光識別效果)
但自動駕駛算法,也絕不僅僅只靠“兩只眼睛”。
與人類不同,無論是自動駕駛汽車、無人機、還是掃地機器人,都可以說是“全身遍布”著眼睛。
其中就包括LDS(激光雷達)。
當雙目視覺算法遇上激光雷達(能搞定所在高度的平面避障),在二者的結合之下,機器人不僅能完美避開3cm以上的障礙物,還能通過它們“找準自身定位”。
此外,激光雷達也會用在SLAM的建圖和定位上。
3cm以下:目標檢測算法的最強“輔助”
不過,在實際應用中,單靠雙目視覺算法和激光雷達,還遠遠不夠。
小于3×5厘米的物體,會比較麻煩,既要區分出要清掃的部分(紙屑、地毯)、又要避開一些容易纏住的障礙(數據線)。
這種情況下,雙目視覺算法就成了最好的“輔助”:協助目標識別算法,將需要避開的物體檢測出來,準確地區分垃圾與障礙物。
目標檢測模型上,T7 Pro自研的神經網絡借鑒了SSD,YOLO,及CenterNet等多種新型模型,目前還在不斷地迭代。
算法上,石頭采用了“一分為二”的待遇:高于3厘米的物體,繞障礙物邊沿避障和清掃;
小于3厘米的物體,按種類進行清掃(紙屑、地毯)或避障(寵物便便、數據線)。
數據集上,石頭也“別有用心”:選出了一些特殊的物體,進行“有差別對待”。
例如,大家都有所擔心的動物便便,石頭T7 Pro的算法中直接加入了便便的識別(同情做數據集的一秒鐘),在接觸之前,遠遠地就避開它。
哪怕不在家,掃地機器人也不會把寵物便便拖得滿地都是。
雖然算法目前已經迭代到了能夠識別9種物體的“體量”(還在增加ing),但不是所有的物體都像寵物便便這樣,會受到“遠遠避開”的待遇。
9類常見障礙物:底座類(吧臺椅、風扇、手持底座、平底座、燈底座)、體重秤、線團、插線板、鞋子、粑粑、織物(如襪子)、易卡家具( 如U型椅)、簸箕
例如鞋子、風扇這種相對較為安全的物體,離得近一點再避障也沒什么問題(推開一點不重要,掃干凈就行)。
以及,這部分算法還有個小彩蛋。
在你上班的時候,這個掃地機器人就能化身小管家,“監督”寵物:是不是又把食盆打翻了?
不過,視頻只有直播,沒有云存儲,也就是說,其他人甚至沒辦法竊取你家的數據,所以,不用擔心掃地機器人會“變身間諜”。
繼續“拆解”后的發現
從深度感知部分來看,掃地機器人深度感知的原理,與無人駕駛算法有著相似之處:
算法包含三大部分,第一部分是傳感器數據的獲取,第二部分是信息的提取,第三部分是獨特導航算法的融合(后融合)。
但這并不意味著,掃地機器人的算法與無人駕駛汽車的算法一樣。
在實際應用上,掃地機器人需要“近距離避障”(晚點剎車,掃得更干凈),自動駕駛汽車則相反,需要以“安全”為主(盡早剎車)。
所以,雖然二者的避障核心都是自動駕駛中的雙目視覺算法,但數據處理方式不同。
從根本上來說,它們都是智能機器人,為了讓生活變得更方便而存在。
責任編輯:pj
-
機器人
+關注
關注
211文章
28632瀏覽量
207986 -
無人機
+關注
關注
230文章
10515瀏覽量
181785 -
自動駕駛
+關注
關注
784文章
13923瀏覽量
166820
發布評論請先 登錄
相關推薦
評論