单目深度估计

blog
huggingface
深度估计,就是获取图像中场景里的每个点到相机的距离信息,这种距离信息组成的图我们称之为深度图
![[Pasted image 20241122141944.png]]

  1. 深度网络
    • 常用的网络结构包括:
      • 卷积神经网络(CNN):提取局部特征。
      • 编码器-解码器(Encoder-Decoder)结构:编码全局上下文信息,解码为逐像素的深度预测。
      • Transformer:利用其捕获全局特征的能力提升精度。
  2. 监督学习与无监督学习
    • 监督学习:需要带有深度标签的数据(如通过激光雷达标注)。
    • 无监督学习:通过图像对(如立体对、视频帧)间的几何关系训练模型。
  3. 损失函数
    • 常见的损失包括:
      • L1/L2 损失:度量预测深度与真实深度的差异。
      • 结构相似性(SSIM)损失:增强深度预测的边缘对齐。

应用场景:

  • 自动驾驶:检测障碍物距离。
  • 增强现实(AR):构建虚拟与现实交互的深度场景。
  • 机器人导航:帮助机器人感知周围的3D环境。

简单来说就是给图测深度

光流估计

任务定义

光流估计旨在计算时间序列(多个图片)中的每个像素的运动,即预测一个像素从一帧到下一帧的位置变化(用二维向量表示)。这实际上是像素级别的运动场估计。

关键技术

  1. 经典方法

    • 稀疏光流(Sparse Optical Flow):
      • 仅估计图像中特定关键点的运动。
      • 示例算法:Lucas-Kanade 方法。
    • 稠密光流(Dense Optical Flow):
      • 为所有像素预测运动矢量。
      • 示例算法:Horn-Schunck 方法。
  2. 深度学习方法

    • 利用卷积神经网络(CNN)或更复杂的架构,如:
      • FlowNet
        • 基于卷积神经网络的端到端光流估计模型。
      • RAFT(Recurrent All-Pairs Field Transforms)
        • 通过迭代优化计算高精度光流。
  3. 损失函数

    • 常见损失包括:
      • 像素差异损失:约束相邻帧中匹配像素的颜色相似性。
      • 平滑损失:鼓励光流场在局部区域的连续性。

MDE 与 OFE 的联系与区别

维度 MDE OFE
输入 单张 RGB 图像 两帧或多帧 RGB 图像
输出 每个像素的深度值 每个像素的二维位移向量
目标 恢复 3D 信息 捕获像素的运动信息
应用场景 自动驾驶、增强现实、机器人导航 视频稳定、目标跟踪、帧插值
挑战 深度缺失、复杂场景 遮挡、快速运动、噪声干扰