mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 08:34:37 +08:00
Update version history.
Update the version history in preparation for 1.13.0RC1 and also reformat older parts of the version history file. Change-Id: I133e5966629e8277631ec5d407165ad188efa1e1
This commit is contained in:
+2
-2
@@ -48,9 +48,9 @@ copyright = u'2016 Google Inc'
|
|||||||
# built documents.
|
# built documents.
|
||||||
#
|
#
|
||||||
# The short X.Y version.
|
# The short X.Y version.
|
||||||
version = '1.12'
|
version = '1.13'
|
||||||
# The full version, including alpha/beta/rc tags.
|
# The full version, including alpha/beta/rc tags.
|
||||||
release = '1.12.0'
|
release = '1.13.0'
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||||
# for a list of supported languages.
|
# for a list of supported languages.
|
||||||
|
|||||||
+160
-68
@@ -4,6 +4,96 @@
|
|||||||
Version History
|
Version History
|
||||||
===============
|
===============
|
||||||
|
|
||||||
|
1.13.0
|
||||||
|
======
|
||||||
|
|
||||||
|
New Features
|
||||||
|
------------
|
||||||
|
#. ``LineSearchMinimizer`` and ``GradientProblemSolver`` are up to 2x
|
||||||
|
faster due to fewer function evaluations. (Sameer Agarwal)
|
||||||
|
#. ``SPARSE_NORMAL_CHOLESKY`` is significantly faster because Ceres
|
||||||
|
now computes the normal equations exploiting the static block
|
||||||
|
sparsity structure. (Cheng Wang & Sameer Agarwal)
|
||||||
|
#. Add compound with scalar operators for Jets. (Alex Stewart)
|
||||||
|
#. Enable support for AVX instructions for Jets. (Alex Stewart)
|
||||||
|
|
||||||
|
Backward Incompatible API Changes
|
||||||
|
---------------------------------
|
||||||
|
The enum ``CovarianceAlgorithmType`` which controls the linear algebra
|
||||||
|
algorithm used to compute the covariance used to combine the choice of
|
||||||
|
the algorithm and the choice of the sparse linear algebra library into
|
||||||
|
the enum name. So we had ``SUITE_SPARSE_QR`` and
|
||||||
|
``EIGEN_SPARSE_QR``. ``Covariance::Options`` now has a separate member
|
||||||
|
allowing the user to choose the sparse linear algebra library, just
|
||||||
|
like the solver and ``CovarianceAlgorithmType`` now takes values
|
||||||
|
``DENSE_SVD`` and ``SPARSE_QR``. This is a forward looking change that
|
||||||
|
will allow us to develop more flexible covariance estimation
|
||||||
|
algorithms with multiple linear algebra backends.
|
||||||
|
|
||||||
|
Bug Fixes & Minor Changes
|
||||||
|
-------------------------
|
||||||
|
#. Fix cmake error from CeresConfig.cmake when Ceres not found (Taylor
|
||||||
|
Braun-Jones)
|
||||||
|
#. Completely refactored ``SparseNormalCholeskySolver``. (Sameer
|
||||||
|
Agarwal)
|
||||||
|
#. Fixed time reporting in ``Summary::FullReport`` when
|
||||||
|
``LineSearchMinimizer`` is used. (Sameer Agarwal)
|
||||||
|
#. Remove unused file: collections_port.cc. (Sameer Agarwal)
|
||||||
|
#. ``SPARSE_SCHUR`` + ``CX_SPARSE`` = Faster (Sameer Agarwal)
|
||||||
|
#. Refactored a number of linear solver tests to be more thorough and
|
||||||
|
informative. (Sameer Agarwal)
|
||||||
|
#. Pass user-specified search hints as HINTS not PATHS. (Alex Stewart)
|
||||||
|
#. Prefer Eigen installs over exported build directories. (Alex
|
||||||
|
Stewart)
|
||||||
|
#. Add OpenMP flags when compiling for C if enabled. (Alex Stewart)
|
||||||
|
#. Add a missing ``CERES_EXPORT`` to GradientChecker (Sameer Agarwal)
|
||||||
|
#. Use target_compile_features() to specify C++11 requirement if
|
||||||
|
available. (Alex Stewart)
|
||||||
|
#. Update docs: .netrc --> .gitcookies (Keir Mierle)
|
||||||
|
#. Fix implicit precission loss warning on 64-bit archs (Ricardo
|
||||||
|
Sanchez-Saez)
|
||||||
|
#. Optionally use exported Eigen CMake configuration if
|
||||||
|
available. (Alex Stewart)
|
||||||
|
#. Use ``Ceres_[SOURCE/BINARY]_DIR`` not ``CMAKE_XXX_DIR`` to support
|
||||||
|
nesting. (Alex Stewart)
|
||||||
|
#. Update ``Problem::EvaluateOptions`` documentation. (Sameer Agarwal)
|
||||||
|
#. Add public headers to CMake target for IDEs. (Devin Lane)
|
||||||
|
#. Add an article on interfacing with automatic
|
||||||
|
differentiation. (Sameer Agarwal)
|
||||||
|
#. Add default Fedora/Debian locations for CXSparse to search
|
||||||
|
paths. (Alex Stewart)
|
||||||
|
#. Add a test for ``LineSearchMinimizer`` (Sameer Agarwal)
|
||||||
|
#. Flatten the table of contents. (Sameer Agarwal)
|
||||||
|
#. Fix when ``LineSearchMinimizer`` adds the ``IterationSummary``` to
|
||||||
|
``Solver::Summary`` (Sameer Agarwal)
|
||||||
|
#. Fix search path for miniglog headers when Ceres is exported. (Alex
|
||||||
|
Stewart)
|
||||||
|
#. Fix ambiguous reference to ``WARNING`` when using miniglog. (Alex
|
||||||
|
Stewart)
|
||||||
|
#. Fix Jet/Eigen compatibility for Eigen > 3.3 (Julien Pilet)
|
||||||
|
#. Add max severity option when ``MINIGLOG`` is enabled (Taylor
|
||||||
|
Braun-Jones)
|
||||||
|
#. Improvements to Schur template specializations (Sameer Agarwal)
|
||||||
|
#. Added an article on derivatives (Sameer Agarwal)
|
||||||
|
#. Require Eigen >= 3.3 to define ScalarBinaryOpTraits in Jet. (Alex
|
||||||
|
Stewart)
|
||||||
|
#. A hacky fix for the Eigen::FullPivLU changes. (Sameer Agarwal)
|
||||||
|
#. Specify ``ScalarBinaryOpTraits`` for Jet types. (Chris Sweeney)
|
||||||
|
#. Remove spurious conversion from doubles to Jets. (Sameer Agarwal)
|
||||||
|
#. Fix an error in the tutorial code for ``NumericDiffCostFunction``
|
||||||
|
(Sameer Agarwal)
|
||||||
|
#. ``CERES_EXPORT`` fix to compile Ceres as DLL (Je Hyeong Hong)
|
||||||
|
#. Fix detection of deprecated Bessel function names on MSVC. (Alex
|
||||||
|
Stewart)
|
||||||
|
#. Ensure that partial evaluation of residuals triggers an error
|
||||||
|
(Sameer Agarwal)
|
||||||
|
#. Fix detection of CMake-built glog on Windows. (Alex Stewart)
|
||||||
|
#. Add additional search paths for glog & Eigen on Windows. (Alex
|
||||||
|
Stewart)
|
||||||
|
#. Various minor grammar and bug fixes to the documetation (Sameer
|
||||||
|
Agarwal, Alex Stewart, William Rucklidge)
|
||||||
|
|
||||||
|
|
||||||
1.12.0
|
1.12.0
|
||||||
======
|
======
|
||||||
|
|
||||||
@@ -30,15 +120,16 @@ Backward Incompatible API Changes
|
|||||||
|
|
||||||
Bug Fixes & Minor Changes
|
Bug Fixes & Minor Changes
|
||||||
-------------------------
|
-------------------------
|
||||||
#. Clear XXX_FOUND in Find<XXX>.cmake prior to searching. (Alex Stewart)
|
#. Clear XXX_FOUND in Find<XXX>.cmake prior to searching. (Alex
|
||||||
|
Stewart)
|
||||||
#. Fix versioning in the documentation (Sameer Agarwal)
|
#. Fix versioning in the documentation (Sameer Agarwal)
|
||||||
#. Fix missing gflags imported target definition in
|
#. Fix missing gflags imported target definition in
|
||||||
CeresConfig.cmake. (Alex Stewart)
|
CeresConfig.cmake. (Alex Stewart)
|
||||||
#. Make gflags a public dependency of Ceres if it and glog are
|
#. Make gflags a public dependency of Ceres if it and glog are
|
||||||
found. (Alex Stewart)
|
found. (Alex Stewart)
|
||||||
#. Add support for glog exported CMake target. (Alex Stewart)
|
#. Add support for glog exported CMake target. (Alex Stewart)
|
||||||
#. Use ``google::GLOG_WARNING`` instead of ``WARNING`` in tests to support
|
#. Use ``google::GLOG_WARNING`` instead of ``WARNING`` in tests to
|
||||||
MSVC. (Alex Stewart)
|
support MSVC. (Alex Stewart)
|
||||||
#. Update gtest and gmock to
|
#. Update gtest and gmock to
|
||||||
``a2b8a8e07628e5fd60644b6dd99c1b5e7d7f1f47`` (Sameer Agarwal)
|
``a2b8a8e07628e5fd60644b6dd99c1b5e7d7f1f47`` (Sameer Agarwal)
|
||||||
#. Add MSVC-specific ``#define`` to expose math constants in
|
#. Add MSVC-specific ``#define`` to expose math constants in
|
||||||
@@ -78,7 +169,8 @@ Bug Fixes & Minor Changes
|
|||||||
IterationCallback. (Sameer Agarwal)
|
IterationCallback. (Sameer Agarwal)
|
||||||
#. Use ProductParameterization in bundle_adjuster.cc (Sameer Agarwal)
|
#. Use ProductParameterization in bundle_adjuster.cc (Sameer Agarwal)
|
||||||
#. Enable support for OpenMP in Clang if detected. (Alex Stewart)
|
#. Enable support for OpenMP in Clang if detected. (Alex Stewart)
|
||||||
#. Remove duplicate entry for the NIST example in the docs. (Michael Vitus)
|
#. Remove duplicate entry for the NIST example in the docs. (Michael
|
||||||
|
Vitus)
|
||||||
#. Add additional logging for analyzing orderings (Sameer Agarwal)
|
#. Add additional logging for analyzing orderings (Sameer Agarwal)
|
||||||
#. Add readme for the sampled_function example. (Michael Vitus)
|
#. Add readme for the sampled_function example. (Michael Vitus)
|
||||||
#. Use _j[0,1,n]() Bessel functions on MSVC to avoid deprecation
|
#. Use _j[0,1,n]() Bessel functions on MSVC to avoid deprecation
|
||||||
@@ -93,15 +185,14 @@ Bug Fixes & Minor Changes
|
|||||||
#. Report Ceres compile options as components in find_package(). (Alex
|
#. Report Ceres compile options as components in find_package(). (Alex
|
||||||
Stewart)
|
Stewart)
|
||||||
#. Fix a spelling error in nnls_modeling.rst (Timer)
|
#. Fix a spelling error in nnls_modeling.rst (Timer)
|
||||||
#. Only use collapse() directive with OpenMP 3.0 or higher. (Keir Mierle)
|
#. Only use collapse() directive with OpenMP 3.0 or higher. (Keir
|
||||||
|
Mierle)
|
||||||
#. Fix install path for CeresConfig.cmake to be architecture-aware.
|
#. Fix install path for CeresConfig.cmake to be architecture-aware.
|
||||||
#. Fix double conversion to degrees in rotation_test (Keir
|
#. Fix double conversion to degrees in rotation_test (Keir Mierle)
|
||||||
Mierle)
|
|
||||||
#. Make Jet string output more readable (Keir Mierle)
|
#. Make Jet string output more readable (Keir Mierle)
|
||||||
#. Fix rotation_test IsClose() and related tests (Keir
|
#. Fix rotation_test IsClose() and related tests (Keir Mierle)
|
||||||
Mierle)
|
#. Loosen an exact equality in local_parameterization_test (Sameer
|
||||||
#. Loosen an exact equality in local_parameterization_test
|
Agarwal)
|
||||||
(Sameer Agarwal)
|
|
||||||
#. make_docs: Pass the file encoding to open() (Niels Ole Salscheider)
|
#. make_docs: Pass the file encoding to open() (Niels Ole Salscheider)
|
||||||
#. Fix error message returned when using SUITE_SPARSE_QR in covariance
|
#. Fix error message returned when using SUITE_SPARSE_QR in covariance
|
||||||
estimation on a ceres built without SuiteSparse support. (Simon
|
estimation on a ceres built without SuiteSparse support. (Simon
|
||||||
@@ -110,7 +201,8 @@ Bug Fixes & Minor Changes
|
|||||||
MSVC. (Alex Stewart)
|
MSVC. (Alex Stewart)
|
||||||
#. Fix missing early return() in xxx_not_found() dependency
|
#. Fix missing early return() in xxx_not_found() dependency
|
||||||
macros. (Alex Stewart)
|
macros. (Alex Stewart)
|
||||||
#. Initialize ``inner_iterations_were_useful_`` correctly. (Sameer Agarwal)
|
#. Initialize ``inner_iterations_were_useful_`` correctly. (Sameer
|
||||||
|
Agarwal)
|
||||||
#. Add an implementation for GradientProblemSolver::Options::IsValid
|
#. Add an implementation for GradientProblemSolver::Options::IsValid
|
||||||
(Sameer Agarwal)
|
(Sameer Agarwal)
|
||||||
#. Fix use of va_copy() if compiling with explicit C++ version <
|
#. Fix use of va_copy() if compiling with explicit C++ version <
|
||||||
@@ -144,7 +236,8 @@ Bug Fixes & Minor Changes
|
|||||||
|
|
||||||
New Features
|
New Features
|
||||||
------------
|
------------
|
||||||
#. Adaptive numeric differentiation using Ridders' method. (Tal Ben-Nun)
|
#. Adaptive numeric differentiation using Ridders' method. (Tal
|
||||||
|
Ben-Nun)
|
||||||
#. Add ``CubicInterpolator`` and ``BiCubicInterpolator`` to allow
|
#. Add ``CubicInterpolator`` and ``BiCubicInterpolator`` to allow
|
||||||
smooth interpolation of sampled functions and integration with
|
smooth interpolation of sampled functions and integration with
|
||||||
automatic differentiation.
|
automatic differentiation.
|
||||||
@@ -166,7 +259,8 @@ Bug Fixes & Minor Changes
|
|||||||
portability issues with gtest / type_info::operator== & Eigen with
|
portability issues with gtest / type_info::operator== & Eigen with
|
||||||
Clang on OS X vs GCC 4.9+ on Linux requiring contradictory 'fixes'.
|
Clang on OS X vs GCC 4.9+ on Linux requiring contradictory 'fixes'.
|
||||||
#. Use link-time optimisation (LTO) only when compiling Ceres itself,
|
#. Use link-time optimisation (LTO) only when compiling Ceres itself,
|
||||||
not tests or examples, to bypass gtest / type_info::operator== issue.
|
not tests or examples, to bypass gtest / type_info::operator==
|
||||||
|
issue.
|
||||||
#. Use old minimum iOS version flags on Xcode < 7.0.
|
#. Use old minimum iOS version flags on Xcode < 7.0.
|
||||||
#. Add gtest-specific flags when building/using as a shared library.
|
#. Add gtest-specific flags when building/using as a shared library.
|
||||||
#. Clean up iOS.cmake to use xcrun/xcodebuild & libtool.
|
#. Clean up iOS.cmake to use xcrun/xcodebuild & libtool.
|
||||||
@@ -189,7 +283,8 @@ Bug Fixes & Minor Changes
|
|||||||
#. Add the option to use numeric differentiation to ``nist`` and
|
#. Add the option to use numeric differentiation to ``nist`` and
|
||||||
``more_garbow_hillstrom``.
|
``more_garbow_hillstrom``.
|
||||||
#. Fix EIGENSPARSE option help s/t it displays in CMake ncurses GUI.
|
#. Fix EIGENSPARSE option help s/t it displays in CMake ncurses GUI.
|
||||||
#. Fix SparseNormalCholeskySolver with dynamic sparsity (Richie Stebbing).
|
#. Fix SparseNormalCholeskySolver with dynamic sparsity (Richie
|
||||||
|
Stebbing).
|
||||||
#. Remove legacy dependency detection macros.
|
#. Remove legacy dependency detection macros.
|
||||||
#. Fix failed if() condition expansion if gflags is not found.
|
#. Fix failed if() condition expansion if gflags is not found.
|
||||||
#. Update all CMake to lowercase function name style.
|
#. Update all CMake to lowercase function name style.
|
||||||
@@ -198,8 +293,10 @@ Bug Fixes & Minor Changes
|
|||||||
#. Remove the spec file needed for generating RPMs.
|
#. Remove the spec file needed for generating RPMs.
|
||||||
#. Fix a typo in small_blas.h (Werber Trobin).
|
#. Fix a typo in small_blas.h (Werber Trobin).
|
||||||
#. Cleanup FindGflags & use installed gflags CMake config if present.
|
#. Cleanup FindGflags & use installed gflags CMake config if present.
|
||||||
#. Add default glog install location on Windows to search paths (bvanevery).
|
#. Add default glog install location on Windows to search paths
|
||||||
#. Add default Eigen install location on Windows to search paths (bvanevery).
|
(bvanevery).
|
||||||
|
#. Add default Eigen install location on Windows to search paths
|
||||||
|
(bvanevery).
|
||||||
#. Fix explanation of config.h generation in bare config.h.
|
#. Fix explanation of config.h generation in bare config.h.
|
||||||
#. Fix unused parameter compiler warnings in numeric_diff.h.
|
#. Fix unused parameter compiler warnings in numeric_diff.h.
|
||||||
#. Increase tolerance for a test in polynomial_test (Taylor Braun
|
#. Increase tolerance for a test in polynomial_test (Taylor Braun
|
||||||
@@ -234,7 +331,8 @@ Bug Fixes & Minor Changes
|
|||||||
#. Fix bug where pow(JetA,JetB) returned wrong result for JetA==0
|
#. Fix bug where pow(JetA,JetB) returned wrong result for JetA==0
|
||||||
(Russell Smith).
|
(Russell Smith).
|
||||||
#. Remove duplicate step norm computation (Johannes Schonberger).
|
#. Remove duplicate step norm computation (Johannes Schonberger).
|
||||||
#. Enhance usability when encountering Eigen version mismatches (Andrew Hundt).
|
#. Enhance usability when encountering Eigen version mismatches
|
||||||
|
(Andrew Hundt).
|
||||||
#. Add PLY file logger before and after BA in order to ease visual
|
#. Add PLY file logger before and after BA in order to ease visual
|
||||||
comparison (Pierre Moulon).
|
comparison (Pierre Moulon).
|
||||||
#. Fix CMake config file docs to include 2.8.x & 3.x styles.
|
#. Fix CMake config file docs to include 2.8.x & 3.x styles.
|
||||||
@@ -246,19 +344,23 @@ Bug Fixes & Minor Changes
|
|||||||
#. Add versions of dependencies used to FullReport().
|
#. Add versions of dependencies used to FullReport().
|
||||||
#. Ensure local config.h is used if Ceres is already installed.
|
#. Ensure local config.h is used if Ceres is already installed.
|
||||||
#. Small messaging and comment updates in CMake
|
#. Small messaging and comment updates in CMake
|
||||||
#. Handle possible presence of library prefixes in MSVC (Sylvain Duchêne).
|
#. Handle possible presence of library prefixes in MSVC (Sylvain
|
||||||
#. Use -O2 not -O3 on MinGW to workaround issue with Eigen (s1m3mu3@gmail.com).
|
Duchêne).
|
||||||
#. Increase tolerance in small_blas test for Cygwin (s1m3mu3@gmail.com).
|
#. Use -O2 not -O3 on MinGW to workaround issue with Eigen
|
||||||
|
(s1m3mu3@gmail.com).
|
||||||
|
#. Increase tolerance in small_blas test for Cygwin
|
||||||
|
(s1m3mu3@gmail.com).
|
||||||
#. Fix iOS cmake file for cmake 3.0 (Jack Feng)
|
#. Fix iOS cmake file for cmake 3.0 (Jack Feng)
|
||||||
#. Fix missing gflags shlwapi dependency on MinGW (s1m3mu3@gmail.com).
|
#. Fix missing gflags shlwapi dependency on MinGW (s1m3mu3@gmail.com).
|
||||||
#. Add thread dependency & fix namespace detection on Windows for gflags
|
#. Add thread dependency & fix namespace detection on Windows for
|
||||||
(arrigo.benedetti@gmail.com).
|
gflags (arrigo.benedetti@gmail.com).
|
||||||
#. Rename macros in the public API to have a ``CERES_`` prefix.
|
#. Rename macros in the public API to have a ``CERES_`` prefix.
|
||||||
#. Fix ``OrderedGroup::Reverse()`` when it is empty (Chris Sweeney).
|
#. Fix ``OrderedGroup::Reverse()`` when it is empty (Chris Sweeney).
|
||||||
#. Update the code to point to ceres-solver.org.
|
#. Update the code to point to ceres-solver.org.
|
||||||
#. Update documentation to point to the GitHub issue tracker.
|
#. Update documentation to point to the GitHub issue tracker.
|
||||||
#. Disable ``LAPACK`` for iOS builds. (Greg Coombe)
|
#. Disable ``LAPACK`` for iOS builds. (Greg Coombe)
|
||||||
#. Force use of single-thread in ``Problem::Evaluate()`` without OpenMP.
|
#. Force use of single-thread in ``Problem::Evaluate()`` without
|
||||||
|
OpenMP.
|
||||||
#. Less strict check for multithreading. (Chris Sweeney)
|
#. Less strict check for multithreading. (Chris Sweeney)
|
||||||
#. Update tolerances in small_blas_test.cc (Philipp Hubner)
|
#. Update tolerances in small_blas_test.cc (Philipp Hubner)
|
||||||
#. Documentation corrections (Steve Hsu)
|
#. Documentation corrections (Steve Hsu)
|
||||||
@@ -305,7 +407,8 @@ New Features
|
|||||||
#. ``Eigen`` can now be as a sparse linear algebra backend. This can
|
#. ``Eigen`` can now be as a sparse linear algebra backend. This can
|
||||||
be done by setting
|
be done by setting
|
||||||
``Solver::Options::sparse_linear_algebra_library_type`` to
|
``Solver::Options::sparse_linear_algebra_library_type`` to
|
||||||
``EIGEN_SPARSE``. Performance should be comparable to ``CX_SPARSE``.
|
``EIGEN_SPARSE``. Performance should be comparable to
|
||||||
|
``CX_SPARSE``.
|
||||||
|
|
||||||
.. NOTE::
|
.. NOTE::
|
||||||
|
|
||||||
@@ -417,7 +520,8 @@ Bug Fixes
|
|||||||
#. Compile miniglog into Ceres if enabled on all platforms.
|
#. Compile miniglog into Ceres if enabled on all platforms.
|
||||||
#. Add two missing files to Android.mk (Greg Coombe)
|
#. Add two missing files to Android.mk (Greg Coombe)
|
||||||
#. Fix Cmake error when using miniglog. (Greg Coombe)
|
#. Fix Cmake error when using miniglog. (Greg Coombe)
|
||||||
#. Don't build miniglog unconditionally as a static library (Björn Piltz)
|
#. Don't build miniglog unconditionally as a static library (Björn
|
||||||
|
Piltz)
|
||||||
#. Added a missing include. (Björn Piltz)
|
#. Added a missing include. (Björn Piltz)
|
||||||
#. Conditionally disable SparseNormalCholesky.
|
#. Conditionally disable SparseNormalCholesky.
|
||||||
#. Fix a memory leak in program_test.cc.
|
#. Fix a memory leak in program_test.cc.
|
||||||
@@ -428,7 +532,6 @@ Bug Fixes
|
|||||||
|
|
||||||
New Features
|
New Features
|
||||||
------------
|
------------
|
||||||
|
|
||||||
#. Bounds constraints: Support for upper and/or lower bounds on
|
#. Bounds constraints: Support for upper and/or lower bounds on
|
||||||
parameters when using the trust region minimizer.
|
parameters when using the trust region minimizer.
|
||||||
#. Dynamic Sparsity: Problems in which the sparsity structure of the
|
#. Dynamic Sparsity: Problems in which the sparsity structure of the
|
||||||
@@ -464,7 +567,6 @@ New Features
|
|||||||
|
|
||||||
Backward Incompatible API Changes
|
Backward Incompatible API Changes
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
#. ``Solver::Options::linear_solver_ordering`` used to be a naked
|
#. ``Solver::Options::linear_solver_ordering`` used to be a naked
|
||||||
pointer that Ceres took ownership of. This is error prone behaviour
|
pointer that Ceres took ownership of. This is error prone behaviour
|
||||||
which leads to problems when copying the ``Solver::Options`` struct
|
which leads to problems when copying the ``Solver::Options`` struct
|
||||||
@@ -490,8 +592,8 @@ Backward Incompatible API Changes
|
|||||||
#. ``Solver::Options::gradient_tolerance`` used to be a relative
|
#. ``Solver::Options::gradient_tolerance`` used to be a relative
|
||||||
gradient tolerance. i.e., The solver converged when
|
gradient tolerance. i.e., The solver converged when
|
||||||
|
|
||||||
.. math::
|
.. math:: \|g(x)\|_\infty < \text{gradient_tolerance} *
|
||||||
\|g(x)\|_\infty < \text{gradient_tolerance} * \|g(x_0)\|_\infty
|
\|g(x_0)\|_\infty
|
||||||
|
|
||||||
where :math:`g(x)` is the gradient of the objective function at
|
where :math:`g(x)` is the gradient of the objective function at
|
||||||
:math:`x` and :math:`x_0` is the parmeter vector at the start of
|
:math:`x` and :math:`x_0` is the parmeter vector at the start of
|
||||||
@@ -500,8 +602,7 @@ Backward Incompatible API Changes
|
|||||||
This has changed to an absolute tolerance, i.e. the solver
|
This has changed to an absolute tolerance, i.e. the solver
|
||||||
converges when
|
converges when
|
||||||
|
|
||||||
.. math::
|
.. math:: \|g(x)\|_\infty < \text{gradient_tolerance}
|
||||||
\|g(x)\|_\infty < \text{gradient_tolerance}
|
|
||||||
|
|
||||||
#. Ceres cannot be built without the line search minimizer
|
#. Ceres cannot be built without the line search minimizer
|
||||||
anymore. Thus the preprocessor define
|
anymore. Thus the preprocessor define
|
||||||
@@ -509,7 +610,6 @@ Backward Incompatible API Changes
|
|||||||
|
|
||||||
Bug Fixes
|
Bug Fixes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
#. Disabled warning C4251. (Björn Piltz)
|
#. Disabled warning C4251. (Björn Piltz)
|
||||||
#. Do not propagate 3d party libs through
|
#. Do not propagate 3d party libs through
|
||||||
`IMPORTED_LINK_INTERFACE_LIBRARIES_[DEBUG/RELEASE]` mechanism when
|
`IMPORTED_LINK_INTERFACE_LIBRARIES_[DEBUG/RELEASE]` mechanism when
|
||||||
@@ -522,8 +622,8 @@ Bug Fixes
|
|||||||
#. Better error checking when ``Problem::RemoveResidualBlock`` is
|
#. Better error checking when ``Problem::RemoveResidualBlock`` is
|
||||||
called. (Alex Stewart)
|
called. (Alex Stewart)
|
||||||
#. Fixed a memory leak in ``SchurComplementSolver``.
|
#. Fixed a memory leak in ``SchurComplementSolver``.
|
||||||
#. Added ``epsilon()`` method to ``NumTraits<ceres::Jet<T, N> >``. (Filippo
|
#. Added ``epsilon()`` method to ``NumTraits<ceres::Jet<T, N>
|
||||||
Basso)
|
>``. (Filippo Basso)
|
||||||
#. Fixed a bug in `CompressedRowSparseMatrix::AppendRows`` and
|
#. Fixed a bug in `CompressedRowSparseMatrix::AppendRows`` and
|
||||||
``DeleteRows``.q
|
``DeleteRows``.q
|
||||||
#. Handle empty problems consistently.
|
#. Handle empty problems consistently.
|
||||||
@@ -594,10 +694,12 @@ Bug Fixes
|
|||||||
#. Fix operator= ambiguity on some versions of Clang. (Alex Stewart)
|
#. Fix operator= ambiguity on some versions of Clang. (Alex Stewart)
|
||||||
#. Various Lint cleanups (William Rucklidge & Jim Roseborough)
|
#. Various Lint cleanups (William Rucklidge & Jim Roseborough)
|
||||||
#. Modified installation folders for Windows. (Pablo Speciale)
|
#. Modified installation folders for Windows. (Pablo Speciale)
|
||||||
#. Added librt to link libraries for SuiteSparse_config on Linux. (Alex Stewart)
|
#. Added librt to link libraries for SuiteSparse_config on
|
||||||
|
Linux. (Alex Stewart)
|
||||||
#. Check for presence of return-type-c-linkage option with
|
#. Check for presence of return-type-c-linkage option with
|
||||||
Clang. (Alex Stewart)
|
Clang. (Alex Stewart)
|
||||||
#. Fix Problem::RemoveParameterBlock after calling solve. (Simon Lynen)
|
#. Fix Problem::RemoveParameterBlock after calling solve. (Simon
|
||||||
|
Lynen)
|
||||||
#. Fix a free/delete bug in covariance_impl.cc
|
#. Fix a free/delete bug in covariance_impl.cc
|
||||||
#. Fix two build errors. (Dustin Lang)
|
#. Fix two build errors. (Dustin Lang)
|
||||||
#. Add RequireInitialization = 1 to NumTraits::Jet.
|
#. Add RequireInitialization = 1 to NumTraits::Jet.
|
||||||
@@ -619,7 +721,6 @@ Backward Incompatible API Changes
|
|||||||
|
|
||||||
New Features
|
New Features
|
||||||
------------
|
------------
|
||||||
|
|
||||||
#. Sparse and dense covariance estimation.
|
#. Sparse and dense covariance estimation.
|
||||||
#. A new Wolfe line search. (Alex Stewart)
|
#. A new Wolfe line search. (Alex Stewart)
|
||||||
#. ``BFGS`` line search direction. (Alex Stewart)
|
#. ``BFGS`` line search direction. (Alex Stewart)
|
||||||
@@ -629,9 +730,8 @@ New Features
|
|||||||
solvers.
|
solvers.
|
||||||
#. Support for multiple dense linear algebra backends. In particular
|
#. Support for multiple dense linear algebra backends. In particular
|
||||||
optimized ``BLAS`` and ``LAPACK`` implementations (e.g., Intel MKL,
|
optimized ``BLAS`` and ``LAPACK`` implementations (e.g., Intel MKL,
|
||||||
ACML, OpenBLAS etc) can now be used to do the dense linear
|
ACML, OpenBLAS etc) can now be used to do the dense linear algebra
|
||||||
algebra for ``DENSE_QR``, ``DENSE_NORMAL_CHOLESKY`` and
|
for ``DENSE_QR``, ``DENSE_NORMAL_CHOLESKY`` and ``DENSE_SCHUR``
|
||||||
``DENSE_SCHUR``
|
|
||||||
#. Use of Inner iterations can now be adaptively stopped. Iteration
|
#. Use of Inner iterations can now be adaptively stopped. Iteration
|
||||||
and runtime statistics for inner iterations are not reported in
|
and runtime statistics for inner iterations are not reported in
|
||||||
``Solver::Summary`` and ``Solver::Summary::FullReport``.
|
``Solver::Summary`` and ``Solver::Summary::FullReport``.
|
||||||
@@ -639,10 +739,11 @@ New Features
|
|||||||
#. Add BlockRandomAccessCRSMatrix.
|
#. Add BlockRandomAccessCRSMatrix.
|
||||||
#. Speeded up automatic differentiation by 7\%.
|
#. Speeded up automatic differentiation by 7\%.
|
||||||
#. Bundle adjustment example from libmv/Blender (Sergey Sharybin)
|
#. Bundle adjustment example from libmv/Blender (Sergey Sharybin)
|
||||||
#. Shared library building is now controlled by CMake, rather than a custom
|
#. Shared library building is now controlled by CMake, rather than a
|
||||||
solution. Previously, Ceres had a custom option, but this is now deprecated
|
custom solution. Previously, Ceres had a custom option, but this is
|
||||||
in favor of CMake's built in support for switching between static and
|
now deprecated in favor of CMake's built in support for switching
|
||||||
shared. Turn on BUILD_SHARED_LIBS to get shared Ceres libraries.
|
between static and shared. Turn on BUILD_SHARED_LIBS to get shared
|
||||||
|
Ceres libraries.
|
||||||
#. No more dependence on Protocol Buffers.
|
#. No more dependence on Protocol Buffers.
|
||||||
#. Incomplete LQ factorization.
|
#. Incomplete LQ factorization.
|
||||||
#. Ability to write trust region problems to disk.
|
#. Ability to write trust region problems to disk.
|
||||||
@@ -654,7 +755,6 @@ New Features
|
|||||||
|
|
||||||
Bug Fixes
|
Bug Fixes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
#. Fix ``ITERATIVE_SCHUR`` solver to work correctly when the schur
|
#. Fix ``ITERATIVE_SCHUR`` solver to work correctly when the schur
|
||||||
complement is of size zero. (Soohyun Bae)
|
complement is of size zero. (Soohyun Bae)
|
||||||
#. Fix the ``spec`` file for generating ``RPM`` packages (Brian Pitts
|
#. Fix the ``spec`` file for generating ``RPM`` packages (Brian Pitts
|
||||||
@@ -692,8 +792,8 @@ Bug Fixes
|
|||||||
Stewart)
|
Stewart)
|
||||||
#. Fix configuration error on systems without SuiteSparse installed
|
#. Fix configuration error on systems without SuiteSparse installed
|
||||||
(Sergey Sharybin)
|
(Sergey Sharybin)
|
||||||
#. Enforce the read call returns correct value in ``curve_fitting_c.c``
|
#. Enforce the read call returns correct value in
|
||||||
(Arnaud Gelas)
|
``curve_fitting_c.c`` (Arnaud Gelas)
|
||||||
#. Fix DynamicAutoDiffCostFunction (Richard Stebbing)
|
#. Fix DynamicAutoDiffCostFunction (Richard Stebbing)
|
||||||
#. Fix Problem::RemoveParameterBlock documentation (Johannes
|
#. Fix Problem::RemoveParameterBlock documentation (Johannes
|
||||||
Schönberger)
|
Schönberger)
|
||||||
@@ -703,7 +803,8 @@ Bug Fixes
|
|||||||
#. Fix a reallocation bug in
|
#. Fix a reallocation bug in
|
||||||
``CreateJacobianBlockSparsityTranspose``. (Yuliy Schwartzburg)
|
``CreateJacobianBlockSparsityTranspose``. (Yuliy Schwartzburg)
|
||||||
#. Add a define for O_BINARY.
|
#. Add a define for O_BINARY.
|
||||||
#. Fix miniglog-based Android NDK build; now works with NDK r9. (Scott Ettinger)
|
#. Fix miniglog-based Android NDK build; now works with NDK r9. (Scott
|
||||||
|
Ettinger)
|
||||||
|
|
||||||
|
|
||||||
1.6.0
|
1.6.0
|
||||||
@@ -711,7 +812,6 @@ Bug Fixes
|
|||||||
|
|
||||||
New Features
|
New Features
|
||||||
------------
|
------------
|
||||||
|
|
||||||
#. Major Performance improvements.
|
#. Major Performance improvements.
|
||||||
|
|
||||||
a. Schur type solvers (``SPARSE_SCHUR``, ``DENSE_SCHUR``,
|
a. Schur type solvers (``SPARSE_SCHUR``, ``DENSE_SCHUR``,
|
||||||
@@ -763,7 +863,6 @@ Bug Fixes
|
|||||||
|
|
||||||
Backward Incompatible API Changes
|
Backward Incompatible API Changes
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
#. Added ``Problem::Evaluate``. Now you can evaluate a problem or any
|
#. Added ``Problem::Evaluate``. Now you can evaluate a problem or any
|
||||||
part of it without calling the solver.
|
part of it without calling the solver.
|
||||||
|
|
||||||
@@ -904,7 +1003,6 @@ Bug Fixes
|
|||||||
|
|
||||||
Backward Incompatible API Changes
|
Backward Incompatible API Changes
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
The new ordering API breaks existing code. Here the common case fixes.
|
The new ordering API breaks existing code. Here the common case fixes.
|
||||||
|
|
||||||
**Before**
|
**Before**
|
||||||
@@ -953,7 +1051,6 @@ The new ordering API breaks existing code. Here the common case fixes.
|
|||||||
|
|
||||||
New Features
|
New Features
|
||||||
------------
|
------------
|
||||||
|
|
||||||
#. A new richer, more expressive and consistent API for ordering
|
#. A new richer, more expressive and consistent API for ordering
|
||||||
parameter blocks.
|
parameter blocks.
|
||||||
#. A non-linear generalization of Ruhe & Wedin's Algorithm II. This
|
#. A non-linear generalization of Ruhe & Wedin's Algorithm II. This
|
||||||
@@ -1005,7 +1102,6 @@ Bug Fixes
|
|||||||
|
|
||||||
New Features
|
New Features
|
||||||
------------
|
------------
|
||||||
|
|
||||||
#. Android Port (Scott Ettinger also contributed to the port)
|
#. Android Port (Scott Ettinger also contributed to the port)
|
||||||
#. Windows port. (Changchang Wu and Pierre Moulon also contributed to the port)
|
#. Windows port. (Changchang Wu and Pierre Moulon also contributed to the port)
|
||||||
#. New subspace Dogleg Solver. (Markus Moll)
|
#. New subspace Dogleg Solver. (Markus Moll)
|
||||||
@@ -1043,7 +1139,6 @@ New Features
|
|||||||
|
|
||||||
Bug Fixes
|
Bug Fixes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
#. Fix how invalid step evaluations are handled.
|
#. Fix how invalid step evaluations are handled.
|
||||||
#. Change the slop handling around zero for model cost changes to use
|
#. Change the slop handling around zero for model cost changes to use
|
||||||
relative tolerances rather than absolute tolerances.
|
relative tolerances rather than absolute tolerances.
|
||||||
@@ -1091,7 +1186,6 @@ Bug Fixes
|
|||||||
|
|
||||||
Bug Fixes
|
Bug Fixes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
#. ``suitesparse_test`` is enabled even when ``-DSUITESPARSE=OFF``.
|
#. ``suitesparse_test`` is enabled even when ``-DSUITESPARSE=OFF``.
|
||||||
#. ``FixedArray`` internal struct did not respect ``Eigen``
|
#. ``FixedArray`` internal struct did not respect ``Eigen``
|
||||||
alignment requirements (Koichi Akabe & Stephan Kassemeyer).
|
alignment requirements (Koichi Akabe & Stephan Kassemeyer).
|
||||||
@@ -1103,7 +1197,6 @@ Bug Fixes
|
|||||||
|
|
||||||
Bug Fixes
|
Bug Fixes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
#. Fix constant parameter blocks, and other minor fixes (Markus Moll)
|
#. Fix constant parameter blocks, and other minor fixes (Markus Moll)
|
||||||
#. Fix alignment issues when combining ``Jet`` and
|
#. Fix alignment issues when combining ``Jet`` and
|
||||||
``FixedArray`` in automatic differeniation.
|
``FixedArray`` in automatic differeniation.
|
||||||
@@ -1114,21 +1207,23 @@ Bug Fixes
|
|||||||
|
|
||||||
New Features
|
New Features
|
||||||
------------
|
------------
|
||||||
|
|
||||||
#. Powell's Dogleg solver
|
#. Powell's Dogleg solver
|
||||||
#. Documentation now has a brief overview of Trust Region methods and
|
#. Documentation now has a brief overview of Trust Region methods and
|
||||||
how the Levenberg-Marquardt and Dogleg methods work.
|
how the Levenberg-Marquardt and Dogleg methods work.
|
||||||
|
|
||||||
Bug Fixes
|
Bug Fixes
|
||||||
---------
|
---------
|
||||||
|
#. Destructor for ``TrustRegionStrategy`` was not virtual (Markus
|
||||||
#. Destructor for ``TrustRegionStrategy`` was not virtual (Markus Moll)
|
Moll)
|
||||||
#. Invalid ``DCHECK`` in ``suitesparse.cc`` (Markus Moll)
|
#. Invalid ``DCHECK`` in ``suitesparse.cc`` (Markus Moll)
|
||||||
#. Iteration callbacks were not properly invoked (Luis Alberto Zarrabeiti)
|
#. Iteration callbacks were not properly invoked (Luis Alberto
|
||||||
|
Zarrabeiti)
|
||||||
#. Logging level changes in ConjugateGradientsSolver
|
#. Logging level changes in ConjugateGradientsSolver
|
||||||
#. VisibilityBasedPreconditioner setup does not account for skipped camera pairs. This was debugging code.
|
#. VisibilityBasedPreconditioner setup does not account for skipped
|
||||||
|
camera pairs. This was debugging code.
|
||||||
#. Enable SSE support on MacOS
|
#. Enable SSE support on MacOS
|
||||||
#. ``system_test`` was taking too long and too much memory (Koichi Akabe)
|
#. ``system_test`` was taking too long and too much memory (Koichi
|
||||||
|
Akabe)
|
||||||
|
|
||||||
1.2.0
|
1.2.0
|
||||||
=====
|
=====
|
||||||
@@ -1162,7 +1257,6 @@ Bug Fixes
|
|||||||
|
|
||||||
Bug Fixes
|
Bug Fixes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
#. Fix a bug in the handling of constant blocks. (Louis Simard)
|
#. Fix a bug in the handling of constant blocks. (Louis Simard)
|
||||||
#. Add an optional lower bound to the Levenberg-Marquardt regularizer
|
#. Add an optional lower bound to the Levenberg-Marquardt regularizer
|
||||||
to prevent oscillating between well and ill posed linear problems.
|
to prevent oscillating between well and ill posed linear problems.
|
||||||
@@ -1173,7 +1267,6 @@ Bug Fixes
|
|||||||
|
|
||||||
New Features
|
New Features
|
||||||
------------
|
------------
|
||||||
|
|
||||||
#. New iterative linear solver for general sparse problems - ``CGNR``
|
#. New iterative linear solver for general sparse problems - ``CGNR``
|
||||||
and a block Jacobi preconditioner for it.
|
and a block Jacobi preconditioner for it.
|
||||||
#. Changed the semantics of how ``SuiteSparse`` dependencies are
|
#. Changed the semantics of how ``SuiteSparse`` dependencies are
|
||||||
@@ -1189,14 +1282,13 @@ New Features
|
|||||||
|
|
||||||
Bug Fixes
|
Bug Fixes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
#. Fixed a strict weak ordering bug in the schur ordering.
|
#. Fixed a strict weak ordering bug in the schur ordering.
|
||||||
#. Grammar and typos in the documents and code comments.
|
#. Grammar and typos in the documents and code comments.
|
||||||
#. Fixed tests which depended on exact equality between floating point values.
|
#. Fixed tests which depended on exact equality between floating point
|
||||||
|
values.
|
||||||
|
|
||||||
1.0.0
|
1.0.0
|
||||||
=====
|
=====
|
||||||
|
|
||||||
Initial open source release. Nathan Wiegand contributed to the Mac OSX
|
Initial open source release. Nathan Wiegand contributed to the Mac OSX
|
||||||
port.
|
port.
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright 2015 Google Inc. All rights reserved.
|
Copyright 2017 Google Inc. All rights reserved.
|
||||||
http://ceres-solver.org/
|
http://ceres-solver.org/
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without
|
Redistribution and use in source and binary forms, with or without
|
||||||
@@ -30,7 +30,7 @@
|
|||||||
|
|
||||||
<package format="2">
|
<package format="2">
|
||||||
<name>ceres-solver</name>
|
<name>ceres-solver</name>
|
||||||
<version>1.12.0</version>
|
<version>1.13.0</version>
|
||||||
<description>A large scale non-linear optimization library.</description>
|
<description>A large scale non-linear optimization library.</description>
|
||||||
<maintainer email="ceres-solver@googlegroups.com">
|
<maintainer email="ceres-solver@googlegroups.com">
|
||||||
The Ceres Solver Authors
|
The Ceres Solver Authors
|
||||||
|
|||||||
Reference in New Issue
Block a user