Scene Flow
Scene Flow は、3D scene 上の各点が時間とともにどのように動いたかを表す dense な 3D motion field です。Optical Flow が image plane 上の 2D motion を表すのに対して、Scene Flow は 3D 空間内の motion を表します。
Optical flow との違い
Optical flow は、pixel の 2D displacement を推定します。
Scene flow は、3D point の displacement を推定します。
Depth が既知であれば、2D optical flow を 3D motion に lift できます。ただし、camera motion、object motion、occlusion、depth error を同時に扱う必要があります。
入力の種類
Scene Flow は、次のような入力から推定されます。
| 入力 | 説明 |
|---|---|
| Stereo video | 時刻 と の stereo pair から 3D motion を推定します。 |
| RGB-D sequence | Depth sensor により各 frame の 3D point が得られます。 |
| LiDAR sequence | Point cloud 間の 3D flow を推定します。 |
| Monocular video | Depth と motion を同時に推定する必要があり、最も ill-posed です。 |
3D Reconstruction での役割
Scene Flow は、dynamic scene reconstruction において重要です。Static scene を仮定した SfM や SLAM では、moving object は outlier になりがちです。Scene Flow を使うと、scene の dynamic part を明示的に modeling できます。
応用例には、autonomous driving、dynamic object tracking、non-rigid reconstruction、video understanding があります。
難しいケース
- Occlusion と disocclusion
- Non-rigid motion
- Sparse LiDAR point cloud
- Reflective / transparent object
- Camera ego-motion と object motion の分離
- Long-range motion
関連ページ
主なソース
- Vedula et al., “Three-Dimensional Scene Flow”, 1999: https://www.ri.cmu.edu/pub_files/pub2/vedula_sundar_1999_1/vedula_sundar_1999_1.pdf
- Scene Flow Estimation survey: https://arxiv.org/abs/1612.02590
- KITTI Scene Flow benchmark: https://www.cvlibs.net/datasets/kitti/eval_scene_flow.php
- FlyingThings3D / Scene Flow datasets: https://lmb.informatik.uni-freiburg.de/resources/datasets/SceneFlowDatasets.en.html