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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +Date: Tue Dec 31 19:30:14 2013 +0600 + + Code cleanup: move function prototype to header file + +commit 0ce5b6efde774b3f042acf9e42c95674548f1c01 +Author: Sergey Sharybin <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> +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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> Date: Mon May 13 04:22:05 2013 +0600 Minor code style cleanup. -commit f003b9e3031db4592c2d91b1ea2538c73b7e767d +commit ad3dbaaef10ea721230694311a359df152c7a44a Author: Sergey Sharybin <[email protected]> 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 <[email protected]> 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. @@ _______________________________________________ Bf-blender-cvs mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-blender-cvs
