一、相机参数
相机内参矩阵以及外参矩阵在介绍坐标系的时候已经推导过了
Z
c
[
u
v
1
]
=
[
f
x
0
u
0
0
0
f
y
v
0
0
0
0
1
0
]
[
R
T
0
→
1
]
[
X
w
Y
w
Z
w
1
]
Z_c\begin{bmatrix}u\\v\\1\\\end{bmatrix}=\begin{bmatrix}f_x&0&u_0&0\\0&f_y&v_0&0\\0&0&1&0\end{bmatrix}\begin{bmatrix}R&T\\\mathop{0}\limits^{\rightarrow}&1\end{bmatrix}\begin{bmatrix}X_w\\Y_w\\Z_w\\1\end{bmatrix}
Zc⎣⎡uv1⎦⎤=⎣⎡fx000fy0u0v01000⎦⎤[R0→T1]⎣⎢⎢⎡XwYwZw1⎦⎥⎥⎤
内参矩阵为:
[
f
x
γ
u
0
0
0
f
y
v
0
0
0
0
1
0
]
\begin{bmatrix}f_x&\gamma&u_0&0\\0&f_y&v_0&0\\0&0&1&0\end{bmatrix}
⎣⎡fx00γfy0u0v01000⎦⎤
相机内参分别为:
f
:
f:
f:焦距,单位毫米;
f
x
f_x
fx:使用像素来描述x轴方向焦距的长度;
f
y
f_y
fy:使用像素来描述y轴方向焦距的长度;
u
0
,
v
0
u_0,v_0
u0,v0:主点坐标(相对于成像平面),单位也是像素;
γ
\gamma
γ:为坐标轴倾斜参数,理想情况下为0;
内参矩阵是相机自身的属性,通过标定就可以得到这些参数。
外参矩阵为:
[
R
T
0
→
1
]
\left[ \begin{array}{c|c} R&T \\ \hline \mathop{0}\limits^{\rightarrow}&1 \end{array} \right]
[R0→T1]
相机的外参是世界坐标系在相机坐标系下的描述。
R
R
R是旋转参数是每个轴的旋转矩阵的乘积,其中每个轴的旋转参数
(
ϕ
,
ω
,
θ
)
(\phi,\omega,\theta)
(ϕ,ω,θ)。
T
T
T是平移参数
(
T
x
,
T
y
,
T
z
)
(T_x,T_y,T_z)
(Tx,Ty,Tz)。
畸变参数是:k1,k2,k3径向畸变系数,p1,p2是切向畸变系数。径向畸变发生在相机坐标系转图像物理坐标系的过程中。而切向畸变是发生在相机制作过程,其是由于感光元平面跟透镜不平行。径向畸变,即由于透镜的不同区域的焦距的不同而引起的畸变,分为枕形畸变和桶形畸变如下图所示,越靠近镜头边缘畸变越明显。
二、相机标定
相机标定是后续计算机视觉工作的前提,其标定的目的是为了确定相机的内参、外参以及畸变参数。标定的方法有:线性标定法、非线性优化标定法、两步标定法。线性标定法:运算速度快但是标定的精度不高,因为相机畸变都是非线性的。非线性优化标定法:标定精度高,但模型复杂。两步标定法有:Tsai的经典两步法和张正友的标定方法。
线性标定法
将内参和外参合并
Z
c
[
u
v
1
]
=
M
[
X
w
Y
w
Z
w
1
]
Z_c\begin{bmatrix}u\\v\\1\\\end{bmatrix}=M\begin{bmatrix}X_w\\Y_w\\Z_w\\1\end{bmatrix}
Zc⎣⎡uv1⎦⎤=M⎣⎢⎢⎡XwYwZw1⎦⎥⎥⎤其中
M
=
[
m
11
m
12
m
13
m
14
m
21
m
22
m
23
m
24
m
31
m
32
m
33
m
34
]
M=\begin{bmatrix}m_{11}&m_{12}&m_{13}&m_{14}\\m_{21}&m_{22}&m_{23}&m_{24}\\m_{31}&m_{32}&m_{33}&m_{34}\end{bmatrix}
M=⎣⎡m11m21m31m12m22m32m13m23m33m14m24m34⎦⎤
整理消去
Z
c
Z_c
Zc得到两个关于
m
i
j
m_{ij}
mij的线性方程:
X
w
m
11
+
Y
w
m
12
+
Z
w
m
13
+
m
14
−
u
X
w
m
31
−
−
u
Y
w
m
32
−
u
Z
w
m
33
=
u
m
34
X
w
m
21
+
Y
w
m
22
+
Z
w
m
23
+
m
24
−
v
X
w
m
31
−
−
v
Y
w
m
32
−
v
Z
w
m
33
=
v
m
34
X_wm_{11}+Y_wm_{12}+Z_wm_{13}+m_{14}-uX_wm_{31}--uY_wm_{32}-uZ_wm_{33}=um_{34}\\ X_wm_{21}+Y_wm_{22}+Z_wm_{23}+m_{24}-vX_wm_{31}--vY_wm_{32}-vZ_wm_{33}=vm_{34}
Xwm11+Ywm12+Zwm13+m14−uXwm31−−uYwm32−uZwm33=um34Xwm21+Ywm22+Zwm23+m24−vXwm31−−vYwm32−vZwm33=vm34
求解步骤:
1、每个标定点对应两个方程,选取
n
(
n
≥
6
)
n(n\geq6)
n(n≥6)个标定特征点,得到11个未知数的超定方程(假设
m
34
=
1
m_{34}=1
m34=1);
2、最小二乘法求解;
3、分解得到的变换矩阵
在不考虑相机畸变的非线性问题时可使用线性标定。
非线性标定法
应用非线性模型,通过非线性优化的方法求解相机参数。
Citation
https://blog.csdn.net/lingchen2348/article/details/83052214
https://blog.csdn.net/yangdashi888/article/details/51356385