TOF--TOF相機技術原理深入解析與分享
TOF 介紹
TOF, 即 time of flight , 直譯過來就是飛行時間。 TOF 的原理與他的名稱對應,即,測量光在空間中飛行的時間,通過換算成距離,就可以測得攝像頭與物體的距離。通常, TOF 攝像頭組成有一個發射模組,一個接收模組。發射模組可以是 LED 、鐳射等發射元件,它將發射例如 850nm 的調製紅外光,物體經過反射後,由接收模組接收到反射的紅外光。由於發射和接收的都是調製波, TOF 攝像頭可以計算髮射和接收的相位差,通過換算得到深度值,即攝像頭與物體的深度距離。
TOF- 單點測距原理
一個簡易的單點 TOF 系統組成如下圖:
它由一個發射二極體、接收二極體、調製模組,解調模組、處理器幾部分組成。調製模組負責調製發射的紅外調變波,通過發射二極體將訊號發射出去;解調模組負責對接受二極體接收到的反射紅外波解調;處理器中包含 ADC 和資料處理, ADC 是為了將模擬訊號轉化為數字訊號,具體是什麼模擬訊號下文將會詳細講述;資料處理為了將測得的相位差換算成深度資訊。
TOF- 多點測距原理
目前,一個完整的 TOF 系統組成如下圖:
它和傳統 RGB 攝像頭的組成結構基本相似。
它與點單的 TOF 系統比較區別在於,測量範圍不是一個點,它是一個面,因此,接收模組變成了點陣的光敏感測器,通常使用的是 CMOS 感測器;在感測器前面、和發射二極體前面多了光學鏡片,一個是為了紅外波的輻射範圍、一個是為了濾除 850nm 以外的光線,就是說,要保證進入感測器的光線只是 850nm 的,這樣才能保證測量的準確度。
因為相位差即代表物體的與攝像頭的距離,即深度,由於每個點的相位差不同,所以才能組成有關物體整幅深度影象。
TOF 感測器工作原理
目前, TOF 感測器工作原理中主要有兩種,基於脈衝波( paulse base )的技術原理、基於連
續調製波( CW )的技術原理。
在這之前,需要知道解調模組是如何工作的,如何讀取感光感測器上面的電荷量。以單點畫素的讀取測量為例:
整個讀取測量過程主要分為 4 個步驟:
分別是, Reset;Integration;Readout;Deadtime
Reset: 在上圖中看到, Rst 開關,在測量電荷量之前,需要將 Rst 開關閉合,讓電容 CA 與 CB 充電,充好點之後斷開。
Integration : Integration period ,DMIX0 和 DMIX1 是由解調模組控制的開關,什麼時候開關,與調製和解調的頻率有關。當光子被感光元件 ( 藍色圓圈箭頭 ) 接收時,並且當 DMIX0 閉合時,這時候,充好電的電容 CA 就會和感光元件釋放出來的電子中和,電容 CA 放電,直到中和完畢,最後得到的電容電平代表著接受光子數量和時間的電平。
Readout : 中和完畢之後, Address Decode 開關開啟,讀取電容上的電平。
Deadtime : 死區時間
從以上四個環節來看, Integration Time 是最重要的。
關於,為什麼還會有 DMIX1 ,下面將會解釋到。
基於脈衝波( paulse base )的技術原理
發射模組發射矩形脈衝波,物體發射後具有相位差的脈衝波,測量相位差的方法如下圖:
發射脈衝可以設定一個頻率 f ,並且開啟兩個反向的視窗, DMIX0 與 DMIX1 用來接收光子的數量, 一個視窗的頻率和相位是與發射脈衝是一致的,另外一個是與 DMIX1 反向,並且相位差為 180 。
在兩個視窗開啟的時候,也就是高電平的時候,並且這時候存在物體反射過來的脈衝波,這時候兩個不同視窗在各自的時間內收集電荷。在圖上已經用紅色上色表示。假設 DMIX0 收集到的電荷量為 Q0 , DMIX1 收集到的電荷量為 Q1 。 Q0 與 Q1 相加的這部分就是有反射脈衝時間內收集的電荷量。
td 表示相位差存在的時間,為了計算 td ,可以通過計算 Q1 在反射脈衝所佔的時間,為了計算 Q1 這部分的時間,我們可以讀取 DMIX0 與 DMIX1 視窗上的電平,也就是 Q0 加 Q1 與 Q1 的比值,再乘上發射電平高電平的時間。因此,可以通過式子計算相位差 d :
注:以上的整個過程稱為 IntegrationTime
基於連續調製波( CW )的技術原理
連續調製波在脈衝波的基礎上而來,連續調製波通常是連續正弦波調製,與脈衝不同的是,連續調製波開啟了 4 個視窗分別是 C1-C4. 如下圖所示。
由於連續調製波通常是連續正弦波調製,可以將調製波看成是正弦波如下圖所示。
連續正弦波調製測量方法,推導過程如下。序號 1-9 對應下圖的公式 1-8 。
1. 假設發射的正弦訊號 s(t) 振幅是 a ,調製頻率是 f
2. 經過時延 △ t 後接收到的訊號為接收 r(t) ,衰減後的振幅為 A ,強度偏移(由環境光引起)為 B
3. 四個取樣時間間隔相等,均為 T/4
4. 根據上述取樣時間可以列出四個方程組
5. 從而可以計算出發射和接收的正弦訊號的相位偏移 △ φ
6. 據此可以根據( 6 )中公式計算物體和深度相機的距離 d
7. 接收訊號的衰減後的振幅 A 的計算結果
8. 接收訊號強度偏移 B 的計算結果,反映了環境光
更加詳細的推導過程如下:
其實兩種基於不同原理的計算相位的方法差不多,連續調製波相對複雜。關於如何推到,更多的是數學的部分,最後計算 d 公式中,其實表示的含義是一樣的,只是符號不同罷了。
兩種基於不同測量方法的優缺點分析
基於脈衝波( paulse base )的技術原理
優點:
1. 因為不用計算振幅和環境光,測量方法簡單,響應較快,可以提高相機的幀率
缺點:
1. 由於沒有抵消環境光對測量的影響,所以將會受到環境光的影響
2. 相對於 CW 的方案,測量精度較低,但也不會低到離譜
基於連續調製波( CW )的技術原理
優點:
1. 相位偏移(公式 5 )中的 (r2-r0) 和 (r1-r3) 相對於脈衝除錯法消除了由於測量器件或者環境光引起的固定偏差。連續調製波使用多個測量視窗, (Q 3 -Q 4 ) 及 (Q 1 -Q 2 ) 可以減掉測量中的共同成分(復位電壓,環境光,電容增益等)及其中的偏差。
2. 可以根據接收訊號的振幅 A 和強度偏移 B 來間接的估算深度測量結果的精確程度(方差)。
3. 不要求光源必須是短時高強度脈衝,可以採用不同型別的光源,運用不同的調製方法
缺點:
1. 需要多次取樣,測量時間較長,限制了相機的幀率
2. 因為採集和計算量大,導致在相同成本的產品中,深度解析度降低
參考文獻:
1. https://blog.csdn.net/electech6/article/details/78349107
2. TI documents