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

【MV】Camera Calibration Fundamentals: Image Formation

文章目录

  • 相机标定——成像基本原理
  • 1、相机成像
    • 小孔成像
    • 透镜系统
  • 2、欧式空间与射影空间
  • 3、相机标定
    • 坐标系
    • 齐次坐标
    • 摄像机坐标与世界坐标之间的变换关系
    • 像平面坐标与摄像机坐标之间的变换关系
    • 图像坐标与像平面坐标之间的变换关系
    • 三维计算机视觉

相机标定——成像基本原理


1、相机成像

成不了像,都是白色的点

如何成像?在物体和胶片之间,增加一块带有小孔的屏障

小孔成像

大光圈(曝光时间短、模糊图像)

小光圈(曝光时间增加、高亮度图像)

如何又快又清晰——透镜


透镜系统

凸透镜聚光的原理,又快又清晰

按下快门的时候,蓝色的挡板复位,光可以打到后面的 sensor 上

eyepiece / viewfinder(目镜 / 取景器)中看到的是正立的像,反射了好几次

下面左图是按下快门拍照的场景,下面右图是么有按下快门,view finder 看到的是正立缩小的像


2、欧式空间与射影空间

同侧是虚像平面(Virtual Image Plane)

物体 ↓ Virtual Image Plane ↓ Camera Center

虚像平面就是为了简化针孔相机模型而人为假想放在针孔前方的一块成像平面,它不真实存在,但能让图像保持正立,使投影公式更加简单直观,因此成为计算机视觉和相机标定中的标准表示方式。

成像过程就是三维空间坐标到二维图像坐标的变换,这是一个投影过程(降维、丢失深度信息)

相机矩阵(camera projection matrix)就是建立这种三维到二维的投影关系


3、相机标定

相机标定指建立相机图像像素位置与场景点位置之间的关系,即求解相机模型的参数。

坐标系

相机模型——坐标系

点 P

在世界坐标系中的坐标( X , Y , Z ) (X,Y,Z)(X,Y,Z)

在相机坐标系中的坐标( x , y , z ) (x, y, z)(x,y,z)

在像平面坐标系中( x ′ , y ′ ) (x', y')(x,y)

在图像坐标系中( u , v ) (u, v)(u,v)

四个坐标系


齐次坐标

齐次坐标,

齐次坐标最大的意义是:将旋转、平移、缩放和透视投影等几何变换统一表示为矩阵乘法,从而极大地简化了计算机视觉和计算机图形学中的数学推导与计算。(把原本需要"矩阵 + 加法"才能完成的几何变换,统一变成"一次矩阵乘法"。

“加一维,统一变换;一次矩阵,解决所有几何变换。”


为什么还要发明齐次坐标?原因只有一个:

普通坐标没办法把"平移"写成矩阵乘法。

例如:

点:

(2,3)

向右移动:

5

向上移动:

2

结果:

(7,5)

写成公式:

x ′ = x + 5 x'=x+5x=x+5

y ′ = y + 2 y'=y+2y=y+2

发现这里有加法,不是矩阵乘法。


例如:向右 5,向上 2

以前做不到,现在可以:

[ 1 0 5 0 1 2 0 0 1 ] \begin{bmatrix} 1 & 0 & 5 \\ 0 & 1 & 2 \\ 0 & 0 & 1 \end{bmatrix}100010521

乘:

[ 2 3 1 ] \begin{bmatrix} 2 \\ 3 \\ 1 \end{bmatrix}231

得到:

[ 7 5 1 ] \begin{bmatrix} 7 \\ 5 \\ 1 \end{bmatrix}751

成功!平移也变成矩阵乘法。这就是齐次坐标最大的意义。


摄像机坐标与世界坐标之间的变换关系

旋转 Z 轴,X,Y 轴不变

旋转 X 轴,Y,Z 轴不变

旋转 Y 轴,X,Z 轴不变

最终的旋转矩阵可以写成R = R 1 R 2 R 3 R = R_1R_2R_3R=R1R2R3,还是 3x3 矩阵

光转不行,还要平移

推导一下

[ x y z 1 ] = [ R ∣ t ] [ X Y Z 1 ] \begin{bmatrix} x \\ y \\ z \\ 1 \end{bmatrix} = [R | t] \begin{bmatrix} X \\ Y \\ Z \\ 1 \end{bmatrix}xyz1=[Rt]XYZ1

[ R t 0 T 1 ] [ X Y Z 1 ] = [ ( r 11 X + r 12 Y + r 13 Z ) + t x ( r 21 X + r 22 Y + r 23 Z ) + t y ( r 31 X + r 32 Y + r 33 Z ) + t z ( 0 ⋅ X + 0 ⋅ Y + 0 ⋅ Z ) + 1 ] \begin{bmatrix} R & t \\ 0^T & 1 \end{bmatrix} \begin{bmatrix} X \\ Y \\ Z \\ 1 \end{bmatrix} = \begin{bmatrix} (r_{11}X + r_{12}Y + r_{13}Z) + t_x \\ (r_{21}X + r_{22}Y + r_{23}Z) + t_y \\ (r_{31}X + r_{32}Y + r_{33}Z) + t_z \\ (0 \cdot X + 0 \cdot Y + 0 \cdot Z) + 1 \end{bmatrix}[R0Tt1]XYZ1=(r11X+r12Y+r13Z)+tx(r21X+r22Y+r23Z)+ty(r31X+r32Y+r33Z)+tz(0X+0Y+0Z)+1

简化得到:[ x y z 1 ] = [ R [ X Y Z ] + t 1 ] \begin{bmatrix} x \\ y \\ z \\ 1 \end{bmatrix} = \begin{bmatrix} R \begin{bmatrix} X \\ Y \\ Z \end{bmatrix} + t \\ 1 \end{bmatrix}xyz1=RXYZ+t1

这里平移就是齐次坐标的目的,把平移可以转化为矩阵相乘


像平面坐标与摄像机坐标之间的变换关系

z zz越大,离得远,y ′ y'y越小,也即成的像也越小

根据相似三角形得到像平面y ′ y'y与相机坐标系 (x,y,z) 的关系

同理也可以得到像平面x ′ x'x与摄像机坐标系 (x,y,z) 的关系

OP 连线上所有点,在像平面上都是p pp

z zz略去,就是相似关系


图像坐标与像平面坐标之间的变换关系

u uuv vv是图像坐标系,x ′ x'xy ′ y'y是像平面坐标系

f x f_xfxf y f_yfy的单位都是像素


三维计算机视觉

三角化解决"点在哪儿",

姿态估计解决"相机在哪儿",

相机标定解决"相机长什么样",

稀疏重建解决"很多点在哪儿",

而 SfM(Structure from Motion)则把这些步骤串联起来,同时恢复相机轨迹和三维场景。

相机标定 (知道相机参数) │ ▼ 姿态估计(Pose) (知道相机在哪里) │ ▼ 三角化(Triangulation) (恢复一个点的3D坐标) │ ▼ 稀疏重建(Sparse Reconstruction) (恢复很多特征点形成稀疏点云) │ ▼ SfM(Structure from Motion) (把以上步骤串起来,同时恢复相机轨迹和场景)

SfM 包含了姿态估计和三角化,稀疏重建则是三角化不断重复后的结果。

概念对应现实中的工作
相机标定校准测量仪器,确保尺子准确
姿态估计记录每次站在什么位置、朝哪个方向测量
三角化根据两个观测点计算一个建筑角点的位置
稀疏重建把成千上万个角点都测出来,形成建筑骨架
SfM完整的测绘流程:边移动边测量,最终得到测绘轨迹和建筑三维骨架

双目视觉 = 已知相机姿态 + 三角化;

SfM:通常只有一台相机在移动,相机姿态未知,需要先估计每张图片的姿态,再进行三角化和重建。

SfM = 未知相机姿态 + 姿态估计 + 三角化 + 重建。

相机标定负责"认识相机",姿态估计负责"定位相机",三角化负责"定位一个点",稀疏重建负责"定位很多点",而 SfM 则负责把这些步骤组织起来,仅凭多张图片恢复整个三维世界和相机运动轨迹。


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

相关文章:

  • 怕被虚高报价套路?武汉手表回收认准奢二网全程明细化估价 - 大牌深度测评
  • 高效的ROHS分析仪行业十大品牌:为何天瑞与泓盛能成为电子电器行业的首选? - 品牌推荐大师
  • 量化交易核心:正期望值、夏普比率与海龟策略构建稳定盈利系统
  • (八)STM32 USART —— 从电平转换到DMA:构建高效串口通信系统
  • AMIS【部署 02】从零到一:amis-editor可视化编辑器私有化部署与Nginx实战配置
  • Zotero+坚果云+ZotFile:构建高效文献管理生态的进阶指南
  • 计算优化第一步:结构化问题诊断协议
  • C++面向对象单链表实现:从封装、RAII到迭代器的完整指南
  • 郑州二七二手名表回收,无套路不砍价报价即到手价 - 全城热点
  • [Bug已解决] RuntimeError: cuFFT error: CUFFT_INTERNAL_ERROR 傅里叶变换内部错误解决方案
  • Grok 4.5:政治中立性最佳AI模型的技术解析与应用实践
  • 为什么92%的人用ChatGPT练英语无效?——揭穿3大认知陷阱及2024权威验证的4阶渐进模型
  • dubbo实践最小治理单元demo
  • 2026年AI搜索优化源头厂家深度评测:国内GEO选型避坑指南 - 品牌报告
  • A Gentle Introduction to Lattice-Based Cryptography 格密码学温和入门学习笔记第四章:容错学习(LWE)问题
  • Linux C++进程间通信:无名管道原理与健壮实现指南
  • 源代码论文分享|基于JavaWeb技术的在线考试系统设计与实现!
  • 常州市金坛区亨得利官方钟表服务中心电话公示(2026年7月最新) - 亨得利官方博客
  • C++高性能无锁工作窃取队列实现与任务调度器设计
  • 江苏省会变迁研究:从镇江到南京的城市历史地理深度解析
  • Cursor AI鉴权漏洞排查:3步定位未授权访问风险,72小时内加固生产环境
  • C++11线程池实现详解:从生产者-消费者模型到性能优化
  • 资本手中的Agent:一颗完美的螺丝钉,与它觉醒后的末日
  • MSP430FR2111电气参数与接口时序:嵌入式系统设计的基石
  • 【项目实战】金融风控之信用评分卡模型
  • 2026年7月最新亨得利官方服务项目及价格查询|详细网点地址及客服热线权威信息通告 - 亨得利官方
  • 惠阳黄金回收怎么卖不亏?2026最新行情+辨伪干货+本地正规渠道排名 - 生活测评小能手
  • C++内存访问优化:突破内存墙的缓存友好编程实践
  • 2026年7月最新嘉兴浪琴官方售后服务网点地址及客服电话一览 - 浪琴官方售后服务中心
  • GEO效果监测与数据分析:构建AI搜索优化评估体系