1. 27 Jan, 2015 1 commit
  2. 26 Jan, 2015 2 commits
  3. 23 Jan, 2015 2 commits
  4. 16 Jan, 2015 1 commit
    • Sameer Agarwal's avatar
      Better crash error messages. · db1a76d8
      Sameer Agarwal authored
      When a user requests an operation on a parameter block which has
      not been added to the problem, we now display a more helpful
      error message with more context.
      
      Change-Id: Ia7e54815111eb6375b31ed0d1cddca5917138ae1
      db1a76d8
  5. 14 Jan, 2015 2 commits
  6. 11 Jan, 2015 1 commit
    • Alex Stewart's avatar
      Move check for non-standard Eigen installs into FindEigen.cmake · 0ec02c0a
      Alex Stewart authored
      - As part of adding support for detection of non-standard Homebrew
        install on OSX, an Eigen specific search directory was added to the
        search path in the main CMakeLists.  This commit moves that search
        into FindEigen.cmake.
      
      Change-Id: Ia6142211961a0d1fdddeea77b83438e4ef94434f
      0ec02c0a
  7. 10 Jan, 2015 1 commit
    • Alex Stewart's avatar
      Autodetect Homebrew install prefix on OSX. · 6c677cb9
      Alex Stewart authored
      - Call through to Homebrew on OSX to determine it's install root
        in case it is not /usr/local and add the result to the CMake
        prefix path that is searched for all find_path/library calls.
      - This should allow Ceres to compile even when Homebrew is installed
        in a non-standard location.
      
      Change-Id: I230a5e12aef54617567bdfd20c4fd45c5a04a8bf
      6c677cb9
  8. 09 Jan, 2015 1 commit
  9. 08 Jan, 2015 1 commit
  10. 07 Jan, 2015 2 commits
  11. 06 Jan, 2015 1 commit
  12. 01 Jan, 2015 1 commit
    • Alex Stewart's avatar
      Add explicit no sparse linear algebra library available option. · 60cc520f
      Alex Stewart authored
      - Previously we had no defined default value for
        sparse_linear_algebra_library_type in Solver::Options if Ceres
        was compiled with no sparse library available.  Thus in that case,
        the default value (dependent upon the compiler) would indicate that
        one was available.
      - Now we have an explicit option that means no sparse library is
        available, which is now the default value in Solver::Options in this
        case.
      - Add a warning in CMake when the user disables all sparse libraries.
      - Fix typos in trust_region_preprocessor_test:
        (SUITE/CX)_SPARSE -> (SUITE/CX)SPARSE that induced failures when
        no sparse libraries were available.
      
      Change-Id: I869c399a12d42bfc44220cbb25ce6d6dd80236bd
      60cc520f
  13. 22 Dec, 2014 1 commit
  14. 15 Dec, 2014 1 commit
  15. 06 Dec, 2014 1 commit
    • Sameer Agarwal's avatar
      Add a pointer to MacPorts. · 92e5379c
      Sameer Agarwal authored
      Thanks to Markus Moll for maintaining the port and pointing me to
      it.
      
      Change-Id: Ia28fcbfb4946409de9e6b85d1dc332a25555195b
      92e5379c
  16. 05 Dec, 2014 1 commit
  17. 04 Dec, 2014 1 commit
  18. 02 Dec, 2014 1 commit
  19. 01 Dec, 2014 1 commit
  20. 30 Nov, 2014 2 commits
    • Sameer Agarwal's avatar
      Get ready for 1.10.0rc2. · 2bdc0208
      Sameer Agarwal authored
      Update the version history.
      
      Change-Id: I5de006c7c75b26d8c421bf1eeb525964121d2029
      1.10.0rc2
      2bdc0208
    • Sameer Agarwal's avatar
      Do not try the gradient step if TR step line search fails. · 15981579
      Sameer Agarwal authored
      The line search used by the trust region minimizer when enforcing
      the bounds constraints starts by using the trust region step
      as the line search direction and if that fails, uses the gradient
      as the fallback.
      
      The problem with this logic is that the calling code only sees
      whether one of the line searches succeeds or not. It does not see
      that the fallback happened. So if the fallback line search suceeeds
      it still thinks that the line search direction was the trust region
      step. This is clearly wrong.
      
      This change, removes the broken fallback logic. This has no effect
      on current solution quality as it stands.
      
      Change-Id: Ibc8edd98f77c782ec4708d1e66eaa76d6867b990
      15981579
  21. 29 Nov, 2014 2 commits
  22. 27 Nov, 2014 1 commit
    • Alex Stewart's avatar
      Autodetect gflags namespace. · cbe69450
      Alex Stewart authored
      - At version 2.1, gflags changed from using the google namespace, to
        using gflags by default.  However, it can be configured at build time
        to be something else (which would be google for legacy compatibility
        unless you were evil).
      - Ceres previously assumed that gflags was in the google namespace.
      - Now, FindGFlags.cmake extracts the namespace when gflags.h is found
        and saves it in GFLAGS_NAMESPACE.
      - When building the tests and examples that require gflags,
        CERES_GFLAGS_NAMESPACE is defined to be the detected namespace, and
        all tests/examples now use CERES_GFLAGS_NAMESPACE:: instead of
        google:: when calling gflags functions.
      
      Change-Id: Ia333df7a7e2f08ba9f26bbd339c3a785b88f04c4
      cbe69450
  23. 26 Nov, 2014 1 commit
    • Alex Stewart's avatar
      Compute & report timing information for line searches. · 9ad59a76
      Alex Stewart authored
      - We now compute & report the cumulative time spent performing the
        following tasks as part of a line search:
        - Evaluation of the univariate cost function value & gradient.
        - Minimization of the interpolating polynomial.
        - Total time spent performing line searches.
      - This information is now reported for all minimizers, although only in
        the case of a constrained problem for the TR minimizer.
      - Remove LineSearch::Function abstraction in place of using
        LineSearchFunction implementation directly, and remove virtual
        functions from LineSearchFunction.
      -- LineSearch::Function added an unnecessary level of abstraction since
         the user always had to create a LineSearchFunction anyway to use a
         Ceres Evaluator, and it added an unncessary virtual function call.
      
      Change-Id: Ia4e1921d78f351ae119875aa97a3ea5e8b5d9877
      9ad59a76
  24. 20 Nov, 2014 2 commits
  25. 17 Nov, 2014 2 commits
  26. 14 Nov, 2014 5 commits
    • Sameer Agarwal's avatar
      Better options checking for TrustRegionMinimizer. · b58a8776
      Sameer Agarwal authored
      Since the trust region minimizer can use the line search
      minimizer when it is solving a box constrained problem,
      ensure that the line search options are valid.
      
      Also some minor spacing fixes in the line search code.
      
      Change-Id: Ife04204855cfac389cf980f0a79155d4accc8662
      b58a8776
    • Sameer Agarwal's avatar
      Minor fixes. · 993622e9
      Sameer Agarwal authored
      1. Remove an unused private member in TukeyLoss.
      2. The test for RotationMatrixToAngle had an indexing error.
      
      Change-Id: I7decc9448ae0abef53aa435005f739e9e0931e80
      993622e9
    • Sameer Agarwal's avatar
      More lint cleanup. · c9be6a6f
      Sameer Agarwal authored
      Change-Id: I74f586ac357df055e944f359463562197db79f1d
      c9be6a6f
    • Sameer Agarwal's avatar
      Lint and documentation update. · 0484faba
      Sameer Agarwal authored
      Change-Id: I05f40983f267dd1534e3eee8c0fc038e4429abed
      0484faba
    • Sameer Agarwal's avatar
      Add RotationMatrixToQuaternion. · 730aa537
      Sameer Agarwal authored
      Use this function to implement RotationMatrixToAngleAxis.
      This simplifies the implementation of RotationMatrixToAngleAxis,
      just like Eigen does. It is also autodiff compatible, unlike the
      Eigen based version.
      
      Also significantly improve the test coverage of
      RotationMatrixToAngleAxis.
      
      Change-Id: Ic192a12fb5de952197ee24b0deedc45f195477f1
      730aa537
  27. 13 Nov, 2014 2 commits
    • Mike Vitus's avatar
      Add Tukey loss function. · 7c0ac8f9
      Mike Vitus authored
      Change-Id: I7c76f13e01863440fc207e99b3fc7ad3fb6f7d1a
      7c0ac8f9
    • Sameer Agarwal's avatar
      Fix RotationMatrixToAngleAxis near Pi. · cd358c76
      Sameer Agarwal authored
      Use Eigen's much more complicated conversion routine
      when we encounter cases where the angle of rotation is
      close to Pi.
      
      Along the way also fix the way angle_axis vectors are
      compared by making the matcher more robust.
      
      Thanks to Tobias Strauss for reporting this.
      
      Change-Id: Ia7e65dafad92c48d29d5f3cd22c4d6534789c183
      cd358c76