Revision f1454ec by Keir Mierle December 4, 2011, 13:58 (GMT) |
Turn grayscale preview on if any channel toggles are active for motion tracking. |
Revision 4bd3a29 by Keir Mierle December 4, 2011, 13:46 (GMT) |
Add support for detecting tracking failure in the ESM tracker component of libmv. Since both KLT and Hybrid rely on ESM underneath, KLT and Hybrid now have a minimum correlation setting to match. With this fix, track failures should get detected quicker, with the issue that sometimes the tracker will give up too easily. That is fixable by reducing the required correlation (in the track properties). |
Revision d261623 by Sergey Sharybin December 4, 2011, 13:26 (GMT) |
Camera tracking: merge hybrid tracker from tomato branch Comment from Keir's commit: Add a new hybrid region tracker for motion tracking to libmv, and add it as an option (under "Hybrid") in the tracking settings. The region tracker is a combination of brute force tracking for coarse alignment, then refinement with the ESM/KLT algorithm already in libmv that gives excellent subpixel precision (typically 1/50'th of a pixel) This also adds a new "brute force" region tracker which does a brute force search through every pixel position in the destination for the pattern in the first frame. It leverages SSE if available, similar to the SAD tracker, to do this quickly. Currently it does some unnecessary conversions to/from floating point that will get fixed later. The hybrid tracker glues the two trackers (brute & ESM) together to get an overall better tracker. The algorithm is simple: 1. Track from frame 1 to frame 2 with the brute force tracker. This tries every possible pixel position for the pattern from frame 1 in frame 2. The position with the smallest sum-of-absolute-differences is chosen. By definition, this position is only accurate up to 1 pixel or so. 2. Using the result from 1, initialize a track with ESM. This does a least-squares fit with subpixel precision. 3. If the ESM shift was more than 2 pixels, report failure. 4. If the ESM track shifted less than 2 pixels, then the track is good and we're done. The rationale here is that if the refinement stage shifts more than 1 pixel, then the brute force result likely found some random position that's not a good fit. svn command used: svn merge -r 42375:42376 -r 42377:42379 ^/branches/soc-2011-tomato |
Revision d00bb6d by Keir Mierle December 4, 2011, 12:58 (GMT) |
Add a toggle button to display motion tracker previews in grayscale. |
Revision 4e0b4de by Sergey Sharybin December 4, 2011, 12:32 (GMT) |
Revision bb81c03 by Sergey Sharybin December 4, 2011, 12:06 (GMT) |
Revert "Fix a segfault in the tracker caused by attempting a one-frame track after the active tracker has become disabled." BKE_tracking_next shouldn't be called if there's nothing to track. Fixed in trunk, would be fixed here after upcoming merge. |
Revision 458ecae by Sergey Sharybin December 4, 2011, 11:57 (GMT) |
Do not clamp search size when adding new track with non-klt tracker set |
Revision bd9583a by Sergey Sharybin December 4, 2011, 10:57 (GMT) |
Fix crash when trying to track disabled track. This is possible fixes #29498: Seg fault on trying to track byond clip length |
Revision 12326ac by Thomas Dinges December 4, 2011, 10:45 (GMT) |
CUDA * Added CUDA Binaries to Windows scons config files, disabled by default. Also the path to nvcc is commented out, best to set this in the user config, as it varies on each system probably. |
Revision 4c93e0a by Campbell Barton December 4, 2011, 06:55 (GMT) |
include mathutils.noise in sphinx docs |
Revision cbd5b49 by Campbell Barton December 4, 2011, 06:39 (GMT) |
remove use of deprecated struct members - editmesh smooth & subdivide were using old mirror axis flag still. - removed colbits from outliner and object code. - commented some other parts of the code which access deprecated members and aren't called anywhere. |
Revision 31ff21d by Campbell Barton December 4, 2011, 06:05 (GMT) |
add define for deprecated DNA struct members: DNA_DEPRECATED, this means use of deprecated struct members gives a warning. - makesdna.c preprocessor skips this. - DNA_DEPRECATED_ALLOW is used so readfile.c can do versioning without warnings. - this exposes some use of deprecated struct members, will deal with this after. |
Revision 3113fff by Keir Mierle December 4, 2011, 06:02 (GMT) |
Make the tracker preview in the motion tracking panel show exactly what the tracking algorithm will see when any of the R/G/B channels are disabled, rather than the RGB view that was there previously. |
Revision 7f46db1 by Keir Mierle December 4, 2011, 04:51 (GMT) |
Fix a segfault in the tracker caused by attempting a one-frame track after the active tracker has become disabled. |
Revision 50d4405 by Keir Mierle December 4, 2011, 04:33 (GMT) |
Switch the tracker preview area to use bilinear filtering instead of nearest neighbour. This makes it easier to align tracks. |
Revision 3fdc28b by Campbell Barton December 4, 2011, 03:35 (GMT) |
add a new object member to store the dsize, since with my recent commit broke forward compatibility. now the new values are copied into 'dscale' and existing ones remain. this is annoying since now we have dsize and dscale, will look into a way to deprecate struct members next. |
Revision a115c02 by Joseph Eagar December 4, 2011, 00:44 (GMT) |
bmesh: fixed crash in bevel |
Revision 8e01cfa by Keir Mierle December 3, 2011, 23:33 (GMT) |
Don't show the "Correlation" tracking preset when the hybrid tracker is selected. |
Revision bc8fb9f by Keir Mierle December 3, 2011, 23:30 (GMT) |
Add a fix for compiling the brute force region tracker from libmv on Mac OS X. |
Revision d15c5e5 by Dalai Felinto December 3, 2011, 23:05 (GMT) |
Invert Color Cycles Node as with the HSV node the OSL code is relying on the (yet to be implemented) autorename. Also the svm code could use mix (svm_lerp) instead: 32 . float3 color_inv = make_float3(1.0f, 1.0f, 1.0f) - color; 35 . . stack_store_float3(stack, out_color, svm_lerp(color_inv, color, factor)); I have a feeling that each node 'program' should have the least program as possible. I'll see with Brecht later. But overall I don't know if that's any fast. And apart from that I think we will need this kind of function to move to a library if multiple functions linked in are not a problem. |
|
|
|


Master Commits
MiikaHweb | 2003-2021