InfiniTAM
本文把 KinectFusion 式的 TSDF 稠密重建最佳化到能在平板電腦上即時執行。資料結構沿用 Nießner 等人的體素區塊雜湊(每塊 8×8×8 體素),但改成每個桶只有一個表頭、碰撞放入額外鏈結串列的雜湊表,並以免鎖的兩步配置、只檢查上一影格可見區塊的增量可見清單,以及固定大小傳輸緩衝的 GPU 與主記憶體(或磁碟)資料交換,控制每一影格的運算量與延遲。射線投射先以低解析度的區塊投影求出搜尋範圍,並可在相機移動不大時跳過部分影格的射線投射;追蹤採點對面 ICP 或色彩直接對齊,也可直接用平板 IMU 提供旋轉,以減少旋轉漂移。整套程式以 InfiniTAM 框架公開。
本頁內容
Very high frame rate TSDF fusion on mobile devices: voxel-block hashing with a chained single-entry hash table, lock-free allocation, incremental visible-block lists, bounded host swapping, coarse raycast bounds and optional raycast skipping, with ICP or colour tracking whose rotation can come from the tablet IMU; released as the InfiniTAM framework.
技術屬性
欄位內容為文獻擷取紀錄的原文用語(英文),以原文為據;「未查證」表示本研究尚未讀到該資訊,不代表該方法不具備此能力。
| 感測輸入 | Depth camera: Microsoft Kinect for XBOX 360 (teddy sequence, 640x480 colour and disparity)、Depth camera: Occipital Structure Sensor (couch sequence, 320x240 depth)、IMU of the tablet (Apple iPad Air 2 orientation for the couch sequence; tablet IMU in the swivel-chair test) |
|---|---|
| 原文測試平台 | recorded sequences: teddy desk scene (Kinect for XBOX 360) and couch living-room scene (Structure Sensor with iPad Air 2 IMU); carrying mode not stated (Sec. 7.1, Table 1)、tablet fixed to a swivel chair (IMU rotation-drift test, Sec. 7.4)、simulation (ICL-NUIM living room and office sequences, Sec. 7.5) |
| 狀態估計 | Frame-to-model point-to-plane ICP (or colour-based direct image alignment) solved by Gauss-Newton on resolution hierarchies, rotation only at coarse levels; optionally the rotation is taken from the tablet IMU via an inertial fusion algorithm and only translation is estimated visually |
| 資料關聯 | Projective association between the current depth image and point and normal maps ray-cast from the TSDF (normals computed in image space) |
| 時間表示 | discrete poses |
| 去畸變 | 不適用 (depth camera) |
| 迴圈閉合 | none (stated as not addressed; loop closure is future work) |
| 全域最佳化 | none |
| 地圖表示 | TSDF stored in 8x8x8 voxel blocks addressed by a hash table with one list-head entry per bucket plus an excess linked list; incremental visible-block list; blocks swapped between device memory and host memory or disk through fixed-size transfer buffers |
| 先驗資訊 | none |
| 可輸出幾何 | TSDF voxel-block map with raycast point clouds and renderings; optional colour per voxel |
| 計算需求 | GPU (Nvidia CUDA), tablet APU or multi-core CPU; 1.10 to 1.91 ms per frame on a GTX Titan X (up to 910 Hz with visualisation, beyond 1.1 kHz without), 21.04 ms (47 Hz) on an Nvidia Shield Tablet (Tegra K1) with 320x240 depth and IMU, about 20 Hz on an Apple iPad Air 2 (Table 1, Sec. 1) |
使用設備
原文使用的感測器、運算硬體與載具(equipment)。型號保留原文寫法,連結到設備頁中同一型號的歸併名稱;角色依原文用途分為方法輸入、資料集感測器、執行運算平台、參考或真值量測(reference or ground truth)與比較對象設備。
| 類別 | 型號(原文寫法) | 角色 | 資料集 | 原文規格 | 出處 |
|---|---|---|---|---|---|
| 行動掃描設備 | Nvidia Shield Tablet (Nvidia Tegra K1) | 執行運算平台 | 未標示 | runs the full pipeline at up to 47 Hz on 320x240 depth with IMU | (Kähler et al., 2015, Sec. 1; Table 1) |
| 行動掃描設備 | Apple iPad Air 2 | 執行運算平台 | 未標示 | runs the full pipeline at about 20 Hz | (Kähler et al., 2015, Sec. 1; Table 1) |
| 慣性量測單元(IMU) | IMU of an Apple iPad Air 2 | 方法輸入 | 未標示 | orientation information for the couch sequence; rotation replaces visual rotation estimation | (Kähler et al., 2015, Sec. 5; Sec. 7.1) |
| RGB-D 相機 | Microsoft Kinect for XBOX 360 | 方法輸入 | 未標示 | colour and disparity images at 640x480 (teddy sequence) | (Kähler et al., 2015, Sec. 7.1) |
| RGB-D 相機 | Occipital Structure Sensor | 方法輸入 | 未標示 | depth images at 320x240 (couch sequence) | (Kähler et al., 2015, Sec. 7.1) |
| 運算硬體 | Nvidia GTX Titan X GPU | 執行運算平台 | 未標示 | up to 910 Hz with visualisation, beyond 1.1 kHz without | (Kähler et al., 2015, Sec. 1; Table 1; Fig. 12) |
| 運算硬體 | Intel Core i7-5960X (CPU-only implementation, partly OpenMP) | 執行運算平台 | 未標示 | workstation CPU runs | (Kähler et al., 2015, Sec. 7.1; Table 1) |
| 其他 | tablet fixed to a swivel chair (tablet model not stated) | 方法輸入 | 未標示 | full rotation of the chair to measure rotation drift of ICP versus IMU tracking | (Kähler et al., 2015, Sec. 7.4; Fig. 13) |
作者報告的優勢與限制
優勢
- 47 Hz on an Nvidia Shield Tablet with 320x240 depth and IMU, about 20 Hz on an iPad Air 2, and up to 910 Hz with visualisation (over 1.1 kHz without) on a GTX Titan X (Sec. 1; Table 1)
- About an order of magnitude faster than the KinectFusion and voxel hashing implementations on the same GPU (teddy: 1.91 ms versus 26.15 ms and 25.87 ms) (Table 1)
- IMU rotation kept drift over a full swivel-chair rotation to at most 0.091 deg, versus up to 23 deg with ICP (Sec. 7.4; Fig. 14)
- ICL-NUIM trajectory and surface errors lower than the best values of the ICL-NUIM benchmark paper on most sequences, including with approximate raycasting (Tables 3 to 5)
限制
- No loop closure or pose-graph optimization; truly large-scale reconstructions accumulate drift (Sec. 8)
- Intra-frame hash collisions during allocation are resolved arbitrarily and may drop blocks until the next frame (Sec. 2.2)
- Image-space normals are inaccurate at depth discontinuities (Sec. 4.3)
- ICP drift in two ICL-NUIM cases caused by non-informative depth (Fig. 15)
- The fixed-volume KinectFusion comparison could not cover the whole couch scene, so runtime comparisons use different scene coverage (Sec. 7.1) (inference)
營建工程相關證據
論文未在施工現場測試;實驗為桌面、客廳與 ICL-NUIM 合成室內,並以定性圖展示較大空間的重建(Fig. 16)。以平板電腦搭配 Structure Sensor 與 IMU 即時重建,符合低成本手持室內掃描的需求;但系統沒有迴圈閉合,作者指出大尺度重建必然累積漂移,後續 InfiniTAM v3 報告(arXiv 1708.00783,依其題名)才加入迴圈閉合。
原文驗證環境:公開基準、模擬、受控實驗
報告的性能數據
以下是原文作者報告的性能數值(author-reported results),不是本研究重新量測的結果。每張圖只並列同一個比較組(comparison group,同一張表、同一組實驗設定)內的方法;不同比較組之間的數值不可直接比較,也不構成排名。
本方法共出現在 8 個比較組,合計 102 筆紀錄。以下列出本方法紀錄最多的 4 組,其餘 4 組列在最後,並連到性能比較頁。
Kähler et al., 2015 · Table 1 本方法 24 筆
表格設定(擷取紀錄原文):Average computation time per frame over the teddy sequence (Kinect for XBOX 360, 640x480 colour and disparity, no IMU) for three visualisation strategies of InfiniTAM and for the KinectFusion [14] and voxel hashing [16] implementations (Kähler et al., 2015, Table 1)
average computation time per frame (full),authors' teddy sequence · teddy
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Kähler et al., 2015 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Kähler et al., 2015, Table 1)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| InfiniTAM (full raycast every frame)(Nvidia Titan X)本方法原文提出 | 1.91 ms | (Kähler et al., 2015, Table 1(a)) |
| InfiniTAM (full raycast every frame)(Nvidia Tegra K1)本方法原文提出 | 36.53 ms | (Kähler et al., 2015, Table 1(a)) |
| InfiniTAM (full raycast every frame)(Apple iPad Air 2)本方法原文提出 | 82.6 ms | (Kähler et al., 2015, Table 1(a)) |
| InfiniTAM (full raycast every frame)(Intel Core i7-5960X)本方法原文提出 | 45.28 ms | (Kähler et al., 2015, Table 1(a)) |
Schöps et al., 2020 · Table 2 (ground-truth trajectories) 本方法 24 筆
表格設定(擷取紀錄原文):ICL-NUIM living room with simulated depth noise; ground-truth trajectories used and loop-closure handling disabled for all methods; reconstructions aligned to the ground-truth model with point-to-plane ICP; evaluation threshold 1 cm; 'smoothed' = same bilateral filter as SurfelMeshing preprocessing (Schöps et al., 2020, Table 2 (ground-truth trajectories))
Accuracy [%] (share of reconstructed surfels within 1 cm of ground truth),ICL-NUIM · kt0
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Schöps et al., 2020 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Schöps et al., 2020, Table 2 (ground-truth trajectories))
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| InfiniTAM [29]本方法 | 76.4% | (Schöps et al., 2020, Table 2) |
| InfiniTAM [29] - smoothed本方法 | 78.3% | (Schöps et al., 2020, Table 2) |
| FastFusion [27] | 85.5% | (Schöps et al., 2020, Table 2) |
| FastFusion [27] - smoothed | 75.9% | (Schöps et al., 2020, Table 2) |
| ElasticFusion [17] | 96.2% | (Schöps et al., 2020, Table 2) |
| ElasticFusion [17] - smoothed | 95.7% | (Schöps et al., 2020, Table 2) |
| SurfelMeshing (Ours)原文提出 | 93.5% | (Schöps et al., 2020, Table 2) |
Kähler et al., 2015 · Table 5 本方法 16 筆
表格設定(擷取紀錄原文):Reconstruction error of the living room models against the ICL-NUIM ground-truth surface (m); statistics as labelled in the table (Kähler et al., 2015, Table 5)
Error (m), mean,ICL-NUIM · kt0 (living room)
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Kähler et al., 2015 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Kähler et al., 2015, Table 5)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| Handa best (best value reported in the ICL-NUIM benchmark paper) | 0.0114 m | (Kähler et al., 2015, Table 5) |
| ITM (InfiniTAM)本方法原文提出 | 0.006 m | (Kähler et al., 2015, Table 5) |
Vespa et al., 2018 · Table I 本方法 10 筆
指標ATE (m)
表格設定(擷取紀錄原文):ATE RMSE (Euclidean distance between ground-truth and estimated positions) on ICL-NUIM living room and TUM RGB-D; 1 cm finest voxels, depth-only tracking, same parameters throughout; 'x' = tracking failure (Vespa et al., 2018, Table I)
ATE (m),ICL-NUIM · ICL_LR_0
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Vespa et al., 2018 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Vespa et al., 2018, Table I)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| TSDF (octree TSDF fusion, ours)原文提出 | 0.0113 m | (Vespa et al., 2018, Table I) |
| OFusion (octree occupancy fusion, ours)原文提出 | 0.0305 m | (Vespa et al., 2018, Table I) |
| InfiniTAM [16] (default depth-only tracker)本方法 | 0.3052 m | (Vespa et al., 2018, Table I) |
其他比較組
來源
Kähler et al., 2015
(2015)Very High Frame Rate Volumetric Integration of Depth Images on Mobile DevicesIEEE Transactions on Visualization and Computer Graphics (ISMAR 2015 special issue), 21(11):1241-1250
DOI 10.1109/tvcg.2015.2459891程式碼
同儕審查已出版已讀全文經典查證後修正
相關版本
- related technical report:A Framework for the Volumetric Integration of Depth Images (InfiniTAM framework report, arXiv 1410.0925; not the TVCG paper) https://arxiv.org/abs/1410.0925
- 後續版本預印本:InfiniTAM v3: A Framework for Large-Scale 3D Reconstruction with Loop Closure (arXiv 1708.00783) https://arxiv.org/abs/1708.00783
- 程式碼釋出:victorprad/InfiniTAM (the paper points to www.infinitam.org) https://github.com/victorprad/InfiniTAM
程式碼:https://github.com/victorprad/InfiniTAM(授權:custom Oxford University Innovation (Isis Innovation) licence, non-commercial use only (LICENSE file checked))。有公開程式碼不等於已被重現,也不代表目前版本與論文版本相同。