NVlabs / neuralangelo

Official implementation of "Neuralangelo: High-Fidelity Neural Surface Reconstruction" (CVPR 2023)
https://research.nvidia.com/labs/dir/neuralangelo/
Other
4.33k stars 387 forks source link

The lego mesh result is not well,How to adjust parameters and get better results #85

Open yuxuJava789 opened 1 year ago

yuxuJava789 commented 1 year ago

I Use ,

GPU VRAM Hyperparameter
8GB dict_size=20, dim=4 。
  1. Run the command as follows: torchrun --nproc_per_node=1 projects/neuralangelo/scripts/extract_mesh.py \ --config=logs/video2/config.yaml \ --checkpoint=logs/video2/epoch_00400_iteration_000020000_checkpoint.pt \ --output_file=video3.ply \ --resolution=2014 \ --block_res=128 \ --textured

  2. 截屏2023-08-28下午9 18 23
  3. 截屏2023-08-28下午9 23 52
  4. val/vis/normal is : media_images_val_vis_normal_20000_b741673dd59fb663fbf3

  5. val/vis/inv_depth is : media_images_val_vis_inv_depth_20000_45880cb156c39dababbb

  6. I use this notebook result is : Root Directory Path: /home ============== 1/home/video3d/code/neuralangelo/datasets/lego_ds2/sparse

    images: 100

          # points: 17228
          /home/video3d/yes/envs/neuralangelo/lib/python3.8/site-packages/traittypes/traittypes.py:97: UserWarning:
    
          Given trait value dtype "float64" does not match required type "float32". A coerced copy has been created.
    
              Plot(antialias=3, axes=['x', 'y', 'z'], axes_helper=1.0, axes_helper_colors=[16711680, 65280, 255], 
              background_color=16777215, camera_animation=[], camera_fov=60.0, camera_mode='trackball', 
              camera_pan_speed=1.0, camera_rotate_speed=5.0, camera_zoom_speed=3.0, fps=25.0, fps_meter=False, grid=[-1, -1, 
              -1, 1, 1, 1], grid_color=15132390, height=800, label_color=4473924, lighting=1.5, manipulate_mode='translate',      
              minimum_fps=-1.0, mode='view', name='poses', object_ids=[139752039768016, 139752039933216, 
               139752039933648, 139752039934656, 139752017756800, 139752011575648], screenshot_scale=2.0, 
               snapshot_type='full')
           Output()

How to get better results。

mli0603 commented 1 year ago

Hi @yuxuJava789

The 8 GB default parameters will lead to performance degradation. However, you may be able to try different parameters to see what works best over the suggested values. My intuition is that increasing the dim to 8 and lowering dict_size to something like 19 or 18 may work better and require only 8 GB of VRAM.

Let us know how it goes!

chenhsuanlin commented 1 year ago

@yuxuJava789 if you are training with the default config, this is expected at 20k iterations. You would need to run to 500k iterations to get the final results. If you want some faster experiment turnarounds, please also consider checking out the new Colab notebook.

yuxuJava789 commented 1 year ago

@mli0603 @chenhsuanlin Hi,I follow your advice run to 500k iterations (120 hours of operation),results is :

1 2 2

my config is :

checkpoint: save_epoch: 9999999999 save_iter: 20000 save_latest_iter: 9999999999 save_period: 9999999999 strict_resume: true cudnn: benchmark: true deterministic: false data: name: dummy num_images: null num_workers: 4 preload: true readjust: center:

How I get higher quality and with color mesh 。

lxq commented 11 months ago

With parameters (RTX 3060 12GB): dict_size=21, dim=4, after 500K iterations,10K epoches,I have got 25 pt files. When I extract mesh with the last pt file(epoch_10000_iteration_000500000_checkpoint.pt),the final mesh is not what I want, like following: 20231008153311

Did I do somthing wrong? What I can do to improve the quality.