turandai / gaussian_surfels

Implementation of the SIGGRAPH 2024 conference paper "High-quality Surface Reconstruction using Gaussian Surfels".
536 stars 26 forks source link

Running on Windows #11

Closed anilbas closed 3 months ago

anilbas commented 6 months ago

Thank you very much for releasing the code. It works on Windows (CUDA 11.8 and PyTorch 2.1.1) with the following changes:

  1. directory errors: several changes on slashes with os.path.join and split: “/”, “\”. Check the similar issue on SuGaR here: https://github.com/Anttwo/SuGaR/issues/66

  2. unistd.h error on ext.cpp: change #include to #include

  3. cuda_utils.cu error: change 'or' to || on line 527

I also received the following error during rendering:

File "C:...\gaussian_surfels\utils\general_utils.py", line 238, in poisson_mesh nn_color = torch.mean(color[nn_idx], axis=1) RuntimeError: indices should be either on cpu or on the same device as the indexed tensor (cpu)

To fix it, simply add before the line 238 nn_idx = nn_idx.to('cpu') and it works fine.

Hope this helps for those having similar issues.

dhanush70125 commented 3 months ago

Hi Anil. Firstly, thanks for sharing.

I could find only one os.path.join and split: in the entire code. Could you please tell how many changes you have made?

Thanks.

anilbas commented 3 months ago

Hi Dhanush,

Thank you for reaching out. I am actually not one of the authors; just wanted to confirm that the code works on Windows with changes.

Regarding your question, if you debug the code, you can check where it tries to read from a path, and edit where it is necessary. As far as I remember, it is not just os.path.join and split. For example, some parts have '/...' in the code (train.py: "/chkpnt") as well.