計算機視覺的基本任務(wù)之一是從相機獲取的圖像信息出發(fā)計算三維空間中物體的幾何信息,并由此重建和識別物體,而空間物體表面某點的三維幾何位置與其在圖像中對應(yīng)點之間的相互關(guān)系是由相機成像的幾何模型決定的,這些幾何模型參數(shù)就是相機參數(shù)。
在大多數(shù)條件下,這些參數(shù)通過實驗與計算才能得到。無論是在圖像測量或者機器視覺應(yīng)用中,相機參數(shù)的標定都是非常關(guān)鍵的環(huán)節(jié),其標定結(jié)果的精度及算法的穩(wěn)定性直接影響相機工作產(chǎn)生結(jié)果的準確性。
那么相機成像的幾何模型又是什么呢?我們從簡單的針孔相機模型說起,首先我們回想一下,初中物理中的小孔成像實驗。
用一個帶有小孔的板遮擋在屏幕與物之間,屏幕上就會形成物的倒像,我們把這樣的現(xiàn)象叫小孔成像。前后移動中間的板,像的大小也會隨之發(fā)生變化。
小孔成像的模型其實可以看作是針孔相機模型的基礎(chǔ)。
如上圖所示,相機坐標系為OC-XC-YC-ZC,OC為相機光心,ZC軸指向相機前方。真實世界中的一個點P,經(jīng)過小孔OC投影后,落在物理成像平面o'-x-y(也稱像平面坐標系)上,稱為像點P'。
相機坐標到圖像坐標
為了方便描述,我們之后將把針孔相機模型對稱翻轉(zhuǎn)過來,如下圖所示,從數(shù)學的角度,它們是等價的。
假設(shè)P在相機坐標系下的坐標為[Xc,Yc, Zc]T,P' 為[x,y]T,焦距為f。根據(jù)相似三角形有:
圖像坐標系到像素坐標
此時與前面的坐標系變換不同,此時沒有旋轉(zhuǎn)變換,但是坐標原點位置不一致,大小不一致,則設(shè)計伸縮變換及平移變換。
世界坐標到相機坐標
從世界坐標系變換到相機坐標系屬于剛體變換,只需要進行旋轉(zhuǎn)平移,不會發(fā)生伸縮變換。
物體之間的坐標系變換都可以表示坐標系的旋轉(zhuǎn)變換加上平移變換,則世界坐標系到相機坐標系的轉(zhuǎn)換關(guān)系也是如此。繞著不同的軸旋轉(zhuǎn)不同的角度得到不同的旋轉(zhuǎn)矩陣。如下:
于是可以得到P點在相機坐標系中的坐標:
到此我們已經(jīng)了解了相機的幾何模型,這些幾何模型的參數(shù)就是相機參數(shù)。
鏡頭畸變
對于徑向畸變,由于它們都是隨著與中心之間的距離增加而增加,因此可以用一個多項式函數(shù)來描述畸變前后的坐標變化:
在上式中,對于畸變較小的圖像中心區(qū)域,畸變糾正主要是k1 起作用;對于畸變較大的邊緣區(qū)域,主要是k2 起作用。根據(jù)所用鏡頭,可以適當使用合適的校正系數(shù)。
對于切向畸變,可以使用另外的兩個參數(shù)p1, p2 來進行糾正:
綜上,我們一共需要5個畸變參數(shù)(k1、k2、k3、p1、p2 )來描述鏡頭畸變。
針孔相機模型中,只要確定相機參數(shù)和畸變參數(shù)就可以唯yi的確定針孔相機模型, 這個過程就稱為「相機標定」。
一旦相機結(jié)構(gòu)固定,包括鏡頭結(jié)構(gòu)固定,對焦距離固定,我們就可以用這些參數(shù)去近似這個相機。相機參數(shù)標定結(jié)果的精度會直接影響相機工作中產(chǎn)生結(jié)果的準確性。因此做好相機標定是后續(xù)工作的重要前提。
本文屬于原創(chuàng)文章,如需轉(zhuǎn)載請注明 杭州藍芯科技有限公司