深度相機之TOF原理詳解

/*******************************************************************************************************************

本文轉載源鏈接沒有找到,若有幸被原創作者訪問到,請留下原出處,我會更新,謝謝

轉載至我的博客,主要是為了備份,日后查找方便。謝謝原創作者的分享!

***********************************************************************************/

1.1 TOF初探

TOF是Time of flight的簡寫,直譯為飛行時間的意思。所謂飛行時間法3D成像,是通過給目標連續發送光脈沖,然后用傳感器接收從物體返回的光,通過探測光脈沖的飛行(往返)時間來得到目標物距離。這種技術跟3D激光傳感器原理基本類似,只不過3D激光傳感器是逐點掃描,而TOF相機則是同時得到整幅圖像的深度信息。TOF相機與普通機器視覺成像過程也有類似之處,都是由光源、光學部件、傳感器、控制電路以及處理電路等幾部單元組成。與同屬于非侵入式三維探測、適用領域非常類似的雙目測量系統相比,TOF相機具有根本不同3D成像機理。雙目立體測量通過左右立體像對匹配后,再經過三角測量法來進行立體探測,而TOF相機是通過入、反射光探測來獲取的目標距離獲取。


TOF技術采用主動光探測方式,與一般光照需求不一樣的是,TOF照射單元的目的不是照明,而是利用入射光信號與反射光信號的變化來進行距離測量,所以,TOF的照射單元都是對光進行高頻調制之后再進行發射,比如下圖所示的采用LED或激光二極管發射的脈沖光,脈沖可達到100MHz。與普通相機類似,TOF相機芯片前端需要一個搜集光線的鏡頭。不過與普通光學鏡頭不同的是這里需要加一個帶通濾光片來保證只有與照明光源波長相同的光才能進入。同時由于光學成像系統具有透視效果,不同距離的場景為各個不同直徑的同心球面,而非平行平面,所以在實際使用時,需要后續處理單元對這個誤差進行校正。作為TOF的相機的核心,TOF芯片每一個像元對入射光往返相機與物體之間的相位分別進行紀錄。該傳感器結構與普通圖像傳感器類似,但比圖像傳感器更復雜,它包含2個或者更多快門,用來在不同時間采樣反射光線。因為這種原因,TOF芯片像素比一般圖像傳感器像素尺寸要大得多,一般100um左右。照射單元和TOF傳感器都需要高速信號控制,這樣才能達到高的深度測量精度。比如,照射光與TOF傳感器之間同步信號發生10ps的偏移,就相當于1.5mm的位移。而當前的CPU 可到3GHz,相應得時鐘周期是300ps,則相應得深度分辨率為45mm。運算單元主要是完成數據校正和計算工作,通過計算入射光與反射光相對相移關系,即可求取距離信息。

TOF的優勢:與立體相機或三角測量系統比,TOF相機體積小巧,跟一般相機大小相去無幾,非常適合于一些需要輕便、小體積相機的場合。TOF相機能夠實時快速的計算深度信息,達到幾十到100fps。TOF的深度信息。而雙目立體相機需要用到復雜的相關性算法,處理速度較慢。TOF的深度計算不受物體表面灰度和特征影響,可以非常準確的進行三維探測。而雙目立體相機則需要目標具有良好的特征變化,否則會無法進行深度計算。TOF的深度計算精度不隨距離改變而變化,基本能穩定在cm級,這對于一些大范圍運動的應用場合非常有意義。

1.2?TOF研究機構

<1> Dynamic 3D Vision (2006-2010):

研究領域:多芯片2D/3D傳感器, 動態場景重建, 目標位置識別和光場計算

官網:www.zess.uni-siegen.de/pmd-home/dyn3d

<2>ARTTS (2007-2010):

全稱:“Action Recognition and Tracking based on Time-of-Flight Sensors”

官網:http://www.artts.eu

研究領域:開發更加小型更加便宜的新一代TOF相機;將HDTV與TOF技術相結合(iii) 基于動作跟蹤和識別算法的多模式接口和交互系統

<3>Lynkeus (2006-2009):

官網:www.lynkeus-3d.de

研究領域:致力于工業應用領域的高分辨率和魯棒性的TOF傳感器,例如自動化和機器人導航

<4>3D4YOU(2008-2010):

官網:www.3d4you.eu

研究領域: 構建3D-TV產品線,從3電影中實時獲取點云數據并且轉換為3D顯示到家庭電視中3D4YOU 應用ToF range cameras初始化估計多個高清晰度相機的深度以及初始化計算3D場景圖像的深度。

<5>MOSES(2008-2012):

全稱:“Multi-Modal Sensor Systems for Environmental Ex-ploration (MOSES)”

研究領域:基于傳感器的多方面的應用,包括基于TOF的人機接口和多傳感器融合

官網:www.zess.uni-siegen.de/ipp_home/moses

1.3?TOF之應用領域

TOF 相機目前的主要應用領域包括:

<1> 物流行業:通過 TOF 相機迅速獲得包裹的拋重(即體積),來優化裝箱和進行運費評估;

<2> 安防和監控:

??????????????? 進行 Peoplecounting 確定進入人數不超過上限;

??????????????? 通過對人流或復雜交通系統的counting,實現對安防系統的統計分析設計;

??????????????? 敏感地區的檢測對象監視;

<3> 機器視覺:工業定位、工業引導和體積預估;

??????????????? 替代工位上占用大量空間的、基于紅外光進行安全生產控制的設備;

<4> 機器人:

??????????????? 在自動駕駛領域提供更好的避障信息;

??????????????? 機器人在安裝、質量控制、原料揀選應用上的引導;

<5>醫療和生物:足部矯形建模、病人活動/狀態監控、手術輔助、面部3D 識別;

<6>互動娛樂:動作姿勢探測、表情識別、娛樂廣告


1.4TOF相機特點

<1>優點:

1.相對二維圖像,可通過距離信息獲取物體之間更加豐富的位置關系,即

區分前景與后景;

2.深度信息依舊可以完成對目標圖像的分割、標記、識別、跟蹤等傳統應用;

3.經過進一步深化處理,可以完成三維建模等應用;

4.能夠快速完成對目標的識別與追蹤;

5.主要配件成本相對低廉,包括CCD和普通 LED 等,對今后的普及化生產及使用有利;

6.借助 CMOS 的特性,可獲取大量數據及信息,對復雜物體的姿態判斷極為有效;

7.無需掃描設備輔助工作

<2>缺點:

1.相對于普通數碼相機,其造價仍然偏高,影響該產品目前的普及使用率;

2.相機本身仍然受到硬件發展的限制,更新換代速度較快;

3.測量距離較常規測量儀器短,一般不超過 10 米;

4.測量結果受被測物性質的影響;

5.大多數機器的測量結果受外界環境干擾較為明顯,尤其是受外界光源干擾;

6.分辨率相對較低,本文研究的 PMD Camcube 2.0 型號相機,為目前分辨率最高的 3D 相機,其分辨率僅為 204×204像素(這個信息比較老了。沒有實際意義);

7. 系統誤差及隨機誤差對結果影響明顯,需要進行后期數據處理。


深度相機分類

目前的深度相機有TOF、結構光、激光掃描等幾種。主要用于機器人、互動游戲等應用。其中較多的是指TOF相機。目前主流的有TOF相機廠商有PMD、MESA、Optrima、微軟等幾家,其中MESA在科研領域使用較大,相機緊湊性好,而PMD是唯一一款能夠在戶內、戶外均能使用的TOF相機,并且能夠具有多種探測距離,可用于科研、工業等各種場合。而Optrima、微軟(還不是真正的TOF技術)的相機主要面向家庭、娛樂應用,價位較低。

<1>MESA公司:SR4000

官網:www.mesa-imaging.ch

<2>PMD公司:CamCube3.0

官網:www.pmdtec.com

<3> Canesta公司:XZ422

官網:www.canesta.com

<4> Fotonic公司

官網:http://www.fotonic.com/content/Company/Default.aspx

2.1?MESA系列介紹

MESA Imaging AG成立于2006年7月,致力于生產銷售世界領先的3D 飛行時間(TOF)深度測繪相機。該相機采用的圖像芯片技術,能夠實時采集三維數據列(通常稱之為深度圖像),并集成于一個緊湊的固件內。MESA 在此領域榮獲過SwissRanger技術創新獎,眾多的成功經驗可以為客戶帶來定制相機解決方案。MESA的產品能夠進行單相機3D成像。它采用飛行時間法(Time of flight),通過給目標連續發送光脈沖,然后用傳感器接收從物體返回的光、探測光脈沖的飛行(往返)時間來得到目標物距離。相比于其它立體成像方式,這種方式具有實時性好、無死區等特點。MESA的芯片由專門的廠家生產,并引進了CCD/CMOS生產工序,保證了光電功能模塊的獨立性以及優化配置。由此保證了MESA使用的芯片的底層噪聲和隨后的距離測量能力大大優于基于標準CMOS工藝制造的芯片。其型號是SR4000

SR4000 3D測距相機能以視頻幀速率實時輸出3維距離值和振幅值。基于時間飛行原理(time-of-flight TOF),相機包括一個內置的激光光源,發射光經場景中的物體反射后返回相機,每個圖像傳感器中的像素點都分別精確測量該時間間隔,并獨立算出距離值。設計用于戶內環境,SR4000可輕易經USB2.0或者以太網(Ethernet)接口連接到電腦或者網絡中,快速生成實時深度圖。代表著MESA公司第4代時間飛行原理相機,它可輸出穩定的距離值,外形美觀、堅固,體積小(65 X 65 X 68mm)(USB版)。 SR4000隨機包括驅動和軟件接口程序,用戶可以通過接口程序創建更多的應用。

?2.2 PMD Tec系列

Camcube3.0是全球第一款可應用于室外環境的高精度深度相機,這為汽車輔助駕駛、移動機器人等應用帶來了便利。在汽車等交通工具中,停車、開車運行等都一直通過駕駛員的直接觀測和經驗來完成,由于人的經驗誤差或精神狀態影響,在實際過程中,難免會出現各種狀況。而通過TOF相機3D探測,可以很方便的對外界環境進行探測,并對駕駛員起到提醒和輔助駕駛的作用。

PMDTec公司是一家德國公司,其原身是德國錫根大學一個研究傳感器系統(ZESS)的中心實驗室,2002年從德國錫根大學分離出來組建了公司,后被另一家公司收購組建了現在的PMDTec公司。該公司研究3D TOF Imaging(時間飛行技術)超過了10年。2011年,Omek Interactive和PMDTechnologies宣布達成了戰略合作伙伴關系,以提供姿態識別和身體跟蹤解決方案,這為今后的商業應用打下了堅實的基礎。該公司的產品已經開發到了第三代 - CamCube3.0。3D攝像頭的分辨率為200*200,可以以每秒40幀的速度獲取場景的深度信息和灰度圖像。CamCube3.0具有非常高的靈敏度,它可以在較短的快門時間內獲得更高精度和更遠的探測距離。由于其獨家的SBI技術,TOF是少有的既可以用于室內,又可以用于室外的TOF相機,并可以探測快速運動目標。不過缺點就是價格不菲,不含稅的話,要12000美元。所以只適合搞科研,對于民用還有很長的路要走。

PMDTec 公司網址:http://www.pmdtec.com/

PMDTec Wiki:http://en.wikipedia.org/wiki/PMDTechnologies

2.3 NATAL

Natal并不是基于ToF的原理,PrimeSense為微軟提供了其三維測量技術,并應用于Project Natal。在PrimeSense公司的主頁上提到其使用的是一種光編碼(light coding)技術。不同于傳統的ToF或者結構光測量技術,light coding使用的是連續的照明(而非脈沖),也不需要特制的感光芯片,而只需要普通的CMOS感光芯片,這讓方案的成本大大降低。Light coding,顧名思義就是用光源照明給需要測量的空間編上碼,說到底還是結構光技術。但與傳統的結構光方法不同的是,他的光源打出去的并不是一副周期性變化的二維的圖像編碼,而是一個具有三維縱深的“體編碼”。這種光源叫做激光散斑(laser speckle),是當激光照射到粗糙物體或穿透毛玻璃后形成的隨機衍射斑點。這些散斑具有高度的隨機性,而且會隨著距離的不同變換圖案。也就是說空間中任意兩處的散斑圖案都是不同的。只要在空間中打上這樣的結構光,整個空間就都被做了標記,把一個物體放進這個空間,只要看看物體上面的散斑圖案,就可以知道這個物體在什么位置了。當然,在這之前要把整個空間的散斑圖案都記錄下來,所以要先做一次光源的標定。在PrimeSense的專利上,標定的方法是這樣的:每隔一段距離,取一個參考平面,把參考平面上的散斑圖案記錄下來。假設Natal規定的用戶活動空間是距離電視機1米到4米的范圍,每隔10cm取一個參考平面,那么標定下來我們就已經保存了30幅散斑圖像。需要進行測量的時候,拍攝一副待測場景的散斑圖像,將這幅圖像和我們保存下來的30幅參考圖像依次做互相關運算,這樣我們會得到30幅相關度圖像,而空間中有物體存在的位置,在相關度圖像上就會顯示出峰值。把這些峰值一層層疊在一起,再經過一些插值,就會得到整個場景的三維形狀了。

2.4 primeSense

今天最常見的影像捕捉設備是數碼相機。數碼相機輸出一個像素矩陣,每個像素代表一個色值。這是一種二維(2D)視覺技術。3D 視覺是指除了捕捉目標的空間位置(x 軸和 y 軸)和顏色之外,還能捕捉目標的深度(又稱 Z 軸、范圍、距離)及其周圍環境。一個 3D 視覺系統同時輸出每個場景的地形視圖和色彩視圖。PrimeSense是一家無廠半導體公司。他們的技術賦予電視、機頂盒、客廳電腦等消費電子產品自然互動能力。他最得意的兩個字就是:深度。他們的 PrimeSensor 產品包含 Reference Design 和 NITE 中間件。PrimeSensor Reference Design 是一款成本低廉、即插即用、靠 USB 供電的設備,可以放在電視機或顯示器的頂部或旁邊,也可以嵌入其中。ReferenceDesign 能夠實時生成客廳場景的深度、色彩和音頻數據。它能在各種室內照明條件下工作(包括一片漆黑和非常明亮的房間)。它不需要用戶佩戴或手持任何東西,無需校準,也不需要主機處理器做任何運算。PrimeSensor 的設計中包含一個先進的視覺數據處理中間件,它針對面向大眾市場的 CE 產品——NITE進行了優化。NITE 為開發豐富的自然互動應用程序提供了算法框架。NITE SDK(軟件開發工具包)提供了一個文檔詳細的 API 和框架,既能完成 GUI(圖形用戶界面)的設計開發,又能完成游戲開發。

http://labs.manctl.com/rgbdemo/index.php/Main/Download?RGBD標定 ,必看!!

http://www.ee.oulu.fi/~dherrera/kinect/?最重要!!!

http://nicolas.burrus.name/index.php/Research/KinectCalibration?ToF 標定

http://www.rgbdtoolkit.com/


下面摘自:

http://www.cnblogs.com/TracePlus/p/4136297.html

Kinect v1是采用結構光方案,Kinect v2采用TOF方案。

Kinect v1和Kinect v2預覽版的傳感器的配置比較在表1顯示。

?Kinect v1Kinect v2預覽版 ? ? ? ? ? ?
顏色(Color)分辨率(Resolution)640×4801920×1080
fps30fps30fps
深度(Depth)分辨率(Resolution)320×240512×424
fps30fps30fps
人物數量(Player)6人6人
人物姿勢(Skeleton)2人6人
関節(Joint)20関節/人25関節/人
手的開閉狀態(Hand State)△(Developer Toolkit)○(SDK)
檢測範囲(Range of Detection)0.8~4.0m0.5~4.5m
角度(Angle)(Depth)水平(Horizontal)57度70度
垂直(Vertical)43度60度
(Tilt Motor)×(手動)
複數的App×(単一的App)
?表1是Kinect v1和Kinect v2預覽版的傳感器的配置比較

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/458257.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/458257.shtml
英文地址,請注明出處:http://en.pswp.cn/news/458257.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

nodejs npm常用命令

npm是一個node包管理和分發工具&#xff0c;已經成為了非官方的發布node模塊&#xff08;包&#xff09;的標準。有了npm&#xff0c;可以很快的找到特定服務要使用的包&#xff0c;進行下載、安裝以及管理已經安裝的包。 1、npm install moduleNames&#xff1a;安裝Node模塊安…

centos 7 /etc/rc.local 開機不執行的問題

最近發現centos7 的/etc/rc.local不會開機執行&#xff0c;于是認真看了下/etc/rc.local文件內容的就發現了問題的原因了 1234567891011#!/bin/bash# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES## It is highly advisable to create own systemd services or udev rules# …

深度相機(二)--結構光深度測距

原文&#xff1a; http://blog.sina.com.cn/s/blog_80ce3a550100wg5j.html http://blog.csdn.net/u013360881/article/details/51395427 網上資源&#xff1a;http://eia.udg.es/~qsalvi/recerca.html 結構光編碼&#xff1a; 在3D 的深度獲取上&#xff0c;最為常見的方法是類…

幾種特別的顏色參數

switch (buttonIndex) { case 0: aColor [UIColor redColor]; bColor [UIColor colorWithRed:0.97 green:0.68 blue:0.75 alpha:1.0];// 鴇色 break; case 1: aColor [UIColor orangeColor]; bColor [UIColor colorWithRed:1.0 green:0.87 blue:0.72 alpha:1.0];// 肌色 br…

linux 程序包管理5 編譯安裝

1.二進制程序的訪問方法vim /etc/profile.d/apache.shPATH/usr/local/apache/bin:/usr/local/apache/sbin$PATHexport PATH2.頭文件輸出給系統ln -sv /sur/local/apache/include /usr/include/httpd3.庫文件輸出vim /etc/ld.so.conf.d/httpd.conf/usr/local/apache/binldconfig…

用python實現模擬登錄人人網

用python實現模擬登錄人人網 字數4068 閱讀1762 評論19 喜歡46我決定從頭說起。懂的人可以快速略過前面理論看最后幾張圖。 web基礎知識 從OSI參考模型&#xff08;從低到高&#xff1a;物理層&#xff0c;數據鏈路層&#xff0c;網絡層&#xff0c;傳輸層&#xff0c;會話層&a…

雙目相機--雙目視差與深度距離關系推導詳解

相機成像的模型如下圖所示&#xff1a; P為空間中的點&#xff0c;P1和P2是點P在左右像平面上的成像點&#xff0c;f是焦距&#xff0c;OR和OT是左右相機的光心。由下圖可見左右兩個相機的光軸是平行的。XR和XT是兩個成像點在左右兩個像面上距離圖像左邊緣的距離。 -----------…

SQL Server有這些屬性嗎

2019獨角獸企業重金招聘Python工程師標準>>> Navicat for SQL Server是一個全面的圖形化方式管理數據庫&#xff0c;可進行創建、編輯和刪除全部數據庫對象&#xff0c;例如表、視圖、函數、索引和觸發器&#xff0c;或運行SQL查詢和腳本&#xff0c;查看或編輯BLOB…

Android中常見功能包描述

在Android中&#xff0c;各種包寫成android.*的方式&#xff0c;重要包的描述如下所示&#xff1a;android.app &#xff1a;提供高層的程序模型、提供基本的運行環境android.content&#xff1a;包含各種的對設備上的數據進行訪問和發布的類android.database &#xff1a;通過…

【立體視覺】雙目立體標定與立體校正

from&#xff1a;https://blog.csdn.net/u011574296/article/details/73826420 參考&#xff1a; 機器視覺學習筆記&#xff08;6&#xff09;——雙目攝像機標定參數說明 機器視覺學習筆記&#xff08;8&#xff09;——基于OpenCV的Bouguet立體校正 雙攝像頭立體成像(三)-畸變…

bootstrap .col-md-6 文字居中問題處理

轉載于:https://www.cnblogs.com/benbenfishfish/p/5672520.html

使用jd-gui+javassist修改已編譯好的class文件

1.原因&#xff1a;因為公司代碼管理不當導致源碼丟失&#xff0c;只好已編譯好的class文件進行修改 2.首先先在myeclipse中新建java項目并導入javassist 3.將需要修改的文件放到指定文件夾下 4..在項目中添加以下代碼 package dtj;import javassist.ClassPool; import javassi…

機器視覺學習筆記(4)——單目攝像機標定參數說明

from&#xff1a;https://blog.csdn.net/xuelabizp/article/details/50314633機器視覺學習筆記&#xff08;4&#xff09;——單目攝像機標定參數說明 標簽&#xff1a; 機器視覺1.針孔攝像機模型 在介紹攝像機標定參數之前&#xff0c;需要先簡單說一下針孔攝像機的原理。投影…

mysql 5.6 binlog組提交

mysql 5.6 binlog組提交實現原理http://blog.itpub.net/15480802/viewspace-1411356 Redo組提交 Redo提交流程大致如下 lock log->mutex write redo log buffer to disk unlock log->mutex fsync Fsync寫磁盤耗時較長且不占用log->mutex&#xff0c;也就是其執行期間其…

python基礎(正則表達式)

http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 轉載于:https://www.cnblogs.com/wanderingzj/p/5253325.html

LinuxShell腳本之利用rsync+ssh實現Linux文件系統遠程備份

功能介紹&#xff1a;該腳本用于定期&#xff08;結合crontab一起使用&#xff09;將本地目錄通過rsyncssh傳輸到遠程服務器&#xff0c;每次執行都生成一個帶有以時間命名的目錄&#xff0c;并且當前最新版本的數據鏈接到一個名字叫current的符號鏈接上&#xff0c;便于查找和…

張正友相機標定Opencv實現以及標定流程標定結果評價圖像矯正流程解析(附標定程序和棋盤圖)

from&#xff1a;https://blog.csdn.net/dcrmg/article/details/52939318使用Opencv實現張正友法相機標定之前&#xff0c;有幾個問題事先要確認一下&#xff0c;那就是相機為什么需要標定&#xff0c;標定需要的輸入和輸出分別是哪些&#xff1f;相機標定的目的&#xff1a;獲…

軟件測試技術 homework2

Code 1 1.fault是迭代的條件應該是 i > 0 而不是 i > 0 2.當測試用例是 [3,2,1],1 時。 3.當測試用例是 [2,3,4],1 。 4.當測試用例是 [2],1 。 Code 2 1.fault是應該逆序迭代&#xff0c;正確為for(int i x.length-1;i>0;i--) 2.當測試用例是&#xff3b;0,1&#x…

header的安全配置指南

0x00 背景 在統計了Alexa top 100萬網站的header安全分析之后&#xff08;2012年11月 - 2013年3月 - 2013年11月&#xff09;&#xff0c;我們發現其實如何正確的設置一個header并不是一件容易的事情。盡管有數不勝數的網站會使用大量有關安全方面的header&#xff0c;但 并沒有…

opencv雙目視覺標定、匹配和測量 (附代碼)

from&#xff1a;https://blog.csdn.net/bcj296050240/article/details/52778741雙目視覺原理方面參照《學習Opencv》和大牛博客 http://blog.csdn.net/chenyusiyuan/article/details/5970799中16-19系列博客。本文主要記錄我自己在雙目視覺標定&#xff0c;立體匹配&#xff0…