news 2026/4/18 7:04:43

用matlab对相机进行标定获取相机内参

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用matlab对相机进行标定获取相机内参

相机内参标定

内参是相机自身的固有参数(如焦距、主点、畸变系数)

作用是将图片中的像素坐标转换为相机坐标系下的 3D 坐标,修正相机畸变(比如鱼眼镜头的图像变形)

相机的内参虽然是固定的,但实际出厂时会有误差,所以必须先用棋盘格标定(比如 OpenCV 的标定工具),得到准确的 fx、fy、cx、cy

内参用一个 3×3 的矩阵表示,结构是:

内参矩阵每个参数的意思:

  • (f_x、f_y):“焦距的像素表示”——fx与fy的像素值(比如 fx=500 像素)表征着相机的焦距(比如 35mm)

    就像你用手机拍杯子时:fx 决定了 “杯子在屏幕左右方向上的放大程度”;fy 决定了 “杯子在屏幕上下方向上的放大程度”。

  • (c_x、c_y):“图像主点的像素坐标”—— 相机光轴(镜头中心的射线)在照片里对应的像素点(理想情况下是照片的中心,比如 1280×720 的照片,cx≈640,cy≈360)。
转换公式(核心逻辑)

如果相机坐标系里有一个物体点,坐标是(X_c, Y_c, Z_c)(Zc 是物体离相机的距离,即深度),那么它在照片里对应的像素坐标(u, v),就是通过内参矩阵计算的:

像素与相机坐标系3D 坐标转换例子:

RGBD 相机能同时拍到 “像素(u,v)” 和 “深度(Zc,即物体离相机的距离)”,结合内参,就能反推出物体在相机坐标系里的 3D 坐标(X_c, Y_c, Z_c):

举个例子:

  • 相机内参:fx=500,fy=500,cx=640,cy=360;(出厂后就固定了)
  • 照片里物体的像素(坐标)是 (740, 410),深度是 0.5 米(Zc=0.5);
  • 计算得:Xc=(740-640)×0.5/500=0.1 米,Yc=(410-360)×0.5/500=0.05 米;
  • 所以物体在相机坐标系里的位置是 (0.1, 0.05, 0.5) 米。

内参的标定方法总共来说有3种,一种是使用matlab,一种是使用opencv,一种是自己写出张正友标定源码去计算内参,本文介绍matlab

用matlab对相机进行标定获取相机内参的步骤

Step1 打开相机标定工具箱

在《图像处理和计算机视觉》栏 找到相机标定工具:

选择从文件夹中导入图片(提前用你的相机从多个角度拍摄好棋盘格照片,20张)

测算,修改你的棋盘格尺寸

执行

清洗一下数据

选择输出参数

查看参数

上图划红线解释依次为:

径向畸变系数(3阶),切向畸变系数(2阶),世界坐标单位是mm,内参矩阵,焦距(分fx,fy),成像平面原点(理想情况是图像宽高中心位置),成像平面原点坐标(单位是像素);

s

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/21 12:12:11

资本赋能实体智能——2026 CES Asia机器人产业投资峰会定档北京

在机器人产业从技术迭代迈向量产落地的关键周期,资本赋能成为产业突围的核心动力。“资本赋能实体智能——2026 CES Asia机器人产业投资峰会”将于2026年6月10日至12日在北京举办,大会以“链接资本与实体智能,加速产业商业化落地”为核心&…

作者头像 李华
网站建设 2026/4/15 1:20:01

探索四桥臂三维空间矢量调制算法仿真

四桥臂三维空间矢量调制算法仿真 四桥臂3DSVPWM调制算法仿真 电压型逆变器,图为负载电压 可实现单桥臂电压独立控制在电力电子领域,电压型逆变器的控制算法一直是研究热点。今天咱来聊聊四桥臂3DSVPWM调制算法的仿真,这算法可厉害啦&#xff…

作者头像 李华