This repository contains the C++ implementation of embedded deformation (ED) [1]. The formulation of the different cost functions used in ED are defined with the associated jacobians. In contrasts to [1], the optimization uses Levenberg-Marquardt from CERES instead of Gauss-Newton.
Several other cost functions are also defined, such as the minimization of model to model similarly as the one from Elastic Fusion (in the journal version).
environment: window10 visual studio 2019.
dependence: ceres, eigen, polyscope, imgui, glm, utils, yaml-cpp, stb. I have already upload these dependences.
Run the code: embedded_deformation.sln in folder msvc. double click .sln to run the project.
changes:
- use unit quaternion instead of 3x3 rotation matrix.
- use ceres::NumericDiffCostFunction instead of manual calculating Jacobian matrix.
- make the code single thread
- clean up the mesh visualization