acts as a standard reference for performance comparison. The disadvantage of ... geometric distance between transformed point and observed point using the ...
2010 International Conference on Pattern Recognition
MINIMIZING GEOMETRIC DISTANCE BY ITERATIVE LINEAR OPTIMIZATION Yisong Chen, Jiewei Sun, Guoping Wang Key Laboratory of Machine Perception (Ministry of Education), HCI & Multimedia Lab, Peking University ABSTRACT
errors. Data normalization aids to improve the performance by conditional number control [7]. Non-linear optimization, such as Sampson error, can be used to polish the solution of DLT to better results [8]. Chum et al. discuss the importance of geometric error for finding optimal point correspondences under perspective transformation [9]. Criminisi et al. do uncertainty analysis by matrix perturbation theory [10]. In this paper, we propose a new approach that solves 2D homography fast and reliably. We call this method iterative DLT or iDLT. The key idea is to progressively minimize the geometric distance between transformed point and observed point using the basic DLT framework. This can be done by means of iterative linear optimization. In brief, we employ the original DLT algorithm to solve an initial guess. In each iteration round, we scale the homogeneous coordinates of the correspondences with on-the-fly scale factors, so as to make the algebraic distance approach the geometric distance little by little. When the iteration process is over, the algebraic distance minimized by DLT can be treated as a good enough approximation of the desired geometric distance. This method is particularly suitable for solving homographies with strong perspective distortion. The rest of the paper is arranged as follows. Section 2 describes our algorithm in detail. Section 3 gives experimental results on both synthetic and real-world data. Finally, section 4 concludes the paper.
This paper proposes an algorithm that solves planar homography by iterative linear optimization. we iteratively employ direct linear transformation (DLT) algorithm to robustly estimate the homography induced by a given set of point correspondences under perspective transformation. By simple on-the-fly homogeneous coordinate adjustment we progressively minimize the difference between the algebraic error and the geometric error. When the difference is sufficiently close to zero, the geometric error is equivalently minimized and the homography is reliably solved. Backward covariance propagation is employed to do error analysis. The experiments prove that the algorithm is able to find global minimum despite erroneous initialization. It gives very precise estimate at low computational cost and greatly outperforms existing techniques. 1. INTRODUCTION Homography, also known as perspective transformation, is a 3*3 homogeneous matrix H that makes P’=HP, where P and P’ are two homogeneous coordinates [1]. Numerical computation of homograhpy is an important step in vision tasks like rectification, calibration, registration and reconstruction. Eshel et al. carry out homography based camera detection and people tracking in a dense crowd [2]. Zhou et al. detect ground plane with normalized homography in a robot platform [3]. Shen et al. study the usage of homography constraints in action recognition [4]. For solving homography there are mainly two categories of methods. The first category makes use of geometric primitives, such as known angle, length ratio, or pole-polar relations, in the context of metric rectification [5, 6]. The second category adopts point or line correspondences to put constraints and solve the problem by the well-known Direct Linear Transformation (DLT) algorithm [7]. This algorithm takes a set of four or more 2D point or line correspondences as input and employs least squares fitting to minimize the algebraic distance by means of least squares fit. Up to date the DLT algorithm is the most widely used approach and acts as a standard reference for performance comparison. The disadvantage of the DLT algorithm lies in that the quantity minimized is not geometrically or statistically meaningful. Due to this reason it often occurs that the classic DLT algorithm fails to solve the homography meeting the accuracy demand and may generate even severe 1051-4651/10 $26.00 © 2010 IEEE DOI 10.1109/ICPR.2010.9
2. ITERATIVE DLT ALGORITHM Suppose the set of n input points in the source coordinates is Ps, and the observed point set in the target coordinates is Po. In most applications, Ps is fixed or known beforehand, while Po is automatically or manually extracted. The problem of solving homography can be defined as solving for the optimal transformation matrix H that makes HPs = Po. To solve H, there must be at least 4 pairs of point correspondences and a numeric solution is computed from an over-determined equation set. Suppose the transformed point set using the numeric solution of H is Pt (Pt=HePs, here He is the numeric estimate of H). Obviously, due to measure errors of Po there is a distance between Pt and Po. In the classic DLT algorithm, the homography is solved by minimizing the norm of the residual vector in the following equation,
1
Min( Ah )
from the up-to-date homography matrix H, use the scale factor to correct Ps and Po homogeneously, and then solve a new H with the updated point correspondences Ps and Po. There are two major considerations about how to adjust Ps and Po in each individual round. First, this adjustment should make the algebraic distance as close to the geometric distance as possible. Second, this adjustment should not dramatically change the configuration of the DLT algorithm. A reasonable strategy of Ps and Po updating would look like the following equation. (6) ws _ new = ws / wt wo , wo _ new = wo / wt wo
(1)
where A is a 2n*9 coefficient matrix defined by the homogeneous coordinates of Ps and Po, and h is a columnvector containing the 9 entries h1 ...h9 of the unknown homography matrix [8]. This can be solved by the least squares method through singular value decomposition (SVD). For any estimated homography h, the residual vector ε = Ah characterizes the so-called algebraic distance or algebraic error. Algebraic error is very convenient to be dealt with because it can be minimized linearly. However, it is not so meaningful in the sense of geometrics. Actually, even if the algebraic distance is very close to zero, the geometric distance may be still quite far. The risk becomes more significant in some critical contexts, such as the image with modest or severe lens distortion. Unlike the algebraic error, the geometric error directly measures the Euclidean distance between two points, and acts as a more reliable error evaluation. However, the geometric error is in general hard to work with and needs computationally intensive non-linear optimization. An attractive idea is to combine the advantages of algebraic distance and geometric distance. In other words, we desire an approach that is capable of minimizing the geometric distance by linear optimization. Note that in the DLT algorithm the algebraic distance to be minimized can be written as the following equation. 2 2 i i 2 i i (2) ∑ d a lg ( Po , Pt ) = ∑ ε i = d a lg ( Po , HPs ) i
where f = 1.0 /
wt wo is an on-the-fly scale factor.
Now we give a brief explanation that (6) meets the above two requirements well. On the one hand, under fixed homography H, one easily verifies that the algebraic distance computed from the updated Ps and Po satisfies 2 2 2 (7) d a lg_ new = d a lg /( wt wo ) 2 = d geo This means that the algebraic distance is getting closer to the desired geometric distance. On the other hand, since (6) gives each correspondence of Ps and Po an equal scaling, it will not significantly change the configuration of the DLT optimization. We can expect that the result H undergoes only slight change and the numerical instability can be avoided. This guarantees that (6) gives a steady approximation. In summary, by employing the same idea as Gauss-Seidel method, our optimization progressively tune the algebraic distance and let it approximate the geometric distance through iteration process, so as to minimize the geometric distance of Pt and Po. We call this algorithm iterative DLT or iDLT. The pseudo code of iDLT is outlined in Figure 1.
i
where 2 d a lg ( Po , Pt ) = ( yo wt − wo yt ) 2 + ( xo wt − wo xt ) 2 (3)
Similarly the geometric distance can be computed as follows: 2 d geo ( Po , Pt ) = ( yo / wo − yt / wt ) 2 + ( xo / wo − xt / wt ) 2 (4)
Input: Fixed source points Ps & noisy observed points Po; Initialization: Convert Ps and Po to homogeneous forms; Repeat { H=DLT(Ps, Po); //compute H by original DLT Pt=H*Ps; //Pt is transformed point set d_alg=computeAlgebraicerror(Pt,Po); //eq.(3) d_geo=computeGeometricerror(Pt,Po); //eq.(4) f=1.0/sqrt(abs(wt.*wo)); //compute the scale factor Ps=Ps.*f; Po=Po.*f; //eq.(6) } until (abs(d_geo-d_alg)