2017-03-22 66 views
1

我正在嘗試合併使用Lenovo Phab 2 Pro從對象的不同角度拍攝的點雲。我使用框架對COORDINATE_FRAME_START_OF_SERVICE作爲基準,並使用COORDINATE_FRAME_DEVICE作爲目標。然後,我使用與TangoSupport.getMatrixTransformAtTime()一起檢索的變換矩陣來轉換點雲,並使用與點雲相同的時間戳。然而,點雲不排隊不如我本來希望你可以在此圖像中看到:Google Tango - 合併不同角度的點雲?

enter image description here

我認爲這是由漂流設備正在經歷而周圍的物體移動造成的。有沒有辦法通過使用區域學習或類似的東西來最小化漂流?或者我應該嘗試以不同的方式合併點雲,例如ICP註冊?

回答

1

首先我會嘗試使用區域學習。 在斯特姆的演講(2015年),他說的是一種錯誤的移動距離的< 1%, 參見第23頁: https://jsturm.de/publications/data/sturm2015_dagstuhl.pdf

其次似乎估計擺POSE更加準確收集一些特點: Project Tango onPoseAvailable() and getPoseAtTime() discrepancies

我建議開始測量場景,移動設備,以便可以很好地估計視覺慣性測距的範圍,並在一分鐘後開始測量測距圖像。 (一個按鈕工作很好)。最後用TangoSupport.getMatrixTransformAtTime()來轉換所有內容。

我想ICP不會那麼好,因爲深度圖像相當小而且很嘈雜。我對開發平板電腦深度相機的精確度估計是1.5米距離處約2毫米,3米處距離約11毫米。

0

實際上,只有魚眼相機和IMU才能用於定位。 這意味着3D數據不用於本地化。 因此,校準錯誤可能導致不準確。 你可以找到calibration tutorial here

提供視覺測距算法的框架到關鍵幀的漂移也可能導致您的對齊問題。實際上,對於掃描物體,我建議使用Structure,它提供了幀到模型跟蹤方法和更高分辨率的深度傳感器。