【泡泡機器人原創專欄】飛行時間相機(ToF Camera)簡介

2021-03-03 泡泡機器人SLAM

1.簡介

    3D 飛行時間技術是機器視覺領域的革新,它採用低成本的 CMOS 點陣和有源調製光源,提供了 3D 成像方法。飛行時間相機結構緊湊,簡單易用,高精度,高幀率,是一種非常有吸引力的方案,應用廣泛。本文先介紹飛行時間相機的基本原理,對比了飛行時間相機和其他2D/3D 技術。然後,介紹了飛行時間相機各種有價值的應用,比如手勢感應,3D 掃描和列印。最後,提供了開發飛行時間相機的各種資源。

 

2.原理

    3D 飛行時間相機通過一個調製光源和檢測反射光來照亮場景。檢測發射光和反射光之間的相位移動,並換算成距離。圖 1 顯示了基本的飛行時間相機原理。 

     圖1: 3D 飛行時間相機原理 

    通常,固態雷射或者 LED 的發射光源是近紅外波段(~850nm),對人眼不可見。圖像傳感器需要能夠響應相同的波段,接收光,將光能量轉化為電流。注意,進入傳感器的光同時包括了環境光和反射光。距離(深度)信息只存在於反射光中。因此,過多的環境光會降低信噪比(SNR)。為了檢測發射光和發射光之間的相位移動,光源是脈衝波或是調製過的連續波,光源通常是正弦波或方波。方波調製更通用,可以通過數字電路很容易實現。

    通過集成的光電轉換器從反射光中獲取脈衝調製,或在反射的第一個檢測中啟動快速計數器。快速計數器需要一個快速光檢測器,通常是一個單光子雪崩二極體(SPAD)。這種計數方法需要快速電子脈衝,1 毫米的精度需要的時鐘脈衝間隔是 6.6 皮秒。這種級別的精度在室溫下的晶片上是無法獲得的。 

    圖 2: 兩種飛行時間方法:脈衝(上)和連續波(下) 

    脈衝方法是比較直觀的。在一個比較短的時間內,光源照射時間為(Δt),採用兩個異相窗口,C1 和 C2,在相同的時間間隔Δt 內,同時並行對每個像素點的反射能量進行採樣。在這些採樣時間內,電流持續充電,測量 Q1 和 Q2 用下面公式計算距離:

連續波方法每次測量獲取多個樣本,每個樣本相位差 90 度,共 4 個樣本。使用這種技術,發射光和反射光之前的相位角為,φ,距離 d 可以通過下式計算:

接著,待測量像素的亮度(A)和偏移(B),計算為:

在所有的公式中,c 是光速 30 萬千米每小時。第一眼看,相比脈衝波,連續波方法的複雜度看似不合理,但仔細看連續波的公式, 就會

發現(Q3 − Q4)和(Q1 − Q2)減少了測量中的偏移常量。還有就是,相位角公式中的商值可以減少距離測量中的增益常量的影響,比如,系統中的放大或衰減,或者反射的強度。

反射亮度(A)和偏移(B)會影響深度測量的精度。深度值方差可以用以下公式估計:

調製常量 cd 描述了飛行時間傳感器分離和收集光電信號的好壞程度。反射光強,A,是光強的函數。偏移,B,是環境光和系統內部偏移的函數。可以從公式 6 得到結論是高幅度,高調製頻率和高調製對比度,可以增加精度;但高偏移會導致相機飽和從而降低精度。

    高頻情況下,由於晶片矽半導體的特性,調製對比度會衰減。這是調製頻率的實際上線。具有快速下降沿頻率的飛行時間相機精度更高。

連續波測量基於相位,每 2π重複一次,意味著距離就會產生鋸齒。產生鋸齒的距離,稱為模糊距離,damb,用公式 7 表示:

距離出現循環,damb 就是最大的觀測距離。如果需要增加觀測距離,就需要減小調製頻率,根據公式 6,就會減小精度。

如果不想妥協,高級飛行時間系統就會採用多頻技術增加距離而不減小調製頻率。增加一個或多個調製頻率混合可以生成多頻技術。每個調製頻率都有一個不同的模糊距離,但真正的位置是多個頻率相交的地方。兩個調製頻率相交,稱為差(分)頻(率),通常很低,對應一個較長的模糊距離。雙頻技術方法如下所示。

    圖 3: 用多頻技術增加距離 

3.點雲

    飛行時間傳感器,測量 2 維可尋址的陣列傳感器中的每個像素的距離,生成深度圖。深度圖是 3 維點雲的集合(每個點稱為一個體素)。比如,QVGA 傳感器的深度圖有 320x240 個體素。深度圖的 2 維表示是一個灰度圖,如圖 4 易拉罐所示,亮度比較亮,比較近的體素。圖4 顯示了一組易拉罐深度圖。 

    圖 4: 易拉罐深度圖 

另外,深度圖可以通過一系列的點組成的三維空間來渲染,或者點雲。3D 點可以連接形

成網格,表明影射有材質貼圖。如果有同一物體的實時彩色圖像生成材質,就可以渲染出逼真的 3D 物體,如圖 5 所示。圖片中的人可以旋轉人像看不同的透視圖。 

圖 5: 從點雲生成的人像 

4.其他的視覺技術 

    飛行時間技術並不是唯一的視覺技術。這節我們將對比飛行時間技術和經典的 2D 機器視覺和其他的 3D 視覺技術。本節最後對這一比較作了總結。

2D 機器視覺

    目前大部分機器視覺都是 2D,性價比高,光照容易控制。非常適合質量檢驗,瑕疵可以通過圖像處理檢測,比如邊緣檢測,模板匹配和形態學打卡/關閉。這些算法提取關鍵特徵參數,對比資料庫用於瑕疵檢測。為了檢測 Z 軸方向的瑕疵,需要加一個 1D 傳感器或 3D 視覺傳感器。

    2D 視覺可用於無結構環境中,需要藉助高級圖像處理算法處理複雜的光照和陰影。如圖 6所示,這些圖像時同一張臉,但是不同的光照。陰影不同使得人臉面部識別非常困難。

相反,飛行時間傳感器生成的點雲用於計算機識別不會受到陰影的影響,因為光照是飛行時間傳感器自己提供的,深度信息使從相位數據中提取的,而不是圖像亮度。

    圖 6: 同一張臉,不同的陰影 

3D 機器視覺

    魯棒的 3D 視覺克服了 2D 視覺的很多問題,深度信息可以輕鬆地分離前景和背景。這對場景的理解非常有用,其第一步就是從圖像的其他部分(背景)分割出興趣目標物體(前景)。

 比如,手勢識別,就涉及到場景理解。用距離作為一個分類器,飛行時間傳感器就可以將人臉,手和手指從圖像中的其他部分分離出來,所以,手勢識別非常容易。

    圖 7: 3D 視覺對比 2D 的優勢 

    接下來,我們將對比 ToF 和另外兩種 3D 視覺技術:立體視覺和結構光。 

立體視覺 vs. ToF

    立體相機通常使用兩個相機,類似於人的雙眼。給定空間中的 3D 點,分開的相機可以測量兩個相機圖像中的目標的視差。用針孔相機模型,可以計算每幅圖像中的目標位置,如圖所示,分別用α和β表示。根據角度,深度值,Z 就可以計算出來了。 

    圖 8: 視差測量計算立體視覺深度 

    立體視覺的主要調整是解決對應問題:給定一幅圖像中的一個點,如何找到另一相機圖像中相同的點?如果沒有對應關係,視差和深度值就無法精確地算出來。對應關係問題比較複雜,需要使用特徵提取和匹配中的算法。特徵提取和匹配也需要足夠的亮度和顏色。如果缺少這些變量,立體視覺效率就會下降,比如,測量同一顏色的牆面之間的距離時。ToF 相機就不會有這些限制,它並不依賴於顏色或紋理測量距離。

    在立體視覺中,深度解析度誤差是距離的二次函數。相比 ToF 相機,作用於反射光,也對距離敏感。但不同的是,ToF 的這個弱點可以增加光照亮度來彌補;ToF 使用的亮度信息是用於增加精度的有效特徵,使用的是類似卡爾曼濾波這樣的技術。

 立體視覺也有一些優勢。成本低,可以使用現有的相機。雙目相機符合人眼的直覺,他們可以看到相同的圖像。
 

結構光 vs. ToF

    結構光是投射已知模板的光到物體上,檢查模板的變形。多個連續的代碼或相位移動模板

用於提取一幀深度圖,幀率非常低。低幀率就要求被拍物體保持不動,以避免模糊。
反射模式

對環境光的幹擾非常敏感;因此,結構光更適用於室內應用。結構光的主要優點是可以使用現有的 DLP 投影儀或高清彩色相機獲得相對高的空間(X-Y)解析度。

圖 9: 結構光原理

ToF 對機械結構上的設計和環境光相對不敏感,結構設計更緊湊。目前 ToF 技術解析度低於結構光技術。

ToF,立體相機和結構光的總結如表 1 所示。ToF 的主要優勢是性價比高,結構緊湊,深度圖像不受環境光影響,非常方便分離場景理解中的前景和背景。這使得 ToF 應用非常廣泛。 

    表 1: 3D 成像技術對比 

ToF 可應用於汽車,工業,健康,智能廣告,遊戲和娛樂。ToF 傳感器也可以作為優秀的輸入設備用於靜態和移動計算設備。在汽車領域,ToF 傳感器可以實現自動駕駛,增加對環境安全的感知。在工業領域,ToF 傳感器可以作為 HMI,用於強制安全措施。在智能廣告中,ToF 傳感器可以識別人類手勢。在健康領域,手勢識別可以提供非接觸操作。手勢非常適合消費電子,尤其是遊戲,移動計算和家庭娛樂。ToF 傳感器天然地提供第一人稱直覺遊戲界面。可以用於遠程控制,滑鼠和觸控螢幕。總的來說,ToF 傳感器應用可分為手勢和非手勢。手勢應用強調人的交互和速度;非手勢偏重測量精度。 

    圖 10: ToF 技術應用於各種應用 

手勢應用

 手勢應用將人的活動(面部,手,手指或身體)轉換成指令控制遊戲機,智能電視或移動計算設備。比如,切換頻道可以滑動手指。這些應用要求快速的反應時間,中小距離,釐米級的精度和低功耗。

圖 11: 使用 3D-ToF 傳感器和 SoftKinetic iisu®軟體的手勢識別 

非手勢應用 

    ToF 傳感器也用於非手勢應用。比如,汽車輔助駕駛中,ToF 傳感器當檢測到行人和物體時可以提醒司機確保安全。在機器人和自動化中,ToF 傳感器可以檢測產品瑕疵,當人和機器靠得太近時可以確保安全。ToF 傳感器可以 3D 掃描使 3D 列印價格下降。在這些應用中,空間精度非常重要。 

6.開始設計

    TI 的 3D-ToF 方案基於連續波方法,在功耗和精度上有所加強。

硬體

這套方案是 3 顆晶片:ToF 圖像傳感器,模擬前端和 ToF 控制器。提供了一套相機開發工具。圖 12 是系統框圖。 

圖 12: 3D-ToF 系統框圖 

軟體

SoftKinetic: http://www.softkinetic.com

Point-Cloud Library: http://www.pointclouds.org

OpenCV: http://www.opencv.org

7.總結

    本文總結了 ToF 技術的原理。對比了 ToF 傳感器和 2D,其他 3D 機器視覺技術。探索了相關應用,提供了開發需要用的軟體。

參考文獻

[1] E. Charbon, M. Fisburn, R. Walker, R. Henderson, C. Niclass, SPAD-Based Sensors.

[2] D. Van Nieuwenhove, W. Van der Tempel, R. Grrotjans, M. Kuijk, 「Time-of-flight Optical RangingSensor based on a Current Assisted Photonic Demodulator」, Proceedings Symposium, IEEE/LEOSBenelux Chapter, 2006, Eindhoven.
[3] SoftKinetic DepthSenseTM sensors, http://www.softkinetic.com/en-us/products/depthsensesensors.aspx.
[4] J. Geng, 「Structured-Light 3D Surface Imaging: a Tutorial」, Advances in Optics and Photonics 3,128-160 (2011).
[5] M. Hansard, S. Lee, O. Choi, R. Horaud, 「Time-of-Flight Cameras: Principles, Methods andApplications」, Springer Brief in Computer Science, 2012.
[6] A.P.P Jongenelen, D. G. Bailey, A.D. Payne, A.A. Dorrington, D.A. Carnegie, Analysis of Errors in ToFRange Imaging with Dual-Frequency Modulation, IEEE Transactions on Instrumentation andMeasurement, Vo. 60, No. 5, May 2011, SSN0018-9456. 

【版權聲明】泡泡機器人SLAM的所有文章全部由泡泡機器人的成員花費大量心血製作而成的原創內容,希望大家珍惜我們的勞動成果,轉載請務必註明出自【泡泡機器人SLAM】微信公眾號,否則侵權必究!同時,我們也歡迎各位轉載到自己的朋友圈,讓更多的人能進入到SLAM這個領域中,讓我們共同為推進中國的SLAM事業而努力!

【注】商業轉載請聯繫劉富強(liufuqiang_robot@hotmail.com)進行授權。普通個人轉載,請保留版權聲明,並且在文章下方放上「泡泡機器人SLAM」微信公眾帳號的二維碼即可。

【編輯】張韻

相關焦點

  • 【泡泡傳感器測評】雙目相機哪家強?泡泡和上交北鬥導航創新院帶你看
    ,在機器人、無人機、無人駕駛等無人系統中具有廣泛的應用,深度相機獲取圖像中各像素點的深度值的方式主要分為雙目、結構光、光飛行時間三種方式獲得,構成包含深度信息的深度圖。之前,我們已對LeadSense(N1)、ZED、Mynt(深度版120°)、D435、D435i五款相機分別進行了靜態測距、動態測距試驗:本次試驗是泡泡SLAM與上交北鬥導航創新研究院深度合作,通過使用雷射全站儀掃場得到高精度三維稠密點雲圖,根據標定相機坐標系與雷射全站儀坐標系間外參,進行投影得到深度圖真值,直接對整張深度圖進行綜合評價。
  • 【泡泡點雲時空】保護隱私的 Structure-from-Motion (SfM)
    ☐ 基於線特徵的端到端隱私保護 Structure-from-Motion (SfM)方案☐ 針對漸增 SfM 系統的每一個步驟:初始化(initializatoin)、三角剖分(triangulation)、相機幾何校準(camera resectioning)和光束法平差(bundle adjustment)提出了基於線特徵的隱私保護方案☐ 提出的方案高效且魯棒
  • 【泡泡圖靈智庫】LIC-Fusion: 雷射雷達-慣導-相機裡程計
    泡泡圖靈智庫,帶你精讀機器人頂級會議文章標題:LIC-Fusion: LiDAR-Inertial-Camera Odometry作者:Xingxing Zuo, Patrick Genevayy, Woosik Leey, Yong Liu, and Guoquan Huang。
  • 【泡泡點雲時空】雷射雷達輔助的運動恢復結構
    聯合姿態優化聯合姿態優化包含三個觀測誤差,分別為相機圖像觀測誤差,LiDAR觀測誤差和聯合觀測誤差。相機觀測誤差使用三維點位反投影得到觀測誤差函數表達;LiDAR觀測誤差用來優化相機與LiDAR傳感器間的轉換標定矩陣;聯合觀測誤差連結雙目相機觀測三維點位與雷射雷達對應三維點位,使用LiDAR觀測糾正雙目相機觀測誤差。
  • 攝像頭tof新技術探索
    Camera發展了那麼多年,tof就是它其中的一個發展方向,下面我們來探索一下tof技術和應用。1. 何為TOF?ToF(time-of-flight,飛行時間)是測量發射光和反射光之間的飛行時間並根據光速來計算距離。
  • 極客專欄 | ROS(一):ROS 系統、程序包與節點的簡介
    樂聚Geek專欄會在每周五發布人工智慧領域及機器人學技術貼,為熱愛機器人技術的發燒友們提供乾貨!今天Geek專欄為大家帶來Roban機器人教程連載專欄第十期:ROS(一):ROS 系統、程序包與節點的簡介Roban機器人基於ROS(Robot Operation System)系統進行構建,以ROS平臺為基礎提供了Roban的應用API,因此有必要在介紹機器人的使用之前,先對ROS做一個簡單介紹。
  • 【泡泡圖靈智庫】基於RGBD的自主工業樓梯定位的履帶機器人
    和Zhong [11]結合了2D圖像的邊緣檢測和視差圖來檢測表面(tread plane)Wang[14]採用了戴在人帶上的RGBD相機來檢測樓梯和人行橫道Perez-Yus[10]將RGBD相機放置在人的胸部上以檢測樓梯圖2:從履帶機器人觀察到的工業樓梯的RGBD數據的3D視圖要理解這個問題,論文首先將坐標參考系進行了統一
  • 【泡泡圖靈智庫】利用平面和點線特徵的VIO
    泡泡圖靈智庫,帶你精讀機器人頂級會議文章標題:Leveraging Planar Regularities for Point Line Visual-Inertial Odometry作者:李鑫 Yijia He; etc.
  • ToF——飛行時間測距傳感器
    ,來換算被拍攝景物的距離,以產生深度信息,此外再結合傳統的相機拍攝,就能將物體的三維輪廓以不同顏色代表不同距離的地形圖方式呈現出來。傳統上是紅外測距,但紅外測距沒有計算時間差的能力,主要靠測光強,但打在黑色、白色等顏色物體上,由於材料本身的吸收度不同,也會影響測距效果,因此ST的FlightSense採用計算發射和返回的光子時間差,即計算飛行時間(ToF)方案。另外在集成度上,ST的方案是發射和接收都做在一起,而紅外測距往往是分立方案。
  • 利用飛行時間相機對玉米植物進行三維重建
    點擊藍色字免費訂閱,每天收到這樣的好資訊利用飛行時間相機眾所周知,對具有複雜結構的植物進行點雲配準和拼接是一項具有挑戰性的任務,然而研究人員發現,利用3D相機的優勢研究人員通過定量比較發現,用飛行時間(TOF)相機獲得點的數量與先前研究中的兩個雷射探測和測距系統(LIDAR)相比約大23倍。最後,通過比較幼苗位置的地面實況和點雲集群進行驗證重建。
  • 【泡泡圖靈智庫】簡併態敏感的成像聲吶SLAM
    476 篇文章,歡迎個人轉發朋友圈;其他機構或自媒體如需轉載,後臺留言申請授權        高頻成像聲吶近期被應用於水下機器人中,通過幀間的裡程計測量或是大的時間尺度上的閉環來進行定位。        一般成像聲吶和單目相機很相近,兩者都是提供3D環境中的2D圖像。在針孔模型下,每個像素代表著一條穿過攝像機中心和3D世界中點在相機中的成像位置的射線。該點的距離信息由於透視原理已經丟失了,但是方位角和俯仰角的信息保留了下來。相對地,成像聲吶生成的圖像則是,每個像素提供了一個距離和一個方位角。但是俯仰角在投影中丟失了,如圖中所示。
  • 【泡泡圖靈智庫】基於符號距離場函數子地圖的全局一致體素建圖系統
    泡泡圖靈智庫,帶你精讀機器人頂級會議文章標題:Voxgraph: Globally Consistent, Volumetric Mapping using Signed Distance Function Submaps作者:Victor Reijgwart, Alexander Millane, Helen Oleynikova, Roland
  • 論文速遞 | 採用飛行時間相機的瞬態成像及其應用
    介紹了採用飛行時間(time-of-flight, ToF)相機進行瞬態成像的三種數學模型,即相關函數模型、頻域模型和壓縮感知模型。瞬態圖像應用主要基於光傳輸解析和不同光路光線分離。討論了兩種應用,即對散射介質內的物體進行成像和恢復被拐角遮擋物體的形狀和紋理。
  • 【泡泡圖靈智庫】Rovins:魯棒全向視覺-慣導導航系統
    泡泡圖靈智庫,帶你精讀機器人頂級會議文章標題:ROVINS: Robust Omnidirectional  Visual Inertial Navigation System作者: Hochang Seok1 and Jongwoo Lim來源:IROS2020提取碼: 38ga編譯:Cirstan
  • 【泡泡圖靈智庫】信息驅動的直接RGB-D裡程計
    泡泡圖靈智庫,帶你精讀機器人頂級會議文章標題:Information-Driven Direct RGB-D Odometry作者:   Alejandro Fontán,Javier Civera etl.
  • 【泡泡圖靈智庫】在變化環境中魯棒的視覺定位的2實體RANSAC
    泡泡圖靈智庫,帶你精讀機器人頂級會議文章標題:2-Entity RANSAC for robust visual localization in changing environment作者:Yanmei Jiao, Yue Wang, Bo Fu, Xiaqing Ding, Qimeng Tan, Lei Chen and Rong Xiong
  • ToF時間飛行原理技術及應用介紹
    TOF(time-of-flight)時間飛行原理。
  • 【泡泡圖靈智庫】單目圖像和稀疏雷達數據深度估計
    泡泡圖靈智庫,帶你精讀機器人頂級會議文章標題:Depth Estimation from Monocular Images and Sparse Radar Data作者: Juan-Ting Lin1, Dengxin Dai1, and Luc Van Gool1機構:1Computer Vision Lab, ETH Zurich, Switzerland
  • 【泡泡圖靈智庫】邁向更好的泛化:無PoseNet聯合深度-位姿學習
    泡泡圖靈智庫,帶你精讀機器人頂級會議文章標題:Towards Better Generalization: Joint Depth-Pose Learning without PoseNet作者:Wang Zhao,Shaohui Liu,Yezhi Shu,Yong-Jin Liu來源:CVPR 2020編譯:陳聖倫
  • 如何檢測活人(四):TOF飛行時間測距傳感器
    之前我們已經介紹如何用PIR人體紅外、超聲波測距還有雷達微波模塊來檢測活人/物體接近,今天我們再介紹一種傳感器--飛行時間測距傳感器