• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.. Ceres Solver documentation master file, created by
2   sphinx-quickstart on Sat Jan 19 00:07:33 2013.
3   You can adapt this file completely to your liking, but it should at least
4   contain the root `toctree` directive.
5
6============
7Ceres Solver
8============
9
10.. toctree::
11   :maxdepth: 3
12   :hidden:
13
14   features
15   building
16   tutorial
17   modeling
18   solving
19   faqs
20   contributing
21   version_history
22   history
23   bibliography
24   license
25
26Ceres Solver is an open source C++ library for modeling and solving
27large complicated `nonlinear least squares`_ problems. It is a feature
28rich, mature and performant library which has been used in production
29since 2010. At Google, Ceres Solver is used to:
30
31* Estimate the pose of `Street View`_ cars, aircrafts, and satellites.
32* Build 3D models for `PhotoTours`_.
33* Estimate satellite image sensor characteristics.
34* Stitch `panoramas`_ or apply `Lens Blur`_ on Android.
35* Solve `bundle adjustment`_ and SLAM problems in `Project Tango`_.
36
37Outside Google, Ceres is used for solving problems in computer vision,
38computer graphics, astronomy and physics. e.g., `Willow Garage`_ uses
39it to solve SLAM problems and `Blender`_ uses it for for planar
40tracking and bundle adjustment.
41
42.. _nonlinear least squares: http://en.wikipedia.org/wiki/Non-linear_least_squares
43.. _fitting curves: http://en.wikipedia.org/wiki/Nonlinear_regression
44.. _bundle adjustment: http://en.wikipedia.org/wiki/Structure_from_motion
45.. _Street View: http://youtu.be/z00ORu4bU-A
46.. _PhotoTours: http://google-latlong.blogspot.com/2012/04/visit-global-landmarks-with-photo-tours.html
47.. _panoramas: http://www.google.com/maps/about/contribute/photosphere/
48.. _Project Tango: https://www.google.com/atap/projecttango/
49.. _Blender: http://mango.blender.org/development/planar-tracking-preview/
50.. _Willow Garage: https://www.willowgarage.com/blog/2013/08/09/enabling-robots-see-better-through-improved-camera-calibration
51.. _Lens Blur: http://googleresearch.blogspot.com/2014/04/lens-blur-in-new-google-camera-app.html
52
53Getting started
54---------------
55
56* Download the `latest stable release
57  <http://ceres-solver.org/ceres-solver-1.9.0.tar.gz>`_ or clone the
58  Git repository for the latest development version.
59
60  .. code-block:: bash
61
62       git clone https://ceres-solver.googlesource.com/ceres-solver
63
64* Read the :ref:`chapter-tutorial`, browse the chapters on the
65  :ref:`chapter-modeling` API and the :ref:`chapter-solving` API.
66* Join the `mailing list
67  <https://groups.google.com/forum/?fromgroups#!forum/ceres-solver>`_
68  and ask questions.
69* File bugs, feature requests in the `issue tracker
70  <https://code.google.com/p/ceres-solver/issues/list>`_.
71
72
73Cite Us
74-------
75If you use Ceres Solver for a publication, please cite it as::
76
77    @misc{ceres-solver,
78      author = "Sameer Agarwal and Keir Mierle and Others",
79      title = "Ceres Solver",
80      howpublished = "\url{http://ceres-solver.org}",
81    }
82