视觉SLAM十四讲:从理论到实践(Chapter5:相机与图像)

前言

学习笔记,仅供学习,不做商用,如有侵权,联系我删除即可

目标

  1. 理解针孔相机的模型、内参与径向畸变参数。
  2. 理解一个空间点是如何投影到相机成像平面的。
  3. 掌握OpenCV的图像存储与表达方式。
  4. 学会基本的摄像头标定方法。

一、相机模型

1.1 针孔相机模型

针孔相机模型如下图所示:

O':主点

根据针孔相机模型和相似三角形原理,有:关系。为了消除负号,把像面翻转导共轭面位置即可获得:,整理得

成像平面到像素坐标:,(cx,cy)主点坐标,(dx,dy):像元尺寸。矩阵形式如下:

Z:深度,相机坐标系下三维空间点距离光心的距离。

K:内参矩阵。

世界坐标 --> 相机坐标 --> (投影成像) 归一化平面 --> 像素坐标系

T:变换矩阵

1.2 畸变模型

径向畸变:由透镜形状引起的畸变

  • 桶形畸变
  • 枕型畸变

切向畸变:组装时透镜和成像面不是严格平行引入的畸变。

畸变矫正模型:

畸变矫正的流程:

相机标定常用张正友标定法。

当使用Matlab或Opencv进行标定时,畸变系数的排列顺序:(k1,k2,p1,p2,k3)

单目相机成像过程总结:

1.3 双目相机模型

双目相机成像原理:

根据上图的几何关系,有以下关系:

整理后可得:d:视差(disparity),同一点在左右相机相面横坐标之差。

d最小为一个像素,所以双目相机模型的深度z具有最大值:fb

1.4 RGB-D相机模型

不需要计算深度,主动测量深度,按实现原理可分为两类:

  • 结构光(Structured Light)
  • 飞行时间法(Time-of-Flight, ToF)

二、图像

相关推荐
curemoon12 分钟前
理解都远正态分布中指数项的精度矩阵(协方差逆矩阵)
人工智能·算法·矩阵
柃歌21 分钟前
【UCB CS 61B SP24】Lecture 7 - Lists 4: Arrays and Lists学习笔记
java·数据结构·笔记·学习·算法
JANGHIGH24 分钟前
c++ std::list使用笔记
c++·笔记·list
柃歌30 分钟前
【UCB CS 61B SP24】Lecture 4 - Lists 2: SLLists学习笔记
java·数据结构·笔记·学习·算法
大溪地C1 小时前
Git 合并冲突解决与状态分析笔记
笔记·git
SKYDROID云卓小助手2 小时前
无人设备遥控器之如何分享数传篇
网络·人工智能·算法·计算机视觉·电脑
BUG 劝退师2 小时前
C语言预处理学习笔记
c语言·笔记·学习
Lqingyyyy2 小时前
P2865 [USACO06NOV] Roadblocks G 与最短路的路径可重复的严格次短路
开发语言·c++·算法
WHATEVER_LEO2 小时前
【每日论文】Text-guided Sparse Voxel Pruning for Efficient 3D Visual Grounding
人工智能·深度学习·神经网络·算法·机器学习·自然语言处理
Vacant Seat3 小时前
贪心算法-买卖股票的最佳时机
java·数据结构·算法·贪心算法