ofxEos icon indicating copy to clipboard operation
ofxEos copied to clipboard

fit_shape_and_pose error

Open andyinabox opened this issue 5 years ago • 0 comments
trafficstars

I'm trying to build ofxEos and getting several build errors related to the eos fit_shape_and_pose method, it seems like the function signature being used in the addon isn't available to the compiler. Trying to work through it on a branch in my clone of the repo but thought I'd post here in case it looks familiar.

One thing I have noticed is that ofxEos.h is not consistent with v0.16.1. For instance, eos/fitting/detail/optional_cerealisation.hpp is no longer in that version of eos, and eos/render/Rect.hpp is now eos/core/Rect.hpp.

I'm running oF v0.11.0 on Ubuntu 18.04.4 LTS

In file included from /home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/ofxEos/src/Model.cpp:8:0:
/home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/ofxEos/include/ofx/Eos/Model.h: In member function ‘void ofx::Eos::Model::update(const std::vector<V>&)’:
/home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/ofxEos/include/ofx/Eos/Model.h:65:82: error: no matching function for call to ‘fit_shape_and_pose(eos::morphablemodel::MorphableModel&, std::vector<eos::morphablemodel::Blendshape>&, eos::core::LandmarkCollection<Eigen::Matrix<float, 2, 1> >&, eos::core::LandmarkMapper&, std::size_t&, std::size_t&, eos::morphablemodel::EdgeTopology&, eos::fitting::ContourLandmarks&, eos::fitting::ModelContour&, int, const akrzemi1::nullopt_t&, float)’
                                                                             30.0f);
                                                                                  ^
In file included from /home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/ofxEos/include/ofx/Eos/Model.h:16:0,
                 from /home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/ofxEos/src/Model.cpp:8:
/home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/eos/include/eos/fitting/fitting.hpp:322:60: note: candidate: std::pair<eos::core::Mesh, eos::fitting::RenderingParameters> eos::fitting::fit_shape_and_pose(const eos::morphablemodel::MorphableModel&, eos::core::LandmarkCollection<Eigen::Matrix<float, 2, 1> >&, const eos::core::LandmarkMapper&, int, int, const eos::morphablemodel::EdgeTopology&, const eos::fitting::ContourLandmarks&, const eos::fitting::ModelContour&, int, akrzemi1::optional<int>, float, akrzemi1::optional<int>, akrzemi1::optional<float>, akrzemi1::optional<eos::fitting::RenderingParameters>, std::vector<float>&, std::vector<float>&, std::vector<Eigen::Matrix<float, 2, 1> >&)
 inline std::pair<core::Mesh, fitting::RenderingParameters> fit_shape_and_pose(
                                                            ^~~~~~~~~~~~~~~~~~
/home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/eos/include/eos/fitting/fitting.hpp:322:60: note:   candidate expects 17 arguments, 12 provided
/home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/eos/include/eos/fitting/fitting.hpp:545:60: note: candidate: std::pair<eos::core::Mesh, eos::fitting::RenderingParameters> eos::fitting::fit_shape_and_pose(const eos::morphablemodel::MorphableModel&, eos::core::LandmarkCollection<Eigen::Matrix<float, 2, 1> >&, const eos::core::LandmarkMapper&, int, int, const eos::morphablemodel::EdgeTopology&, const eos::fitting::ContourLandmarks&, const eos::fitting::ModelContour&, int, akrzemi1::optional<int>, float, akrzemi1::optional<int>, akrzemi1::optional<float>)
 inline std::pair<core::Mesh, fitting::RenderingParameters> fit_shape_and_pose(
                                                            ^~~~~~~~~~~~~~~~~~
/home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/eos/include/eos/fitting/fitting.hpp:545:60: note:   no known conversion for argument 2 from ‘std::vector<eos::morphablemodel::Blendshape>’ to ‘eos::core::LandmarkCollection<Eigen::Matrix<float, 2, 1> >& {aka const std::vector<eos::core::Landmark<Eigen::Matrix<float, 2, 1> >, std::allocator<eos::core::Landmark<Eigen::Matrix<float, 2, 1> > > >&}’
/home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/eos/include/eos/fitting/fitting.hpp:606:60: note: candidate: std::pair<eos::core::Mesh, eos::fitting::RenderingParameters> eos::fitting::fit_shape_and_pose(const eos::morphablemodel::MorphableModel&, const std::vector<Eigen::Matrix<float, 2, 1> >&, const std::vector<int>&, int, int, int, akrzemi1::optional<int>, float, akrzemi1::optional<int>, akrzemi1::optional<float>, akrzemi1::optional<eos::fitting::RenderingParameters>, std::vector<float>&, std::vector<float>&, std::vector<Eigen::Matrix<float, 2, 1> >&)
 inline std::pair<core::Mesh, fitting::RenderingParameters> fit_shape_and_pose(
                                                            ^~~~~~~~~~~~~~~~~~
/home/amdayton/Code/of/v0.11.0/addons/ofxEos/libs/eos/include/eos/fitting/fitting.hpp:606:60: note:   candidate expects 14 arguments, 12 provided

andyinabox avatar Mar 29 '20 17:03 andyinabox