跳至主要内容

3D Scene Persistence

此範例示範如何透過 3D 相機與調整 ISAAC Nvblox 參數,讓 3D 視覺化資料長時間保留。

安裝

NOTE

需為研華平台、剩餘空間 ≥ 12 GB、Ubuntu 英文介面、可連網。

  1. 按照安裝程式說明選擇並安裝 3D Scene Persistence,檔案位於 /usr/local/Advantech/ros/container/ros-demokit/isaac_ros_kit
  2. 執行:
    $ ./launch_isaac.sh advanced_examples/nvblox_keep_map
  3. 首次啟動會下載資源,完成後自動顯示結果。

設定指南

預設的 Nvblox 會持續衰減與裁剪地圖,以節省記憶體並保留離機器人較近的資料,因此:

  • 過去看到的表面會逐漸消失
  • 遠處的體素會被清除
  • RViz 中的 3D 場景不會持續存在

若要保留場景,需停用這些「忘記」行為。

本範例修改的參數

decay_tsdf_rate_hz:=0.0
  1. decay_tsdf_rate_hz
    • 目的:控制 TSDF 隨時間衰減的頻率。
    • 預設:>0 時舊資料會被推回「未知」。
    • 此範例設為 0.0,關閉 TSDF 衰減,掃描過的表面會保留。
clear_map_outside_radius_rate_hz:=0.0
  1. clear_map_outside_radius_rate_hz
    • 目的:控制多久清除半徑外的體素。
    • 預設:>0 時會定期裁剪地圖,釋放記憶體。
    • 此範例設為 0.0,停止清除遠端體素。

NOTE

兩個參數都設為 0.0,等同告訴 Nvblox:「不要衰減舊資料,也不要依距離清除地圖」,因此 3D 場景能長時間存在。

何時使用此設定

  • Demo / 測試需要穩定的 3D 重建畫面
  • 想比較前後調參效果、不希望地圖消失
  • 需要持久 3D 背景的檢測或地圖工具

若在記憶體受限、長時間運行或持續探索新區域,請改回預設或自行調整衰減/清除參數。