Abstract
The Horn and Schunck (HS) method, which amounts to the Jacobi iterative scheme in the interior of the image, was one of the first optical flow algorithms. In this article, we prove the convergence of the HS method, whenever the problem is well-posed. Our result is shown in the framework of a generalization of the HS method in dimension n ≥ 1, with a broad definition of the discrete Laplacian. In this context, the condition for the convergence is that the intensity gradients are not all contained in a same hyperplane. Two other articles ([17] and [13]) claimed to solve this problem in the case n = 2, but it appears that both of these proofs are erroneous. Moreover, we explain why some standard results on the convergence of the Jacobi method do not apply for the HS problem, unless n = 1. It is also shown that the convergence of the HS scheme implies the convergence of the Gauss-Seidel and SOR schemes for the HS problem.
Keywords: Optical flow, Horn and Schunck algorithm, Jacobi iterations
1. Introduction
Optical flow refers to the distribution of apparent movement of intensity patterns in an image caused by the relative motion between an observer and the scene. The Horn and Schunck (HS) method was one of the first optical flow algorithms used to determine a displacement field from several successive images [10]. The original HS method is based on a global approach and introduces a quadratic prior term of smoothness in the classical equation of the optical flow. This algorithm is especially adapted to speckled or diffuse images like those encountered in several modalities where a displacement field without discontinuity or significantly high gradients is expected [24, 16, 14]. Thus, the HS method and its derived forms remain of high interest in some areas of motion imaging. Other complex and very proficient estimators for optical flow, however, now exist in the context of natural scenes [2, 3] to take into account discontinuities at objects edges.
Based on a discretization of the differential operators appearing in the HS optical flow formulation, the HS method results in a linear system that can be solved with direct or iterative methods. In comparison to direct methods, the iterative solvers have the advantage to need lower computational data storage and to be easily programmable. It is well known that the matrix involved in the HS linear system is symmetric positive definite, as a consequence of the V-ellipticity of the HS functional [18]. This ensures, for example, the efficiency of the direct Cholesky decomposition and of the iterative Gauss-Seidel or SOR (successive over-relaxation) solvers. However, the positive definiteness does not permit to conclude about the method proposed in the initial Horn and Schunck’s paper, which is an iterative 2 × 2 blockwise solver [10] and corresponds to the Jacobi solver for the interior points of the image only. In fact, it is shown in this work that the positive definiteness is implied by the convergence of the HS scheme. The Gauss-Seidel and SOR solvers are known to converge at least twice faster than the Jacobi solver [4, Theorem 5.3–4]. These iterative solvers can be made parallelizable using, for instance, a special red-black reordering of the unknowns in the linear system [6, 25]. The Jacobi iterative solver, however, has the advantage to be directly parallelizable since it does not use values computed in the current iteration step [20, 21].
One known general result about the convergence of the Jacobi method concerns strictly (block) diagonally dominant matrices, which is not the case here. Another result concerns (block) irreducible and weakly dominant matrices, an assumption which is not satisfied for images of dimension greater than 1 under the appropriate Neumann boundary conditions. Whether the iterative method for the HS linear system with the Neumann boundary conditions converges still remains unsolved. Indeed, the paper of Horn and Schunck did not include a proof of convergence [10]. Two proofs of convergence have been published since then, in [17] and [13], both for 2-dimensional images. However, as far as we can tell, these two proofs are erroneous. There is also a short argument in [23, p. 249] based on diagonally dominant matrices (without blocks), for the convergence of the pointwise Jacobi method, that is erroneous.
Under a general perspective, there are three main points in an optical flow algorithm: 1) the formulation of the continuous energy (functional) to be minimized; 2) the discretization scheme; and 3) the solver used to minimize the energy. The scope of this work is to present a proof that the HS iterative solver (and hence, the Gauss-Seidel and SOR solvers) converges for the original quadratic HS functional under a generic discretization scheme adopted in this paper.
In Section 2, we state a generalization of the HS method in dimension n. In Section 3, we explain why the previous proofs are erroneous and cannot be fixed. In Section 4, we define some hypotheses about the discrete Laplacian, propose a necessary and sufficient condition for the linear system of Horn and Schunck to be invertible, and state our convergence result. The proof is presented in Section 5. In Section 6, we define a general way of calculating a discrete Laplacian in dimension n. In Section 7, we show that our general discrete Laplacian satisfies the hypotheses imposed to get the convergence result. In Appendix A, the HS iterative scheme is derived in detail from the discretization of the HS problem. In Appendix B, it is explained why the coefficient matrix of the HS scheme is not strictly (block) diagonally dominant matrices, nor (block) irreducible and weakly dominant matrices under the appropriate Neumann boundary conditions for images of dimension greater than 1. A result is shown in Appendix C that implies the convergence of the Gauss-Seidel and SOR iterative schemes whenever the Jacobi method converges, under appropriate conditions. This result also implies that the Gauss-Seidel and SOR methods converge for the HS problem, as a consequence of the convergence of the HS iterative scheme. In Appendix D, details are given to explain why the proofs of [17, 13] are erroneous.
2. Statement of the problem
The optical flow problem is usually applied to two-dimensional images of a moving scene [10]. Optical flow has also been used to analyze motion in one, three or four dimensions [22, 9, 5]. In this work, we investigate the convergence of the HS optical flow problem in the generalized case of dimension n ≥ 1. We thus consider an orthotope V ⊂ ℝn, i.e. a parallelotope whose edges are all mutually perpendicular (a segment if n = 1, a rectangle if n = 2 or a cuboid if n = 3). In the optical flow problem, each element of V generally corresponds to an intensity or brightness that varies over time. Given the intensity field over two or more successive instants, the aim of the HS method is to determine the corresponding displacement field. As we propose here a proof of convergence in the context of n-dimensional arrays, we first state an n-dimensional generalization of the HS method (for the classical 2-dimensional formulation, we refer the reader to [10]).
Let I denote the intensity field on V, It its derivative with respect to time t, ∇I its gradient with respect to position, and u the displacement field. We start from the well-known optical flow identity:
| (2.1) |
which means that a given (apparently moving) point of V keeps its initial intensity during its displacement. Then, a regularization method is employed to impose low spatial variations in the displacement field. By definition, the HS method consists in minimizing the unconstrained functional:
| (2.2) |
where μ > 0 is a positive real number and || · ||, in the entire article, represents the Euclidean norm. The Euler-Lagrange equation corresponding to this minimization problem reads as follows:
| (2.3) |
| (2.4) |
Here, is the differentiation operator in the direction of the normal n to the boundary ∂V, and the superscript T denotes transposition of matrices. The displacements without superscript T are considered to be column vectors (in ℝn). Note that the Neumann boundary conditions (2.4) arise naturally from the unconstrained minimization problem (2.2).
Now, we will discretize the expression of Eq. (2.3) on a lattice Λ covering the orthotope V. The restriction of the intensity field on the lattice Λ can be viewed as a (discretized) image. In the sequel, we assume that there are N ≥ 2 elements in the lattice Λ. Then, a discretized displacement field is of the form u = (ui)i∈Λ, where ui = (ui1, …, uin)T denotes the displacement vector at the point i. In the following, we will say that a displacement field u is uniform if all the displacement vectors ui are identical. Now, Eq. (2.3) can be written for i ∈ Λ as:
| (2.5) |
where It,i denotes the partial derivative of the intensity I with respect to t evaluated at the point i. In Eq. (2.5), Δ(u)i is a discretized Laplacian that depends linearly on the vectors ui, for i ∈ Λ. Hence, the consideration of Eq. (2.5) for i ∈ Λ yields a linear system of n N equations and n N unknowns, where N is the number of points in Λ. The discretization of the Laplacian can classically be written as:
| (2.6) |
where κ > 0 is a positive real number and M a linear transformation (on the vector space of displacements fields), that returns for each point an average of the displacement field over its neighbors:
| (2.7) |
where λij, for i, j ∈ Λ, are non negative real numbers. We will adopt in Section 6 a general expression of this operator. In the following, we denote for notational convenience:
| (2.8) |
where μ is the regularization weight of Eq. (2.2), so that the coefficient α is a positive real number. In order to solve the linear system (2.5), Horn and Schunck [10] proposed an iterative method that is assumed to converge to the solution. Let P be the linear transformation (on the vector space of displacements fields) defined by P(u)i = Pi
ui for i ∈ Λ, where
and
is the n × n identity matrix. Let d be the displacement field defined by
for i ∈ Λ. Then, the HS iterative scheme is expressed as follows:
| (2.9) |
See Appendix A for a derivation of Equation (2.9). Also, it is shown in Appendix B that the HS iterative scheme of Eq. (2.9) amounts to the Jacobi iterative scheme in the interior of the orthotope V, but never at its boundary points. Moreover, in that Appendix, we explain why standard results (based on block diagonally dominant matrices) on the convergence of the Jacobi iterative scheme do not apply in this context, due to the natural Neumann boundary conditions (2.4). We also explain why the short argument of [23, p. 249] based on diagonally dominant matrices (without blocks) for the pointwise Jacobi method is erroneous for the HS problem.
In Appendix C, it is shown that the convergence of the Gauss-Seidel and SOR iterative schemes is implied by the convergence of the Jacobi method, under appropriate conditions, based on a result on symmetric positive definite matrices. In particular, this result implies that the Gauss-Seidel and SOR methods converge for the HS problem, as a consequence of the convergence of the HS iterative scheme.
It would be straightforward to prove the convergence of the Jacobi solver in the presence of Dirichlet boundary conditions since the matrix would be block irreducible and weakly block diagonally dominant in that case. However, we recall that the Neumann conditions are intrinsically related to the minimization of the cost function (2.2).
3. Previous proofs
As stated in the introduction, the two existing proofs of convergence of the Jacobi solver in the context of the HS problem ([17] and [13]) appear to be erroneous. Let us now see in detail where the errors occurred and why we think that they cannot be fixed.
In [17], the cornerstone of the proof of convergence of the Jacobi method to solve the HS linear system relies on [17, Eq. (16)], which states that the function defined by the matrix “P” of [17, Eq. (9)] (not to be confused with the linear transformation P of Eq. (2.9) of the present paper) is contracting for the norm defined by [17, Eq. (10)], for any image. However, it appears that the only case for which this can be true is if the image is uniform, as explained in detail in Appendix D.
In [13, Eq. (20)], we notice that no condition is given for the convergence of the HS iterations. However, in view of Theorem 4.1 below, that assertion is false (a condition on the image gradients is needed to make the HS problem well-posed). Thus, the proof in [13] must be erroneous. In Appendix D, we give further details on intermediate statements that are false in [13].
Finally, in [23, p. 249], the special case of the HS problem amounts to Ψ′(s2) = 1 (see also [23, p. 247, second column]). In that case, the iterations of [23, Eqs. (14) and (15)] amount to the Jacobi iterative scheme for the system (2.5), but without considering n × n blocks. It is asserted that “If the discrete image gradient does not vanish at one point, the system matrix of these equations is irreducibly diagonally dominant. This guarantees the existence of a unique solution of the linear system and global convergence of the Jacobi iterations [26]”. But, as shown in Appendix B, the coefficient matrix of the system is not even diagonally dominant, except in a special case. Thus, that argument is also erroneous.
4. Statement of the main result
First, the operator M of Eqs. (2.6) and (2.9) comes from the Laplacian discretization and returns, for each point, an average of the displacement field over its neighbors as in Eq. (2.7). We will have to define several hypotheses about M. In the following, we will assume that:
-
(H1)
For every points i and j of Λ, λij = λji.
-
(H2)
At every point i of Λ, Σj∈Λ λij = 1.
Intuitively, (H1) comes from the isotropy property of the smooth Laplacian, and (H2) is necessary in order to have a null Laplacian when the displacement field is uniform. As we will see in Section 7, these hypotheses are verified with the general discretization scheme of Section 6. In order to state the last hypothesis, we have to define the graph G by its set of vertices V (G) = Λ and its set of edges E(G) = {(i, j) ∈ Λ2 : λij ≠ 0}. If (i, j) ∈ E(G), we write i ~G j. We assume that the lattice Λ is of the form {(i1, i2, …, in) : iℓ is an integer ranging from 0 to Nℓ − 1 for 1 ≤ ℓ ≤ n}, where Nℓ ≥ 1 for 1 ≤ ℓ ≤ n. Thus, the number of points in Λ is equal to . From (H1), this graph is undirected (i.e. i ~G j if j ~G i). Let us now recall that an undirected graph G is connected if, for any two vertices i and j of G, there exists a path from i to j in G. We can now state the last hypothesis:
-
(H3)
The graph G is connected.
We will see in Section 7 that (H3) is also true with the general discretization scheme of Section 6. Actually, this is an immediate consequence of the fact that the closest neighbors of a point are taken into account in the average calculation at this point. In the following, we will call rank of (∇Ii) the dimension of the subspace of ℝn that is spanned by the vectors ∇Ii, i ∈ Λ.
Theorem 4.1
Under Hypotheses (H1), (H2) and (H3):
if the rank of (∇Ii) is n, the linear system (2.5) has a unique solution and the iterations (2.9) converge to this solution;
if the rank of (∇Ii) is not n, the problem is ill-posed, i.e. the linear system (2.5) does not have a unique solution.
Let us notice that the rank of (∇Ii) is different from n if and only if the intensity gradients are all contained in a same hyperplane. In that case, the image is invariant along the direction orthogonal to this hyperplane. The fact that this condition makes the problem ill-posed is not surprising, as it is clear that a displacement along this particular direction cannot be detected by studying the variations of intensity over time.
5. Proof of the main result
The linear transformation M and the coefficients λij are defined in Eq. (2.7). The linear transformation P and the matrix Pi are defined in Section 2 before Eq. (2.9). We define the norm of a displacement field u by ||u|| = (Σi∈Λ ||ui||2)1/2, where ||ui|| is the Euclidean norm on ℝn.
Lemma 5.1
Under Hypotheses (H1) and (H2):
For every displacement field u, ||M(u)|| ≤ ||u||.
If equality holds, then for any two points i ~G j, we have M (u)i = uj.
Proof
For each point i, we get by hypothesis (H1) and (H2) that Σj∈Λ λij = Σj∈Λ λji = 1. Then, for each direction ℓ, Jensen’s inequality [12] applied to the strictly convex function x → x2 yields:
| (5.1) |
We can now write:
| (5.2) |
Moreover, let us suppose that ||M(u)|| = ||u||. Then, for each point i and each ℓ, the equality in Eq. (5.1) is reached. Thus, the coordinates ujℓ associated with the non-vanishing coefficients λij are all identical (cf. [8]). This means that uj = uj′, for any two points i ~G j and i ~G j′. Therefore, it follows that M (u)i = Σj′∈Λ λij′uj′ = (Σj′∈Λ λij′)uj = uj, where j is any point such that i ~G j.
Lemma 5.2
For every displacement field u, we have ||P(u)|| ≤ ||u||. The equality holds if and only if ui is orthogonal to the gradient ∇Ii at any point i of Λ. In that case, P(u)i = ui at any point i of Λ.
Proof
Let u be a displacement field and i a point of the image. There exists a vector of ℝn and a real number b such that and ui = + b ∇Ii. From the expression of Pi, we find Pi = (because ) and . Thus, . We notice here that and . So, we get that ||Pi ui|| ≤ ||ui||, and that the equality holds if and only if b = 0 or ∇Ii = (i.e. ui = ), which means if and only if . Finally, ||P (u)||2 = Σi∈Λ ||Pi ui||2 ≤ Σi∈Λ ||ui||2 = ||u||2, with equality if and only if at every point i of Λ. In that case, it is clear that Pi ui = ui at every point i of Λ.
Let us recall that the HS iterations read as uk+1 = P M(uk) + d. We can now show the convergence of these iterations, under our condition on the intensity field. From Lemmas 5.1 and 5.2, we find that ||PM(u)|| ≤ ||u|| for any displacement field u. A feature of the following proof consists in showing that ||(PM)N(u)|| < ||u|| for any non-zero displacement field u, where N is the number of points in Λ.
Proof of Theorem 4.1
We still suppose that (H1), (H2) and (H3) are verified. Let us assume that the rank of (∇Ii) is n. Let us assume, by contradiction, that there is a displacement field u ≠ 0 such that ||(PM)N(u)|| = ||u||. So, there is a point i* ∈ Λ such that ui* ≠ . Let i be any point of Λ. We claim that there is a path from i to i* in the graph G of length 1 ≤ L ≤ N (N is the number of elements in G). Indeed, if i ≠ i*, then, a minimal path will do; if i = i*, then, the path i0 = i ~G i1 ~G i* = i will do, where i1 is any neighbor of i in the graph G. Let this path be of the form i0 = i ~G i1 ~G i2 ~G … ~ iL = i*. From Lemmas 5.1 and 5.2, the assumption ||(PM)N (u)|| = ||u|| implies that ||(PM)L(u)|| = ||M(PM)L−1(u)|| = ||(PM)L−1(u)|| = … = ||u||. Moreover, again from 5.1 and 5.2, we have (PM)L(u)i0 = M(PM)L−1(u)i0 = (PM)L−1(u)i1 = … = uiL. Also, from Lemma 5.2, we have that M (PM)L−1(u)i0 is orthogonal to ∇Ii0, and thus that uiL= ui*is orthogonal to ∇Ii0 = ∇Ii. Since the point i is arbitrary, we deduce that the space spanned by the gradient vectors ∇Ii is orthogonal to the non-zero vector ui*, which is a contradiction. Thus, under the condition of convergence stated in the theorem and for u ≠ 0, we have ||(P M)N(u)|| < ||u||.
We now consider the function u → ||(P M)N(u)|| defined on the hypersphere {u| ||u|| = 1}. This function is continuous and defined on a compact set, i.e. a bounded closed subset of the vector space of displacement fields. Therefore, the function is bounded and reaches its maximal value. This ensures that there exists β < 1 such that for every displacement field u, ||(P M)N(u)|| ≤ β ||u||. Since moreover ||PM(u)|| ≤ ||u||, the conclusion about the existence of a solution for the linear system (2.5), its uniqueness and the convergence of the iterations (2.9) to this solution, is then a classical result (see [19, p. 101] for example).
We now suppose that the rank of (∇Ii) is less than n. In this case, the intensity gradients are all contained in a same hyperplane. Let us consider a displacement field u* that is uniform, different from zero and orthogonal to this hyperplane. Because of Hypothesis (H2) that imposes Σj∈Λ λij = 1 at each point i, and because u* is uniform, we get M(u*) = u*. Moreover, because at each point i, Lemma 5.2 says that P(u*) = u*. Thus, P M(u*) = u*. This shows that the linear system u = P M(u) + d (equivalent to the linear system (2.5)) has a non zero solution when d = 0, so that the coefficient matrix of the linear system (2.5) is not invertible.
6. The discrete Laplacian in dimension n
6.1. Description of a general scheme
Recall that the lattice Λ is assumed to be of the form {(i1, i2, …, in) : iℓ is an integer ranging from 0 to Nℓ − 1 for 1 ≤ ℓ ≤ n}, where Nℓ ≥ 1 for 1 ≤ ℓ ≤ n. The lattice Λ is viewed as a subset of the Cartesian product ℤℓ. In the following, the norms L1 and L∞ are denoted and ||(i1, i2, …, in)||L∞ = max1≤ℓ≤n |iℓ|. We will now define a general way of calculating a discrete Laplacian in dimension n, based on [15]. As proposed in [15], we consider the n-dimensional finite-difference stencil Si around a point i, consisting of the 3n − 1 points k ∈ ℤℓ that verify ||i − k||L∞ = 1. Then, we divide these stencil points into the sets of points k ∈ ℤℓ that verify ||i − k||L1 = r. As explained in [15], it turns out that for each r in {1, …, n}, a discretization of the Laplacian can be constructed from the Taylor expansions of the points of about the point i. The remaining part of this section concerns only interior points of the lattice Λ; the boundary cases are discussed in Section 6.2. So, if i is not a boundary point, the discretization of the Laplacian is given in [15, formula (2.2)]:
| (6.1) |
where . Based on the definition of , it is clear that , where . Thus, κr is independent of the point i. Then, a general way to calculate a global discrete Laplacian at the point i is to make a weighted average of the Laplacians obtained for the different sets . Such a discretization can be written:
| (6.2) |
where the weights wr ≥ 0 are non negative real numbers such that . We also denote , independent of i, and , so that:
| (6.3) |
We notice here that the coefficients γr are non negative and verify:
| (6.4) |
In the following, we will impose w1 ≠ 0. This is a natural hypothesis because it means that Δ(1)(u)i, which is calculated from the closest neighbors of i, is taken into account in the Laplacian calculation at i. Therefore, we have γ1 ≠ 0. Note that a simple way of calculating a discrete Laplacian in dimension n is to set w1 = 1. The dimension independent Laplacian given in [15] is obtained by setting . These coefficients are chosen so that some properties of the smooth Laplacian are kept with the discrete Laplacian (see [15] for more details). The scheme chosen by Horn and Schunck [10] in the 2-dimensional case, detailed below, is obtained by setting (which is the dimension independent Laplacian in the case n = 2).
In Fig. 1, as an example, the stencil Si is composed of the points {a, b, c, d, e, f, g, h}. We have and . The scheme of Horn and Schunck [10] is: , with κ = 3. Here, the coefficient γ1 associated with is , and the coefficient γ2 associated with is .
Fig. 1.

The 2-dimensional finite-difference stencil for the Laplacian calculation at an interior point i of a lattice Λ.
Finally, from Eq. (2.4), the boundary conditions considered here are that the normal derivatives vanish at the boundary of the image. In [10], Horn and Schunck explained how to deal with these conditions: when a point outside the image is needed, the displacement of the closest point inside the image is copied.
The description of the discretization scheme given above is sufficient to program the HS algorithm: just choose some coefficients wr, calculate the corresponding coefficients γr, use Eq. (2.9) with (cf. Eqs (2.6) and (6.3)), and apply the boundary conditions when necessary.
6.2. Determination of the weights in the average calculation
We will now give an expression of the coefficients λij defined in Eq. (2.7), in order to verify the Hypotheses (H1), (H2) and (H3) in the next section.
Let us give a rigorous definition of the boundary conditions. We denote Λ′ = {(k1, k2, …, kn) : −1 ≤ kℓ ≤ Nℓ, 1 ≤ ℓ ≤ n}, and define the function f from Λ′ to Λ such that f{(k1, k2, …, kn)} = (j1, j2, …, jn) with, for each ℓ in {1, …, n}:
if 0 ≤ kℓ ≤ Nℓ − 1, then jℓ = kℓ;
if kℓ = −1, then jℓ = 0;
if kℓ = Nℓ, then jℓ = Nℓ − 1.
Then, our discretization scheme can be written at each point i of Λ, even if i is a boundary point:
| (6.5) |
Now, given two points i and j of Λ and an integer r in {1, …, n}, we denote the set of points defined by
| (6.6) |
Then, for two points i and j of Λ, we set:
| (6.7) |
It is clear that at each point i of Λ and for every displacement field u:
| (6.8) |
Thus, from Eq. (6.5), our discretization scheme can be written as in Eqs (2.6) and (2.7): Δ(u)i = κ{M (u)i − ui} with M (u)i = Σj=∈Λ λij uj.
In Fig. 2, as a complement to the example of Fig. 1, the stencil Si of the boundary point i (located at a corner of the lattice Λ) is composed of the points {a, b, c, d, e, f, g, h}. As for Fig. 1, we have and . Based on the definition of Eq. (6.6), one obtains: and and and and . The corresponding scheme of Horn and Schunck [10] is: , with κ = 3. Again, the coefficient γ1 associated with is , and the coefficient γ2 associated with is . The case of a boundary point not located at the corner of Λ (such as the point e in Fig. 2) can be treated similarly.
Fig. 2.
The 2-dimensional finite-difference stencil for the Laplacian calculation at a boundary (corner) point i.
7. Verification of the hypotheses
We now have to verify that the general n-dimensional scheme described in Section 6 fulfills the hypotheses of Section 4:
-
(H1)
For every points i and j of Λ, λij = λji.
-
(H2)
At every point i of Λ, Σj = ∈Λ λij = 1.
-
(H3)
The Graph G defined in Section 4 is connected.
Proposition 7.1
With the discretization scheme of Section 6, (H1) is satisfied.
Proof
Let i and j be two points of Λ, and r be an integer in {1, …, n}. As in Subsection 6.2, we denote the set of points k belonging to and satisfying f(k) = j. By definition, a point k belongs to if and only if:
||k − i||L∞ = 1;
||k − i||L1 = r;
f(k) = j.
Let us now define the function gij from ℕn to ℕn by gij(k) = k + i − j. We will show that . We denote i = (i1, i2, …, in) and j = (j1, j2, …, jn). Let k = (k1, k2, …, kn) be a point of , and ℓ be an integer in {1, …, n}.
If kℓ = −1 then jℓ = 0 (because f(k) = j) and iℓ = 0 (because ||k − i||L∞ ≤ 1 and i belongs to Λ), so that kℓ + iℓ − jℓ = −1.
If kℓ = Nℓ, similarly, jℓ = iℓ = Nℓ − 1 and kℓ + iℓ − jℓ = Nℓ.
In the other cases, kℓ = jℓ (because f(k) = j), so that kℓ + iℓ − jℓ = iℓ.
First, from the definition of the function f, the three previous cases applied to each coordinate l of {1, …, n} yield f(gij (k)) = f(k + i − j) = i. Moreover, in each of these three cases, it is clear that |(kℓ + iℓ − jℓ) − jℓ| = |kℓ − iℓ| (either because jℓ = iℓ or because kℓ = jℓ). Thus, from ||k − i||L∞ ≤ 1 and ||k − i||L1 = r, we obtain ||gij(k) − j||L∞ = 1 and ||gij(k) − j||L1 = r. This permits to conclude that .
Now, as gij is a translation, it is injective, so that . Then, as we did not impose any hypothesis about i and j, we can exchange them and write , so that . Finally, Eq. (6.7) imposes that λij = λji, so that (H1) is verified.
Proposition 7.2
With the discretization scheme of Section 6, (H2) is satisfied.
Proof
Let i be a point of Λ. Eq. (6.8) applied to a displacement field u that is uniform and different from zero yields . Then, Eq. (6.4) imposes Σj= ∈Λ λij = 1, so that (H2) is verified.
Proposition 7.3
With the discretization scheme of Section 6, (H3) is satisfied.
Proof
Let i be a point of the image lattice Λ. By hypothesis, we have that γ1 ≠ 0. So, from Eq. (6.7), we have that for two close neighbors i and j of Λ, i.e. such that ||i − j||L1 = 1, λij = 0. Indeed, in that case, j belongs to so that . So, two close neighbors are always linked in G, and the connectedness of G becomes obvious.
So, (H1), (H2) and (H3) are fulfilled with the discretization scheme of Section 6, and we are under the conditions of Theorem 4.1.
8. Conclusion
The proposed convergence result was shown using a general definition of the discrete Laplacian. That definition includes the classical scheme of Horn and Schunck in dimension 2, and a general scheme (see Section 6) for n-dimensional Laplacians. In this context, a necessary and sufficient condition for the problem to be well-posed (i.e., to have a unique solution) is that the intensity gradients are not all contained in a same hyperplane. Under that condition, the Horn and Schunck iterations converge to the solution. It was also shown that the convergence of the HS iterative scheme implies the convergence of the Gauss-Seidel and SOR solvers for the HS problem.
Acknowledgments
Financial support for this project was obtained by the Canadian institutes of Health Research (Operating grant MOP-106465) and the Natural Sciences and Engineering Research Council of Canada (Discovery grant 138570-2011 and Strategic grant STPGP-381136-09). The authors are grateful to the anonymous reviewers for their comments that helped improve the presentation and the content of this work.
Appendix A
Here are presented the details of the derivation of Equation (2.9) in dimension n ≥ 1. From Equations (2.6) and (2.8), Equation (2.5) is equivalent to:
| (A.1) |
where
denotes the n × n identity matrix. Let us now notice that:
| (A.2) |
Thus,
| (A.3) |
So,
| (A.4) |
We also have:
| (A.5) |
Now, from Eqs. (A.4) and (A.5), the expression (A.1) can be rewritten:
| (A.6) |
This equality leads us to write the general HS iterations for an n-dimensional image:
| (A.7) |
With the notation introduced in Section 2, we thus obtain Equation (2.9).
Appendix B
We discuss the condition of block diagonally dominant matrices in the context of the Jacobi solver for the HS problem. We refer the reader to [11, 1] for results on the convergence of the Jacobi method for strictly diagonally dominant matrices or irreducible and weakly diagonally dominant matrices, as well as [7] for the corresponding notions in the case of block matrices.
Firstly, using Eqs. (2.5), (2.6), (2.7) and (2.8), we observe that Eq. (2.5) can be rewritten in the form (see Eq. (A.1))
| (B.1) |
Let Aij, for i, j ∈ Λ, be the n × n matrices defined by:
| (B.2) |
| (B.3) |
Then, the Jacobi iteration is expressed as:
| (B.4) |
Lemma B.1
Assume that 0 ≤ λii < 1. Then, the inverse matrix of the block Aii is equal to , where .
Proof
The Lemma follows directly from Eq. (A.4) upon replacing α by α′ = α(1 − λii).
So, let i be a point in the interior of Λ. From Section 6, λii is then equal to 0. Then, and the Jacobi iteration for the point i of Eq. (B.4) reads as:
| (B.5) |
| (B.6) |
which amounts to the HS iteration (2.9). On the other hand, since λii ≠ 0 if i is a boundary point, the Jacobi iteration is never the HS iteration at boundary points.
Let be the norm of the matrix defined by based on any norm of ℝn.
Lemma B.2
Let n ≥ 2 and consider a vector ui in ℝn that is orthogonal to ∇Ii. Then, . Therefore, no matter the norm used on ℝn
Proof
This result follows directly from the proof of Lemma 5.2.
Lemma B.3
If n ≥ 2 and hypothesis (H2) is fulfilled, then , for any i, no matter the norm used on ℝn.
Proof
From the definition (B.2) of Aij, j ≠ i, we have Σj ≠ i ||Aij|| = α Σj ≠ i λij. Then, from Lemmas B.1 and B.2 and hypothesis (H2), we have .
From Lemma B.3, one concludes that the matrix A is never weakly (or strictly) block diagonally dominant if n ≥ 2 under hypothesis (H2)1. On the other hand, if one uses the Euclidean norm on ℝn, one can easily show that , for any i, because for that norm. So, in that case, A is block diagonally dominant (i.e. for any i) but the inequality is never strict.
Next, we show that the matrix A defined by Eqs. (B.2) and (B.3) is not diagonally dominant if n ≥ 2 (here, the matrix is not viewed as a block matrix), except in very special cases. We first treat the case n = 2. The absolute values of the diagonal elements of the matrix Aii are equal to and , whereas the sum of the absolute values of the elements off the diagonal for the corresponding rows of the matrix A are equal to Σj ≠ i αλij + |Ix,i||Iy,i| and Σj ≠ i αλij + |Iy,i||Ix,i|. Using the identity Σj λij = 1, diagonal dominance is then equivalent to and , which implies that |Ix,i| = |Iy,i| for each i such that Ix,i and Iy,i are both different from 0. This is a very special case, so that the assertion that the matrix A is diagonally dominant (in general) is false. If n > 2, the absolute values of the diagonal elements of the matrix Aii are equal to for 1 ≤ ℓ ≤ n, whereas the sum of the absolute values of the elements off the diagonal for the corresponding rows of the matrix A are equal to Σj ≠ i αλij + |Ixℓ, i|Σℓ′ ≠ ℓ|Ixℓ′, i| for 1 ≤ ℓ ≤ n. Therefore, the diagonal dominance of A implies that , which implies that ∇Ii = 0→ for each point i. So, again, the assertion that the matrix A is diagonally dominant (in general) is false. Therefore, it appears that the short argument given in [23, p. 249] for the convergence of the pointwise Jacobi method is erroneous.
Remarks
The HS iterative scheme amounts to the Jacobi iterative scheme at the interior points of the image, but never at its boundary points. But then, we believe that it is usually the HS scheme that is implemented rather than the Jacobi method. Indeed, it is easy to implement (c.f. end of section 6.1), still fully parallelizable, and it is the original method proposed by Horn and Schunck. The difference between the two schemes is due to the Neumann boundary conditions (because then, λii ≠ 0 at a boundary point).
The Neumann boundary conditions (2.4) that come from the unconstrained minimization problem, are very important. In particular, they imply that the Laplacian of a uniform displacement field vanishes, i.e. Δ(u)i = κ(M (u)i − ui) = κ(Σj∈Λ λij − 1)ui, so that we must have Σj∈Λ λij = 1.
Due to this condition, known convergence results of the (block) Jacobi and Gauss-Seidel methods do not apply, unless n = 1. The result [1, Theorem 1, (a)] assumes that the matrix A is strictly diagonally dominant, which is not the case here. Also, the result [1, Theorem 1, (b)] assumes that A is irreducible and weakly diagonally dominant, which is neither the case. Note that one can generalize [1, Theorem 1] using the notion of block diagonally dominant matrices [7]; namely, one can prove along the lines of [1] that if A is strictly block diagonally dominant or if it is block irreducible and weakly diagonally dominant, then both the block Jacobi and Gauss-Seidel solvers converge. But again, these hypotheses never hold for the HS problem unless n = 1.
On the other hand, if one wants to relax the boundary condition (2.4) and allow Σj∈Λ λij < 1 at a boundary point, then one can show that A is weakly block diagonally dominant for the Euclidean norm and block irreducible (based on the connectedness of the graph G, i.e. hypothesis (H3)), so that both the block Jacobi and Gauss-Seidel solvers then converge. This may happen if one considers a minimization problem with constraints, for instance if the displacement is known at some points of the image.
Appendix C
In this appendix, we discuss the implications of Theorem 4.1 (i.e., the convergence of the HS method) on the convergence of the Gauss-Seidel and SOR iterative schemes through the property of positive definiteness of the coefficient matrix of the HS problem. We also present a more general result that states conditions under which the convergence of the Gauss-Seidel and SOR methods is implied by the convergence of the Jacobi method. In the sequel, ρ(A) denotes the spectral radius of a square matrix A.
Proposition C.1
Let B̃ and C̃ be real symmetric matrices of same dimensions such that B̃ is positive definite and ρ(B̃−1C̃) < 1. Then, the matrix B̃ + C̃ is symmetric positive definite.
Proof
Since the matrix B̃ is symmetric positive definite, it can be expressed in the form LL, where L is a symmetric invertible matrix. Indeed, one can write B̃ = RΨRT, where RRT =
(
is the identity matrix) and Ψ is a diagonal positive definite matrix; thus, B̃ = LL, where L = RΨ1/2RT. Then, A = B̃ + C̃ = L(
+ L−1C̃L−1)L. Since L is symmetric and invertible, then A is positive definite if and only if the symmetric matrix A′ =
+ L−1C̃L−1 is positive definite. Now, one has that ρ(L−1C̃L−1) = ρ(L−1L−1C̃L−1L) = ρ(B̃−1C̃) < 1. Therefore, the real symmetric matrix L−1C̃L−1 can be written as QTΛQ, where QTQ =
and Λ is a diagonal matrix such that ρ(Λ) = ρ(L−1C̃L−1) < 1. It follows that A′ = QT(
+ Λ)Q, where
+ Λ is a diagonal positive definite matrix (because any eigenvalue λ of Λ is such that |λ| < 1). Thus, A′ is a symmetric positive definite matrix, and so is A.
Corollary C.2
Let Ax = b be a linear system, where A is a real symmetric matrix. Let A be written in the form D–B–C, where D, B and C are block diagonal, block upper triangular and block lower triangular matrices, respectively. Assume that D is positive definite. Then, the convergence of the Jacobi iterative scheme xk+1 = D−1((B + C)xk+1 + b) implies the convergence of the Gauss-Seidel and the SOR iterative schemes. In fact, the matrix A is positive definite under the assumptions.
Proof
Let B̃ = D and C̃ = −B − C. The convergence of the Jacobi iterative scheme is equivalent to ρ(D−1(B + C)) < 1. Thus, from Proposition C.1, the matrix A is positive definite. Henceforth, the Gauss-Seidel and the SOR methods converge; see for instance [4, Theorem 5.3-2].
Corollary C.3
Under Hypotheses (H1), (H2) and (H3), assume that the rank of (∇Ii) is n. Then, the coefficient matrix A of Eq. (B.1), with blocks defined by Eqs. (B.2) and (B.3)) is symmetric positive definite. In particular, the Gauss-Seidel and the SOR iterative schemes converge under these conditions.
Proof
Let B̃ = αP−1 and C̃ = −αM, where P and M are as in Eq. (2.9). Then, B̃ is the block diagonal matrix with diagonal matrix entries , as follows from Appendix A. Moreover, the eigenvalues of are α with multiplicity n − 1 and α + ||∇Ii||2 with multiplicity 1. Thus, the symmetric matrix B̃ is positive definite. Also, Theorem 4.1 implies that ρ(B̃−1C̃) = ρ(PM) < 1. Finally, A = αP−1 − αM = B̃ + C̃, using Appendix A. The statement on the positive definiteness of the matrix A now follows from Proposition C.1, since M is symmetric. Hence, the Gauss-Seidel and the SOR iterative schemes converge under these conditions, as in the proof of Corollary C.2.
Remark
The positive definiteness of the coefficient matrix of the HS problem has been proved directly in [17]. Moreover, as mentioned in Section 1, the V-ellipticity of the HS functional [18] implies the positive definiteness of the coefficient matrix of the HS problem. Thus, Corollary C.3 is not a new result. However, the more general result Corollary C.2 might be of interest to further understand the convergence of the Jacobi, Gauss-Seidel and SOR methods.
Appendix D
In this appendix, we give more details to explain why we think the proofs presented in [17, 13] are erroneous. We show that the matrix “P” of [17, Eq. (9)] (denoted here P* to avoid confusion with the linear transformation P of Eq. (2.9)) is not contracting for the norm defined by [17, Eq. (10)], for any non-uniform image. Indeed, let i0 be a point where . We consider the displacement field u defined by u2 i−1 = Iy,i0 and u2 i = −Ix,i0 if i ∈ Ni0 (the set of 4-neighbors of i0), and u2 i−1 = u2 i = 0 otherwise. The norm defined in [17, Eq. (10)], denoted ||.||* here to avoid any confusion, reads as . In that case, we obtain . Moreover, we find that P*(u)2i0−1 = Iy, i0 and P*(u)2i0 = −Ix, i0. Therefore, , so that ||P*(u)||* ≥ ||u||*. Thus, P* is not contracting, due to this counter-example. We think that the error occurred in [17, formula (13)]: a factor ci should be added in the second member to take into account that the sum in the first term includes all the neighbors of i. Thus, in the inequality [17, formula (15)], one should use the factor instead of 1, which makes that proof break down.
In [13, Eq. (20)], the Laplacian corresponding to the Neumann boundary conditions (which usually correspond to the HS problem) is denoted L2. The matrix N2 is defined by the relation N2(u) = L2(u) + u (c.f. [13, Eq. (22)])2. Since that Laplacian operator vanishes on uniform displacement fields, any such displacement field is an eigenvector of the matrix N2 for the eigenvalue 1. Therefore, the assertion after [13, Eq. (23)] that the spectral radius ρ(N2) of the matrix N2 (i.e. the maximal modulus of the eigenvalues of N2) is less than 1 is erroneous. Incidentally, in [13, formula (22)], a factor is missing to get a correct expression of the average. In [13, formulas (38) and (40)], the authors also assert that ρ(Id − F −1Diag(Sij)) < 1. But, at every point, the determinant of the 2 × 2 matrix Sij is null3. Then, the matrices Sij are singular, and so is F−1Diag(Sij). Thus, 1 is an eigenvalue of Id − F−1Diag(Sij), and so, the assertion is flawed. Thus, the two main intermediate results of [13] are both erroneous.
Footnotes
Recall that a matrix A is weakly (or strictly) block diagonally dominant if for any i and if that inequality is strict for some (or any, respectively) i.
In our notation, “(i, j)” corresponds to a point i and “Sij” corresponds to the n × n matrix [∇I∇IT]i. “Id” corresponds to the n × n identity matrix
.
References
- 1.Bagnara R. A unified proof for the convergence of Jacobi and Gauss-Seidel methods. SIAM Review. 1995;37:93–97. [Google Scholar]
- 2.Baker S, Scharstein D, Lewis J, Roth S, Black M, Szeliski R. A database and evaluation methodology for optical flow. International Journal of Computer Vision. 2011;92:1–31. [Google Scholar]
- 3.Chambolle A, Pock T. A first-order primal-dual algorithm for convex problems with applications to imaging. J Math Imaging Vis. 2011;40:120–145. [Google Scholar]
- 4.Ciarlet PG. Introduction à l’analyse matricielle et à l’optimisation. Masson; Paris: 1982. [Google Scholar]
- 5.Duan Q, Angelini ED, Lorsakul A, Homma S, Holmes JW, Laine AF. Coronary occlusion detection with 4d optical flow based strain estimation on 4d ultrasound. In: Ayache N, Delingette H, Sermesant M, editors. Functional Imaging and Modeling of the Heart vol. 5528 of Lecture Notes in Computer Science. Springer; Berlin Heidelberg: 2009. pp. 211–219. [Google Scholar]
- 6.Evans DJ. Parallel S.O.R. iterative methods. Parallel Computing. 1984;1:3–18. [Google Scholar]
- 7.Feingold DG, Varga RS. Block diagonally dominant matrices and generalizations of the Gerschgorin circle theorem. Pacific J Math. 1962;12:1241–1250. [Google Scholar]
- 8.Franjic I, Khalid S, Pecaric J. On the refinements of the Jensen-Steffensen inequality. Journal of inequalities and Applications. 2011;12:1–11. [Google Scholar]
- 9.Guerrero T, Zhang G, Huang TC, Lin KP. Intrathoracic tumour motion estimation from CT imaging using the 3D optical flow method. Physics in Medicine and Biology. 2004;49:41–47. doi: 10.1088/0031-9155/49/17/022. [DOI] [PubMed] [Google Scholar]
- 10.Horn BKP, Schunck BG. Determining optical flow. Artificial Intelligence. 1981;17:185–203. [Google Scholar]
- 11.James KR. Convergence of matrix iterations subject to diagonal dominance. SIAM Journal on Numerical Analysis. 1973;10:478–484. [Google Scholar]
- 12.Jensen J. Sur les fonctions convexes et les inégalités entre les valeurs moyennes. Acta Mathematica. 1906;30:175–193. [Google Scholar]
- 13.Kameda Y, Imiya A, Ohnishi N. A convergence proof for the Horn-Schunck optical-flow computation scheme using neighborhood decomposition. Lecture Notes in Computer Sciences. 2008;4958:262–273. [Google Scholar]
- 14.Kirisits C, Lang LF, Scherzer O. Scale Space and Variational Methods in Computer Vision. Springer; 2013. Optical flow on evolving surfaces with an application to the analysis of 4D microscopy data; pp. 246–257. [Google Scholar]
- 15.Kumar A. A discretization of the n-dimensional Laplacian for a dimension-independent stability limit. Proc of the Royal Soc London. 2001;457:2667–2674. [Google Scholar]
- 16.Liu T, Shen L. Fluid flow and optical flow. Journal of Fluid Mechanics. 2008;614:253–291. [Google Scholar]
- 17.Mitiche A, Mansouri A. On convergence of the Horn and Schunck optical flow method. IEEE Trans Image Processing. 2004;13:848–852. doi: 10.1109/tip.2004.827235. [DOI] [PubMed] [Google Scholar]
- 18.Schnörr C. Determining optical flow for irregular domains by minimizing quadratic functionals of a certain class. International Journal of Computer Vision. 1991;6:25–38. [Google Scholar]
- 19.Schwartz L. Cours d’analyse. Hermann; Paris: 1967. [Google Scholar]
- 20.Thiyagalingam J, Goodman D, Schnabel JA, Trefethen A, Grau V. On the usage of GPUs for efficient motion estimation in medical image sequences. International Journal of Biomedical Imaging. 2011:1–15. doi: 10.1155/2011/137604. [DOI] [PMC free article] [PubMed] [Google Scholar]
- 21.Treibig J, Wellein G, Hager G. Efficient multicore-aware parallelization strategies for iterative stencil computations. Journal of Computational Science. 2011;2:130–137. [Google Scholar]
- 22.Tsai DM, Tsai HY. Low-contrast surface inspection of mura defects in liquid crystal displays using optical flow-based motion analysis. Machine Vision and Applications. 2011;22:629–649. [Google Scholar]
- 23.Weickert J, Schnörr C. Variational optic flow computation with a spatio-temporal smoothness constraint. Journal of Mathematical Imaging and Vision. 2001;14:245–255. [Google Scholar]
- 24.Wildes RP, Amabile MJ, Lanzillotto AM, Leu TS. Recovering estimates of fluid flow from image sequence data. Computer Vision and Image Understanding. 2000;80:246–266. [Google Scholar]
- 25.Young DM. Iterative solution of large linear systems. Courier Dover Publications; 2003. [Google Scholar]

