3D視覺技術是透過3D攝像頭能夠採集視野內空間每個點位的三維座標資訊,透過演算法復原智慧獲取三維立體成像,本文我們介紹的是3D機器視覺中使用的四種技術。我們可以進一步將這些技術分為兩個領域:基於時域的和基於空間域的。
• 鐳射三角測量——空間域
• 鐳射三角測量——空間域
• 結構光——空間域
• 飛行時間——時域
這些系統生成的三維資訊被稱為“點雲”。雖然點雲比二維提供更好的細節和對場景的理解,但它並非絕對可靠,其中仍然存在挑戰,例如環境光、遮擋、視野、障礙物、陰影以及拍攝非常暗和非常閃亮的物體。3D視覺對機器視覺來說是一個巨大的福音,然而,它並不是萬能的。
現在讓我們從相對較高的層次上看一下我們已經確定的今天在3D視覺系統中使用的四種不同方法。
鐳射三角測量
原理
· 鐳射線三角測量
· 場景中物體上鐳射線的位移與物體高度成正比
特徵
• 鐳射光源,對環境穩定
• 簡單的測量原理
• 可定製化程度高
• 適合輸送帶應用
• 沒有顏色資訊
線鐳射器是一種可以與相機一起使用的主動光源。這種眾所周知的成熟技術簡單、成本低、速度快、精度高。鐳射三角測量是最流行和最常用的3D成像技術之一,廣泛應用於各種應用。
鐳射3D視覺示意圖
鐳射三角測量或鐳射輪廓分析技術涉及透過窄鐳射束移動目標物體。相機與鐳射發射器成一定角度佈置,並記錄反射光束穿過物體時的情況。該過程發生多次然後生成物件的複合3D點雲。使用鐳射器的一個特殊優勢是它在環境光作為噪聲源的情況下的魯棒性,因為使用和記錄的波長與環境白光的波長相距甚遠。
飛行時間(TOF)
原理
• 測量發射光和反射響應的時間
• 場景中物體上鐳射線的位移與物體高度成正比
關鍵考慮因素
• 將時間用作“基線”
• 可能緊湊,無遮擋影響
• 大測量範圍(數百米)
• 非常快(實時影片速率)
• 對反射敏感
• 絕對精度有限
• 複雜的製造
• 通常能達到亞高畫質解析度
採用時域而非空間域方法進行3D成像,飛行時間鐳射掃描器(有時稱為LIDAR系統或鐳射雷達)可有效去除基線。我們可以透過測量發射的鐳射和從物體表面反射的鐳射之間的時間延遲來獲得精確的距離測量值。
3D飛行時間(TOF)示意圖
飛行時間系統主要使用了三種不同的技術:
1.脈衝鐳射系統
測量發射鐳射脈衝和接收脈衝之間的時間延遲。因為時間與距離成正比,所以相對位置是確定的。考慮到光速,我們可以想象“時間線”將會很短,與較短的基線類似,精度(或深度解析度)會降低。
2.基於相位的系統
透過在發射的鐳射束上調製正弦波並測量裝置發射的波與物體反射的波之間的相位差來工作。與基於脈衝的系統相比,在更長的時間內積分通常會提供更好的精度。缺點是測量範圍將會縮小,對環境光(如陽光和反射)的敏感性會增加。由於光線可能沿多條路徑到達物體,因此測量距離可能比實際距離長。
3.飛行時間系統
相機代表了一種用於實時捕獲3D範圍影象的相對較新的技術。這些相機速度非常快,可以捕獲整個影象而不僅僅是一個點,並且通常以影片頻率甚至更高的頻率來提供強度和範圍資料。
近紅外(NIR)光用於照亮場景,從場景反射回感測器的光的相位由感測器測量,其中每個畫素都包含一個片上相關性迴路。相移與行進的距離成正比,使我們能夠測量從影象中的每個畫素到場景中相應點的距離。類似地,每個畫素都包含基於脈衝的定時電路,以找到發射鐳射脈衝和接收脈衝之間的時間延遲。
TOF相機制造起來很複雜,而且通常空間解析度較低VGA解析度被認為是高階的了。設計的複雜性、光的物理特性以及由於測量原理本身的原因,TOF相機在10m的範圍內的理論精度低於結構光系統。10m以上時TOF系統開始變得更好。TOF系統已經在汽車測距和基於視覺的安全系統中進行了大量評估和一些部署。
使用時間方式進行測量的好處之一是可以進行畫素級處理。想象一個數據區域,它不是像之前討論的那樣分散在一個空間鄰域上,而是隨著時間的推移記錄在同一個畫素上。所有計算都在畫素級別執行,避免了空間鄰域分析,從而提高了精度並避免了塊噪聲和空間解析度的損失。
TOF系統在某些情況下具有一些優勢,例如當從相機到物體的距離更長時,但該技術目前仍然相當昂貴,而且它沒有顏色資料。
結構光
原理
• 投影圖案
• 透過場景中物體的變形/位移計算出深度資訊
關鍵考慮因素
• 表面不需要紋理
• 單一圖案-快速處理
• 基於區域的對應
• 塊平均
結構光技術與鐳射三角測量技術有一些相似之處,但要複雜得多,提供的資訊要多得多,並能生成更詳細的點雲。這是一種“全視野”方法,因為它提供了被拍攝物件的完整3D影象,而不僅僅是一條橫截面線。
結構光系統採用高強度白光投影儀和相機進行成像。它們以固定的方向相互排列,投影儀相與相機成一定角度,相機與被拍攝場景成直角。
結構光以已知的光圖案投射到物體表面,該圖案表現為遍歷物體的、寬度不同的高對比度光條紋影象。
每條條紋都被稱為“邊緣”,由數千條這樣的條紋組成的網格圖案照射在物體的表面上。如前所述,投影儀與物體成一定角度,相機垂直於物體。當條紋圖案照射到物體上時,物體的表面畸變被捕獲,生產一個非常詳細的點雲。並非所有結構光系統都使用條紋圖案,該方法也可以使用點和其他不同的圖案。
在單個投影圖案的方案中,結構光系統類似於主動式雙目立體技術(在空間區域/鄰域上操作),但沒有第二個攝像頭。但是,由於圖案是結構化的而不是隨機的,因此資料提取通常較少佔用處理器,並且結構化圖案避免了對應問題。不利的一面是,空間結構光的單個投影方式在塊平均、解析度和準確性方面確實面臨與雙目立體視覺相同的挑戰。結構光系統通常也有與鐳射掃描器相同的問題,涉及鏡面反射,光亮表面或非常暗和光吸收性的表面。這些表面通常會導致資料丟失和測量錯誤。我們可以透過在方程中引入時域,結合空間和時域(如在時間編碼結構光中)來克服塊平均、空間解析度損失和精度問題。
時間編碼結構光
原理
• 投影條紋
• 透過場景中物體的畸變/位移提供深度資訊
• 測量發射光和反射響應的時間
• Zivid應用了這種技術的一種變體
關鍵考慮因素
• 時間編碼投影圖案,逐個畫素處理
• 無需分析空間鄰域
• 消除塊平均
• 不需要表面紋理
• 空間和時間”的最佳組合
• 利用時間作為“基線”
• 可能是最準確的3D技術,基本原理決定質量
• 經常被誤認為很慢,但像Zivid相機這樣的現代系統越來越快
時間編碼結構光系統在設計上類似於常規結構光系統,具有與場景成一定角度的高強度投影儀,並且相機正對場景。它們利用空間域和時域技術來提供非常詳細的點雲,還可以提供RGB顏色資訊。Zivid3D彩色相機使用的就是時間編碼結構光技術。
與其他技術相比,該技術的精確度和準確度最高可提高100倍。正是由於這個原因,許多人認為時間編碼結構光是3D機器視覺最有吸引力的方法和未來。
簡單的結構光方法將單一圖案投射到物體上。時間編碼結構光將一系列獨特的圖案投射到物體上,相機為整個編碼系列拍攝多張影象。在不同時間觀察每個畫素的強度,並用於建立相機和投影儀中各個畫素之間的對應關係。由於使用了時間資訊,因此所有計算都在畫素級別執行,避免了對空間鄰域的分析。這消除了任何塊噪聲或空間解析度的損失。
盈泰德科技(深圳)有限公司有著多年的機器視覺行業經驗,在機器視覺的應用領域上有著不少成功的案例和解決方案。盈泰德科技一直以來致力於機器視覺產品的生產、開發、應用以及銷售,為客戶提供整體機器視覺解決方案及服務,把機器視覺技術應用到智慧生產中。