機器人/感測器/計算機視覺
從 數字影像採集 獲得的影像以向量矩陣的形式出現。每個向量稱為一個 **畫素**,代表一個特定的顏色。如果用相應的顏色填充每個單元格來顯示矩陣,它就會建立一個從相機視角看到的場景的圖片。
相機是將二維或三維現實轉換為二維表示的裝置。雖然後期處理可以從初始的二維影像中重新建立三維表示,但相機輸出是現實世界在二維平面上的投影。因為光被用作投影機制,所以任何改變從物體到感測器平面的光線路徑或特徵的東西都會影響感測器平面上該初始二維表示的保真度。
相機不是完美的裝置。因為它們是由具有現實世界特徵的現實世界元件構建的,所以它們表示現實的能力受到其組成部分的物理屬性的限制。從廣義上講,有三種類型的失真會發生
- 幾何 - 由於光學系統的設計和特性,感測器平面上物體表示的的空間位移
- 輻射度量學 - 由於畫素靈敏度的變化、出現“熱點”或死畫素以及不同的畫素滿阱容量,感測器上記錄的報告“亮度值”的誤差。
- 光譜 - 由於感測器對不同波長光的響應不同,報告的“亮度值”的誤差。
本章的重點是幾何失真 - 它的原因和補救措施。
外部定向定義為相機相對於物體場景的位置 (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 x 16 畫素)上的類似測量來近似,併為每個補丁採用分段變換。此過程可以透過將繪圖儀驅動到數百個控制點位置來進一步自動化。
- 優點
- 可以處理任何和所有畸變 - 即使是那些未預料到的畸變。
- 非常精確 - 亞畫素精度
- 只需要做一次 - 如果在此期間沒有任何東西移動
- 適合自動化方法
- 缺點
- 需要大量的顯式控制。控制點生成器必須是“可信來源” - 繪圖儀誤差將被傳遞。
- 昂貴且耗時
透過對相機校準採用基於模型或基於對映的方法,可以在進行進一步處理之前去除由內部相機方向元素引起的大部分影像位移誤差。
影像分割的目的是根據某些標準將源影像分割成多個目標影像或感興趣區域。例如,找到垃圾箱中的單個零件可能是有益的。對於導航系統,提取影像中僅有的地板線可能很有用。
從找到單個設定畫素開始。搜尋它周圍的所有畫素。對於每個設定畫素周圍的一個設定畫素,搜尋它周圍的所有畫素,等等。該演算法在計算能力方面效率不高,但它確實提取了無需後處理即可使用的區域。
從搜尋影像中的差異開始。一旦差異超過一定最小尺寸和亮度或其他特徵的閾值,它就是一個邊緣。找到所有邊緣後,尋找由邊緣包圍的區域。示例影像具有非常明確的邊緣,使其易於處理。但是,許多現實世界的影像具有更平滑的梯度,這使得它們的邊緣難以檢測。邊緣檢測也容易受到許多型別噪聲的影響,這將干擾邊緣檢測。
只要可以獲得影像的多個尺度,多尺度就是一個有用的技術。許多相機影像處理器可以發出縮圖以及主影像。此低解析度縮圖可用作搜尋主影像的計劃。具體來說,低解析度影像中缺少畫素的任何區域可能代表完整影像中的空區域或非常稀疏區域。如果我們願意犧牲檢測小斑點以換取速度,多尺度是一種高效的方法。
順序搜尋的目標是檢查每個畫素一次且僅一次。找到新畫素時,會將其與先前找到的畫素組進行比較,並插入該組。如果發現一個畫素屬於兩個組,則必須合併這些組。
- 攝影測量手冊 第 4 版 1980 年 6 月 ASPRS 出版物 ISBN-10:0937294012
- 保羅·沃爾夫的攝影測量學原理 1974 年 邁克格羅希爾 ISBN 0-07-071337-5
- 學習 OpenCV 作者:布拉茨基和凱勒 2008 年 O'Reilly ISBN 978-0-596-51613-0
- 機器人視覺 作者:伯恩哈德·克勞斯·保羅·霍恩 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
一個稱為計算機視覺的研究領域已經形成,它圍繞著尋找這種矩陣中與某些物件(如面部)相對應的模式。
有關計算機視覺的全面概述,請參閱