1

This is regarding the details stated in Wikipedia.

I am reading optical flow in Computer Vision. I understood the Horn–Schunck method as such, but did not get how it is related to the aperture problem, and how it is solved using Horn–Schunck method.

Also, why is Horn–Schunck method invented/used where a simpler "Lucas–Kanade method" is already there (Reference)?

nbro
  • 39,006
  • 12
  • 98
  • 176
Sukti Sen
  • 11
  • 1

1 Answers1

0

The estimation of optical flow by the Horn-Schunk method can be written in matrix form as (for the sake of clarity, assume no regularization, that is, $\alpha = 0$)

$$ \left( \begin{array}{ll} I_x^2 & I_xI_y \\ I_xI_y & I_y^2 \\ \end{array} \right) \left( \begin{array}{ll} u \\ v \end{array} \right) = \left( \begin{array}{ll} -I_x I_t \\ -I_y I_t \end{array} \right) $$

where $(u, v)$ is the estimated displacement between two frames.

You can solve this linear system of equations if the matrix on the left is not singular, i.e. its eigenvalues are not zero. But this means that gradients in both directions are not zero. And this is what the aperture problem is about: when the matrix is singular.

As an example, consider a black square aligned along the coordinates axis, moving horizontally (along x axis) on a white background, and you want to estimate the displacement of the square from the optical flow. Furthermore, you do not consider the whole image, but just some rectangular area of the image.

Now, if your rectangle does not contain any of the edges perpendicular to the movement direction, you will not be able to estimate the movement because your gradient estimates will be $I_x = I_y = 0$.

jpmuc
  • 101
  • 3