NVlabs / PoseRBPF

A Rao-Blackwellized Particle Filter for 6D Object Pose Tracking
Other
136 stars 31 forks source link

Error: no suitable constructor exists to convert from "float" to "Eigen::half" #4

Open Lynne-Zheng-Linfang opened 3 years ago

Lynne-Zheng-Linfang commented 3 years ago

Hi, I encounter some problem when I was trying to compile the utility functions with:

sh build.sh

It shows that:

fatal error: Eigen/Core: No such file or directory

As recommended online, I installed eigen3 and also added the following line into CMakelist.txt:

find_package(Eigen3 REQUIRED)

It still not working, so I also changed the header file from # include <Eigen/Core> to # include <eigen3/Eigen/Core>, but it still failed. The error message is as below:

/usr/local/cuda-10.1/include/crt/common_functions.h:74:24: error: token ""__CUDACC_VER__ is no longer supported.  Use __CUDACC_VER_MAJOR__, __CUDACC_VER_MINOR__, and __CUDACC_VER_BUILD__ instead."" is not valid in preprocessor expressions

Then I commented the above line in /usr/local/cuda-10.1/include/crt/common_functions.h:74:24: as recommended online, the error comes as:

/usr/include/eigen3/Eigen/src/Core/arch/CUDA/Half.h(596): error: no suitable constructor exists to convert from "float" to "Eigen::half"

Any idea for this error? By the way, are there any pose estimation results (the estimated poses ) on T-LESS test dataset and YCB-Video test dataset available? I am trying to analyze the distribution of the estimated poses for different methods. Thanks a lot!

otsubo commented 3 years ago

I feel it is because the bug of Eigen. You can fix this bug if you will install eigen from source. https://github.com/eigenteam/eigen-git-mirror

rajk97 commented 1 year ago

Yes, installing/updating eigen solved for me too.