機器也能看見世界,這背後的技術是什麼?

機器也能看見世界,這背後的技術是什麼?

作者:邱純鑫 聯繫郵箱:337537222@qq.com

去年CES大會期間,英特爾首次展示了Realsense實感技術,一年之後也就是上個月的2016 IDF大會上,英特爾終於向外界推出了Realsense 技術的SDK和機器人開發工具包以及無人機平台。搭載Realsense 的3D攝像頭能夠幫助機器實現查看環境物體「深度」信息,通俗點講,只需一個手勢、一個眼神或者一個動作,電腦就知道你想做什麼。

看似很酷炫的技術,實際上並沒有外界想得那麼高大上。

Realsense之所以能夠識別物體的深度信息,關鍵在於其具備三維重建功能。而能與Realsense齊名甚至是比Realsense更好的產品比比皆是,我們所知道的無人機、機器人以及無人駕駛汽車當中的壁障或路徑規劃等功能都基於三維重建技術。

說到這裡你也許會認為這些產品的技術原理並無差異,那麼事實真是如此嗎?

隨著三維重建的技術方案在不斷成熟,其方案也是層出不窮。目前,業界主流的方案就有視覺和激光雷達兩大類,例如Realsense和Leap motion以及Kinect就是用視覺方法來實現環境感知功能,而激光雷達則是無人駕駛和掃地機器人等領域的核心一環。那麼為什麼出現多種方案呢?它們到底有什麼差異?

單目/雙目視覺

這種技術是利用攝像頭來獲取象物體表面信息,根據攝像頭的數量,我們可以分為單目視覺和雙目視覺。

談到三維重建技術,最早可以追溯到上世紀60年代,當時的研究人員已經展開了雙目視覺的研究,正是因為雙目立體視覺的出現,業界才向現代計算機視覺技術邁進了一大步,從以往二維圖像的分析導入到了三維場景,說雙目視覺技術是三維重建的鼻祖並不為過。

其原理比較簡單,雙目視覺設備直接通過兩個紅外感測器/攝像頭從不同角度同時獲得被測物的兩幅數字圖像,然後基於視差原理恢復出物體的三維幾何信息,重建物體三維輪廓及位置,這種沒有主動發射光源的也被叫做被動三維視覺。

然而,在有兩個攝像頭的情況下如何甄別是否是同一個信息點是一個難題,這對軟體演算法提出了很高的要求。在這樣的背景下,單目視覺問世了。

單目視覺,顧名思義,只用一個攝像頭來接收信息,因為比雙目視覺系統少了一個接收端,所以在攝像頭的另一側需要一個結構光發射光源來填補空缺,相應的我們可以稱之為主動視覺。英特爾Realsense是典型的單目攝像頭+結構光的代表。因為結構光發射的是一個已知的圖案,僅有的攝像頭接收到了經過物體表面反射的圖案之後,就可以經過圖像處理計算出和原始圖案的差異,最後就實現了三維重構。

使用視覺方法做三維重構的短板很明顯,單目和雙目魯棒性都很差,這種系統的精度會隨著周圍環境的變化而受到影響,我們分別以雙目和單目視覺舉個例子:目前好的雙目視覺方案精度可以做到幾毫米甚至是零點幾毫米,但這是在最佳環境下的數值,當外界光線由強變弱時,雙目視覺的精度會大打折扣,因為雙目攝像頭感知圖像的能力會變弱,獲取的圖案也自然而然變得越來越模糊,這與手機攝像頭的拍攝原理類似。

而單目視覺恰恰相反,結構光的硬傷是「見光死」,它只適合光線較暗的環境,如果周圍的光線很強,攝像頭就很難準確的識別亮點,所以結構光法到了室外就顯得有些水土不服了。

看到這裡,也許你就理解了為什麼英特爾選擇在一個光線很暗的環境下演示搭載Realsense模組的昊翔Typhoon H壁障功能。說句題外話,因為單目和雙目有本質的區別,最近鬧得不可開交的大疆(雙目視覺原理)和Yuneec昊翔侵權案被業內人士認為並不成立。

無論是單目和雙目,其測距方法都是基於三角測距法,測距範圍最大只能做到5-8m,這就決定了視覺方法不適合無人駕駛汽車,其最大的應用場景還是室內掃地機器人以及遊戲設備。另外,這種方案的硬體成本只有幾百元人民幣,非常適合消費類的電子產品。

因為採用視覺方案的產品有很多,我們只以Realsense為例看下視覺方案的產品特性。

根據英特爾官方的信息,Realsense有近距離使用和遠距離使用兩個版本,近距離版本內置了F200 3D圖像處理器的晶元,一個紅外激光發射器和一個接收圖像信息的紅外感測器,其採用的是典型的單目+結構光的方案;遠距離版本則採用了R200 3D圖像處理晶元,另外比近距離版本多配置了一個紅外感測器(雙目),這意味著該版本直接模仿人眼的「視差原理」,通過打出一束紅外光,以左紅外感測器和右紅外感測器追蹤這束光的位置,然後用三角定位原理來計算出 3D 圖像中的「深度」信息。後者每秒可以採集1000萬個3D點,可以識別跟蹤手上的22個關節點,根據手部運動來實現手勢操控,並能識別面部的78個特徵點,實現面部解鎖、表情識別。

除了Realsense,Kinect、和LeapMotion以及國內的奧比中光等都用的是基於視覺的三維建模方案,當然任何一家廠商的方案都有自己的特點,根據各自應用場景的不同都有一定的差異。

激光雷達

既然視覺方案存在這麼多的缺陷,就必然需要另外一種技術來完成它不能完成的使命,激光雷達就是其中之一。作為機器人、無人機和無人駕駛領域的新寵,激光雷達是這兩年才開始火起來的。

之所以能夠受到業界的追捧,很關鍵的原因就是激光解決了上述視覺方案中受光線強度影響的問題,如果在室外,用它來實現壁障、路徑規劃等功能再合適不過了。

和視覺方式一樣,激光雷達實現三維重建大體也可以分為兩類,一類是基於三角測量法,另一種被稱為ToF測距法,這兩種方式不僅僅是文字和原理上的差異,二者的性能以及價格都不在一個等級上。

基於三角測量演算法的激光雷達多為非實時性激光雷法,其原理如下:激光從激光頭髮射,到物體表面之後會形成一條反射光,另一側的陣列CCD可以實時感應到反射回來的信息,因為激光頭的發射角度α和信號接收端的角度β是已知的,激光頭和CCD的距離為固定的,根據正弦定理就可以算出雷達與物體的距離。這種方案技術門檻不高,開發周期也不長,硬體成本可以做到幾百元的級別。

既攻克了視覺方案的瓶頸,又繼承了其成本低廉的優勢,這樣的方案看似很完美。但它依然存在兩個缺陷:首先,基於三角測距法的激光雷達沒有擺脫測距範圍短的缺陷,大多數產品都在5-6m範圍內;其次,因為發射的是單點激光,再加上一般廠商的激光出點數只有4k左右,其重構三維信息的速度會比較慢。如果應用在掃地機器人上,這樣的參數是綽綽有餘的,目前國內的思嵐科技和國外的Neato用的就是這一方案。

ToF(Time Of Flight)的原理是通過測量光脈衝之間的傳輸延遲時間來計算對象物體的距離。使用ToF的激光雷達在測出物體輪廓邊沿與設備間的相對距離後,這些輪廓信息可組成點雲數據,最終得出3D環境地圖,這種激光雷達的精度可以做到厘米級別。它是目前最適合無人駕駛汽車的技術之一,谷歌無人駕駛汽車上使用的就是國外廠商Velodyne的64線實時性激光雷達。

這種激光雷達在無人駕駛汽車當中充當了眼睛的角色。Velodyne的員工曾拆解夠上述這款64線激光雷達,其硬體構造由發射系統、接收系統、信息處理等部分組成(如下圖)。

圖片出自車雲網

激光從兩側發射,遇到障礙物之後反射的信息被中間接收處接收,通過折返的時間進行一系列的數據分析,最後就可以得出障礙物的距離以及輪廓信息,需要注意的是,在無人駕駛汽車行駛的過程中,這個64線激光雷達也在不停地轉動以記錄全方位的環境信息,激光接收端收集到的數據實際上是無數個數據組成的點雲數據。遺憾的是,Velodyne並不提供點雲數據演算法,最終的數據處理還是要交到汽車廠商手上。

然而,Velodyne閹割掉的環節正是激光雷達的關鍵環節。因為激光雷達的難點就在於如何通過硬體進行高速數據採集並通過演算法實時處理,獲得高精度原始點雲數據。硬體系統可以支持一秒進行上百萬次的測量,所以軟體演算法需要不斷優化,減少計算量並提高精度,通俗點講,沒有點雲演算法,激光雷達的硬體條件再好也沒有辦法完成高精度的測量。

這就是為什麼我們會說實時性激光雷達軟體演算法的技術壁壘很高,縱觀全球市場能提供點雲演算法的廠商屈指可數,國內具備這一實力的更是鳳毛麟角。有人說,國外佔據了激光雷達的主導位置,我卻不這麼認為。因為國外的激光雷達產品一直居高不下,而且產品成熟度並不高,即便是目前車用激光雷達市場的代表——Velodyne也被貼上了「低性價比」的標籤(Velodyne 64線激光雷達目前售價7萬5千美元)。所以幾乎可以認為大家都是站在同一起跑線上的,這對國內廠商來說是個空前的機會。以深圳騰聚創科技為例,雖然創立只有兩年的時間,但公司的技術團隊在點雲演算法上有10年的經驗積累,而且取得了重大突破,目前,速騰已經和國內汽車廠商展開了合作,在性能和價格上都能顛覆現有的激光雷達,預計今年下半年會正式推出。

類似的技術還有毫米波雷達以及其它感測器的方案等等,它們也各有特點,我就不再贅述了。現在討論它們孰優孰劣還為時過早,但可以確定的是激光雷達的成本降下來之後,必然是廠商的最佳選擇,同時也會成為無人機、機器人和無人駕駛市場化的重要推手。


推薦閱讀:

戰鬥機的相控陣雷達比驅逐艦的相控陣性能差在哪?
有些戰機為什麼可以去掉尾翼,從而降低雷達偵測的面積?
怎樣看待直-19武裝直升機頂個「球」首次亮相?
Automotive radar 信號處理 第10課 數據融合
EA-18G「咆哮者」威力究竟如何?我國在南海如何應對美國部署的該型戰機?

TAG:激光 | 雷达 | 三维 |