- 05 Mar, 2017 9 commits
-
-
Patrik Huber authored
This removes the last usage of OpenCV in PcaModel.
-
Patrik Huber authored
-
Patrik Huber authored
It's no longer necessary, since the RNG is no longer part of PcaModel.
-
Patrik Huber authored
-
Patrik Huber authored
-
Patrik Huber authored
This makes the intent clearer - it does not return the i-th basis vector (which one could easily assume, if not reading the function parameter name or documentation). Also added a note expressing this. It also leaves room for a future function that actually does return the i-th basis.
-
Patrik Huber authored
And compute the rescaled basis when loading a model.
-
Patrik Huber authored
Adjusted all files that use it (hopefully). This is a breaking change: If you're currently using the PcaModel constructor and giving it a PCA basis matrix, your code will (probably silently) break: The function now expects an orthonormal basis matrix, whereas before, it expected a rescaled basis matrix. However it makes more sense for the function to take an orthonormal basis matrix.
-
Patrik Huber authored
-
- 04 Mar, 2017 4 commits
-
-
Patrik Huber authored
-
Patrik Huber authored
This should clear up confusion and make the descriptions good and unambiguous. - orthonormal = the old "unnormalised" - rescaled = the old "normalised". Also changed PcaModel's getter for the basis accordingly, and updated the documentation.
-
Patrik Huber authored
Both the BFM and SFM store the orthonormal basis in their files. The orthonormal basis is what eos calls "unnormalised" (because it's not rescaled by the eigenvalues). We will get rid of this ambiguous terminology in eos now and use the unambiguous terms: - Orthonormal basis (previously "unnormalised") - Rescaled basis (previously "normalised).
-
Patrik Huber authored
The submodule is the current master, which is exactly v1.2.2. The removed local copy is v1.1.1. Files saved with the old version seem to be readable with the new version. (apart from the fact that we've now changed to Eigen, which makes it incompatible to the old models.)
-
- 03 Mar, 2017 6 commits
-
-
Patrik Huber authored
-
-
Patrik Huber authored
-
Patrik Huber authored
'did' was only really an external thing, so naming it "SFM" is more clear! Renamed all references to "ibug2did" to "ibug_to_sfm".
-
Patrik Huber authored
With this, 'python setup.py sdist' creates a valid source .tar.gz that can be uploaded to pypi and then built on other machines with 'pip install eos-py'
-
Patrik Huber authored
-
- 02 Mar, 2017 7 commits
-
-
Patrik Huber authored
* Added BOOST_ROOT for Windows, since I've been using it for a while, and I think it works. * Added EIGEN3_INCLUDE_DIR * Changed all slashes to forward slashes
-
Patrik Huber authored
Explicit casts and initializations to glm::vec3 The implicit conversions don't seem to work on OS X clang-3.9.1. A bit odd, since it works on travis on Linux with clang-3.9, 4.0 and 5.0. Anyway, maybe in the future we can change it back if a Mac clang update fixes this.
-
Patrik Huber authored
BFM conversion is now ~200x faster
-
John Mather authored
Added explicit casts to glm::vec3 from glm::vec4 as it was causing build errors with clang 3.9.1 on OS X. Changed assignment operation to initialization for ray_origin.
-
John Mather authored
Removed loops from BFM conversion script.
-
-
Patrik Huber authored
Also added a setup.cfg template to specify paths to the libraries we need (mainly useful on Windows where CMake needs the locations). Updated .gitignore. On Windows, it uses the "Visual Studio 14 2015 Win64" generator.
-
- 01 Mar, 2017 1 commit
-
-
Patrik Huber authored
Eigen only introduced rsqrt() in 3.3. Eventually, we'll switch back to rsqrt(), or even include Eigen directly under 3rdparty/.
-
- 28 Feb, 2017 13 commits
-
-
Patrik Huber authored
This allows to completely create a model in Python from numpy matrices, and store with save_model.
-
Patrik Huber authored
-
Patrik Huber authored
-
Patrik Huber authored
-
Patrik Huber authored
This was in the past used for converting a small BFM json model to a cereal binary. However, it was never satisfactory. I think it's also used to import the blendshapes from Matlab into C++, so we'll need it again at some point. However at the moment it does not compile as we don't have a json serialize() (cereal) function for Eigen::Matrix.
-
Patrik Huber authored
For some reason, not all changes got staged in the last commit. This is the full set of changes.
-
Patrik Huber authored
Actually, we still read into an OpenCV matrix - should change that in the future to directly read into an Eigen::Matrix.
-
Patrik Huber authored
Also removed division by 1000 of the mean. I don't think it makes sense to make this modification. Leave it as it is in the original.
-
Patrik Huber authored
-
Patrik Huber authored
This is a big step towards being not requiring OpenCV anymore as a dependency. All models will have to be converted and re-downloaded. * PcaModel: Removed the RNG from the class, and added a RNG parameter to the draw_sample method * PcaModel: Added a get_eigenvalues() accessor that returns all eigenvalues * MorphableModel: Changed CEREAL_CLASS_VERSION from 0 to 1 (and added a version check to the serialize method) * MorphableModel: Changed texture_coordinates from cv::Vec2f to array<double, 2> * Added binary Eigen::Matrix serialisation for cereal * Changed Blendshape to Eigen::Vector as well * Adjusted blendshape_fitting.hpp accordingly - and it now takes most parameters by const& * Adjusted fitting.hpp accordingly - now also takes most parameters by const& * Adjusted linear_shape_fitting.hpp: It's not totally converted, still using cv::Mat for the core algorithm
-
Patrik Huber authored
It hasn't had a method to return a Mesh in quite a while I think.
-
Patrik Huber authored
Hopefully this is not an issue anymore.
-
Patrik Huber authored
-