Describe the bug
At the latest version 1.0.3, I am hit by the error: AssertionError: block_width must be between 2 and 16. Below is the call stack:
Traceback (most recent call last):
File "/nerfstudio/scripts/train.py", line 294, in
entrypoint()
File "/nerfstudio/scripts/train.py", line 285, in entrypoint
main(
File "/nerfstudio/scripts/train.py", line 270, in main
launch(
File "/nerfstudio/scripts/train.py", line 199, in launch
main_func(local_rank=0, world_size=world_size, config=config)
File "/nerfstudio/scripts/train.py", line 106, in train_loop
trainer.train()
File "/nerfstudio/engine/trainer.py", line 273, in train
loss, loss_dict, metrics_dict = self.train_iteration(step)
File "/nerfstudio/utils/profiler.py", line 130, in inner
out = func(*args, **kwargs)
File "/nerfstudio/engine/trainer.py", line 527, in train_iteration
_, loss_dict, metrics_dict = self.pipeline.get_train_loss_dict(step=step)
File "/nerfstudio/utils/profiler.py", line 130, in inner
out = func(*args, **kwargs)
File "/nerfstudio/pipelines/base_pipeline.py", line 326, in get_train_loss_dict
model_outputs = self._model(
File "/python/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
return self._call_impl(*args, **kwargs)
File "/python/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
return forward_call(*args, **kwargs)
File "/nerfstudio/models/base_model.py", line 153, in forward
return self.get_outputs(ray_bundle)
File "/nerfstudio/models/splatfacto.py", line 838, in get_outputs
self.xys, depths, self.radii, conics, comp, num_tiles_hit, cov3d = project_gaussians( # type: ignore
File "/python/lib/python3.9/site-packages/gsplat/project_gaussians.py", line 59, in project_gaussians
assert block_width > 1 and block_width <= 16, "block_width must be between 2 and 16"
Thanks!
Could you update the gsplat==0.1.10? pip install --upgrade gsplat
It is still broken in gsplat==0.1.10.
It worked on nerfstudio==1.0.2, where gsplat==0.1.6
This issue seems to be a dup of https://github.com/nerfstudio-project/nerfstudio/issues/3033 But I am not why it happens with nerfstudio=1.0.3 + gsplat==0.1.10
I cannot reproduce the issue locally.
Hmm... I just tried again on nerfstudio==1.0.3 + gsplat==0.1.10, and still got hit by the problem.
FYI, I did not run any of the ns- CLI. I checkout nerfstudio from source, run the training by python nerfstudio/scripts/train.py splatfacto --data <processed_data> from the source code (I pip uninstall nerfstudio to avoid it running from the system directory. The dependencies are not uninstalled). I did some minor changes to the source code, but not touching any files in the above call stack.
I had this error, but I just fixed it by merging the main into my branch (I also installed nerfstudio with pip install -e .). I currently have gsplat==1.9.0 though
see https://github.com/nerfstudio-project/gsplat/issues/159