Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems. It can be used to solve Non-linear Least Squares problems with bounds constraints and general unconstrained optimization problems. It is a mature, feature rich, and performant library that has been used in production at Google since 2010.
Step1:Getting the source code
git clone https://ceres-solver.googlesource.com/ceres-solver
or, paste the following link in the browser address bar:
wget http://ceres-solver.org/ceres-solver-1.14.0.tar.gz
tar -xzvf ceres-solver-1.14.0.tar.gz
Step2:Dependencies
# CMake / google-glog + gflags / BLAS & LAPACK / Eigen3 / SuiteSparse and CXSparse (optional)
sudo apt-get install cmake libgoogle-glog-dev libatlas-base-dev libeigen3-dev libsuitesparse-dev
# However, if you want to build Ceres as a *shared* library, you must add the following PPA:
sudo add-apt-repository ppa:bzindovic/suitesparse-bugfix-1319687
sudo apt-get update
Step3:Build, test and install Ceres Solver
cd ceres-solver-1.14.0
mkdir build
cd build
cmake ../../ceres-solver-1.14.0
make -j3
make test
sudo make install