Ask Your Question

Revision history [back]

Lot os Issues in Xfeature 2D

error: no member named 'exp32f' in namespace 'cv::hal' cv::hal::exp32f(W, W, len); error: no member named 'magnitude32f' in namespace 'cv::hal'; did you mean 'magnitude cv::hal::magnitude32f(X, Y, Mag, len); 4 errors generated. make[2]: * [modules/xfeatures2d/CMakeFiles/opencv_xfeatures2d.dir/src/sift.cpp.o] Error 1 make[1]: [modules/xfeatures2d/CMakeFiles/opencv_xfeatures2d.dir/all] Error 2 make: ** [all] Error 2

After this i tried to change the hal.hpp file , where theses two parameters of exp32f and magnitude 32f were not mentioned.

Again i got the error: Undefined symbols for architecture x86_64: "cv::hal::magnitude32f(float const, float const, float, int)", referenced from: cv::xfeatures2d::SIFT_Impl::findScaleSpaceExtrema(std::__1::vector<cv::mat, std::__1::allocator<cv::mat=""> > const&, std::__1::vector<cv::mat, std::__1::allocator<cv::mat=""> > const&, std::__1::vector<cv::keypoint, std::__1::allocator<cv::keypoint=""> >&) const in sift.cpp.o cv::xfeatures2d::SIFT_Impl::detectAndCompute(cv::_InputArray const&, cv::_InputArray const&, std::__1::vector<cv::keypoint, std::__1::allocator<cv::keypoint=""> >&, cv::_OutputArray const&, bool) in sift.cpp.o "cv::hal::exp32f(float const, float, int)", referenced from: cv::xfeatures2d::SIFT_Impl::findScaleSpaceExtrema(std::__1::vector<cv::mat, std::__1::allocator<cv::mat=""> > const&, std::__1::vector<cv::mat, std::__1::allocator<cv::mat=""> > const&, std::__1::vector<cv::keypoint, std::__1::allocator<cv::keypoint=""> >&) const in sift.cpp.o cv::xfeatures2d::SIFT_Impl::detectAndCompute(cv::_InputArray const&, cv::_InputArray const&, std::__1::vector<cv::keypoint, std::__1::allocator<cv::keypoint=""> >&, cv::_OutputArray const&, bool) in sift.cpp.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[2]: [lib/libopencv_xfeatures2d.3.0.0.dylib] Error 1 make[1]: [modules/xfeatures2d/CMakeFiles/opencv_xfeatures2d.dir/all] Error 2 make: ** [all] Error 2