0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

3D結構光的技術原理與應用場景

新機器視覺 ? 來源:芯視tof ,3Dtof ? 作者:芯視tof ,3Dtof ? 2022-11-16 14:29 ? 次閱讀

目前主流的深度探測技術是結構光,TOF,和雙目。具體的百度就有很詳細的信息。

而結構光也有雙目結構光和散斑結構光等,沒錯,Iphone X 的3D深度相機就用 散斑結構光。

我用結構光模塊做過實驗,主要考慮有效工作距離,精度和視場角是否滿足需求。

本文對結構光(Structured Light)技術做一個比較全面的簡介。

結構光三維成像的硬件主要由相機和投射器組成,結構光就是通過投射器投射到被測物體表面的主動結構信息,如激光條紋、格雷碼、正弦條紋等;然后,通過單個或多個相機拍攝被測表面即得結構光圖像;最后,基于三角測量原理經過圖像三維解析計算從而實現三維重建。

利用紅外相機像素點信息求解被測物體深度信息需要經過:機構光解碼、像素、空間坐標轉換;為了滿足獲取深度信息的實時性,結構光模塊內部一般會有一枚專用的處理芯片,用于計算并輸出實時信息。

3D結構光目前的使用場景為:

第一,物體信息分割與識別,3D人臉識別,用于安全驗證、金融支付等場景;

第二,體感手勢識別,為智能終端提供新的交互方式;

第三,三維場景重建,利用深度相機生成的深度信息(點云數據),結合RGB彩色圖像信息,可完成對三維場景的還原,可用于測距,虛擬裝修等場景。

基于結構光的三維成像,實際上是三維參數的測量與重現,主要是區(qū)別于純粹的像雙目立體視覺之類的被動三維測量技術,因而被稱為主動三維測量。因為他需要主動去投射結構光到被測物體上,通過結構光的變形(或者飛行時間等)來確定被測物的尺寸參數,因此才叫做主動三維測量,嗯,相當主動。

首先,結構光的類型就分為很多種,既然是結構光,當然是將光結構化,簡單的結構化包括點結構光,線結構光以及簡單的面結構光等。復雜一點的結構化就上升到光學圖案的編碼了。結構光投射到待測物表面后被待測物的高度調制,被調制的結構光經攝像系統(tǒng)采集,傳送至計算機內分析計算后可得出被測物的三維面形數據。其中調制方式可分為時間調制與空間調制兩大類。時間調制方法中最常用的是飛行時間法,該方法記錄了光脈沖在空間的飛行時間,通過飛行時間解算待測物的面形信息;空間調制方法為結構光場的相位、光強等性質被待測物的高度調制后都會產生變化,根據讀取這些性質的變化就可得出待測物的面形信息。

下面以一種應用廣泛的光柵投影技術(條紋投影技術)為例來闡述其具體原理。條紋投影技術實際上屬于廣義上的面結構光。其主要原理如下圖所示, 即通過計算機編程產生正弦條紋,將該正弦條紋通過投影設備投影至被測物,利用CCD相機拍攝條紋受物體調制的彎曲程度,解調該彎曲條紋得到相位,再將相位轉化為全場的高度。當然其中至關重要的一點就是系統(tǒng)的標定,包括系統(tǒng)幾何參數的標定和CCD相機以及投影設備的內部參數標定,否則很可能產生誤差或者誤差耦合。因為系統(tǒng)外部參數不標定則不可能由相位計算出正確的高度信息。

總體而言,結構光主要可以分為兩類

1. 線掃描結構光;

2. 面陣結構光。

一般說結構光的時候都指代第二類,這里也主要關注面陣結構光。

1. 線掃描結構光

線掃描結構光較之面陣結構光較為簡單,精度也比較高,在工業(yè)中廣泛用于物體體積測量、三維成像等領域。

1.1 數學基礎

先來看一個簡單的二維下的情況:

通過上圖可以看到線掃描結構光裝置的一個基本結構。主動光源L緩慢掃過待測物體,在此過程中,相機記錄對應的掃描過程,最后,依據相機和光源在該過程中的相對位姿和相機內參等參數,就可以重建出待測物體的三維結構。

由上圖可知:

可得

其中, α 為投影裝置的朝向。 β 則需要通過對應像素的像素坐標 μ和焦距f來確定。最終可知P點的三維坐標為:

將之推廣至三維空間中:

由小孔成像模型有

由三角測量原理又有

兩式聯立則有

最后可得

可以看到,三維空間中的情形和之前的二維空間類似,作為俯仰角的 γ并沒有出現在公式中。

1.2 應用

如上圖,相機與投影器等相對位姿都經過了精確的校正,并且選取了測量臺上的一角作為原點建立物方坐標系。因此,激光投影器所投射的線激光在物方坐標系中可以通過一個平面方程來描述:

而相機光心的位姿通過幾何校正也已知,可以通過找到線激光在圖像中的對應像素重建出光心與像素的射線,射線和激光平面的交點即為待求的三維空間點。由小孔成像模型有

代入平面方程中,可得

2. 面陣結構光

面陣結構光大致可以分為兩類:隨機結構光和編碼結構光。隨機結構光較為簡單,也更加常用。通過投影器向被測空間中投射亮度不均和隨機分布的點狀結構光,通過雙目相機成像,所得的雙目影像經過極線校正后再進行雙目稠密匹配,即可重建出對應的深度圖。如下圖為某種面陣的紅外結構光。

隨機結構光這里就不再說了,因為和普通雙目算法是很相似的。一些額外的考慮就是是否給相機加裝濾光片、光斑的密度要到什么程度等硬件和光學的問題了。這里主要討論編碼結構光。編碼結構光可以分為兩類:

1. 時序編碼;

2. 空間編碼。

2.1 時序編碼

如上圖,時序編碼結構光即為在一定時間范圍內,通過投影器向被測空間投射一系列明暗不同的結構光,每次投影都通過相機進行成像。假設共有n張影像,并設被陰影覆蓋的部分編碼值為1,未被覆蓋的部分編碼值為0。此時,每個像素都對應唯一一個長度為n的二進制編碼,雙目影像搜索匹配像素的問題就變成了查找具有相同編碼值的像素。如果雙目圖像已經進行了極線校正,那么所投影的結構光只需要在x方向上不具有重復性即可。

如上圖中,紅框內的像素的編碼為0110,轉化為十進制則為5。此時,只需要在右圖相同行上檢索編碼值為5的像素即可。上圖編碼方式稱為二進制碼(binary code),每段區(qū)域不斷的進行二分下去直至投影的編碼寬度等于相機的像素寬度即可。對于寬度為1024的圖像,最少需要10張影像來進行編碼。

Binary Code 的一種改進為Gray Code. Gray Code比Binary Code具有更好的魯棒性,它使得相鄰兩個像素相差1bit。Gray Code的詳細介紹和其與Binary Code之間的轉換可以參考wikipedia。

注意觀察即可看到gray code和binary code在前幾行像素上的不同

轉換算法:

自然,除了使用二進制的0-1編碼之外,還可以使用更多顏色層級的編碼。假設使用了M種不同的灰度層級進行編碼,則拍攝N張影像可以得到包含 個條帶的影響。如下圖中M = 3, N = 3時圖中有27條條帶。

由以上的介紹也可以得出時序編碼結構光的優(yōu)缺點:優(yōu)點:

·高精度;

缺點:

·只適用于靜態(tài)場景;

·需要拍攝大量影像。

2.2 空間編碼

為滿足動態(tài)場景的需要,可以采用空間編碼結構光。前面談到了隨機結構光,就是不帶編碼信息,投影隨機紋理,而這里討論的空間編碼結構光特指向被測空間中投影經過數學編碼的、一定范圍內的光斑不具備重復性的結構光。由此,某個點的編碼值可以通過其臨域獲得。其中,包含一個完整的空間編碼的像素數量(窗口大?。┚蜎Q定了重建的精度。

2.2.1 德布魯因序列 (De Bruijn) 序列

德布魯因序列(維基百科)B(k, n) 表示用k個符號(如二進制,k = 2)來表示長度為 的循環(huán)編碼,n為一個編碼值的長度。舉例:最簡單的,k = 2時,采用二進制符號(0, 1),編碼值的長度n = 2,可以得到一個長度為 的循環(huán)序列:[0, 0, 1, 1]。此時,我們得到4個長度為2的不同的編碼:[0, 0], [0, 1], [1, 1], [1, 0]。因此,某種結構光就可以按照該德布魯因序列進行編碼。而獲得的結構光影像中,以上4個像素的編碼為[0, 0, 1, 1],通過一個大小為2的滑動窗口(假定一個結構光光斑或光束的寬度是一個像素)即可獲取每個像素的編碼值。同樣地,如果是經過極線校正的雙目圖像,只需要搜索對應的行即可,此時只要求編碼在x軸上不具備重復性。此時的結構光就是豎直條帶狀的。當然,為了提高編碼效率,也可以使用灰度圖、彩色圖像等比0-1編碼具有更多可能編碼值的投影方式。例如,對于RGB影像,采用二進制編碼(即某種顏色只有 有、無 兩種狀態(tài)),則共有 k = 5, n = 3)的結構光序列:

2.2.2 二維空間編碼

德布魯因序列是一種一維編碼,可以將之擴展到二維空間中,使得對于一個x * y大小的二維空間,其中一個w * h大小的子窗口所包含的編碼值在這整個二維編碼序列中只出現一次。

如上面中的4 * 6的M-arrays序列中,每個2 * 2大小的窗口所包含的編碼值都是唯一的。同樣也可以利用RGB信息來進行二維編碼,有相關算法來產生一些偽隨機二維編碼。如在下圖中,左邊展示了一個6 * 6大小的二維矩陣,子窗口的大小為3 * 3。算法首先在左上角的3 * 3子窗口中隨機填入各種顏色;然后一個3 * 1大小的滑動窗口移動到右端第一個空白處,并隨機填入3中顏色;在填入生成的隨機顏色前,算法會先驗證子窗口的編碼的唯一性能不能得到保證,若不能,則會重新生成3中隨機顏色;如此循環(huán),只是在豎直方向上滑動窗口的大小變?yōu)? * 3,直至將整個6 * 6矩陣填滿。右圖則是該算法產生的某種偽隨機二維編碼的示例。

通過以上對空間編碼的討論,也可以看出空間編碼結構光的一些優(yōu)缺點:優(yōu)點:

·無需多張照片,只需要一對影像即可進行三維重建。可以滿足實時處理,用在動態(tài)環(huán)境中。

缺點

·易受噪聲干擾:由于反光、照明等原因可能導致成像時部分區(qū)域等編碼信息缺失;

·對于空間中的遮擋比較敏感;

·相較于時序編碼結構光精度較低。

以上是對各種常用的結構光技術的一些介紹。其實,三維重建中最常用的還是隨機面陣結構光。通過向空間中投影這樣的隨機結構光,再結合雙目稠密重建,可以獲得比單純使用RGB影像進行三維重建更加可靠和精確的結果。最后,向對結構光和三維重建感興趣的同學推薦一個項目:build your own 3D scanner。和名字一樣,網站上提供了自己使用觸手可及和低成本的設備來DIY一個3D掃描儀所需的一切,包括教程、ppt、代碼、數據和其他人的作品展示,感興趣的同學歡迎動手嘗試。

審核編輯:郭婷


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    450

    文章

    49636

    瀏覽量

    417197
  • 人臉識別
    +關注

    關注

    76

    文章

    3998

    瀏覽量

    81359

原文標題:3D-camera結構光原理

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    裸眼3D筆記本電腦——先進的場裸眼3D技術

    效果的用戶,這款筆記本電腦都能滿足你的需求。 一、卓越的3D模型設計能力 英倫科技裸眼3D筆記本電腦采用最新的場裸眼3D技術,使用戶無需佩
    的頭像 發(fā)表于 07-16 10:04 ?292次閱讀

    3d場景建??梢暬?,場景1:1還原

    3D場景建??梢暬?b class='flag-5'>技術原理、方法和應用,旨在幫助讀者深入了解這一領域的專業(yè)知識。 1.技術原理 數學建模: 三維場景建?;跀祵W幾何原理,
    的頭像 發(fā)表于 07-12 14:49 ?141次閱讀

    浪潮云洲發(fā)布云洲燭龍雙目結構3D相機

    在科技日新月異的今天,智能制造正逐步成為推動社會發(fā)展的重要力量。近日,備受矚目的2024世界智能產業(yè)博覽會在天津盛大開幕。本次博覽會不僅匯聚了全球智能產業(yè)的精英,更見證了一項創(chuàng)新技術的誕生——浪潮云洲旗下國器智眸公司研發(fā)的“云洲燭龍雙目結構
    的頭像 發(fā)表于 06-25 18:00 ?1020次閱讀

    奧比中3D相機打造高質量、低成本的3D動作捕捉與3D動畫內容生成方案

    ? 在過去幾十年里,動作捕捉(MoCap)技術經歷了顯著的發(fā)展,廣泛被應用于電影、游戲、虛擬現實、醫(yī)療等多個領域。近期,奧比中光合作客戶Moverse使用Orbbec Femto系列3D相機,打造出
    的頭像 發(fā)表于 06-25 16:37 ?840次閱讀

    工業(yè)鏡頭在3D結構檢測中實際應用

    工業(yè)鏡頭在3D結構檢測中實際應用
    的頭像 發(fā)表于 06-01 08:34 ?173次閱讀
    工業(yè)鏡頭在<b class='flag-5'>3D</b><b class='flag-5'>結構</b><b class='flag-5'>光</b>檢測中實際應用

    是時候了解一下什么是場裸眼3D技術

    在科技的不斷推動下,人類對于三維世界的感知和體驗正迎來前所未有的突破。如今,一種名為“場裸眼3D技術”的前沿科技正在全球范圍內引起廣泛關注和討論。這項技術不僅擺脫了傳統(tǒng)
    的頭像 發(fā)表于 05-31 10:19 ?404次閱讀
    是時候了解一下什么是<b class='flag-5'>光</b>場裸眼<b class='flag-5'>3D</b><b class='flag-5'>技術</b>了

    什么是場裸眼3D?

    場裸眼3D技術,是一種無需任何輔助設備(如3D眼鏡或頭顯)即可產生真實三維效果的技術。它通過特殊的顯示設備,精確控制光線的方向和強度,使觀
    的頭像 發(fā)表于 05-27 14:21 ?632次閱讀
    什么是<b class='flag-5'>光</b>場裸眼<b class='flag-5'>3D</b>?

    天馬微電子首發(fā)TIANMA META SIGHT3D解決方案

    3D顯示領域,視角的大小和畫面的穩(wěn)定性一直是行業(yè)內的難題,TIANMA META SIGHT 3D場顯示器采用了先進的追蹤式超多視點技術
    的頭像 發(fā)表于 05-23 10:21 ?342次閱讀
    天馬微電子首發(fā)TIANMA META SIGHT<b class='flag-5'>光</b>場<b class='flag-5'>3D</b>解決方案

    基于3D結構的智能B柱方案

    當下國內新能源汽車市場內卷愈發(fā)激烈,還在為技術創(chuàng)新而煩惱?還在低成本和高可靠之間做取舍?擔心新功能開發(fā)周期長無法快速落地?本文基于3D結構的智能B柱方案將為你提供一些新思路。
    的頭像 發(fā)表于 04-12 14:28 ?818次閱讀
    基于<b class='flag-5'>3D</b><b class='flag-5'>結構</b><b class='flag-5'>光</b>的智能B柱方案

    NanoEdge AI的技術原理、應用場景及優(yōu)勢

    能耗并提高數據安全性。本文將對 NanoEdge AI 的技術原理、應用場景以及優(yōu)勢進行綜述。 1、技術原理 NanoEdge AI 的核心技術包括邊緣計算、神經網絡壓縮和低功耗硬
    發(fā)表于 03-12 08:09

    3D HMI應用場景和發(fā)展趨勢

    人機交互的革命性趨勢。本文將探討3DHMI設計的概念、優(yōu)勢、應用場景以及未來發(fā)展趨勢。3DHMI設計的概念3DHMI設計是一種基于三維界面和人機交互的設計理念。它利用
    的頭像 發(fā)表于 02-19 13:27 ?685次閱讀
    <b class='flag-5'>3D</b> HMI應<b class='flag-5'>用場景</b>和發(fā)展趨勢

    中國科研團隊突破全息3D顯示技術

    全息顯示技術為真正的3D顯示提供了終極解決方案,在增強現實和虛擬現實方面具有巨大的潛力。然而,全息3D顯示的顏色和視角主要取決于激光的波長和當前空間調制器的像素尺寸。
    發(fā)表于 01-26 12:45 ?523次閱讀
    中國科研團隊突破全息<b class='flag-5'>3D</b>顯示<b class='flag-5'>技術</b>

    2D3D視覺技術的比較

    作為一個多年經驗的機器視覺工程師,我將詳細介紹2D3D視覺技術的不同特點、應用場景以及它們能夠解決的問題。在這個領域內,2D
    的頭像 發(fā)表于 12-21 09:19 ?909次閱讀

    HT for Web (Hightopo) 使用心得(4)- 3D 場景 Graph3dView 與 Obj 模型

    這里我們通過代碼建立一個 3D 場景并添加一個 Obj 模型來介紹一下 HT for Web 在 3D 場景和模型加載方面的使用。
    的頭像 發(fā)表于 11-20 11:05 ?595次閱讀
    HT for Web (Hightopo) 使用心得(4)- <b class='flag-5'>3D</b> <b class='flag-5'>場景</b> Graph<b class='flag-5'>3</b>dView 與 Obj 模型

    3D ToF 技術大熱,哪些方案值得關注?

    3D視覺攝像頭解決方案比較主流的有三種,分別是結構、雙目視覺,以及ToF(Time of Flighgt,飛行時間)。其中,ToF 3D解決方案的滲透率或將超過
    發(fā)表于 10-08 14:23
    <b class='flag-5'>3D</b> ToF <b class='flag-5'>技術</b>大熱,哪些方案值得關注?