1. pinhole camera model 小孔相機模型【cs231a課程筆記】

1.1. pinhole camera model

數碼相機的鏡頭相當於一個凸透鏡 + 小孔成像

理想化的相機模型是線性模型(實際是非線性模型):

在這裏插入圖片描述

retinal plane 視網膜平面
camera coordinate system(camera reference system)攝像機座標系
camera calibration 相機標定

將三維攝像機座標系中的P點映射到二維image plane中的P’
在這裏插入圖片描述

pinhole(center of the camera):OO
focal length: ff
OCOC'稱作optical axis 光軸

P[x,y,z]TP[x, y, z]^T轉化到P[x,y]TP'[x', y']^T

相似三角形PCOP'C'OPO(0,0,z)PO(0,0,z)

P=[x,y]T=[fx/z,fy/z]TP'=[x', y']^T=[f*x/z, f*y/z]^T

aperture size越大,成像越模糊,越亮

所以 小aperture + lenses(透鏡)

1.2. lens-based model (paraxial refraction model)

(凸)透鏡相機模型(軸旁折射模型)
在這裏插入圖片描述

只有PP點所在的平面(焦平面)是清晰的(in focus),有了焦距(景深)的概念

P=[x,y]T=[zx/z,zy/z]TP'=[x', y']^T=[z'*x/z, z'*y/z]^T

上式依據:對於焦平面上的點,PPPP'過透鏡中心OO

distortion

radial distortion(徑向畸變):
pincushion distortion(枕形畸變) and barrel distortion(桶形畸變)

在這裏插入圖片描述

1.3. digital image space

加上image plane(film)(原點在k軸和平面交點處,一般是圖片中心點)和image(原點在圖片左下角)之間的關係C

P=[x,y]T=[zx/z+cx,zy/z+cy]TP'=[x', y']^T=[z'*x/z + c_x, z'*y/z + c_y]^T

加上現實距離和像素距離之間的關係k,l=pixeks/cmk,l=pixeks/cm,若k=lk=l,則相機有正方形像素。

P=[x,y]T=[zkx/z+cx,zly/z+cy]T=[αx/z+cx,βy/z+cy]TP'=[x', y']^T=[z'*k*x/z + c_x, z'*l*y/z + c_y]^T=[\alpha*x/z + c_x, \beta*y/z + c_y]^T

homogeneous coordinate system 齊次座標系

我們認爲歐式空間中的(x,y,z)等價於齊次座標系中的(x,y,z,1),所以我們認爲齊次座標系(v1,...,vn,w)(v_1,...,v_n,w)等價於歐式空間(v1/w,...,vn/w)(v_1/w,...,v_n/w)
在這裏插入圖片描述在這裏插入圖片描述
在這裏插入圖片描述

II 是 3×3
KK 是camera matrix
上式中不包含skewness(傾斜)和dissortion(畸變)

下圖中加入skewness,其中θ\theta是座標系夾角與90度的差
在這裏插入圖片描述
大多數本課程講述的方法忽略了distortion,故最終final camera matrix有5個自由度:
2個關於focal length: α,β\alpha, \beta
2個關於offset: cx,cyc_x, c_y
1個關於skewness: θ\theta

1.4. an arbitrary world reference system to image plane

before:將三維攝像機座標系映射到二維image plane

加入選擇矩陣 rotation matirx R和平移向量 tranlation vector T
在這裏插入圖片描述
與之前結合化簡
在這裏插入圖片描述
M中包含了intrinsic和extrinsic參數,K是內參,[R, T]是外參。

M有11個自由度,5個內參自由度,3個外參(旋轉),3個外參(平移)

1.5. Camera Calibration

用images推斷內參

deduce 推斷
calibration rig 標定臺

pip_i是照片中的i點,PiP_i是3D空間中的點,m1,m2,m3是M的三行(歐式空間和齊次座標系變換)
在這裏插入圖片描述
在這裏插入圖片描述
對於n個圖片,寫成矩陣形式:
在這裏插入圖片描述

trivial solution平凡解
overdetermined過定的(含有線性相關的兩列)
scalar標量

在這裏插入圖片描述
用SVD(分解奇異值):P=UDVTP=UDV^TVTV^T與m合併爲某常數乘M,約束條件變爲M=VTm=VTm=1|M|=|V^Tm|=|V^T||m|=1(單位正交陣的行列式爲1或-1)
在這裏插入圖片描述
進一步有
在這裏插入圖片描述
解得
在這裏插入圖片描述

退化形態(degeneration configuration):
不是所有情況都能有解,比如圖片都在一個平面上(線性無關的方程數量小於未知數數量(11))

1.6. Handling Distortion in Camera Calibration

通常畸變是對稱的,以爲透鏡是對稱的,所以用一個isotropic transformation(各向同性變換)表示
在這裏插入圖片描述
變換一下:
在這裏插入圖片描述
但這不是線性的,我們可以尋找其他辦法(比如利用比值(不變的))
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
可以使用SVD求解(類似上面)

求出m1,m2,再用λ\lambda可以求m3,仍然是非線性優化問題,但簡單很多

1.7. Rigid Transformations

rotation,translation,sacling

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章