相机标定实战:从内参、外参到畸变参数的全流程解析

1. 相机标定:为什么你的AI视觉项目第一步必须是它?

如果你玩过手机摄影,可能会发现一个现象:用广角镜头拍建筑,楼房的边缘有时会“弯”掉;或者用一些便宜的摄像头做视频通话,人脸在画面边缘会有点变形。这背后其实都是相机镜头“不完美”的真实写照。在AI视觉、机器人、自动驾驶这些听起来很酷的领域,工程师们要做的第一件“接地气”的事,往往就是先搞定相机的这些“不完美”——这个过程,就是相机标定

简单来说,相机标定就是给相机做一次“体检”和“身份认证”。通过这次“体检”,我们能拿到一套精确的“说明书”,里面包含了相机的内参外参畸变参数。这套说明书有什么用呢?我打个比方:你想让一个机器人用它的“眼睛”(相机)去抓取桌上的一个水杯。机器人需要知道:1. 它的眼睛看东西有没有变形(畸变参数);2. 它眼睛的“视力”特性,比如焦距是多少(内参);3. 它的眼睛相对于桌子的位置和角度(外参)。只有拿到了这份准确的说明书,机器人才能计算出水杯在真实三维空间中的精确位置,从而成功抓取。没有标定或者标定不准,结果可能就是机器人要么抓空,要么把杯子打翻。

所以,无论你是做三维重建、视觉SLAM(同步定位与地图构建)、还是简单的AR滤镜叠加,相机标定都是绕不开的基石步骤。它一点也不“高大上”,反而是一个非常具体、需要动手操作的实践过程。接下来,我就以一个做过无数遍标定的“老手”身份,带你从零开始,把内参、外参、畸变参数这三大块掰开揉碎了讲清楚,并给你一套可以直接上手操作的全流程指南。

2. 彻底搞懂三大核心参数:内参、外参与畸变

在动手之前,我们必须先理解要“标”的到底是什么。别被那些数学符号吓到,我会用最生活化的方式给你解释。

2.1 内参:相机的“身份证”

你可以把相机内参理解为这台相机出厂自带的、独一无二的物理特性。它描述的是三维空间中的点,是如何映射到相机二维照片(像素平面)上的。核心是一个3x3的矩阵,但关键参数就几个:

  • 焦距 (fx, fy):这是最重要的参数。它表示的是相机镜头中心到成像传感器的距离。在像素坐标系中,我们通常用 fxfy 来表示。为什么有两个?因为每个像素在x和y方向上的物理尺寸可能略有不同(不是完美的正方形),所以需要用两个值分别表示两个方向的焦距(以像素为单位)。fx = F / dx,其中F是物理焦距(毫米),dx是每个像素在x方向的宽度(毫米/像素)。
  • 主点 (cx, cy):也叫光心。理论上,它是光轴与成像平面的交点,也就是图像的正中心。但由于传感器安装的微小偏差,这个点往往不在图像像素坐标的 (width/2, height/2) 处。(cx, cy) 就是这个点真实的像素坐标。
  • 倾斜系数 (γ):理想情况下,图像的x轴和y轴应该是完全垂直的。但有些相机传感器可能安装时有微小的旋转,导致两个像素轴不垂直,这个参数就是用来修正这个倾斜的。对于绝大多数现代相机,这个值非常接近甚至等于0。

生活类比:想象你的相机是一个画家。内参就规定了这位画家的“绘画规则”:他的手臂长度(焦距)决定了同样距离的物体在画布上画多大;他习惯把画布的中心点定在哪里(主点);他握笔的手是否端正(倾斜系数)。

在标定中,我们通常用一个矩阵 K 来表示内参:

K = [ fx,  γ, cx,
       0, fy, cy,
       0,  0,  1 ]

拿到这个矩阵,我们就完成了对相机自身属性的“身份认证”。

2.2 外参:相机在“世界”中的位姿

如果说内参是相机的“自述”,那么外参就是相机关于“外部世界”的“述职报告”。它回答了一个问题:相机此刻位于世界坐标系的哪个位置,朝哪个方向看?

外参由一个3x3的旋转矩阵 R 和一个3x1的平移向量 T 组成。

  • 旋转矩阵 R:它描述了世界坐标系需要经过怎样的旋转,才能与相机坐标系对齐。它可以分解为分别绕X、Y、Z轴旋转的三个角度(欧拉角,如俯仰角、偏航角、滚转角)。
  • 平移向量 T:它描述了世界坐标系的原点,在相机坐标系下的坐标。简单说,就是相机在世界中的位置。

生活类比:继续画家的例子。现在画家(相机)站在一个房间(世界)里作画。外参就是描述:画家站在房间的哪个角落(T),以及他的脸朝向东边还是西边,头是仰着还是低着(R)。同一个房间,画家站在不同位置、不同角度,画出来的透视关系是完全不同的。

外参矩阵通常表示为 [R |

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值