王世程 于微波 楊宏韜
(長春工業大學電氣與電子工程學院 吉林 長春 130012)
三維數據可以直觀反映場景或目標的全貌信息。TOF深度相機具有結構緊湊、幀率高、對光照不敏感等優點,是一種效率較高的3D成像儀器,在三維視覺系統中應用廣泛[1]。由于TOF相機自身成像特點影響以及外界不確定環境因素的擾動,導致其獲得的原始深度信息附帶抖動、漂移、畸變等誤差[2],最重要的深度信息難以直接應用。所以,對TOF相機獲取的原始深度數據的誤差進行校正尤為必要。文獻[3]提出采用多采集頻率的方法,以提高TOF相機的深度數據質量;文獻[4]提出為每一個像素點計算相應的修正系數的方法對原始深度數據的誤差進行修正,但該方法由于計算復雜度高導致消耗時間較長;文獻[5]提出一種基于小孔成像原理的深度數據校正方法對原始深度數據的誤差進行修正,但該方法對非系統誤差校正具有一定的局限性;更多校正方法詳見文獻[6-8],但依然存在諸多缺點。本文提出一種建立極限學習機(ELM)空間配準模型的方法對TOF相機深度數據測量過程中隨機誤差導致的深度偏移和系統性誤差導致的深度數據高估進行了統一校正,并與基于BP算法[9]建立的空間配準模型和基于小孔成像原理校正的結果進行對比實驗。
TOF相機測量目標深度信息的原理是基于測量光在目標物體表面和傳感器之間的飛行時間來計算場景到探測器像元之間的深度信息[10]。由于TOF相機自身成像特點影響以及外界不確定環境因素的擾動,導致其獲取的原始深度信息存在誤差。這些誤差大致可分為非系統誤差和系統誤差。
引起非系統誤差的因素一般是使用環境的差異,其中有環境的噪聲、光的散射、運動模糊以及多光接收等[11]。激光是TOF相機接收的光源,由其本身提供,因此,在相同的曝光時間內,靠近相機的點容易產生過飽和現象,遠離相機的點容易造成曝光不足。同時,相機發出的部分激光通過多次反射才被相機收到的現象是由于激光的散射以及漫反射造成,并且與相機距離越近,散射現象越嚴重。而且相機工作時間不同,芯片的溫度發生變化等都可能引起深度上的漂移[2,12]。
系統誤差主要是由TOF相機自身硬件系統產生的實測深度距離高于實際距離的情況。相機的球面坐標系示意如圖1所示,同一物體平面Π1上有三個點A、B、C,TOF相機采集到的深度數據僅A點最接近實際深度值d。而TOF相機采集到的其他位置的深度數據如被測點B和C到相機O的直線距離分別為rB和rC。通常,這種直線距離rB或rC總是大于垂直實際距離d,即被測點B和C的深度信息被過高估計。同理,對于平面Π2上測得的類似位置的深度數據情況也是如此。

圖1 TOF相機的球面坐標系示意圖

(1)
由式(1)得出,當角度θ一定時,隨著真實距離的增加,偏差ΔD與D存在一種線性遞增的關系;當真實距離為D一定時,隨著角度θ的增加,偏差ΔD與角度θ存在一種非線性遞增的關系。
在實際測量中,當相機以光軸垂直物體平面的方式拍攝時,越靠近鏡頭的光軸中心對應的物體平面待測位置的點時,則越接近實際的垂直距離d。而遠離鏡頭的光軸中心對應的物體平面待測位置的點,即處在鏡頭視角邊緣處的點,就會被系統性地高估。這種高估對后續圖像的三維重建以及處理都會產生很大影響。
TOF相機非系統和系統誤差的疊加導致的數據偏移與真值之間存在某種非線性的規律,且很難用精確的數學模型進行描述,因此可以采用機器學習算法對其進行處理。本文使用建立極限學習機(ELM)空間配準模型的方法對TOF相機的深度誤差進行校正。
用TOF(tof640-20gm_850nm)深度相機垂直照射墻面,實驗設備環境圖如圖2所示。

圖2 實驗設備環境圖
為了降低隨機誤差的影響,開機40 min預熱后,在保持相機平面與墻面平行,且相機平面與墻面垂直距離的1.0~4.5 m范圍內的狀態下,每隔10 cm采集10幅相應位置的深度數據并過濾掉非0的像素后,求平均深度值zm,而該位置到墻的實際距離zc已知。以zm和zc為依據,確定采樣間隔為1 cm對相鄰深度數據幀各個對應像素位置的zm和zc的值分別在z軸方向進行三次樣條插值[13]處理。z軸方向樣條函數如下所示:
(2)
進而得到近似連續又滿足實際要求的離散空間照片的深度數據p(xm,ym,zm)和相應的實際垂直距離信息zc,為后續TOF相機深度數據ELM空間配準模型的建立做好數據準備。
極限學習機(ELM)的網絡結構[14]如圖3所示。設輸入層的輸入變量個數為n,隱含層的神經元個數為l,輸出層的m個神經元則對應m個輸出變量,w為輸入層與隱含層間的連接權值,β為隱含層與輸出層間的連接權值,b為隱含層神經元的閾值。

圖3 單隱層前饋神經網絡結構
將輸入層第i個神經元與隱含層第j個神經元之間的連接權值表示為wij,隱含層第j個神經元與輸出層第k個神經元間的連接權值表示為βjk,則:
(3)
假設訓練集有Q個樣本,其輸入矩陣X和輸出矩陣Y分別為:
(4)
設g(x)為隱含層神經元的激活函數,則網絡的輸出T為:
T=(t1,t2,…,tQ)m×Q
(5)
式中:j=1,2,…,Q,wi=[wi1,wi2,…,win],xj=[x1j,x2j,…,xnj]T,則式(5)可表示為:
Hβ=T′
(6)
式中:矩陣T′為T的轉置;H為隱含層輸出矩陣。
H(w1,w2,…,wl,b1,b2,…,bl,x1,x2,…,xQ)=
(7)
在訓練前,隨機選取輸入層和隱含層之間的連接權值w以及隱含層神經元的閾值b,并且訓練過程中它們保持不變。H+為H的廣義Moore-Penrose逆矩陣,利用它可以求得滿足零誤差逼近的β。
(8)
ELM算法的建模步驟如下:
1) 隨機產生神經網絡的輸入層和隱含層之間的連接權值w以及隱含層神經元的閾值b;
2) 計算隱含層輸出矩陣H;
3) 通過輸出矩陣H的廣義逆矩陣H+求得輸出連接權值β。
應用ELM算法建立TOF相機深度數據空間配準模型步驟如圖4所示。

圖4 ELM建模步驟
1) 以三次樣條插值函數得到的p(xm,ym,zm)和zc為依據,將TOF深度相機在各個空間位置上對應的像素深度值p(xm,ym,zm)和理想深度值zc作為訓練集,任意選取幾幅不同空間位置的深度圖像的原始深度數據p(xm,ym,zm)和對應的zc,并加入隨機噪聲信號作為測試集。
2) 構造ELM模型結構,確定輸入層的3個輸入變量p(xm,ym,zm),根據訓練樣本數確定隱含層神經元個數,確定1個輸出變量zc。通過訓練建立測量值p(xm,ym,zm)和實際深度值zc之間的非線性映射模型。對于建立成功的ELM空間配準模型,將對近似連續空間內所有像素的深度數據起到相應的校正作用。

本實驗使用ELM算法和BP算法分別構建的空間配準深度數據校正模型以及基于小孔成像原理校正的三種方法進行實驗并對比。實驗數據采集范圍為1.0~4.5 m,選取深度相機實際測量得到的2.0 m的深度數據圖像作為實驗展示。原始數據點云如圖5所示;基于ELM算法空間配準模型校正后數據點云如圖6所示;基于BP算法空間配準模型校正后數據點云如圖7所示;基于小孔成像原理校正后數據點云如圖8所示。直觀上來說,圖5中的原始數據點云很凌亂,而圖6-圖8中校正后的數據點云相對平整,說明三種方法對原始數據點云都有大幅度的校正,而各方法之間的校正結果并不明顯。故需要對各方法之間的校正結果做進一步比較分析。

圖5 原始數據點云圖

圖6 基于ELM算法空間配準模型校正后數據點云圖

圖7 基于BP算法空間配準模型校正后數據點云圖

圖8 基于小孔成像原理校正后數據點云圖
對上述三種方法的校正結果進行分析,校正結果驗證對比如圖9所示??梢钥闯?,基于ELM算法空間配準模型校正后的深度值曲線更加收斂于實際理想深度值曲線。

圖9 校正結果驗證對比圖
相對誤差對比如圖10所示??梢钥闯觯谛】壮上裨怼⒒贐P算法空間配準模型和基于ELM算法空間配準模型校正后的深度值相對誤差曲線在零值附近的振蕩幅度與原始相對誤差相比都大幅減小,說明三種方法對原始誤差都有較大幅度的改善,并且基于ELM算法空間配準模型校正后的深度值相對誤差曲線在零值附近的振蕩幅度更小。

圖10 相對誤差對比圖
對測量距離為2.0 m的一幅深度數據的各像素進行定量分析,三種方法對單幅深度數據處理效果對比結果如表1所示。其中:基于ELM算法空間配準模型校正后的平均絕對誤差是基于BP算法空間配準模型校正后的69%左右,是基于小孔成像原理校正的31%左右;均方根誤差是基于BP算法空間配準模型校正后的70%左右,是基于小孔成像原理校正的34%左右。ELM算法空間配準模型、BP算法空間配準模型和基于小孔成像原理校正的平均相對誤差分別為0.13%、0.18%和0.41%。而且基于ELM算法建立的空間配準模型對單幀各像素深度數據的處理速度比基于BP算法建立的空間配準模型速度更快,與基于小孔成像原理校正方法耗時相當。因此,基于ELM算法建立的TOF相機深度數據空間配準模型校正效果更好。

表1 三種方法對單幅深度數據處理效果對比列表
對測量范圍為1.0~4.5 m的采樣間隔為1 cm的351幀深度數據圖像進行分析。圖11顯示了深度空間方向對應空間位置原始數據的平均絕對誤差與三種方法校正結果的平均絕對誤差。

圖11 平均絕對誤差對比圖
由圖11的局部放大圖可以看出,經三種方法校正后的深度值的平均絕對誤差值與原始誤差相比都大幅減小,說明這三種方法對原始誤差都有較大幅度的改善。從圖11全局來看,基于ELM算法校正后的深度值的平均絕對誤差值曲線在零值附近的振蕩幅度更小。
三種方法處理各深度空間位置對應深度數據的平均絕對誤差如表2所示。從表中數據很容易得出,ELM算法空間配準模型校正后的平均絕對誤差是基于BP算法空間配準模型校正后的71%左右,是基于小孔成像校正的33%左右。所以,基于ELM算法空間配準模型比基于BP算法空間配準模型和基于小孔成像原理校正方法對實驗范圍的深度數據校正的總體效果都好,其總體結果更接近實際理想深度值。

表2 平均絕對誤差對比列表 m
本文提出的基于極限學習機(ELM)空間配準模型的方法對TOF相機深度數據測量過程中非系統性和系統性誤差的疊加導致的深度數據偏移進行了統一校正,并與基于BP算法建立的空間配準模型和基于小孔成像原理校正的結果進行對比,分析得出ELM算法空間配準模型校正的平均絕對誤差是基于BP算法空間配準模型校正的71%左右,是基于小孔成像原理校正的33%左右。實驗結果表明,采用ELM算法建立的ELM空間配準校正模型大幅減小了TOF相機測得的實驗范圍內的深度數據幀的誤差?;贓LM算法建立的空間配準模型比基于BP算法建立的空間配準模型和基于小孔成像原理校正方法對實驗范圍的深度數據幀校正的總體效果都好,能更好地復原真實場景中的深度數據。