《A Flexible New Technique for Camera Calibration》
论文简述
总结
输入:
- 标定板物理坐标系中的角点坐标(p×n×3=姿态数×角点数×3 => z=0)
- 图像像素坐标系中的角点坐标(p×n×2=姿态数×角点数×2)
输出:
- 相机内参(3×3)
- 畸变系数
- 相机外参(p×4×4=姿态数×4×4)
总体步骤:
- 估算单应性矩阵H(封闭解)
- 计算相机内参
- 计算径向畸变k1,k2,相机外参
- 最大似然估计
概述
动机:从二维图像中提取几何信息
(我的理解:①像素与物理之间的尺度变化②纠正畸变)
要求:相机从不同方位(至少两个)来观测标定板(贴到平面上),不必知道相机或者标定板的位置
张氏标定法介于摄影测量标定法和自标定法之间。
标定方法 | 利用信息 | 特点 |
---|---|---|
张氏标定法 | 利用二维几何信息 | 灵活、鲁棒性好 |
摄影测量标定法 Photogrammetric calibration |
三维信息 | 有效,但标定装置昂贵 |
自标定法 Self-calibration |
纯粹的特征信息 | 灵活,但鲁棒性不好 |
基础方程
符号
- 含义:3D点和它的图像投影点之间的关系
- :2D点
- :2D点的齐次形式 —— 图像像素坐标系
- :3D点
- :3D点的齐次形式 —— 标定板物理坐标系
- :任意的比例因子
- :相机外参(联系世界坐标系和相机坐标系)
- :相机内参
- :主点的坐标
- :图像在u轴和v轴的比例因子
- :描述两个坐标轴倾斜角的参数
标定板平面与其图像之间的单应性(Homograph)
- 假设标定板平面在世界坐标系中Z=0
- 旋转矩阵的第i列记为
内参的约束条件
数学基础
旋转矩阵的性质:旋转矩阵是正交矩阵
- 行列式为1
- 各行是单位向量且两两正交
- 各列是单位向量且两两正交[1]
- 逆 = 转置
由“各列是单位向量且两两正交”可得(、为旋转矩阵的第1列、第2列):
矩阵的性质(转置、逆):
公式推导
把记为,由公式(2)可得(λ是任意的标量):
可得:
代入“单位向量+两两正交”的公式:
整理可得:
几何解释是绝对二次曲线(absolute conic),见论文P4 2.4 Geometric Interpretation。(此部分没看懂)
实现功能
实用代码
matlab的符号计算1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20% 推导《A Flexible New Technique for Camera Calibration》 P5 3.1 Colsed-form solution 中的公式(5) B = A^(-T) * A^(-1)
syms a b c u v;
A = [a, c, u; 0, b, v; 0, 0, 1]; % 相机内参
inv(A); % 逆
A.'; % 转置
B = inv(A).' * inv(A);
% 输出结果
A % 相机内参
B % 对称矩阵
% 结果:
% A =
% [ a, c, u]
% [ 0, b, v]
% [ 0, 0, 1]
% B =
% [ 1/a^2, -c/(a^2*b), -(b*u - c*v)/(a^2*b)]
% [ -c/(a^2*b), 1/b^2 + c^2/(a^2*b^2), (c*(b*u - c*v))/(a^2*b^2) - v/b^2]
% [ -(b*u - c*v)/(a^2*b), (c*(b*u - c*v))/(a^2*b^2) - v/b^2, v^2/b^2 + (b*u - c*v)^2/(a^2*b^2) + 1]
1 | % 推导《A Flexible New Technique for Camera Calibration》 P5 3.1 Colsed-form solution 中的公式(7)、公式(8) |
参考
题目 | 备注 |
---|---|
[1]正交矩阵和旋转矩阵之间关系和性质总结 | 总结旋转矩阵的性质,各列是单位向量且两两正交 |
[2][图像]摄像机标定(2) 张正友标定推导详解 | 精华文章,包含张氏相机标定的公式详细推导 |
[3]张正友标定法 | 精华文章,包含张氏相机标定的公式详细推导 |