diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-06-22 18:19:48 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-10-30 21:12:19 +0300 |
commit | 606329d0f872d675faf9362f9d2f89cf0551dd25 (patch) | |
tree | 259d77fba634b811fe8e5d51201a01f3d7156cb6 /extern | |
parent | 7013d55580f59066f8b88626808502feb2d66e3d (diff) |
Libmv: Replace region tracker with autotracker in Blender
The title actually tells it all, this commit switches Blender to use the new
autotrack API from Libmv.
From the user point of view it means that prediction model is now used when
tracking which gives really nice results.
All the other changes are not really visible for users, those are just frame
accessors, caches and so for the new API.
Diffstat (limited to 'extern')
-rw-r--r-- | extern/libmv/intern/autotrack.cc | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/extern/libmv/intern/autotrack.cc b/extern/libmv/intern/autotrack.cc index 6ddb1afc928..f0cbc68f11e 100644 --- a/extern/libmv/intern/autotrack.cc +++ b/extern/libmv/intern/autotrack.cc @@ -67,21 +67,12 @@ int libmv_autoTrackMarker(libmv_AutoTrack* libmv_autotrack, libmv_apiMarkerToMarker(*libmv_tracked_marker, &tracked_marker); libmv_configureTrackRegionOptions(*libmv_options, &options); - - bool tracking_result - = ((AutoTrack*) libmv_autotrack)->TrackMarker(&tracked_marker, - &result, - &options); + (((AutoTrack*) libmv_autotrack)->TrackMarker(&tracked_marker, + &result, + &options)); libmv_markerToApiMarker(tracked_marker, libmv_tracked_marker); libmv_regionTrackergetResult(result, libmv_result); - - // TODO(keir): Update the termination string with failure details. - if (result.termination == TrackRegionResult::CONVERGENCE || - result.termination == TrackRegionResult::NO_CONVERGENCE) { - tracking_result = true; - } - - return tracking_result; + return result.is_usable(); } void libmv_autoTrackAddMarker(libmv_AutoTrack* libmv_autotrack, |