Giter VIP home page Giter VIP logo

Comments (4)

hungdche avatar hungdche commented on June 9, 2024 2

Thank you for your help! I will close this issue now. Just want to share this beautiful reconstruction from one of the Waymo segment:

image

from pin_slam.

YuePanEdward avatar YuePanEdward commented on June 9, 2024

Thanks for your interest in our project.
For the quick sanity check, the mesh you showed seems to be as expected.
To achieve a better mesh quality, you may add the following lines to run_demo.yaml config file:

continual:
  pool_capacity: 2e7
optimizer:
  iters: 40 
  batch_size: 16384

This will let the mapper train for more iterations with a larger batch size, thus leading to better mesh quality.

During the visualization using the PIN-SLAM visualizer, you may press B to show the back face rendering, and press Ctrl + 9 to switch to the normal direction mesh color. The marching cubes voxel resolution by default is 30cm here. To have a finer reconstruction, you can either press [ to decrease the marching cubes resolution or define the desired resolution (for example 20 cm) in the config file by adding mc_res_m: 0.2 to the end of the config file under eval: category.

This is the mesh I got with the above settings:

demo_recon_issue1

You can get even better reconstruction quality by tuning the parameters in the sampler, mapping, tracking, neuralpoints, and loss class. For the sanity test, we simply use the default settings.

For better visualization, you may try Open3D offline visualizer for specific rendering settings of material, light, and shadows.

I hope this will help address your concerns.

from pin_slam.

hungdche avatar hungdche commented on June 9, 2024

Thank you for your response! I just have one more question. At the end of the run, how can I save the reconstructed mesh of the entire run? I add save_mesh: True at the end of eval in config, but it only save the mesh of the last frame.

from pin_slam.

YuePanEdward avatar YuePanEdward commented on June 9, 2024

From my perspective, when you turn on the visualizer, the mesh of the entire run will be saved by default. If it's not the case, you may press G to toggle on the global map visualization.

If you are running at a server without X service and cannot turn on the visualizer, you may inspect and save the reconstructed mesh after the SLAM process by:

python vis_pin_map.py ./experiments/xxxx_name_of_the_run 0.2 neural_points.ply  mesh_20cm.ply

from pin_slam.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.