增強(qiáng)視覺傳感器功能:3D圖像拼接算法幫助擴(kuò)大視場
簡介
本文引用地址:http://m.butianyuan.cn/article/202501/465999.htm飛行時間(TOF)攝像頭作為出色的測距成像系統(tǒng)脫穎而出,它利用TOF技術(shù)來確定攝像頭與圖像中每個點之間的距離。通過測量激光器或LED發(fā)射的人造光信號的往返時間,便可計算出距離。TOF攝像頭提供精確的深度信息,因此在準(zhǔn)確距離測量和3D可視化至關(guān)重要的應(yīng)用中,比如在機(jī)器人和工業(yè)技術(shù)應(yīng)用中,該攝像頭是極具價值的工具,例如能夠在270°的視場(FOV)范圍執(zhí)行碰撞檢測和人體檢測,從而提高安全性。
ADTF3175 TOF傳感器的校準(zhǔn)FOV可達(dá)到75°。然而,當(dāng)應(yīng)用的FOV超出該區(qū)域時,挑戰(zhàn)出現(xiàn),此時就需要多個傳感器。如果通過集成各個傳感器的數(shù)據(jù)來為整個視場提供全面的分析,這可能會造成困難。一個潛在解決方案是讓傳感器對部分FOV執(zhí)行算法,然后將輸出傳輸至主機(jī)以進(jìn)行整理。然而,該方法面臨區(qū)域重疊、死區(qū)和通信延遲等問題,導(dǎo)致其成為很難有效解決的復(fù)雜問題。
另一種方法是將從所有傳感器捕獲的數(shù)據(jù)拼接成單個圖像,隨后在拼接的圖像上應(yīng)用檢測算法。該過程可卸載至單獨的主機(jī)處理器,從而減輕傳感器單元的計算負(fù)荷,留出空間執(zhí)行高級分析和其他處理選項。然而,值得注意的是,傳統(tǒng)圖像拼接算法本身非常復(fù)雜,會消耗主機(jī)處理器相當(dāng)一部分的計算能力。此外,由于隱私原因,在許多應(yīng)用中,數(shù)據(jù)無法發(fā)送到云端進(jìn)行拼接。
ADI公司的算法解決方案可使用深度數(shù)據(jù)的點云投影,拼接來自不同傳感器的深度和紅外圖像。這包括使用攝像頭外部位置轉(zhuǎn)換捕獲到的數(shù)據(jù)并將其投影回到2D空間,從而生成單張連續(xù)顯示的圖像。
該方法能夠大幅減少計算量,有助于在邊緣達(dá)到實時運行的速度,并確保主機(jī)處理器的計算能力仍可用于其他高級分析。
圖1 深度拼接算法
解決方案描述
ADI的3D TOF解決方案分4個階段運行(參見圖1):
1.預(yù)處理紅外和深度數(shù)據(jù):紅外和深度數(shù)據(jù)的時間同步及預(yù)處理。
2.將深度數(shù)據(jù)投影到3D點云:利用攝像頭內(nèi)參將深度數(shù)據(jù)投影到3D點云。
3.轉(zhuǎn)換和合并點:使用攝像頭的外部位置對點云進(jìn)行坐標(biāo)轉(zhuǎn)換,并合并重疊區(qū)域。
4.將點云投影到2D圖像:采用圓柱投影將點云投影回到2D圖像。
系統(tǒng)與算法的挑戰(zhàn)及解決方案
主機(jī)接收深度和紅外幀
主機(jī)通過USB等高速連接方式連接到多個TOF傳感器。主機(jī)收集深度和紅外幀,并將其存儲在隊列中。
同步深度和紅外數(shù)據(jù)
主機(jī)接收到的來自每個傳感器的深度和紅外幀在不同時間實例被捕獲。為了避免因物體移動而造成的時間不匹配,所有傳感器的輸入需要同步到同一時間實例。使用時間同步器模塊,該模塊根據(jù)來自隊列的時間戳匹配傳入的幀。
投影到點云
通過使用每個傳感器的同步深度數(shù)據(jù),在主機(jī)上生成點云。然后,每個點云根據(jù)其各自在真實場景中的攝像頭位置(參見圖2)進(jìn)行轉(zhuǎn)換(平移和旋轉(zhuǎn))。接著,這些轉(zhuǎn)換后的點云合并形成單個連續(xù)點云,覆蓋傳感器的組合FOV(參見圖3)。
圖2 相機(jī)外參
圖3 合并的點云
3D到2D投影
通過使用圓柱投影算法,也稱為前視圖投影,F(xiàn)OV的組合點云投影到2D畫布上(參見圖4)。換言之,該算法將合并點云的每個點投影到2D平面的像素上,從而生成單一連續(xù)全景圖,覆蓋所有傳感器的組合視場。這會產(chǎn)生兩個2D拼接圖像:一個用于拼接的紅外圖像,另一個用于投影到2D平面的拼接深度圖像。
圖4 圓柱投影算法
提高投影質(zhì)量
將3D組合點云投影到2D圖像仍無法生成高質(zhì)量圖像。圖像存在失真和噪點。這不僅影響視覺質(zhì)量,對投影上運行的任何算法也會產(chǎn)生不利影響。以下章節(jié)記錄了3個關(guān)鍵問題(參見圖5)及其解決方法。
圖5 2D投影問題
投影無效深度區(qū)域
對于超出傳感器工作范圍(8000 mm)的點,ADTF3175的深度數(shù)據(jù)的無效深度值為0 mm。這會導(dǎo)致深度圖像上出現(xiàn)大片空白區(qū)域,并形成不完整的點云。將深度值8000 mm(攝像頭支持的最大深度)分配給深度圖像上的所有無效點,并利用該值生成點云。這確保了點云沒有間隙。
填充未映射的像素
將3D點云投影到2D平面時,2D圖像中存在未映射/未填充的區(qū)域。許多點云(3D)像素映射至同一個2D像素,因此多個2D像素仍是空白。這就會產(chǎn)生如圖6所示的拉伸圖案。為解決該問題,我們使用3 × 3過濾器,用其相鄰的8個具備有效值的像素的平均紅外/深度值來填充未映射的像素。這樣便可獲得更完整的輸出圖像,并消除偽影(參見圖6)。
重疊點產(chǎn)生的噪點
得益于圓柱投影算法,重疊區(qū)域上的許多點最終在2D投影輸出上獲得相同的靜止坐標(biāo)。由于背景像素與前景像素重疊,因此會產(chǎn)生噪點。為解決該問題,我們將每個點的徑向距離與現(xiàn)有點進(jìn)行比較,僅當(dāng)與攝像頭原點的距離小于現(xiàn)有點時,才會替換該點。這有助于僅保留前景點,并提高投影質(zhì)量(參見圖7)。
圖6 填充未映射的像素
圖7 重疊噪點修復(fù)
結(jié)論
該算法能夠以小于5°的重疊度拼接來自不同攝像頭的圖像,相比之下,傳統(tǒng)關(guān)鍵點匹配算法至少需要20°的重疊度。該方法所需的計算量極少,因此非常適用于邊緣系統(tǒng)。由于沒有圖像失真,深度數(shù)據(jù)在拼接后仍具有完整性。該解決方案進(jìn)一步支持了ADTF3175傳感器的模塊化實現(xiàn),以極小的損失獲得所需FOV。
FOV的擴(kuò)展不限于水平維度,相同技術(shù)也可用于在垂直方向上擴(kuò)展視場,從而獲得真正的球形視覺。該解決方案可以在連接了4個傳感器的Arm? V8 6核邊緣CPU上以10 fps的速度運行,提供275°的FOV。當(dāng)僅使用兩個傳感器時,幀速率可達(dá)30 fps。
該方法的主要優(yōu)勢之一是實現(xiàn)了巨大的計算效率增益,基本計算效率的增益超過3倍(參見表1)。
圖8和圖9展示了使用該解決方案獲得的一些結(jié)果。
表1 計算復(fù)雜性比較:針對512 × 512 QMP輸入,傳統(tǒng)算法與本文所提算法比較
算法 | 平均浮點運算 |
傳統(tǒng)圖像拼接算法 | 8.57億 |
本文提出的PCL深度拼接算法 | 2.6億(減少3.29倍) |
圖8 拼接的紅外數(shù)據(jù)提供210°的FOV
參考文獻(xiàn)
“ADI公司的3DToF ADTF31xx”。GitHub, Inc.
“ADI公司3DToF地面探測器”。GitHub, Inc.
“ ADI公司3DToF圖像拼接”。GitHub, Inc.
“ ADI公司3DToF安全氣泡探測器”。GitHub, Inc.
“ ADI公司3D ToF軟件套件”。GitHub, Inc.
He、Yingshen、Ge Li、Yiting Shao、Jing Wang、Yueru Chen和Shan Liu.“通過球面投影的點云壓縮框架”。2020年IEEE視覺通信和圖像處理國際會議,2020年。
工業(yè)視覺技術(shù)。ADI公司
Topiwala、Anirudh。“點云的球面投影”。Towards Data Science,2020年3月。
圖9 具有278° FoV的拼接紅外和深度圖像
作者簡介
Rajesh Mahapatra擁有超過30年的工作經(jīng)驗,目前就職于班加羅爾ADI公司的軟件和安全部門。他熱衷于使用基于ADI硬件解決方案的算法和嵌入式軟件來幫助客戶解決問題。他與非政府組織密切合作,植樹造林,并為城市里經(jīng)濟(jì)困難的人群提供培訓(xùn),幫助他們謀生。他在系統(tǒng)、圖像處理和計算機(jī)視覺領(lǐng)域擁有5項專利。
Anil Sripadarao于2007年加入ADI公司,目前就職于班加羅爾ADI公司的軟件和安全部門。他感興趣的領(lǐng)域包括音頻/視頻編解碼器、AI/ML、計算機(jī)視覺算法和機(jī)器人技術(shù)。他在圖像處理和計算機(jī)視覺領(lǐng)域擁有6項專利。
Swastik Mahapatra是軟件和安全部門的高級機(jī)器學(xué)習(xí)工程師。他于2018年加入ADI公司,致力于開發(fā)各種計算機(jī)視覺技術(shù)和機(jī)器人安全解決方案。他在深度學(xué)習(xí)邊緣推理框架開發(fā)、機(jī)器人應(yīng)用開發(fā)方面擁有豐富的經(jīng)驗,并精通卷積神經(jīng)網(wǎng)絡(luò)。他的專業(yè)領(lǐng)域包括計算機(jī)視覺、3D視覺、機(jī)器學(xué)習(xí)和機(jī)器人的算法開發(fā)。
評論