fuxiao0719 / GeoWizard

[ECCV'24] GeoWizard: Unleashing the Diffusion Priors for 3D Geometry Estimation from a Single Image

Home Page:https://fuxiao0719.github.io/projects/geowizard/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

insufficient installation guide

hayoung-jeremy opened this issue · comments

summary

  • tested on A100 GPU instance from LambdaCloud
  • the installation guide from README.md seems not supplying all the dependencies
  • It's not possible to run the inference code since there are so many missing dependencies

reproduction of the error

installation process

git clone https://github.com/fuxiao0719/GeoWizard.git
cd GeoWizard

conda create -n geowizard python=3.9
conda activate geowizard
pip install -r requirements.txt
cd geowizard

command I've run :

python run_infer.py \
    --input_dir input/example \
    --output_dir output \
    --ensemble_size 3 \
    --denoise_steps 10 \
    --domain "indoor"

errors complaining missing dependencies :

(geowizard) ubuntu@129-146-73-36:~/A100/GeoWizard/geowizard$ python run_infer.py \
    --input_dir input/example \
    --output_dir output \
    --ensemble_size 3 \
    --denoise_steps 10 \
    --domain "indoor"
Traceback (most recent call last):
  File "/home/ubuntu/A100/GeoWizard/geowizard/run_infer.py", line 7, in <module>
    import numpy as np
ModuleNotFoundError: No module named 'numpy'
Traceback (most recent call last):                                                                                                                                                                                                                                                                
  File "/home/ubuntu/A100/GeoWizard/geowizard/run_infer.py", line 10, in <module>                                                                                                                                                                                                                 
    from tqdm.auto import tqdm                                                                                                                                                                                                                                                                    
ModuleNotFoundError: No module named 'tqdm'                                                                                                                                                                                                                                                       
Traceback (most recent call last):
  File "/home/ubuntu/A100/GeoWizard/geowizard/run_infer.py", line 13, in <module>
    import cv2
ModuleNotFoundError: No module named 'cv2'
Traceback (most recent call last):                                                                                                                                                                                                                                                                
  File "/home/ubuntu/A100/GeoWizard/geowizard/run_infer.py", line 16, in <module>                                                                                                                                                                                                                 
    from models.geowizard_pipeline import DepthNormalEstimationPipeline                                                                                                                                                                                                                           
  File "/home/ubuntu/A100/GeoWizard/geowizard/models/geowizard_pipeline.py", line 10, in <module>                                                                                                                                                                                                 
    from diffusers import (                                                                                                                                                                                                                                                                       
ModuleNotFoundError: No module named 'diffusers' 
Traceback (most recent call last):                                                                                                                                                                                                                                                                
  File "/home/ubuntu/A100/GeoWizard/geowizard/run_infer.py", line 16, in <module>                                                                                                                                                                                                                 
    from models.geowizard_pipeline import DepthNormalEstimationPipeline                                                                                                                                                                                                                           
  File "/home/ubuntu/A100/GeoWizard/geowizard/models/geowizard_pipeline.py", line 10, in <module>                                                                                                                                                                                                 
    from diffusers import (                                                                                                                                                                                                                                                                       
  File "/home/ubuntu/anaconda3/envs/geowizard/lib/python3.9/site-packages/diffusers/__init__.py", line 5, in <module>                                                                                                                                                                             
    from .utils import (                                                                                                                                                                                                                                                                          
  File "/home/ubuntu/anaconda3/envs/geowizard/lib/python3.9/site-packages/diffusers/utils/__init__.py", line 18, in <module>                                                                                                                                                                      
    from packaging import version                                                                                                                                                                                                                                                                 
ModuleNotFoundError: No module named 'packaging'    

I've installed following packages through conda and pip :

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
conda install tqdm
conda install conda-forge::opencv
conda install -c conda-forge diffusers 
conda install conda-forge::packaging  

But the final error message I've got :

Traceback (most recent call last):
  File "/home/ubuntu/A100/GeoWizard/geowizard/run_infer.py", line 16, in <module>
    from models.geowizard_pipeline import DepthNormalEstimationPipeline
  File "/home/ubuntu/A100/GeoWizard/geowizard/models/geowizard_pipeline.py", line 10, in <module>
    from diffusers import (
  File "/home/ubuntu/anaconda3/envs/geowizard/lib/python3.9/site-packages/diffusers/__init__.py", line 5, in <module>
    from .utils import (
  File "/home/ubuntu/anaconda3/envs/geowizard/lib/python3.9/site-packages/diffusers/utils/__init__.py", line 21, in <module>
    from .constants import (
  File "/home/ubuntu/anaconda3/envs/geowizard/lib/python3.9/site-packages/diffusers/utils/constants.py", line 17, in <module>
    from huggingface_hub.constants import HF_HOME
ImportError: cannot import name 'HF_HOME' from 'huggingface_hub.constants' (/home/ubuntu/anaconda3/envs/geowizard/lib/python3.9/site-packages/huggingface_hub/constants.py)

I probably won't be able to run the code successfully.

This is weird as 'diffusers', 'opencv-python', and 'tqdm' are specified in the requirements.txt. If you did 'pip install -r requirements.txt', I think these errors should not appear. My friend and I have tested it on more than 3 machines (e.g., ubuntu 20.04 w/ V100, centos w/ A100), and all of them work.

@fuxiao0719, Thank you for the reply.
I'll try it later!