|Srinivasan optic flow|
The optic flow algorithm proposes by Srinivasan uses a reference image f0 and shifted and rotated instances of the reference image f1, f2, f3, f4, f5, f6. It is assumed that the input image f can be interpolated as a linear combination of f0 ... f6. The motion from the input image to the reference image is found by determining the parameters of this linear combination giving a rotation and a translation. The solution is found by the least squares estimate
min ( f - (f0 + 0.5 u (f2 - f1) + 0.5 v (f4 - f3) + 0.5 r (f6 - f5) ) 2
Srinivasan, M. V. (1994). An image-interpolation technique for the computation of optic flow and egomotion. Biological Cybernetics, 71(5), 401–415.
The sample implementation written in C can be found at
The presented implementation uses fixed shift and rotation values. The mapping for the computation of the rotated images is precomputed during initialization of the method.