当前位置: 首页 > news >正文

【Camera】Monocular vs Stereo Calibration


文章目录

  • 一、单目标定得到什么?
    • ① 内参(Intrinsic)
    • ② 畸变参数(Distortion)
    • ③ 每张图片的外参(Pose)
  • 二、双目标定得到什么?
  • 三、最大的区别
  • 四、OpenCV 返回值也能看出来
  • 五、总结

不完全一样,但双目标定包含单目标定。可以这样理解:

单目标定解决的是"每个相机自己长什么样";双目标定解决的是"两个相机之间是什么关系"。


一、单目标定得到什么?

对于一个相机,标定得到:

① 内参(Intrinsic)

描述相机自身成像特性:

K = [ f x 0 c x 0 f y c y 0 0 1 ] K= \begin{bmatrix} f_x&0&c_x\\ 0&f_y&c_y\\ 0&0&1 \end{bmatrix}K=fx000fy0cxcy1

包括:

  • 焦距 (f_x,f_y)
  • 主点 (c_x,c_y)

以及

② 畸变参数(Distortion)

例如:

  • k1、k2、k3(径向畸变)
  • p1、p2(切向畸变)

注:OpenCV 实际返回顺序是(k1, k2, p1, p2, k3),径向与切向是交错排列的,不是"先全部径向、再全部切向"。


③ 每张图片的外参(Pose)

这里很多人容易误解。

单目标定也有外参,但它表示的是:

标定板相对于相机的位置和姿态。

对于每张图片都会得到:

  • R
  • t

例如:

R,t(第1组)

R,t(第2组)

R,t(第3组)

标定板 第1张

相机

标定板 第2张

标定板 第3张

所以:

单目标定没有一个固定外参。

每拍一张图都会重新算一组。


二、双目标定得到什么?

双目标定首先会分别做:

左相机

K_left / Dist_left

右相机

K_right / Dist_right

这和单目标定完全一样。

然后增加一步:

计算

R, T(固定外参)

左相机 Left

右相机 Right

也就是:

左相机到右相机的固定变换。

OpenCV 的方向约定是:把点从左相机坐标系变换到右相机坐标系,即

X r i g h t = R ⋅ X l e f t + T X_{right}=R\cdot X_{left}+TXright=RXleft+T

例如:

R = 两个相机坐标系之间旋转 T = 两个相机中心之间平移

这就是大家常说的

Stereo Extrinsic


三、最大的区别

单目标定的外参:

外参随每张图而变

标定板 Board

相机 Camera

它随着拍摄变化。

例如:

第1张: Board 在这里 第2张: Board 又换地方了

所以:

外参一直变。


双目标定的外参:

外参固定不变

左相机 Left

右相机 Right

这是两个相机安装好的位置关系。

只要相机没拆:

永远一样。

例如(理想的"完全平行"安装示意):

Baseline = 60 mm R ≈ 单位矩阵 T = [60 0 0]

注意:真实相机装配存在公差,标定出的 R几乎不会是严格的单位矩阵,只会接近单位阵。严格单位阵是理想假设,或者是极线校正(rectification)之后才有的状态——正是靠后续的校正,才把左右两图摆成严格行对齐。

这组参数只要相机不拆就一直不变。


四、OpenCV 返回值也能看出来

calibrateCamera()

返回:

K Dist rvecs tvecs

其中

rvecs/tvecs 表示: Board → Camera

而且有很多组。


stereoCalibrate()

返回:

K1 Dist1 K2 Dist2 R T E F

其中:

  • E:本质矩阵(Essential),描述标定坐标系下的极线约束
  • F:基础矩阵(Fundamental),描述像素坐标系下的极线约束

这里的

R T

表示:

Left Camera ↓ Right Camera

只有一组。


五、总结

项目单目标定双目标定
左相机内参
右相机内参❌(需单独标定)
畸变参数
标定板→相机外参✅(每张图一组)✅(每张图参与联合优化,通常不作主要返回值)
左相机→右相机外参✅(固定一组)
是否能做去畸变
是否能做双目测距/三角化❌(单帧纯单目无绝对尺度)

一句话概括:

  • 单目标定得到的是相机自身参数(内参、畸变)以及每张标定图中标定板相对于相机的姿态(外参,每张都不同)。
  • 双目标定不仅得到左右相机各自的内参和畸变,还会估计左右相机之间固定的外参(R、T)。正是这组固定外参,使得双目系统能够进行极线校正、立体匹配和三角测量来恢复三维深度。

http://www.jsqmd.com/news/1119273/

相关文章:

  • 【TwinCAT3实战教程】项目交付前的最后一步:六大核心配置与避坑指南
  • Dell笔记本散热控制终极指南:3步实现专业级风扇管理
  • 智驾人才跨界具身智能:是降维打击还是水土不服?深度技术复盘与工程落地
  • Linux TCP网络编程深度精讲,三次握手、四次挥手、TCP状态流转、粘包拆包、套接字参数、全套服务端客户端实战与工程解决方案
  • Prompt Engineering进阶指南:从提示词工程到AI Agent工作流编排
  • 7自由度开源机械臂OpenArm 2.0:从实验室到生产环境的完整实战指南
  • Codex 卡在 Reconnecting 5/5?手把手带您排查修复
  • 电子合同选型7大盲区,企业必看避坑指南
  • 【中小学AI人工智能教育】声音分类——提琴分类:快速定义项目类型实例
  • 2FA 方案的认证架构对比:本地存储、云同步、端到端加密
  • 2026年第三方物流服务商横向对比:专业3PL与普通物流公司的五大差异——上海心泾国际物流 vs 市场主流服务商
  • 智慧农业技术深耕:从单点赋能到全产业链升级,重构农业生产底层模式
  • RK3588芯片架构解析与硬件设计实践
  • AUTOSAR CP Watchdog 原理与运行机制
  • 针对 Zth(t) 数据和积分结构函数数据的完整 C# 处理方案 包括反卷积(时间常数谱提取)、Foster 模型拟合、Foster → Cauer 转换 以及结构函数生成
  • 国际化办公必备:一站式多语言实时会议转写工具解析
  • 保时捷明确:永远不会有纯电911,保时捷想干嘛?
  • 三、03 OTA-BootLoader前置-flash擦除写入-跳转函数编写
  • 从“能用”到“稳准快”:ChatGPT自定义指令的4阶成熟度模型(附27个真实业务场景指令模板库)
  • Cursor、Claude、OpenAI 的二次验证怎么开?AI 编程工具安全对比
  • macOS星露谷物语SMAPI启动问题:从诊断到修复的完整指南
  • 不只看细胞比例:PCF80如何补充淋巴结转移研究的空间信息
  • 2026年AI简历优化工具深度横评:Jobscan、AI简历姬、鹅来面3款实测+选型指南
  • AI拍书讲解+同步视频+智能批改+错题整理——一个APP完成暑期预习全流程
  • 【本地AI安全防护实战指南:5个漏洞+一键加固方案(Ollama篇)】
  • Selenium自动化测试与数据采集:从环境搭建到实战应用
  • 手撕字符串算法:反转、回文、验证回文 Ⅱ 完整拆解
  • 苹果突然全球涨价,授权店竟逼着交过定金的人补差价?
  • 2026-07-03:划分二进制字符串的最小费用。用go语言,有一个只由 0 和 1 组成的二进制字符串 s,以及两个代价 encCost 和 flatCost。 把字符串 s 划分成若干个连续的片段
  • Strix Halo 上手指南,用 Ollama 跑通第一个本地模型