autonomousvision / handheld_svbrdf_geometry

On Joint Estimation of Pose, Geometry and svBRDF from a Handheld Scanner, CVPR2020
Other
59 stars 6 forks source link

running error about TOME #3

Closed Sheldonmao closed 3 years ago

Sheldonmao commented 3 years ago

Hi, I tried to run this code follow the guidance but got an error like this:

Traceback (most recent call last): File "main.py", line 358, in run_experiment(settings_dict) File "main.py", line 305, in run_experiment optimization_settings['losses'] File "/home/handheld_svbrdf_geometry/code/experiment_state.py", line 545, in visualize calculate_shadowing=shadows_occlusions File "/home/handheld_svbrdf_geometry/code/experiment_state.py", line 171, in simulate self.locations, obs_Rt, light_infos=light_infos, calculate_shadowing=calculate_shadowing and shadow_cache_miss File "/home/handheld_svbrdf_geometry/code/parametrizations/lights.py", line 159, in get_light_intensities 0.010 File "/home/handheld_svbrdf_geometry/code/utils/TOME/init.py", line 35, in depth_reprojection_bound raise e NameError: name 'e' is not defined

I've looked at the code in TOME/_init_.py, it seems the TOME cuda implementation is not imported properly. So I delete those try-excepts and got the ImportError:

ImportError: /home/maoshi/hdd/Github_references/handheld_svbrdf_geometry/code/utils/TOME/_implementation.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZN3c105ErrorC1ENS_14SourceLocationERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE

I have no idea how to solve it.

btw, initially, I got a version 'GLIBC_2.27' not found error. which is required by open3d, and I solved it by downgrade open3d to version 0.9. Not sure if it is related. I'm running the code on ubuntu 16.04

simon-donne commented 3 years ago

Can you make sure your system has build-essentials correctly installed? Is the build for TOME throwing any errors? If yes, please post those.

Sheldonmao commented 3 years ago

The build for TOME did not throw any errors. However, I managed to solve it by changing -D_GLIBCXX_USE_CXX11_ABI=1 to -D_GLIBCXX_USE_CXX11_ABI=0 in code/utils/TOME/setup.py and rebuilding TOME, following the tip in here. It seems there's indeed some issue with my GLIBC. Thanks anyway~

simon-donne commented 3 years ago

Great! Thanks for posting the solution.