Kinect如何计算深度?

Sha*_*wat 5 calibration depth camera-calibration kinect

我在这里有点困惑.

Kinect如何计算深度:我的理解是

  • 红外投影仪抛出一个图案,该图案被红外热像仪反射回来读取.
  • 现在红外摄像机知道特定深度的模式.利用输入和已知模式之间的差异来计算使用三角测量已知的深度(使用相似三角形的比例).

问题1:是否考虑了红外投影仪和红外摄像机之间的距离?我猜不是因为它们太接近而不能被考虑.

问题2:现在我们直接从模式中获取深度.我们disparity map什么时候用来计算深度?

Sas*_*ssa 7

视差图基本上是您在开头提到的已知模式和观察模式之间的差异.您可以在深度计算期间使用它.

投影仪和相机之间的距离也被考虑在内.

看看下图:

在此输入图像描述

Pr是参考深度Zr中的散斑的位置,并且Po是由Kinect在深度Zo(我们想要计算的深度)捕获的相同散斑.D是2个点之间的3D视差,而d是2D图像平面上的视差.f是焦距,b是相机C和激光投影仪L之间的距离.

正如您所提到的,使用类似的三角形,深度计算如下:

在此输入图像描述

图中的数据是K. Khoshelham 对Kinect深度数据准确性分析.我建议阅读它以更深入地解释深度计算过程.