🚀 相机标定 学习笔记
文章目录
1. 标定方法
1.1 方法总览
- 传统相机标定法:已知尺寸标定板,多视角拍摄标定板,利用几何关系解参数。
- 张正友标定法:利用平面标定板,多视角拍摄标定板,利用数学优化方法解相机参数。
- 自标定法:不需要已知尺寸的标定板,通过图像序列中的几何约束进行标定。
1.2 原理解释
- 几何关系:通过建立标定板上的点与图像中对应点之间的
线性方程组
,求解相机的内参和外参。 - 数学优化方法:通过最小化重投影误差,优化相机的内参、外参和畸变参数。(
非线性优化
)
2. 张正友标定法
2.1 思路
-
从不同角度拍摄棋盘标定板:
-
图像坐标系:每张图像可以得到角点的像素坐标 ( u , v ) (u,v) (u,v)
-
世界坐标系:固定于棋盘格标定板,对应的物理坐标为 ( U , V , W ) (U,V,W) (U,V,W)
-
易得:
- 棋盘格上每一点物理坐标满足: W = 0 W=0 W=0
- 每一个格子的大小已知,可计算每一个角点在世界坐标系下的物理坐标: ( U , V , W = 0 ) (U, V, W=0) (U,V,W=0)
- 每一个角点的像素坐标: ( u , v ) (u,v) (u,v)
-
利用上述信息可获得内外参数矩阵、畸变参数。
2.2 步骤
- 求解内外参数矩阵
- 求内外参数矩阵的积
- 求内参矩阵 A A A
- 求外参矩阵 ( R 1 R 2 T ) (R1 \quad R2 \quad T) (R1R2T)
- 求解径向畸变参数
- 联立:图像坐标系(实际图像)和像素坐标系(理想图像)的转化关系、畸变公式
- 最小二乘法(求解多元线性方程组)
3. 求解内外参数矩阵
3.1 内外参数矩阵的积 H H H
- 首先给出无畸变的成像模型公式:
其中:- 只有点的坐标是变量,其他均为定值。例如尺度因子 Z Z Z 为定值
-
记 H H H 为内外参数矩阵的积(有三列),则可写作:
-
利用上式1与Z的关系,可消除尺度因子 Z Z Z,得到:
其中:- 每一个角点可以得到上式的两个约束方程, H H H是齐次矩阵,包含8个独立未知元素。
- 任选四个角点可解出一个 H H H的解
- 选取超过四个角点,利用最小二乘法可求得最佳 H H H
3.2 内参矩阵 A A A
-
当前已知: H = A ( R 1 R 2 T ) H = A(R1 \quad R2 \quad T) H=A(R1R2T)
-
所以:
-
旋转矩阵 R R R的两列 R 1 , R 2 R_1, R_2 R1,R2单位正交:
-
因此有:
-
记 A − T A − 1 = B A^{-T}A^{-1}=B A−TA−1=B ,则 B B B 为对称矩阵,求得B即可求得A
-
记内参矩阵A为:
-
用A来表示B,可得矩阵B为对称阵,表示为:
-
为了求矩阵B,必须计算 H i T B H j H_i^T B H_j HiTBHj,则:
-
若记:
-
则方程可化为:
-
因为 R 1 , R 2 R_1, R_2 R1,R2单位正交:
-
其中,矩阵v为:
-
由于矩阵 H 已知,矩阵 v 又全部由矩阵 H 的元素构成,因此矩阵 v 已知。
-
求得向量 b 即可得到矩阵B。
-
一张标定板图片可提供一个vb=0的约束关系,包含两个约束方程。
-
向量b一共有6个未知元素,3个图片即可求出向量b
-
超过3张图片可以利用最小二乘法得到最佳向量b,得到矩阵B
-
根据上式可得:
-
内参矩阵A:
-
同一个相机,相机的内参矩阵取决于相机的内部参数,无论标定板和相机的位置关系是怎么样的,相机的内参矩阵A不变。
3.3 外参矩阵 ( R 1 R 2 T ) (R1 \quad R2 \quad T) (R1R2T)
- 对于不同的图片,标定板和相机的位置关系已经改变(H已变),此时每一张图片对应的外参矩阵都是不同的。
- 根据上式即可求得外参矩阵。
- 需要指出,完整的外参矩阵为:
- 由于棋盘格上任意一点的物理坐标W=0,将旋转矩阵的R第三列R3消掉,因此R3在坐标转化中没有作用。
- R3使得R满足旋转矩阵的性质,即列与列之间单位正交,可通过R1和R2叉乘得到R3。
附录
本文所有参考链接如下,如有侵权联系删除:
- 【知乎】相机标定之张正友标定法数学原理详解(含python源码)
- 【秘塔搜索】相机标定的数学原理
- 【CSDN】单目相机标定实现–张正友标定法