UCAS - AI学院 - 计算机视觉专项课 - 第5讲 - 课程笔记

UCAS-AI学院-计算机视觉专项课-第5讲-课程笔记

  • 相机模型与多视几何

相机模型与多视几何

  • 高级认知:空间视觉(几何) + 物体视觉(学习)
  • 三维视觉所需信息
    • 二维图像基本信息
    • 场景的三维结构
    • 六自由度的空间位姿
  • 计算机视觉框架
    • Marr:图像——特征提取——2.5维深度图(摄影者视角深度信息)——三维模型(物体视角深度信息)——理解
    • Poggio:图像——特征提取——子空间学习(不需要完全还原)——理解
    • Hinton:图像——深度学习(生物视觉过程模拟)——理解
  • 三维计算机视觉应用
    • 三维重建
    • 运动捕捉
    • 三维地图构建和重定位
  • 研究内容
    • 场景结构
    • 相机位姿
    • 相机参数
  • Structure from Motion (SfM)
    • 多视角图像
    • 重建场景稀疏结构与相机位姿(off-line)
    • SfM可通过MVS(多视图立体几何)获得稠密场景结构(off-line)
    • SfM可通过PnP(像素的点对应)计算相机实时位姿(on-line)
  • Simultaneous Localization and Mapping (SLAM)
    • 视频序列
    • 重建场景稀疏 / 准稠密 / 稠密结构与相机位姿(on-line)
    • 需要闭环检测 + 图优化(on-line)
  • 相机成像
    • 小孔成像:小孔(光圈)阻挡大部分光线,胶片上获得倒立的像
      • 小光圈:曝光时间长,清晰图像
      • 大光圈:曝光时间段,模糊图像
      • 光圈过小:发生衍射现象
    • 透镜系统:光线汇聚作用,呈现时间很短
      • 景深:
        • 聚焦平面与弥散圈,成像公式 1 D ′ + 1 D = 1 f \frac 1{D^\prime} + \frac 1{D} = \frac 1f D1+D1=f1
        • 在弥散圈范围内,人眼都可看到清晰图像——景深
        • 景深范围调整:光圈,越小景深越大
    • 在CV中,绝大多数分析都可以将成像系统等效为一个小孔成像模型
  • 欧氏空间与射影空间
    • 点对应: X = [ X Y Z ] \bold X = \left[ \begin{array}{c} X \\ Y \\ Z \end{array} \right] X=XYZ x = [ x y ] \bold x = \left[ \begin{array}{c} x \\ y \end{array} \right] x=[xy]
      • 原点定义在相机光心,x轴和y轴平行于相机平面,z轴垂直于相机平面
      • 二维平面视为位于焦距距离 f f f的三维点
      • 投影——相似三角形对应关系: λ [ x y f ] = [ X Y Z ] \lambda\left[ \begin{array}{c} x \\ y \\ f \end{array} \right]=\left[ \begin{array}{c} X \\ Y \\ Z \end{array} \right] λxyf=XYZ
      • 存在无穷远点,需要设法参与计算——欧氏空间无法满足需求
    • 射影空间
      • 一条直线上只有一个无穷远点
      • 在一个平面上,所有的无穷远点组成一条直线,称为该平面的无穷远直线
      • 三维空间中的无穷远点组成一个平面,称为这个空间的无穷远平面
      • 不区分有限远元素和无穷远元素,记 P n P^n Pn
      • 一维:欧氏直线 + 无穷远点
      • 二维:欧氏平面 + 无穷远直线
      • 三维:欧式空间 + 无穷远平面
  • 齐次坐标
    • 射影空间的坐标表达方式
    • ( x , y ) = [ x y 1 ] (x, y) = \left[ \begin{array}{c} x \\ y \\ 1 \end{array} \right] (x,y)=xy1
    • ( x , y , z ) = [ x y z 1 ] (x, y, z) = \left[ \begin{array}{c} x \\ y \\ z \\ 1 \end{array} \right] (x,y,z)=xyz1
    • [ x y w ] = ( x / w , y / w ) \left[ \begin{array}{c} x \\ y \\ w \end{array} \right] = (x / w, y / w) xyw=(x/w,y/w)
    • [ x y z w ] = ( x / w , y / w , z / w ) \left[ \begin{array}{c} x \\ y \\ z \\ w \end{array} \right] = (x / w, y / w, z / w) xyzw=(x/w,y/w,z/w)
    • 齐次坐标在相差一个尺度时等价: λ [ x y z 1 ] = [ x y z 1 ] \lambda \left[ \begin{array}{c} x \\ y \\ z \\ 1 \end{array} \right] = \left[ \begin{array}{c} x \\ y \\ z \\ 1 \end{array} \right] λxyz1=xyz1
    • 无穷远点齐次坐标: [ x y z 0 ] \left[ \begin{array}{c} x \\ y \\ z \\ 0 \end{array} \right] xyz0
  • 相机模型: [ x y f ] = [ 1 0 0 0 0 1 0 0 0 0 1 0 ] [ x y z 1 ] \left[ \begin{array}{c} x \\ y \\ f \end{array} \right] = \left[ \begin{array}{c} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \end{array} \right]\left[ \begin{array}{c} x \\ y \\ z \\ 1 \end{array} \right] xyf=100010001000xyz1
    • 该矩阵即为投影矩阵
    • 注意: f f f的单位为像素(保持和图像坐标量纲一致)
    • 单位化处理: [ x y 1 ] = [ f 0 0 0 f 0 0 0 1 ] [ 1 0 0 0 0 1 0 0 0 0 1 0 ] [ x y z 1 ] \left[ \begin{array}{c} x \\ y \\ 1 \end{array} \right] = \left[ \begin{array}{c} f & 0 & 0 \\ 0 & f & 0 \\ 0 & 0 & 1 \end{array} \right] \left[ \begin{array}{c} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \end{array} \right] \left[ \begin{array}{c} x \\ y \\ z \\ 1 \end{array} \right] xy1=f000f0001100010001000xyz1
    • 坐标系
      • 世界坐标系,不依赖相机运动发生变化
      • 相机坐标系,原点位于相机光心
      • 坐标变换:刚体欧氏变换(相机的旋转 R R R和平移 t t t
      • Expected node of type ordgroup, but got node of type font
      • 基于世界坐标系齐次坐标的相机模型Expected node of type ordgroup, but got node of type font
      • K \bold K K为内参数矩阵 K = [ f 0 0 0 f 0 0 0 1 ] \bold K = \left[ \begin{array}{c} f & 0 & 0 \\ 0 & f & 0 \\ 0 & 0 & 1 \end{array} \right] K=f000f0001,使用 x \bold x x X \bold X X分别表示物体的相机投影坐标和世界坐标(场景结构),则有模型的简记 x = K [ R ∣ t ] X \bold x = \bold K [\bold R|\bold t]\bold X x=K[Rt]X
      • 进一步简记为投影矩阵 x = P X \bold x = \bold P \bold X x=PX,其中 K \bold K K为内参数矩阵(硬件), [ R ∣ t ] [\bold R | \bold t] [Rt]为外参数矩阵(位姿)
    • 完成的内参数矩阵KaTeX parse error: Unknown column alignment: f at position 31: …[\begin{array} f̲_x & s & p_x \…
      • s s s为歪斜系数,感光源是否为严格的正方形(偏斜角度为 arctan ⁡ ( 1 / s ) \arctan(1 / s) arctan(1/s)
      • p p p为补点,相机光轴所在的位置(可以使坐标均为整数)
      • 不同的实现规定不同的左手系(MSDX) / 右手系(图像、中心、OpenGL)
      • 镜头畸变
        • 主要是径向畸变,越靠近中心形变程度越小
        • r 2 = ∥ x ∥ 2 r^2 = \|\bold x\|^2 r2=x2
        • x ′ = ( 1 + k 1 r 2 + k 2 r 4 ) x \bold x^\prime = (1 + k_1 r^2 + k_2 r^4) \bold x x=(1+k1r2+k2r4)x
        • x ′ x^\prime x为畸变结果,需要完成逆变换
  • 多视几何
    • 单幅图像无法重建场景结构
    • 单幅图像的投影方程 x = K [ R ∣ t ] X \bold x = \bold K [\bold R|\bold t]\bold X x=K[Rt]X
    • 多幅图像,由于不同点对应同一实际点,可以联立方程组实现
  • 两试图几何
    • 将世界坐标系直接建立在其中一个相机上
    • 连线光心和点,得到射线,该射线在另外一个相机上得到投影射线——对极线(epipolar line)
    • 类似地,得到两个射线之间的区域即为对极区域
    • 这一区域可以约束几乎所有关键参数
    • UCAS - AI学院 - 计算机视觉专项课 - 第5讲 - 课程笔记_第1张图片
    • 对平面的描述——基本矩阵 F 3 × 3 \bold F_{3 \times 3} F3×3,表达了左侧 p \bold p p在右侧中 q \bold q q的对极线之间的映射关系 F p \bold F \bold p Fp
    • 对应点在对极线上 q ⊤ F p = 0 \bold q^\top \bold F \bold p = 0 qFp=0
    • 约束参数
      • 左相机内参数矩阵 K 1 \bold K_1 K1
      • 右相机内参数矩阵 K 2 \bold K_2 K2
      • 左右相机间相对旋转 R \bold R R
      • 左右相机间的平移 t \bold t t
    • F = K 2 − T R [ t ] × K 1 − 1 \bold F = \bold K_2^{-T} \bold R[\bold t]_{\times} \bold K_1^{-1} F=K2TR[t]×K11
      • 反对称矩阵,方便处理叉乘 [ t ] × = [ 0 − t x t y t z 0 − t x − t y t x 0 ] [\bold t]_{\times} = \left[\begin{array}{rrr} 0 & -t_x & t_y \\ t_z & 0 & -t_x \\ -t_y & t_x & 0 \end{array} \right] [t]×=0tztytx0txtytx0,该矩阵秩为2,因此 F \bold F F的秩为2
      • 求解?8点法
        • x ′ F x = 0 \bold x^\prime \bold F \bold x = 0 xFx=0,对应一个线性方程
        • F F F有9个值——尺度奇异性( f 33 f_{33} f33可以假设为1) + F的秩为2——7个自由度——实际不考虑后者——8个自由度——8个点构造8个方程求解 A f = 0 \bold A \bold f = \bold 0 Af=0
        • 线性解析求解——线性直接变换DLT
        • SVD分解 A = U Σ V ⊤ \bold A = \bold U \Sigma \bold V^\top A=UΣV V \bold V V的最后一个列向量构造 F \bold F F(对应特征值不一定为0,可能存在误差)
        • 可能秩为3?对 F \bold F FSVD分解 F = U Σ V ⊤ \bold F = \bold U \Sigma \bold V^\top F=UΣV,将 Σ \Sigma Σ中最后一个对角线元素置零,构造满足要求的 F ′ = U Σ ′ V ⊤ \bold F^\prime = \bold U \Sigma^\prime \bold V^\top F=UΣV
        • 如果出现退化情况(空间点位于同一平面),无法求解
    • 本质矩阵:假设内参数矩阵已知
      • q ~ ⊤ E p ~ = 0 \tilde {\bold q}^\top \bold E \tilde {\bold p} = 0 q~Ep~=0
      • E \bold E E由旋转和平移构成——5个自由度——5点法
    • 寻找最小配置解的意义
      • 最少的对应点?
      • 不可避免存在外点——RANSAC鲁棒估计
      • 迭代 n n n次,最少点 r r r,正确点比例 p p p,找到正确模型的概率 1 − ( 1 − p r ) n 1 - (1 - p^r)^n 1(1pr)n
      • r r r怎大,找到错误模型的概率大幅提升

你可能感兴趣的:(UCAS-课程笔记,计算机视觉,人工智能)