[Soc-2011-dev] Weekly Progress Report #8 - libmv Tracker

Matthias Fauconneau matthias.fauconneau at gmail.com
Fri Jul 15 23:26:19 CEST 2011


Hi,

Complete formatted version of the report (with screenshots):
 http://wiki.blender.org/index.php/User:Matthias.fauconneau/GSoC2011

We still need to test and package the new Qt OpenCV calibration tool.
if you have Qt, OpenCV (and optionnal FFmpeg):
 follow README from https://github.com/Matthias-Fauconneau/libmv.git
 and contribute by creating packages for your distribution/platform.

I'm making sure footage from download.blender.org/ftp/incoming and
www.hollywoodcamerawork.us/greenscreenplates.html works well with
tracking and feature detection. If you have issues with tracking which
you think are libmv-related, you can report it.

=== Week 8: July 8 - July 15 ===

* Update README with instructions to build Qt OpenCV Calibration tool.
* Add Video support using FFmpeg to Qt Tracker.
* Add Video support using FFmpeg to Qt Calibration.
* Miscellaneous UI fixes
* Faster grayscale conversion
* Compute search window size from pattern size and pyramid level count.
* Provide advice to the Blender integration project.
** New parameters make tracking much more robust.
* Add raw on-disk video cache.
** This is useful for faster testing iterations. It avoids waiting for
the footage to decode on startup. Using file memory mapping, we let
the OS handle caching. The OS disk cache also has the advantage of
being kept in memory between runs.
* Make Qt Calibration tool easier to build.
* Add "Good Features To Track" feature detection.
** Since reconstruction need many tracks to work accurately, it
becomes cumbersome for an artist to select enough easy to track
uniformly spaced markers. Feature detection help artists by creating
an initial set of good to track markers.
** Add visualization of image filtering operations.
* Add FAST detector
** This detector is faster and doesn't need as much tweaking, though
we need to test if it detects feature which are compatible with KLT.
* Refactor Qt Tracker.
** As Qt Tracker is not only a test platform but also a sample
application of libmv API usage, I'm keeping the different aspects of
the application separated in their own modules, each corresponding to
one aspect of libmv.
* Developed new Detect API.
** This API was developed in harmony with Blender developers to ensure
straightforward usage.
** Added Doxygen documentation.
* Improve CameraIntrinsics API.
* Better Calibration Settings UI.
* Import XML calibration profile format as saved by Qt OpenCV Calibration tool.
* Support anamorphic video content.
* Improve Marker Zoom View.

Meanwhile Keir is working on auto-calibration. This method infer the
camera intrinsic
parameters directly from the tracked footage, it is not as accurate
but it doesn't require the user to shoot calibration footage.

=== Week 9: July 15 - July 22 ===

This week, I'll ensure all our algorithms perform well on our test samples.

I'll improve the detection code which has some TODO items pending,
like improving the minimum distance code which is currently
approximate at best.

While FAST is quite fast, it may not be well suited to detect features
desirable for KLT tracking. I'll have to try tweaking the "Good
Features To Track" detection code to make it work robustly on all
types of footage.

Improvements to our API and test platform will follow.


More information about the Soc-2011-dev mailing list