- 27 Jan, 2015 1 commit
-
-
Sameer Agarwal authored
Add a cubic interpolator based on the Catmull-Rom spline, with support for automatic differentiation. Change-Id: I02ae4c4ea37805ff1f717b05ea805989b474bd59
-
- 26 Jan, 2015 2 commits
-
-
Sameer Agarwal authored
Change-Id: Ica8bf2b28bcbf6cde338f9ca3c64cd8a7d968a4c
-
Filippo Basso authored
Change-Id: Ia824f305b638c1263752efe35690fc0e5db9f75a
-
- 23 Jan, 2015 2 commits
-
-
Sameer Agarwal authored
The previous commit broke levenberg_marquardt_strategy_test due a change in the logging string being used. Change-Id: I6ea69c0bba195c3e7d457d509b9a6605458d69b4
-
Sameer Agarwal authored
Change-Id: Idc7dce702e99637f47d7585399ef8da38f0b8111
-
- 16 Jan, 2015 1 commit
-
-
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
-
- 14 Jan, 2015 2 commits
-
-
Alex Stewart authored
- Results of find_program() are by default visible in the CMake GUI (cache), but the user has no reason to care in general about the location of the Homebrew executable detected. - Note it is still available in the GUI, but only via toggling to the advanced display. Change-Id: Ifb0e54c00d350cbfb3b2717d889570cab61cce54
-
Alex Stewart authored
- Reported by stonier@yujinrobot.com as Issue 153: https://code.google.com/p/ceres-solver/issues/detail?id=153 Change-Id: I3f0e67291adf129a6e7857ccc5f4e7e355feceb8
-
- 11 Jan, 2015 1 commit
-
-
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
-
- 10 Jan, 2015 1 commit
-
-
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
-
- 09 Jan, 2015 1 commit
-
-
Sameer Agarwal authored
Thanks to Philipp Bender for reporting this. Change-Id: I1f2947d378e0e98f6d225126a686d52738df3df0
-
- 08 Jan, 2015 1 commit
-
-
Sameer Agarwal authored
Change-Id: Ida89b67c66b3bc7683d95e63646dfb2f9679d1b1
-
- 07 Jan, 2015 2 commits
-
-
Sameer Agarwal authored
Change-Id: I7376f5e7eace22ec1fc05a61eaa858594f08682d
-
Sameer Agarwal authored
For historical reasons we had a "using namespace std;" in port.h. This is generally a bad idea. So removing it and along the way doing a bunch of cpplint cleanup. Change-Id: Ia125601a55ae62695e247fb0250df4c6f86c46c6
-
- 06 Jan, 2015 1 commit
-
-
Alex Stewart authored
- Also fix a typo in pointer to EIGENSPARSE documentation. Change-Id: I1448fcf3680a65362c6f9b2d8a5ab0259da92364
-
- 01 Jan, 2015 1 commit
-
-
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
-
- 22 Dec, 2014 1 commit
-
-
Sameer Agarwal authored
Thanks to Vasily Vylkov for suggesting the change. Change-Id: I8e15f5ffdba2da5f55234d65ba4b9b0dadfb6085
-
- 15 Dec, 2014 1 commit
-
-
Sameer Agarwal authored
This code never got expanded into a full preconditioner. No point keeping dead code around. Change-Id: I45badcd9e5f7eb39e8d288a96c65a02f325d76bd
-
- 06 Dec, 2014 1 commit
-
-
Sameer Agarwal authored
Thanks to Markus Moll for maintaining the port and pointing me to it. Change-Id: Ia28fcbfb4946409de9e6b85d1dc332a25555195b
-
- 05 Dec, 2014 1 commit
-
-
Sameer Agarwal authored
Update version history. Change-Id: I1b73749ba10679396369e2af0a37699181b125fb
-
- 04 Dec, 2014 1 commit
-
-
Sameer Agarwal authored
Change-Id: Iec2c6b5b0a2aa2e5e3b76200c5ac91000e41f267
-
- 02 Dec, 2014 1 commit
-
-
Alessandro Dal Grande authored
Change-Id: If7bfaef9dea604b78290ab739e21ae2ec6195ed6
-
- 01 Dec, 2014 1 commit
-
-
Sameer Agarwal authored
Change-Id: Ic55b8e48110bc651ae942d34fe5402a6e0422fe3
-
- 30 Nov, 2014 2 commits
-
-
Sameer Agarwal authored
Update the version history. Change-Id: I5de006c7c75b26d8c421bf1eeb525964121d2029
-
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
-
- 29 Nov, 2014 2 commits
-
-
Alex Stewart authored
- If compiling without glog (but with gflags) on OSX, unistd.h is required for close() et al, when using glog this was pulled in indirectly. Change-Id: I8f0807d98479e386921fb48da30683d027d4bc61
-
Sameer Agarwal authored
Also try solving the unconstrained problems from three different starting points. Change-Id: I8343a4dd979a3e8733981819915d25d6e9fcf993
-
- 27 Nov, 2014 1 commit
-
-
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
-
- 26 Nov, 2014 1 commit
-
-
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
-
- 20 Nov, 2014 2 commits
-
-
Sameer Agarwal authored
Change-Id: Ifac9cdf0429c9dadd1ea49338ddcc3b83ac9ec11
-
Sameer Agarwal authored
Logging was happening unconditionally and that is rather jarring in certain circumstances, e.g., when ceres is being called inside a RANSAC loop. Thanks to Bryan Klingner for reporting this. Change-Id: I97a0b6c48df51f5f7362eb9d46654712ef044a00
-
- 17 Nov, 2014 2 commits
-
-
Sameer Agarwal authored
Change-Id: I939bb5cf951f572832b0d665831ab2f6015f75f7
-
Sameer Agarwal authored
Fix the breakage! Change-Id: Ic263852cd7c8a9615d8d3dab43c6cf7d81fc8d40
-
- 14 Nov, 2014 5 commits
-
-
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
-
Sameer Agarwal authored
1. Remove an unused private member in TukeyLoss. 2. The test for RotationMatrixToAngle had an indexing error. Change-Id: I7decc9448ae0abef53aa435005f739e9e0931e80
-
Sameer Agarwal authored
Change-Id: I74f586ac357df055e944f359463562197db79f1d
-
Sameer Agarwal authored
Change-Id: I05f40983f267dd1534e3eee8c0fc038e4429abed
-
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
-
- 13 Nov, 2014 2 commits
-
-
Mike Vitus authored
Change-Id: I7c76f13e01863440fc207e99b3fc7ad3fb6f7d1a
-
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
-