機器人/感測器/計算機視覺
一個 數字採集影像 以向量矩陣的形式出現。這些向量中的每一個都稱為畫素,代表特定的顏色。如果矩陣以每個單元格填充相應的顏色進行顯示,則會建立一個從相機視角拍攝的場景圖片。
相機是將二維或三維現實轉換為二維表示的裝置。雖然後期處理可以從初始的二維影像中重新建立三維表示,但相機輸出是現實投影到二維平面上的結果。由於光被用作投影機制,因此任何改變從物體到感測器平面的光線路徑或特性的因素都會影響感測器平面上初始二維表示的保真度。
相機並非完美裝置。由於它們是用具有現實世界特徵的現實世界元件構建的,因此它們表示現實的能力受到組成部分的物理特性的限制。總的來說,有三種類型的失真可能發生
- 幾何 - 由於光學系統的設計和特性,物體表示在感測器平面上發生空間偏移
- 輻射 - 由於畫素靈敏度變化、出現“熱點”或死畫素以及畫素滿阱容量變化,記錄在每個畫素上的報告“亮度值”出現錯誤。
- 光譜 - 由於感測器對不同波長光的響應不同,導致報告“亮度值”出現錯誤。
本章的重點是幾何失真——它的原因和補救措施。
外部定向定義為相機相對於物體場景的位置(x,y,z)和角度(俯仰、傾斜、偏航)。即使使用完美的相機,也會由於外部定向而引入失真。通過了解這六個外部定向元素並採用立體解析幾何技術,可以輕鬆消除這些失真。求解未知的外部定向元素屬於攝影測量學主題,通常被認為是整個相機系統(包括其物體場景環境)校準的一部分。相機校準本身通常是指校正相機的內部定向。
內部定向定義為相機內部元件的相對定向和特性。這些包括
- 校準焦距 - 當無限遠的物體被精確聚焦在像平面上時,鏡頭後節點與像平面之間的距離。
- 鏡頭系統的光學特性 - 鏡頭透過巧妙的光學設計改變正常“針孔”幾何形狀的能力。例如,遠心鏡頭在“壓縮深度”和消除透視引起的尺度誤差方面表現得像遠攝鏡頭,但專為近距離應用而設計。
- 主點 - 光軸與感測器平面相交的位置(並不總是位於中心)。
- 光軸與感測器平面的角度。通常,光軸垂直於感測器平面。如果不是,則生成的影像將具有特徵失真。然而,有時會故意改變這個角度以實現其他目標。例如,一些相機能夠採用“謝普夫盧格條件”——像平面、物體平面和鏡頭平面在一條共同的直線上相交。假設遵守透鏡定律,這種配置確保物體平面上的所有點都處於對焦狀態,即使它不垂直於光軸。雖然這種配置保留了對焦,但它引入了額外的幾何失真。
- 感測器平面的平整度 - 對於模擬膠片來說比現代數字感測器來說更重要。
- 鏡頭畸變 - 鏡頭改變理想“針孔”模型的特性。鏡頭畸變和鏡頭/感測器平面方向通常是內部定向中幾何失真最大的貢獻者。
鏡頭畸變導致影像點從它們在感測器平面上的理想“針孔模型”位置發生位移。這些位移可以進一步描述為
- 徑向 - 位移朝向或遠離影像中心。從技術上講,位移是相對於主點位置的徑向。徑向位移可以用多項式建模,前幾項描述了大多數影響。
- 切向 - 位移發生在與徑向方向成直角的方向上。通常,切向位移遠小於徑向位移。
- 非對稱徑向或切向 - 誤差函式變化(不同半徑具有不同的徑向函式,影像平面上的不同位置具有不同的切向函式)
- 隨機 - 任何數學過程都無法建模的位移。
針孔模型用於表示理想透鏡。它只是加強了光線從物體穿過針孔到影像(感測器)平面沿直線傳播的概念。
昂貴的鏡頭近似於這種針孔模型行為。
相機校準的目標是校正由於相機內部定向元素引起的影像位移。相機校準通常採用兩種方法
- 基於模型的方法 - 對特定誤差元素進行建模和校正。
- 基於對映的方法 - 重點是生成全面的現實到影像(或影像到現實)對映函式,而無需考慮潛在的貢獻原因。
在基於模型的方法中,人們試圖識別幾個導致誤差的主要因素,對其進行建模、測量和校正。對於每個貢獻因素,都會提出一個數學方程來模擬誤差。例如,徑向鏡頭畸變可以用以下形式的四項多項式建模
delta r = (k1 * r) + (k2*r^3) + (k3*r^5)+ (k4*r^7)+ (k5*r^9) + .............
通常,前兩項或三項足以完全描述徑向誤差。請注意,這是一個誤差模型,而不是實際誤差。模型可以近似誤差,但永遠無法完全校正誤差影響。
在確定合適的模型後(假設我們選擇上面前三項來模擬徑向鏡頭畸變),下一步是確定最能模擬觀察到的誤差的係數的值。這可以透過以下兩種方法之一來完成
- 顯式方法 - 使用具有已知(x,y)、(x,y,z)或角度位置的目標。精密校準框架、現場方法、恆星觀測或準直儀組可以用於生成已知位置的目標。
- 優點:精確
- 缺點:昂貴且耗時
- 隱式方法 - 使用具有已知幾何屬性但沒有已知位置或角度方向的物體。例如,棋盤格方法,其中利用所有控制點都位於一個平面上的特性。同樣,鉛垂線方法利用了一系列從直杆上垂下的物理鉛垂線不僅定義了一個平面,而且產生了一系列直的平行線,這些線可以被成像。如果生成的影像中的線不直,則誤差可以歸因於鏡頭畸變。
- 優點
- 相對簡單、快速、便宜
- 簡單的模型通常可以解釋大部分的誤差
- 缺點
- 不如顯式方法精確,但通常足夠好
- 優點
- 優點
- 相對簡單、快速、便宜
- 只有少數因素會影響幾何形狀 - 主要取決於光學配置和鏡頭畸變
- 簡單模型可以解釋大部分的誤差
- 缺點
- 只能消除模型中包含的誤差
- 忽略未知的誤差來源,或者僅僅導致更高的殘差
在基於對映的方法中,沒有嘗試理解每個誤差來源。整個重點在於生成一個綜合的現實到影像(或影像到現實)對映函式。簡單的橡皮布拉伸就是一個這樣的變換的例子。
例如,想象一下,在相機前面設定一臺高精度 X-Y 繪圖儀,使其垂直於相機的光軸。然後,在繪圖儀的筆架上安裝一個針孔光源,使其能夠移動到繪圖儀的 X-Y 平面上的任何位置。此外,想象一下,對於光源的每個可能位置,我們都可以捕獲被照亮的單個畫素的行和列。
對於 VGA 格式影像(640 列 x 480 行),共有 307,200 個畫素。如果我們讓繪圖儀移動到 307,200 個位置中的每一個,並記錄每個畫素對映到哪個真實世界(x, y)座標,那麼我們就成功構建了一個顯式對映函式。
使用這種方法,所有潛在的誤差來源都會被消除 - 無論它們是否已知。重要的是要保持顯式的影像到現實對映。
實際上,沒有人會費心去單獨照亮 307,200 個畫素。然而,可以透過在數百個區域(例如,16 * 16 個畫素)上收集類似的測量值,併為每個區域使用分段變換來近似此過程。透過讓繪圖儀移動到數百個控制點位置,可以進一步自動化此過程。
- 優點
- 可以處理任何和所有失真 - 即使是那些未預料到的失真。
- 非常精確 - 亞畫素精度
- 只需要執行一次 - 如果期間沒有移動任何物體
- 適合自動化方法
- 缺點
- 需要大量的顯式控制。控制點生成器必須是“可信來源” - 繪圖儀誤差會傳遞。
- 昂貴且耗時
透過採用基於模型或基於對映的方法來校準相機,可以消除由內部相機方向元素引起的大部分影像位移誤差,然後進行進一步處理。
影像分割的目的是根據某些標準將源影像拆分為多個目標影像或感興趣區域。例如,找到箱子中的單個零件可能是有益的。對於導航系統,從影像中僅提取地板線可能是有用的。
從找到單個設定畫素開始。搜尋周圍的所有畫素。對於每個設定為 1 的畫素,搜尋周圍的所有畫素,依此類推。該演算法在計算能力方面效率不高,但它確實提取了不需要後處理的區域。
從搜尋影像中的差異開始。一旦差異超過一定的最小尺寸和亮度或其他特徵的閾值,它就是一個邊緣。找到所有邊緣後,尋找由邊緣包圍的區域。示例影像具有非常明確的邊緣,使其易於處理。但是,許多現實世界的影像具有更平滑的梯度,這使得它們的邊緣更難檢測。邊緣檢測也容易受到多種噪聲的影響,這些噪聲會破壞邊緣檢測。
無論何時可以獲得影像的多個尺度,多尺度都是一個有用的技術。許多相機影像處理器可以發出縮圖以及主影像。此低解析度縮圖可用於搜尋主影像的計劃。具體而言,低解析度影像中缺少畫素的任何區域可能代表完整影像中的空區域或非常稀疏的區域。如果我們願意為了速度犧牲對小塊的檢測,多尺度是一種高效的方法。
順序搜尋的目標是對每個畫素檢查一次且僅檢查一次。當找到新的畫素時,會將它們與之前找到的畫素組進行比較,並插入該組。如果發現一個畫素位於兩個組中,則必須合併這兩個組。
- 攝影測量手冊 第 4 版 1980 年 6 月 ASPRS 出版物 ISBN-10:0937294012
- 攝影測量學要素 作者:Paul Wolf McGraw-Hill 1974 ISBN 0-07-071337-5
- 學習 OpenCV 作者:Bradski & Kaehler O'Reilly 2008 ISBN 978-0-596-51613-0
- 機器人視覺 作者:Berthold Klaus Paul Horn ISBN 0-262-08159-8
- people.csail.mit.edu/bkph/articles/Tsai_Revisited.pdf
- http://www.ast.cam.ac.uk/~wfcsur/technical/astrometry/
- http://www.vision.caltech.edu/bouguetj/calib_doc/
- http://www.kwon3d.com/theory/calib.html
- www.umiacs.umd.edu/~ramani/cmsc828d/lecture9.pdf
- http://www.cs.cmu.edu/afs/cs/usr/rgw/www/TsaiCode.html
- http://research.microsoft.com/~zhang/Calib/
- www.photogrammetry.ethz.ch/general/persons/fabio/Remondino_Fraser_ISPRSV_2006.pdf
- http://research.graphicon.ru/calibration/gml-c-camera-calibration-toolbox-5.html
- www.debevec.org/Thesis/debevec-phdthesis-1996_ch4_calib.pdf
- www.youtube.com/watch?v=S-IPz71VxGo&feature=user
一個被稱為計算機視覺的研究領域圍繞著尋找這種矩陣中的模式,這些模式對應於某些物體,例如人臉。
有關計算機視覺的全面概述,請參見