NeRF-SLAM icon indicating copy to clipboard operation
NeRF-SLAM copied to clipboard

Restore no-SLAM, fix replica import, CUDA 11.7, etc

Open jrpowers opened this issue 3 years ago • 6 comments

This PR addresses a few things I ran into trying to test NeRF-SLAM:

  • I could not run out of the box on Ubuntu 22.04 LTS with CUDA 11.3, so I updated to CUDA 11.7 (the first version with Ubuntu 22.04 support)
  • Then I also had to bump Pytorch on the way, since older Pytorch wasn't available with CUDA 11.7
  • I had trouble building the customized gtsam, so I found a smaller set of edits that I could compile
  • Even after that, I found some gtsam APIs had changed, esp. regarding Quaternions and identity(). I am not sure how it was working for @ToniRV since I didn't spot changes in the gtsam fork that would have addressed it. So I updated a few lines to compile.
  • I tried to run without --slam and found it wasn't working, so I fixed a few things so that could work.
  • I noticed some case-sensitivity issues when unzipping datasets, and noticed the Replica sample ZIP had apparently been renamed too.
  • I temporarily pointed gtsam to my fork for the purposes of reviewing the PR, and I also made a PR on the upstream gtsam with just 2 lines which would make it compatible with NeRF-SLAM (at least the parts I ran).

jrpowers avatar Jan 01 '23 02:01 jrpowers

Looks like the gtsam guys may accept the minimal PR, then we could update to use the plain develop branch. https://github.com/borglab/gtsam/pull/1361

jrpowers avatar Jan 01 '23 21:01 jrpowers

Awesome! Thanks!

ToniRV avatar Jan 02 '23 12:01 ToniRV

I'm worried. AttributeError: module 'droid_backends' has no attribute 'reduced_camera_matrix'

H, v, Q, E, w = droid_backends.reduced_camera_matrix(
    self.cam0_T_world,
    self.world_T_body, # TODO(remove, unnecessary, given the math)
    self.cam0_idepths,
    self.cam0_intrinsics[0],
    self.cam0_T_body,
    self.cam0_idepths_sensed,
    gru_estimated_flow, 
    gru_estimated_flow_weight, # TODO: we should pass as well previous pose covariances!, so to not lose information when optimizing
    damping,
    ii, jj, kf0, kf1)

ZZy129326999 avatar Jan 26 '23 17:01 ZZy129326999

Hi guys, I encountered with the same issue. I was able to come up with the same solution without looking at this PR. Now I see AttributeError: module 'droid_backends' has no attribute 'reduced_camera_matrix' error as @ZZy129326999.

Is there any reason why this PR is not merged? @ToniRV @ZZy129326999 were you able to solve this camera matrix issue?

kadirkun avatar Oct 12 '23 19:10 kadirkun

Hi guys, I encountered with the same issue. I was able to come up with the same solution without looking at this PR. Now I see AttributeError: module 'droid_backends' has no attribute 'reduced_camera_matrix' error as @ZZy129326999.

Is there any reason why this PR is not merged? @ToniRV @ZZy129326999 were you able to solve this camera matrix issue?

I solved the reduced_camera_matrix error by replacing the droid-slam's src folder with the src folder provided by the nerf-slam repo. After recompiling droid-slam, the droid_backends module had the reduced_camera_matrix function.

kadirkun avatar Oct 16 '23 10:10 kadirkun

wonderful pr, thanks very much!

zhangshuoneu avatar Jul 06 '24 09:07 zhangshuoneu