Skip to content

adrelino/minimal_ceres_sophus

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minimal Sophus/Ceres autodiff vs numeric example

Using Ceres to minimize the cost function, it works fine using numeric derivatives but not automatic.

Cost function

A B-spline in SE3 defines a camera trajectory. Now we want to find the spline (its knots) such that

  1. The world point Xw = (5, 1, 3) has local spline/camera coordinate Xs = (0, 0, 1).
  2. The angular velocity is a constant rotation around the x-axis.

I.e. The cameras trajectory is circular with Xw as its center point.

The spline is implemented according to the description in

Lovegrove, S., Patron-Perez, A., & Sibley, G. (2013). Spline Fusion: A continuous-time representation for visual-inertial fusion with application to rolling shutter cameras.
In Procedings of the British Machine Vision Conference 2013 (pp. 93.1–93.11). British Machine Vision Association. http://doi.org/10.5244/C.27.93

Building

Except for the usual things to build a Ceres project, you need the Sophus package for SE(3) representations. Specifically, the version by Steven Lovegrove

About

Minimal example showing problem with Ceres and Sophus

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 96.9%
  • CMake 3.1%