[Bf-blender-cvs] [5d701c6] master: Re-bundle libmv from new upstream repository
Sergey Sharybin
noreply at git.blender.org
Wed Jan 1 17:37:55 CET 2014
Commit: 5d701c6d25a1c5cea65b15cbcc88b4c745164cc2
Author: Sergey Sharybin
Date: Mon Dec 30 19:03:13 2013 +0600
https://developer.blender.org/rB5d701c6d25a1c5cea65b15cbcc88b4c745164cc2
Re-bundle libmv from new upstream repository
No functional changes, just to make sure all the patches
are ported nicely and that update scripts works fine.
===================================================================
M extern/libmv/ChangeLog
M extern/libmv/bundle.sh
===================================================================
diff --git a/extern/libmv/ChangeLog b/extern/libmv/ChangeLog
index bfa8b29..c4abfae 100644
--- a/extern/libmv/ChangeLog
+++ b/extern/libmv/ChangeLog
@@ -1,4 +1,216 @@
-commit 2cd653e2952379da7daf56edcd9e71b0aa929f90
+commit b9e467e7c077b58199c4110f6967b7c18d1e7bf7
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Dec 31 20:34:39 2013 +0600
+
+ Update Ceres to the latest upstream
+
+ This brings up much easier termination type usage,
+ which for us means we might use:
+
+ ceres::Summary::IsSolutionUsable()
+
+ instead of doing manual funky enum values check.
+
+commit 3aeb2367e50b52ca2b9d59d4f0f0b4bbfd6a05e8
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Dec 31 20:43:24 2013 +0600
+
+ Update gtest to latest version 1.7.0
+
+ Also reshuffled CMakeLists in order to avoid
+ conflicts happening between gflags bundled to
+ Ceres and third_party.
+
+commit 30aaa9cd0b4a4eb0948a17824e7e7622d8ebcb41
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Dec 31 20:10:06 2013 +0600
+
+ Changes for VC2013
+
+ Solves compilation error when using msvc2013
+
+ Original patch is by Alexandr Kuznetsov to blender.git
+
+commit b204c0d25065a2b149de256929ff37d8f00f45bb
+Author: Keir Mierle <mierle at gmail.com>
+Date: Tue Dec 31 20:05:58 2013 +0600
+
+ Eagerly attempt to refine a track before doing a brute search
+
+ Before the refinement phase of tracking, a brute force SAD search
+ is run across the search area. This works well but is slow;
+ especially if the guess for the track's location is accurate.
+
+ This patch runs a refinement phase before running a brute force
+ search, hoping that the guessed position (in x2, y2) is close to
+ the best answer. If it is, then no brute search is done. If it is
+ not, then a normal brute force search followed by refinement is
+ done.
+
+ In some cases this may produce worse tracks than before; the
+ regressions will need investigation. The predictive motion model
+ (to be implemented) will reduce the probability of that happening.
+
+commit 5361513f0328ff94b53125d29129561bb03132e8
+Author: Keir Mierle <mierle at gmail.com>
+Date: Tue Dec 31 20:04:46 2013 +0600
+
+ Fix bug where libmv tracking incorrectly succeeds on failure
+
+ Before this patch, if Ceres returned USER_SUCCESS indicating that
+ Ceres was only changing the tracked quad slightly between
+ iterations (indicating convergence), no final correlation check
+ was done. This leads to incorrectly returning that the tracking
+ was successful, when it actually failed.
+
+commit ba9e63eed09e33a48bbcb081058f45ac16f8738e
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Dec 31 20:00:46 2013 +0600
+
+ Implementation of weighted tracks
+
+ Added a weight field to Track structure which means
+ how much affect this track will have on the final
+ reconstruction.
+
+ Currently it affects on BA step only which in most
+ cases will work just fine. However, it worth looking
+ into weight support for intersection/resection.
+
+commit 4600df8b685ca8c4daa22d6c3b0125fd42c3bc67
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Dec 31 19:30:14 2013 +0600
+
+ Code cleanup: move function prototype to header file
+
+commit 0ce5b6efde774b3f042acf9e42c95674548f1c01
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Dec 31 19:26:48 2013 +0600
+
+ Get rid of Allow Fallback option for euclidean resection
+
+ It was rather confusing from the user usage point of view
+ and didn't get so much improvement after new bundle adjuster
+ was added.
+
+ In the future we might want to switch resection to PPnP algorithm,
+ which could also might be a nice alternative to fallback option.
+
+commit 5d063426f4809000c27f38ed798e4224bbd09a6d
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Dec 31 19:24:05 2013 +0600
+
+ Use explicit declaration of int types sign
+
+ Mainly needs to make blender happy with this custom
+ header which used to run into conflict with other int
+ types headers.
+
+ Wouldn't harm being more explicit here anyway.
+
+commit c5be59dee94f94de369006c544080282cfb245cc
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Dec 31 14:50:00 2013 +0600
+
+ Implement refinement of estimated homography/fundamental matrices
+
+ It was only possible to perform algebraic estimation, which didn't
+ give so much accurate results.
+
+ Implemented a way to perform algebraic estimation followed with
+ refinement step using Ceres minimizer.
+
+ The code was actually mostly already there since keyframe selection
+ patch. Made such estimation a generic function in multiview/ and
+ hanged API for estimation in order to pass all additional options via
+ an options structure (the same way as it's done fr Ceres).
+
+ Most of the options are straight-forward to understand,but some
+ deserves more description here:
+
+ * expected_average_symmetric_distance is used as an early output check
+ and as soon as average symmetric error goes below this threshold
+ refining finishes.
+
+ This distance is measured in the same units as input points are.
+
+ It is arguable whether we need callback for this or not, but seems
+ Ceres doesn't have some kind of absolute threshold for function value
+ and function_tolerance behaves different from logic behind expected
+ symmetric error.
+
+ * There' an option to normalize correspondences before estimating the
+ homography in order to increase estimation stability. See
+
+ R. Hartley and A. Zisserman. Multiple View Geometry in Computer
+ Vision. Cambridge University Press, second edition, 2003.
+
+ https://www.cs.ubc.ca/grads/resources/thesis/May09/Dubrofsky_Elan.pdf
+
+commit 1cdad972c4a9005e78891524cbd6d65600ca7e99
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Wed Sep 25 16:12:29 2013 +0600
+
+ Code cleanup: Minor function capitalization fix
+
+ Original patch by Joseph Mansfield to the Blender repository.
+
+commit 434316d084e8a41fd452f03610d7244d664948dc
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Wed Sep 25 16:07:43 2013 +0600
+
+ Code cleanup: spelling correction
+
+ Original patch by Joseph Mansfield to the Blender repository.
+
+commit 5cfe8465ac70407c0959c53bcd5206657a1322a2
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Wed Sep 25 16:02:48 2013 +0600
+
+ Fix for uninitialized covariance matrix
+
+ Lead to unpredictable tracking termination criteria.
+
+commit fd86b77d413489649a989f075b061714ed9a72fc
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Wed Sep 25 16:01:19 2013 +0600
+
+ Add Procrustes PNP ("PPnP") resection algorithm to libmv
+
+ This adds a new Euclidean resection method, used to create the
+ initial reconstruction in the motion tracker, to libmv. The method
+ is based on the Procrustes PNP algorithm (aka "PPnP"). Currently
+ the algorithm is not connected with the motion tracker, but it
+ will be eventually since it supports initialization.
+
+ Having an initial guess when doing resection is important for
+ ambiguous cases where potentially the user could offer extra
+ guidance to the solver, in the form of "this point is in front of
+ that point".
+
+ Original patch by Keir Mierle made to Blender repository.
+
+commit 0d98e9bbde5d57f6cd9515ce8ff2786d322f29ea
+Author: Sergey Sharybin <sergey.vfx at gmail.com>
+Date: Tue Jun 18 19:24:07 2013 +0600
+
+ Compilation error when using clang
+
+ Where couple of issues:
+
+ - Overloaded assignment operator usage ambiguity
+ around some of the Eigen matrix assignment.
+
+ - Using -O4 flag here on linux ended up in lots
+ of cryptic linker issues, even when using recently
+ release clang 3.3.
+
+ Disabled forcing optimization flag for now.
+ We could end up with something smarter in the
+ future, but for now i'm not as much fan of
+ forcing compiler's flag.
+
+commit 2b90b3915671cb629f7aabed30a88f28450294f8
Author: Sergey Sharybin <sergey.vfx at gmail.com>
Date: Sat Jun 1 16:20:35 2013 +0600
@@ -7,7 +219,7 @@ Date: Sat Jun 1 16:20:35 2013 +0600
Saves couple of time which used to waste on copying objects,
also solves win32 compilation errors caused by alignment.
-commit f61b8198b9bddd8d2fa53feae7924aa23df48cbd
+commit 994c02d0ec55e9ae14a93a3ada6e5d4939247fc3
Author: Sergey Sharybin <sergey.vfx at gmail.com>
Date: Thu May 30 18:00:03 2013 +0600
@@ -16,7 +228,7 @@ Date: Thu May 30 18:00:03 2013 +0600
- Made some arguments passing to detector const.
- Remove unneeded include from track_region header.
-commit 61ac890908a397860cabc60207500039876532cc
+commit 7d0c5325a38e61929f44206761b8aa3565631af5
Author: Sergey Sharybin <sergey.vfx at gmail.com>
Date: Mon May 13 04:44:14 2013 +0600
@@ -26,13 +238,13 @@ Date: Mon May 13 04:44:14 2013 +0600
some boost of bundle adjuster (where jet could take some time to
be passed by value).
-commit 4d005ff0771e0e28159be25f8da69d983641384f
+commit eb2e567df4567a54887d602aa95d6744aa154d8b
Author: Sergey Sharybin <sergey.vfx at gmail.com>
Date: Mon May 13 04:22:05 2013 +0600
Minor code style cleanup.
-commit f003b9e3031db4592c2d91b1ea2538c73b7e767d
+commit ad3dbaaef10ea721230694311a359df152c7a44a
Author: Sergey Sharybin <sergey.vfx at gmail.com>
Date: Sun May 12 22:34:54 2013 +0600
@@ -46,7 +258,7 @@ Date: Sun May 12 22:34:54 2013 +0600
refining flags. Technically, all combinations
are possible.
-commit f0e68f69e5c5f0fd82334246d382e59f1eb20164
+commit 4432eb80f27e929f8750229aaada625d4f3ac5ee
Author: Sergey Sharybin <sergey.vfx at gmail.com>
Date: Sun May 12 22:19:31 2013 +0600
@@ -59,7 +271,7 @@ Date: Sun May 12 22:19:31 2013 +0600
It is possible that external user will send focal length of
zero to be refined, but blender prevents this from happening.
-commit 7ed5e4da65d2c0df63a08b1e1f4b4de185
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list