maturk / dn-splatter

DN-Splatter: Depth and Normal Priors for Gaussian Splatting and Meshing
https://maturk.github.io/dn-splatter/
Apache License 2.0
302 stars 17 forks source link

No initial point cloud support? #40

Closed cmh1027 closed 1 week ago

cmh1027 commented 3 weeks ago
Traceback (most recent call last):
  File "/home/minhyuk/.conda/envs/nerfstudio/bin/ns-train", line 8, in <module>
    sys.exit(entrypoint())
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/scripts/train.py", line 262, in entrypoint
    main(
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/scripts/train.py", line 247, in main
    launch(
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/scripts/train.py", line 189, in launch
    main_func(local_rank=0, world_size=world_size, config=config)
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/scripts/train.py", line 99, in train_loop
    trainer.setup()
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/engine/trainer.py", line 153, in setup
    self.pipeline = self.config.pipeline.setup(
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/configs/base_config.py", line 54, in setup
    return self._target(self, **kwargs)
  File "/hub_data2/minhyuk/gs/dn-splatter/dn_splatter/dn_pipeline.py", line 80, in __init__
    self.datamanager: DataManager = config.datamanager.setup(
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/configs/base_config.py", line 54, in setup
    return self._target(self, **kwargs)
  File "/hub_data2/minhyuk/gs/dn-splatter/dn_splatter/dn_datamanager.py", line 53, in __init__
    super().__init__(
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/data/datamanagers/full_images_datamanager.py", line 110, in __init__
    self.train_dataparser_outputs: DataparserOutputs = self.dataparser.get_dataparser_outputs(split="train")
  File "/home/minhyuk/.conda/envs/nerfstudio/lib/python3.8/site-packages/nerfstudio/data/dataparsers/base_dataparser.py", line 165, in get_dataparser_outputs
    dataparser_outputs = self._generate_dataparser_outputs(split, **kwargs)
  File "/hub_data2/minhyuk/gs/dn-splatter/dn_splatter/data/normal_nerfstudio.py", line 481, in _generate_dataparser_outputs
    points=metadata["points3D_xyz"],
KeyError: 'points3D_xyz'

Hello, It seems that point cloud random initialization is not supported (--pipeline.model.random-init is turned on). Is this intentional, or a bug?

maturk commented 2 weeks ago

Hi @cmh1027, can you show me the command you are trying to run?

Does something like this solve the issue?

ns-train dn-splatter [bunch of options] --pipeline.model.random_init True normal-nerfstudio --data [path to data] --load-pcd-normals False --load-3D-points False
cmh1027 commented 1 week ago

@maturk Yes it works now. Thanks.