Blender Git Loki
Git Commits -> Revision 7414ccf
Revision 7414ccf by Keir Mierle (master) May 18, 2012, 02:12 (GMT) |
Add light-normalized tracking to the planar tracker This commit adds the ability to normalize patterns by their average value while tracking, to make them invariant to global illumination changes. To see this in action, check out the "Lobby" scene from Hollywood VFX. If you track the markers that are shadowed by the actress, previously they would not track. With the scale adaption on, the tracker would shrink the area to compensate for the changed illumination, losing the track. With "Normalize" turned on, the patch is correctly tracked and scale is maintained. A remaining problem is that only the Ceres cost function is updated to handle the normalization. The brute translation search does not take this into account. Perhaps "Prepass" (see below) should get disabled if normalization is enabled until I fix the prepass to normalize as well. There are a few other changes: - Cleanups in tracking RNA comments. - Bail out of the sampling loop early if the mask is zero; this saves expensive samples of the image derivatives. - Rename the wordy "Translation initialization" to "Prepass" at Sebastian's suggestion. - Fix a bug where the mask was ignored when sampling in the cost functor. |
Commit Details:
Full Hash: 7414ccfeeb745ef0e86ee010137865b5398d10a0
SVN Revision: 46756
Parent Commit: d38f2bc
Lines Changed: +139, -12
8 Modified Paths:
/extern/libmv/libmv-capi.cpp (+1, -0) (Diff)
/extern/libmv/libmv-capi.h (+1, -0) (Diff)
/extern/libmv/libmv/tracking/track_region.cc (+100, -2) (Diff)
/extern/libmv/libmv/tracking/track_region.h (+10, -0) (Diff)
/release/scripts/startup/bl_ui/space_clip.py (+2, -0) (Diff)
/source/blender/blenkernel/intern/tracking.c (+1, -0) (Diff)
/source/blender/makesdna/DNA_tracking_types.h (+1, -0) (Diff)
/source/blender/makesrna/intern/rna_tracking.c (+23, -10) (Diff)
/extern/libmv/libmv-capi.h (+1, -0) (Diff)
/extern/libmv/libmv/tracking/track_region.cc (+100, -2) (Diff)
/extern/libmv/libmv/tracking/track_region.h (+10, -0) (Diff)
/release/scripts/startup/bl_ui/space_clip.py (+2, -0) (Diff)
/source/blender/blenkernel/intern/tracking.c (+1, -0) (Diff)
/source/blender/makesdna/DNA_tracking_types.h (+1, -0) (Diff)
/source/blender/makesrna/intern/rna_tracking.c (+23, -10) (Diff)