1. The most recent and most accurate optical flow code in Matlab
This code is descrbed in
Secrets of optical flow estimation and their principles
Sun, D., Roth, S., and Black, M. J.,
IEEE Conf. on Computer Vision and Pattern Recog., CVPR, June 2010.
(pdf)This method implements many of the currently best known techniques for accurate optical flow and is ranked #1 on the Middlebury evaluation as of June 2010.
The software is made available for research pupropses. Please read the copyright statement and contact me for commerical licensing.
2 Matlab implmentation of the Black and Anandan dense optical flow method
The Matlab flow code is easier to use and more accurate than the original C code. The objective function being optimized is the same but the Matlab version uses more modern optimization methods:
Matlab implementation of Black and Anandan robust dense optical flow algorithm
The method in 1 above is more accurate and also implements Black and Anandan plus much more.
3. Original Black and Anandan method implemented in C
The optical flow software here has been used by a number of graphics companies to make special effects for movies. This software is provided for research purposes only; any sale or use for commercial purposes is strictly prohibited.
Please contact me if you wish to use this code for commercial purpose.
If you are a commercial enterprise and would like assistance in using optical flow in your application, please contact me at my consulting address black@opticalflow.com.
This is EXPERIMENTAL software. It is provided to illustrate some ideas in the robust estimation of optical flow. Use at your own risk. No warranty is implied by this distribution.
There are two versions available. First, the original C code implementing the robust flow methods described in Black and Anandan '96:
Area-based optical flow: robust affine regression.
Dense optical flow: robust regularization.
Reference:
The robust estimation of multiple motions: Parametric and piecewise-smooth flow fields,
Black, M. J. and Anandan, P.,
Computer Vision and Image Understanding, CVIU, 63(1), pp. 75-104, Jan. 1996.
(pdf), (pdf from publisher)
Software is from the ICCV'2001 paper with Fernando De la Torre.
De la Torre, F. and Black, M. J., Robust principal component analysis for computer vision, to appear: Int. Conf. on Computer Vision, ICCV-2001, Vancouver, BC. (postscript, 1.0MB)(pdf, 0.36MB), (abstract)Software, demos, and data.
The code below provides a simple Matlab implementation of the Bayesian
3D person tracking system described in ECCV'00 and ICCV'01.
It is too slow to be used to track the entire body but can be used
to track various limbs and provides a basis for people who want to understand
the methods better and extend them.
Stochastic tracking of 3D human figures using 2D image motion,Human motion tracking
Learning image statistics for Bayesian tracking,
Software. (Note: if you
uncompress and untar this on a PC using Winzip, the path names may be lost which
will cause Matlab to fail when you load the .mat files. Instead
uncompress/untar using gunzip and tar.)
Sidenbladh, H. and Black, M. J.,
Int. Conf. on Computer Vision, ICCV-2001,
Vancouver, BC, Vol. II, pp. 709-716.
(postscript, 2.8MB)(pdf, 0.38MB),
(abstract)
Sidenbladh, H., Black, M. J., and Fleet, D.J.,
European Conference on Computer Vision,
D. Vernon (Ed.), Springer Verlag, LNCS 1843, Dublin, Ireland, pp. 702-718
June 2000.
(postscript)(pdf),
(abstract)