Hi, I've followed all the installation steps, but I'm still have errors with catkin_make. Could I get some help debugging this problem?
Errors << openface_ros:make /home/quori4/quori_files/quori_ros/logs/openface_ros/build.make.011.log
In file included from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:21:
/usr/include/tbb/tbb.h:21:154: note: #pragma message: TBB Warning: tbb.h contains deprecated functionality. For details, please see Deprecated Features appendix in the TBB reference manual.
21 | #pragma message("TBB Warning: tbb.h contains deprecated functionality. For details, please see Deprecated Features appendix in the TBB reference manual.")
| ^
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp: In member function ‘void openface_ros::OpenFaceRos::init_openface_()’:
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:177:21: error: ‘struct LandmarkDetector::FaceModelParameters’ has no member named ‘track_gaze’
177 | model_params_.track_gaze = true;
| ^~~~~~~~~~
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:181:11: error: ‘class LandmarkDetector::CLNF’ has no member named ‘face_detector_location’; did you mean ‘haar_face_detector_location’?
181 | clnf.face_detector_location = haar_model_path_;
| ^~~~~~~~~~~~~~~~~~~~~~
| haar_face_detector_location
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:183:111: error: no matching function for call to ‘FaceAnalysis::FaceAnalyser::FaceAnalyser(std::vector<cv::Vec<double, 3> >, double, int, int, std::string&, std::string&)’
183 | FaceAnalysis::FaceAnalyser face_analyser(vector<Vec3d>(), 0.7, 112, 112, au_model_path_, tri_model_path_);
| ^
In file included from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:40:
/usr/local/include/OpenFace/FaceAnalyser.h:65:2: note: candidate: ‘FaceAnalysis::FaceAnalyser::FaceAnalyser(const FaceAnalysis::FaceAnalyserParameters&)’
65 | FaceAnalyser(const FaceAnalysis::FaceAnalyserParameters& face_analyser_params);
| ^~~~~~~~~~~~
/usr/local/include/OpenFace/FaceAnalyser.h:65:2: note: candidate expects 1 argument, 6 provided
In file included from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:40:
/usr/local/include/OpenFace/FaceAnalyser.h:57:7: note: candidate: ‘FaceAnalysis::FaceAnalyser::FaceAnalyser(const FaceAnalysis::FaceAnalyser&)’
57 | class FaceAnalyser{
| ^~~~~~~~~~~~
/usr/local/include/OpenFace/FaceAnalyser.h:57:7: note: candidate expects 1 argument, 6 provided
/usr/local/include/OpenFace/FaceAnalyser.h:57:7: note: candidate: ‘FaceAnalysis::FaceAnalyser::FaceAnalyser(FaceAnalysis::FaceAnalyser&&)’
/usr/local/include/OpenFace/FaceAnalyser.h:57:7: note: candidate expects 1 argument, 6 provided
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp: In member function ‘void openface_ros::OpenFaceRos::process_incoming_(const ImageConstPtr&, const CameraInfoConstPtr&)’:
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:226:99: error: no matching function for call to ‘DetectFaces(std::vector<cv::Rect_<double> >&, cv::Mat&, cv::CascadeClassifier&)’
226 | LandmarkDetector::DetectFaces(face_detections, cv_ptr->image, clnfs_[0].face_detector_HAAR);
| ^
In file included from /usr/local/include/OpenFace/LandmarkDetectorFunc.h:45,
from /usr/local/include/OpenFace/LandmarkCoreIncludes.h:40,
from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:38:
/usr/local/include/OpenFace/LandmarkDetectorUtils.h:76:7: note: candidate: ‘bool LandmarkDetector::DetectFaces(std::vector<cv::Rect_<float> >&, const cv::Mat_<unsigned char>&, float, cv::Rect_<float>)’
76 | bool DetectFaces(std::vector<cv::Rect_<float> >& o_regions, const cv::Mat_<uchar>& intensity, float min_width = -1, cv::Rect_<float> roi = cv::Rect_<float>(0.0, 0.0, 1.0, 1.0));
| ^~~~~~~~~~~
/usr/local/include/OpenFace/LandmarkDetectorUtils.h:76:51: note: no known conversion for argument 1 from ‘std::vector<cv::Rect_<double> >’ to ‘std::vector<cv::Rect_<float> >&’
76 | bool DetectFaces(std::vector<cv::Rect_<float> >& o_regions, const cv::Mat_<uchar>& intensity, float min_width = -1, cv::Rect_<float> roi = cv::Rect_<float>(0.0, 0.0, 1.0, 1.0));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
/usr/local/include/OpenFace/LandmarkDetectorUtils.h:77:7: note: candidate: ‘bool LandmarkDetector::DetectFaces(std::vector<cv::Rect_<float> >&, const cv::Mat_<unsigned char>&, cv::CascadeClassifier&, float, cv::Rect_<float>)’
77 | bool DetectFaces(std::vector<cv::Rect_<float> >& o_regions, const cv::Mat_<uchar>& intensity, cv::CascadeClassifier& classifier, float min_width = -1, cv::Rect_<float> roi = cv::Rect_<float>(0.0, 0.0, 1.0, 1.0));
| ^~~~~~~~~~~
/usr/local/include/OpenFace/LandmarkDetectorUtils.h:77:51: note: no known conversion for argument 1 from ‘std::vector<cv::Rect_<double> >’ to ‘std::vector<cv::Rect_<float> >&’
77 | bool DetectFaces(std::vector<cv::Rect_<float> >& o_regions, const cv::Mat_<uchar>& intensity, cv::CascadeClassifier& classifier, float min_width = -1, cv::Rect_<float> roi = cv::Rect_<float>(0.0, 0.0, 1.0, 1.0));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp: In lambda function:
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:259:113: error: no matching function for call to ‘DetectLandmarksInVideo(cv::Mat&, __gnu_cxx::__alloc_traits<std::allocator<cv::Rect_<double> >, cv::Rect_<double> >::value_type&, __gnu_cxx::__alloc_traits<std::allocator<LandmarkDetector::CLNF>, LandmarkDetector::CLNF>::value_type&, LandmarkDetector::FaceModelParameters&)’
259 | LandmarkDetector::DetectLandmarksInVideo(cv_ptr->image, face_detections[j], clnfs_[i], model_params_);
| ^
In file included from /usr/local/include/OpenFace/LandmarkCoreIncludes.h:40,
from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:38:
/usr/local/include/OpenFace/LandmarkDetectorFunc.h:56:7: note: candidate: ‘bool LandmarkDetector::DetectLandmarksInVideo(const cv::Mat&, LandmarkDetector::CLNF&, LandmarkDetector::FaceModelParameters&, cv::Mat&)’
56 | bool DetectLandmarksInVideo(const cv::Mat &rgb_image, CLNF& clnf_model, FaceModelParameters& params, cv::Mat &grayscale_image);
| ^~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/OpenFace/LandmarkDetectorFunc.h:56:62: note: no known conversion for argument 2 from ‘__gnu_cxx::__alloc_traits<std::allocator<cv::Rect_<double> >, cv::Rect_<double> >::value_type’ {aka ‘cv::Rect_<double>’} to ‘LandmarkDetector::CLNF&’
56 | bool DetectLandmarksInVideo(const cv::Mat &rgb_image, CLNF& clnf_model, FaceModelParameters& params, cv::Mat &grayscale_image);
| ~~~~~~^~~~~~~~~~
In file included from /usr/local/include/OpenFace/LandmarkCoreIncludes.h:40,
from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:38:
/usr/local/include/OpenFace/LandmarkDetectorFunc.h:57:7: note: candidate: ‘bool LandmarkDetector::DetectLandmarksInVideo(const cv::Mat&, cv::Rect_<double>, LandmarkDetector::CLNF&, LandmarkDetector::FaceModelParameters&, cv::Mat&)’
57 | bool DetectLandmarksInVideo(const cv::Mat &rgb_image, const cv::Rect_<double> bounding_box, CLNF& clnf_model, FaceModelParameters& params, cv::Mat &grayscale_image);
| ^~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/OpenFace/LandmarkDetectorFunc.h:57:7: note: candidate expects 5 arguments, 4 provided
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:266:86: error: no matching function for call to ‘DetectLandmarksInVideo(cv::Mat&, __gnu_cxx::__alloc_traits<std::allocator<LandmarkDetector::CLNF>, LandmarkDetector::CLNF>::value_type&, LandmarkDetector::FaceModelParameters&)’
266 | LandmarkDetector::DetectLandmarksInVideo(cv_ptr->image, clnfs_[i], model_params_);
| ^
In file included from /usr/local/include/OpenFace/LandmarkCoreIncludes.h:40,
from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:38:
/usr/local/include/OpenFace/LandmarkDetectorFunc.h:56:7: note: candidate: ‘bool LandmarkDetector::DetectLandmarksInVideo(const cv::Mat&, LandmarkDetector::CLNF&, LandmarkDetector::FaceModelParameters&, cv::Mat&)’
56 | bool DetectLandmarksInVideo(const cv::Mat &rgb_image, CLNF& clnf_model, FaceModelParameters& params, cv::Mat &grayscale_image);
| ^~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/OpenFace/LandmarkDetectorFunc.h:56:7: note: candidate expects 4 arguments, 3 provided
In file included from /usr/local/include/OpenFace/LandmarkCoreIncludes.h:40,
from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:38:
/usr/local/include/OpenFace/LandmarkDetectorFunc.h:57:7: note: candidate: ‘bool LandmarkDetector::DetectLandmarksInVideo(const cv::Mat&, cv::Rect_<double>, LandmarkDetector::CLNF&, LandmarkDetector::FaceModelParameters&, cv::Mat&)’
57 | bool DetectLandmarksInVideo(const cv::Mat &rgb_image, const cv::Rect_<double> bounding_box, CLNF& clnf_model, FaceModelParameters& params, cv::Mat &grayscale_image);
| ^~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/OpenFace/LandmarkDetectorFunc.h:57:7: note: candidate expects 5 arguments, 3 provided
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp: In member function ‘void openface_ros::OpenFaceRos::process_incoming_(const ImageConstPtr&, const CameraInfoConstPtr&)’:
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:299:26: error: ‘struct LandmarkDetector::FaceModelParameters’ has no member named ‘track_gaze’
299 | if(model_params_.track_gaze && clnf.eye_model)
| ^~~~~~~~~~
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:303:25: error: ‘EstimateGaze’ is not a member of ‘FaceAnalysis’; did you mean ‘GazeAnalysis::EstimateGaze’?
303 | FaceAnalysis::EstimateGaze(clnf, left, fx, fy, cx, cy, true);
| ^~~~~~~~~~~~
In file included from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:41:
/usr/local/include/OpenFace/GazeEstimation.h:45:7: note: ‘GazeAnalysis::EstimateGaze’ declared here
45 | void EstimateGaze(const LandmarkDetector::CLNF& clnf_model, cv::Point3f& gaze_absolute, float fx, float fy, float cx, float cy, bool left_eye);
| ^~~~~~~~~~~~
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:304:25: error: ‘EstimateGaze’ is not a member of ‘FaceAnalysis’; did you mean ‘GazeAnalysis::EstimateGaze’?
304 | FaceAnalysis::EstimateGaze(clnf, right, fx, fy, cx, cy, false);
| ^~~~~~~~~~~~
In file included from /home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:41:
/usr/local/include/OpenFace/GazeEstimation.h:45:7: note: ‘GazeAnalysis::EstimateGaze’ declared here
45 | void EstimateGaze(const LandmarkDetector::CLNF& clnf_model, cv::Point3f& gaze_absolute, float fx, float fy, float cx, float cy, bool left_eye);
| ^~~~~~~~~~~~
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:315:50: error: ‘GetCorrectedPoseWorld’ is not a member of ‘LandmarkDetector’
315 | const auto head_pose = LandmarkDetector::GetCorrectedPoseWorld(clnf, fx, fy, cx, cy);
| ^~~~~~~~~~~~~~~~~~~~~
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:362:49: error: ‘class FaceAnalysis::FaceAnalyser’ has no member named ‘PredictStaticAUs’
362 | tie(aus_reg, aus_class) = face_analyser.PredictStaticAUs(cv_ptr->image, clnf);
| ^~~~~~~~~~~~~~~~
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:435:28: error: ‘struct LandmarkDetector::FaceModelParameters’ has no member named ‘track_gaze’
435 | if(model_params_.track_gaze && clnf.eye_model)
| ^~~~~~~~~~
/home/quori4/quori_files/quori_ros/src/openface_ros/src/openface_ros.cpp:439:27: error: ‘DrawGaze’ is not a member of ‘FaceAnalysis’
439 | FaceAnalysis::DrawGaze(viz_img, clnf, left, right, fx, fy, cx, cy);
| ^~~~~~~~
make[2]: *** [CMakeFiles/openface_ros.dir/build.make:76: CMakeFiles/openface_ros.dir/src/openface_ros.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1823: CMakeFiles/openface_ros.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
cd /home/quori4/quori_files/quori_ros/build/openface_ros; catkin build --get-env openface_ros | catkin env -si /usr/bin/make --jobserver-auth=3,4; cd -
Hi, I've followed all the installation steps, but I'm still have errors with catkin_make. Could I get some help debugging this problem?