NVlabs / CF-3DGS

Other
394 stars 43 forks source link

error when initializing the pose in add_view_v2 #30

Open lqzhao opened 3 months ago

lqzhao commented 3 months ago

Hi, thank you for your excellent paper. In the original implementation, the pose between view_idx_prev and view_idx is initialized via self.gs_render_local.gaussians.init_RT(None). It can be run normally.

However, when I tried to initialize the pose with gt values in add_view_v2 (e.g., self.gs_render_local.gaussians.init_RT(pose=gt_pose[view_idx_prev]) ), I encountered the following issue:

Traceback (most recent call last): File "/home/zlq/code/CF-3DGS/run_cf3dgs.py", line 48, in trainer.train_from_progressive() File "/home/zlq/code/CF-3DGS/trainer/cf3dgs_trainer.py", line 475, in train_from_progressive pcd_new, local_gauss_params = self.add_view_v2( File "/home/zlq/code/CF-3DGS/trainer/cf3dgs_trainer.py", line 277, in add_view_v2 self.gs_render_local.gaussians.training_setup_fix_position( File "/home/zlq/code/CF-3DGS/scene/gaussian_model_cf.py", line 307, in training_setup_fix_position self.xyz_gradient_accum = torch.zeros((self.get_xyz.shape[0], 1), device="cuda") File "/home/zlq/code/CF-3DGS/scene/gaussian_model_cf.py", line 128, in get_xyz xyz = self.P[0].retr().act(xyz) TypeError: LieGroup.retr() missing 1 required positional argument: 'a'

How can I solve this? Thanks!