stevenygd / PointFlow

PointFlow : 3D Point Cloud Generation with Continuous Normalizing Flows
https://www.guandaoyang.com/PointFlow/
MIT License
720 stars 101 forks source link

The code cannot run successfully now. #17

Open XiaoshuiHuang opened 3 years ago

XiaoshuiHuang commented 3 years ago

Since the torchdiffeq has updated recently, the torch has to update to >1.3. Otherwise, the old torch does not have promote_types function. When I updated the torch, I got the error "AssertionError: If using tupled rtol it must have the same length as the tuple y0 "?

Can you check the code and solve this issue? Thanks.

itsjohng commented 3 years ago

This was one of many issues I had getting this to run. I was able to solve this problem by installing old versions of many packages in my pointflow environment.

conda install pytorch==1.0.1 torchvision==0.2.2 cudatoolkit=10.0 -c pytorch

conda install matplotlib tqdm scikit-learn -y pip install pillow==5.0.0 pip install scipy==1.0.1 pip install numpy==1.16.4 pip install tensorflow-gpu==1.13.1 pip install tensorboardX==1.7 pip install torchdiffeq==0.0.1

This was as of about 1 month ago, I'm not sure what if anything else has changed, nor do I know if there is a more efficient or better way to solve the problem. To be clear: I'm not involved in the pointflow project at all, I just used the model architecture in a personal project for a DS bootcamp.

sitzikbs commented 3 years ago

I was not able to run this too. Probably a version issue as mentioned above. What I found so far: Pytorch has to be > 1.3 for the torch.promote_types to work but then the rtol assertion fail happened. Rolling back to torchdiffeq 0.0.1 with pytorch 1.0.1 solved it for me. There were also issues with running the demo with open3d.

@stevenygd Can you provide a requirements list ?

stevenygd commented 3 years ago

@sitzikbs What's the error for the open3d?

sitzikbs commented 3 years ago

@stevenygd open3d has no attribute geometry. I installed open3d 0.9.0 and it seems to have solved it