correction of bias for motion estimation algorithms

10
Correction of bias for motion estimation algorithms Han Wang * , Weilin Song School of Eelectrical and Electronic Engineering, Nanyang Technological University, Nanyang Avenue, Singapore 639798, Singapore Received 19 July 2001; received in revised form 24 November 2001 Abstract Ego motion can be estimated by epipolar equations from point correspondences using statistically unbiased method. Such technique involves a positive weight being added to the fraction of residuals. The side effect of introduction of positive weights is that additional computation is required. We propose three algorithms: Two are derived from the statistically unbiased method, the third one has been derived based on minimising the error defined as distance between the image point and the corresponding epipolar line. It is proven that the errors are Gaussian distributed and com- parable performance is achieved without the positive weights. Verified with experiments using real and synthetic data, the findings agree with the theory and the new algorithms outperform analytical solutions. Ó 2002 Elsevier Science B.V. All rights reserved. Keywords: Ego motion; Robust motion estimation 1. Introduction The estimation of motion parameters is rec- ognised as a fundamental problem in computer vision. Techniques to estimate rigid body motion parameters that accurately describe an object’s motion in space can find applications for instance, in motion analysis, target tracking, autonomous robot navigation, and the structural analysis of 3D objects. Many non-linear optimisation algorithms in solving vision algorithms are statistically biased (Kanatani, 1993a,b, 1996). In order to correct the bias, a positive weight or weight matrix is intro- duced to make the noise distribution Gaussian, hence achieving unbiased estimation. Our major effort has been put to study the statistically unbi- ased methods in solving optimisation algorithms in motion estimation and image mosaicing. For most researchers, correspondence-based methods are adopted. It is assumed that the cor- respondence matching is solved in pre-processing stages. In the correspondence approach, determi- nation of motion parameters has generally been performed using a pair of image frames. Starting with known interframe correspondence, a system of equations which relates the change in position to the motion parameters is formulated. Linear algorithms solve linear equations and give closed-form solutions. Longuet-Higgins (1981), Tsai and Huang (1984) and Faugeras (1993) have shown that the rigid body motion parameters can Pattern Recognition Letters 23 (2002) 1505–1514 www.elsevier.com/locate/patrec * Corresponding author. Tel.: +65-790-4506; fax: +65-792- 0415. E-mail address: [email protected] (H. Wang). 0167-8655/02/$ - see front matter Ó 2002 Elsevier Science B.V. All rights reserved. PII:S0167-8655(02)00110-1

Upload: han-wang

Post on 02-Jul-2016

223 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Correction of bias for motion estimation algorithms

Correction of bias for motion estimation algorithms

Han Wang *, Weilin Song

School of Eelectrical and Electronic Engineering, Nanyang Technological University, Nanyang Avenue, Singapore 639798, Singapore

Received 19 July 2001; received in revised form 24 November 2001

Abstract

Ego motion can be estimated by epipolar equations from point correspondences using statistically unbiased method.

Such technique involves a positive weight being added to the fraction of residuals. The side effect of introduction of

positive weights is that additional computation is required. We propose three algorithms: Two are derived from the

statistically unbiased method, the third one has been derived based on minimising the error defined as distance between

the image point and the corresponding epipolar line. It is proven that the errors are Gaussian distributed and com-

parable performance is achieved without the positive weights. Verified with experiments using real and synthetic data,

the findings agree with the theory and the new algorithms outperform analytical solutions. � 2002 Elsevier Science

B.V. All rights reserved.

Keywords: Ego motion; Robust motion estimation

1. Introduction

The estimation of motion parameters is rec-ognised as a fundamental problem in computervision. Techniques to estimate rigid body motionparameters that accurately describe an object’smotion in space can find applications for instance,in motion analysis, target tracking, autonomousrobot navigation, and the structural analysis of 3Dobjects. Many non-linear optimisation algorithmsin solving vision algorithms are statistically biased(Kanatani, 1993a,b, 1996). In order to correct thebias, a positive weight or weight matrix is intro-

duced to make the noise distribution Gaussian,hence achieving unbiased estimation. Our majoreffort has been put to study the statistically unbi-ased methods in solving optimisation algorithms inmotion estimation and image mosaicing.

For most researchers, correspondence-basedmethods are adopted. It is assumed that the cor-respondence matching is solved in pre-processingstages. In the correspondence approach, determi-nation of motion parameters has generally beenperformed using a pair of image frames. Startingwith known interframe correspondence, a systemof equations which relates the change in positionto the motion parameters is formulated.

Linear algorithms solve linear equations andgive closed-form solutions. Longuet-Higgins (1981),Tsai and Huang (1984) and Faugeras (1993) haveshown that the rigid body motion parameters can

Pattern Recognition Letters 23 (2002) 1505–1514

www.elsevier.com/locate/patrec

* Corresponding author. Tel.: +65-790-4506; fax: +65-792-

0415.

E-mail address: [email protected] (H. Wang).

0167-8655/02/$ - see front matter � 2002 Elsevier Science B.V. All rights reserved.

PII: S0167-8655 (02 )00110-1

Page 2: Correction of bias for motion estimation algorithms

be recovered from point correspondences by solvinga linear system of equations and performing singu-lar value decomposition (SVD).

The main advantages of linear algorithms overnon-linear ones are that they are fast, and unique-ness of solution is guaranteed except in degeneratecases. However, the existing linear algorithms es-sentially consider noise-free source data. To handlenoise, Many researchers used optimisation tech-nique (Weng et al., 1989; Arun et al., 1987; Mat-thies and Shafer, 1987; Lee et al., 1989; Ullman,1979; Webb and Aggarwal, 1982). Early work ofminimisation based on fractional expression can befound in (Sampson, 1982).

2. Background research

Recently, Kanatani (1993a, 1996) showed thatsome of these methods are statistically biased in theprocess of forming the residual. For example, if wewould like to minimise the error for a number ofobservations in the form of least squares approach:XNi

Wið�iÞ2 ! min ð1Þ

where � is the residual in standard approach. If onecan find positive weights Wi that re-distribute theerror into a bell shape (Gaussian), then the solutioncan be optimally found. The introduced weightspenalise those observations with bad noises.

Based on this observation, we derived a statis-tically unbiased method that improves the accu-racy of motion estimation. However, the unbiasedmethod does increase the complexity. A secondmethod of numerical solution is also introducedbased on the minimisation of the distance betweenthe image point and the epipolar line. It is shownthat this method is equivalent to the statisticallyunbiased method. In this approach, we solve di-rectly the rotational motion instead of the essentialmatrix. This is because the constraint of the es-sential matrix (a half rotation matrix) made itdifficult for solutions using numerical methods.

2.1. Ego motion and projective geometry

We adopt a pinhole camera model and thefollowing conventions. A world point P is denoted

as ðX ; Y ; ZÞ and its image (projection) p ¼ ðx; yÞ.The system is called homogenous because the originand the optical axis of the camera coincides withthe world coordinate’s origin and Z axis. Withoutlose of generality, the image point p is subject to atransformation

m ¼m1

m2

m3

0@

1A ¼ � 1ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

x2 þ y2 þ f 2p x

yf

0@

1A ð2Þ

where f is the focal length of the pin hole camera.The vector m is called N-vector and the transfor-mation is denoted as N ½�. It is clear that kmk ¼ 1and the � sign refers to the same point (Kanatani,1993a). Under the transformation, all image pointswill be converted into a vector space of unitsphere. The advantage of such transformation isthat users do not have to worry about the physicalcamera model which is associated with cameraparameters.

2.2. The epipolar equation

It is not hard to find that vector Ot�!

is parallelto Rn. In addition, we define a new unit vector h

h ¼ N ½eBasically, h tells the direction of translation. Notethat Rn, m and h are scaled-down vectors of Ot

�!,

Op�!

and Oe�!

, hence the end points of them are alsocoplanar. This means that 1

jh;Rn;mj ¼ 0 ð3Þwhich is the famous epipolar equation. One pointneeds to mention is the speed/scale ambiguity.From the image data alone, one can only solve thetranslational motion up to a scale. If h0 is the so-lution, ah0 also satisfies the epipolar equation forany non-zero scalar a. Therefore, we only solve forthe unit translational motion h.

2.3. The essential matrix

Rewrite the epipolar Eq. (3):

jh;Rn;mj ¼ ðh� RnÞm ¼ ðh� RÞnm ð4Þ

1 The notation ja; b; cj ¼ ða� bÞ � c is adopted and called

scalar triple product (Kanatani, 1993a, p. 22).

1506 H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514

Page 3: Correction of bias for motion estimation algorithms

We define a new matrix G as

G ¼ h� R ¼ ðh� R1; h� R2; h� R3Þ ð5Þwhere R1, R2 and R3 are column vectors of R. Thematrix G is called the essential matrix. The epi-polar equation can now be written in the form ofG:

mGn ¼ 0 ð6ÞLonguet-Higgins (1989) has shown that the mo-tion (h;R) can be determined with eight pointscorrespondence provided these points are not insingular positions. Many researchers have studiedthe essential matrix and details can be found in(Huang and Faugeras, 1989; Faugeras and May-bank, 1990; Maybank, 1993).

2.4. The traditional optimisation methods

Since the observations (number of corre-sponded features) are plentiful and many comewith quantisation errors, optimisation techniquesare used for optimal solution of the motion. Thereare more than a couple of dozen methods of op-timisation. Here, we limit ourselves to a few.

2.4.1. Direct approachDirect approach means to solve for the motion

parameters h and R without estimation of the es-sential matrix. They are mostly based on minimi-sation of the epipolar equation (3):

XNi¼1

jh;Rni;mij2 ! min ð7Þ

Algorithms of such nature can be found in(Tsai, 1987; Spetsakis and Aloimonos, 1988;Kanatani, 1993a, p. 158).

2.4.2. The essential matrix approachMany researchers attempted to solve for the

essential matrix G first and then solve for themotion parameters by minimising

kh� R Gk ¼ 0 ð8ÞDetails can be found in (Spetsakis and Aloi-

monos, 1989). Kanatani provided an analyticalsolution, which is described here briefly for com-parison. Details of the implementation of suchalgorithm can be found in (Kanatani, 1993a).

First, we compute the essential matrix G up tosign by the following optimisation of epipolarequation:

XNi

miGni ¼ 0 kGk ¼ffiffiffi2

pð9Þ

where the constraint of kGk ¼ffiffiffi2

pis imposed be-

cause G is a ‘‘degenerate rotation’’: add to rotationR a p=2 rotation about h and then project it to theplane of unit normal h.

Treating the elements of G matrix as indepen-dent variables,

bGG ¼ bGG1; bGG2; . . . ; bGG9

�>

analytical solution can be sought by finding theeigenvector bGG for the smallest eigenvalue of therearranged tensor matrix cMM (9 � 9).

Subsequently, the motion parameters h and R

are computed using the SVD. This is equivalent tofinding the minimum of Eq. (8).

The advantage of this algorithm is that it has ananalytical solution and no initial values of motionparameters are required. A post-processing or in-tervention is needed as it computes the motion upto a sign. As we shall see, many times the solutionis in the opposite direction.

3. Minimising the error between the image point and

the epipolar line

Let m ¼ ðm1;m2;m3Þ> and ð‘1; ‘2; ‘3Þ> representthe epipolar line te, we have

‘1xþ ‘2y þ f ‘3 ¼ 0 ð10Þand

‘1

‘2

‘3

0@

1A ¼ h� Rn ð11Þ

Project the N-vector of the image point m ontothe image plane, we have

p ¼ fm1

m3

; fm2

m3

�ð12Þ

If the data are exact, p is an instance of theline te. Subject to noise, there will be an error.

H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514 1507

Page 4: Correction of bias for motion estimation algorithms

We define the error as the distance from the pointp to the line:

� ¼‘1

m1

m3þ ‘2

m2

m3þ ‘3

��� ���ffiffiffiffiffiffiffiffiffiffiffiffiffiffi‘2

1 þ ‘22

p ð13Þ

with the constant f being canceled. We can solvefor ðh;RÞ in a least squares manner:

Eðh;RÞ ¼XNi¼1

�2i ð14Þ

However, additional constraint is required tosolve for (14) because R is a rotation matrix (Wenget al., 1989). The alternative is to substitute Eq.(13) into (14) and solve for Eðh; hÞ which is a non-linear optimisation with six unknowns,

Eðh; hÞ ¼XNi¼1

‘1m1

m3þ ‘2

m2

m3þ ‘3

��� ���2‘2

1 þ ‘22

; ð15Þ

where

‘1

‘2

‘3

0@

1A ¼ h� RðhÞn

¼ h� RðhÞn1

n2

n3

0@

1A and khk ¼ 1 ð16Þ

Eq. (15) can be solved with a standard numer-ical method such as the steepest descent method.In our application we denote it as algorithm SD.Unlike other optimisation methods, this one hasthe clearly defined error of the distance betweenthe image point and the epipolar line. Secondly, wesolve directly for the rotation angles instead of arotation matrix, which has to be translated intoangles anyway. Finally, the minimisation equationdoes not require any additional constraint and itgives unique solution provided the initial estima-tion is fairly close in order to prevent a false localminimum being reached.

4. The statistically unbiased methods

The objective of statistically unbiased methodsis to introduce positive weights which are care-fully conditioned such that the residual in the least

squares equation is normally distributed. Hence,statistically speaking, the solution is optimally ob-tained up to first order.

Given a set of correspondences m (N-vector ofan image point from the first image) and n (N-vector of the corresponding image point from thesecond image), the epipolar equation (6) can beminimised as

M ¼XNi¼1

Wiðmi;GniÞ2; kGk ¼

ffiffiffi2

pð17Þ

For simplicity, Wi is set to 1. However, Kanatanihas shown in general, equal weights setting has aside effect of causing bias. This leads to a searchfor optimal weights such that M is minimised withunbiased results, namely

M ! min ð18ÞLet m0 ¼ mþ Dm represents the perturbed imagepoint in the presence of noise Dm which is re-garded as a random variable with zero mean andGaussian distribution.

In the presence of noise, the epipolar equation(6) becomes

ðm0;Gn0Þ ¼ ðmþ Dm;GnþGDnÞ¼ ðm;GnÞ þ ðDm;GDnÞþ ðm;GDnÞ þ ðDm;GnÞ ð19Þ

When there is no noise, ðm;GnÞ ¼ 0. To a firstapproximation, the error caused by the noise canbe defined as

� ¼ ðm;GDnÞ þ ðDm;GnÞ ð20Þwhich is the sum of two independent randomvariables of zero mean. Its variance can be derivedas,

r2 ¼ E½�2 ¼ E½ððm;GDnÞ þ ðDm;GnÞÞ2¼ E½ðm;GDnÞ2 þ E½ðDm;GnÞ2þ 2E½ðm;GDnÞðDm;GnÞ ð21Þ

Note that Dm and Dn are independent randomvariables, hence,

E½ðm;GDnÞðDm;GnÞ ¼ 0 ð22ÞThus, Eq. (21) becomes,

r2 ¼ E½ðm;GDnÞ2 þ E½ðDm;GnÞ2 ð23Þ

1508 H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514

Page 5: Correction of bias for motion estimation algorithms

It is not difficult to show that

E½ðDm;GnÞ2 ¼ ðGnÞ>E½DmDm>ðGnÞ¼ ðGn; V ½mGnÞ ð24Þ

In addition, we can show that

ðm;GDnÞ ¼ ðG>m;DnÞ; ð25Þtherefore,

E½ðm;GDnÞ2 ¼ ðG>m; V ½nG>mÞ ð26Þ

where V ½n represents the covariance of the vari-able n. Finally, the variance is shown as

r2 ¼ ðG>m; V ½nG>mÞ þ ðGn; V ½mGnÞ: ð27Þ

It is reasonable to say that �=r has standardGaussian distribution of zero mean and variance1. Hence the estimation of G follows the maximumlikelihood estimation, that is

Xð�=rÞ2

i ¼X ðmi;GniÞ2

ðG>mi;V ½niG>miÞþðGni;V ½miGniÞ!min: ð28Þ

At this point, we can declare that

Wi ¼1

ðG>mi; V ½niG>miÞ þ ðGni; V ½miGniÞð29Þ

are the optimal weights up to first order. However,this form of optimal weights involves the compu-tation of the essential matrix G. A compromise oftaking the trace of the variance can be proposed,

Wi ¼1

traceV ½ni þ traceV ½mið30Þ

This algorithm is called UBSD-1 in our applica-tion.

Alternatively, we can propose a two-pass ap-proach. In the first pass, the essential matrix bGG isestimated with equal weights,

XNi¼1

mi; bGGni

�2

! min; kGk ¼ffiffiffi2

pð31Þ

Any standard optimisation algorithm can beused. We find the steepest descent method is suf-ficient for the solution.

Then bGG is used to compute the optimal weightsused in the second pass. In this pass, the essential

matrix G is decomposed in order to recover the fullmotion ðh; hÞ. In another words, we minimise

M ¼XNi¼1

Wiðmi; h� RðhÞniÞ2; khk ¼ 1 ð32Þ

We called this algorithm as UBSD-2 in our ex-periments.

5. Discussion

Because we used the steepest descent methodfor solving the motion parameters described inSection 3, the algorithm is therefore referred to asthe SD method. Examining the denominator ofEq. (15), it is not difficult to find that ‘2

1 þ ‘22 has a

close resemblance to that of Eq. (30). In anotherwords, the denominator plays the role of positiveweights. We prove here that the two are indeedvery close.

Note that ‘ is a unit vector, we have

‘21 þ ‘2

2 ¼ 1 ‘23 ð33Þ

It is not difficult to find that in the small imageapproximation, the covariance matrix V ½n is givenby (Kanatani, 1993a, p. 283)

V ½n ¼ ~��2

2ðI nn>Þ;

where ~�� is the image accuracy. Therefore,

traceV ½n ¼ 3~��2

21

1

3knk2

�ð34Þ

Let r1, r2 and r3 represent the row vectors of R,and h ¼ ðh1; h2; h3Þ>. Decompose the Eq. (11), wehave

‘3 ¼ ðh1r2 h2r1ÞnWe can say that ‘2

3 is proportional to knk2.

Comparing Eqs. (33) and (34), we can claimthat the SD algorithm is indeed an approximationof the statistically unbiased method (UBSD-1).

In theory, the introduced positive weightsshould re-scale the effect of noise in such a waythat ‘‘noisy’’ points will be penalised with smallerweights. However, the introduction of such weightsincreases the computation. It is at users’ dispenseto decide which one is more appropriate for the

H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514 1509

Page 6: Correction of bias for motion estimation algorithms

application. If the algorithm is intended for accu-racy such as calibration, the statistically unbiasedmethod should be used. If the speed is of primeimportance such as the real time motion estima-tion used in AGV navigation, a straightforwardmethod of minimisation is suitable.

The proposed method of minimising the dis-tance on the epipolar line has in effect a positiveweight that re-conditions the noise distribution.Therefore, a compromise can be achieved withhigh accuracy of numerical approach and in themean time not increasing the complexity of thealgorithm imposed by the additional computationof statistically unbiased methods.

6. Experimental results and analyses

Experiments were carried out using real imagedata taken from off the shelf camera and from theonline archive. In the case of rotational motionestimation, synthetic data were used due to the ac-curacy limitation of our experimental equipment.

6.1. The image datasets

Data are obtained from the CMU online ar-chive ‘‘CIL STEREO DATASETS’’. 2 It comes asa set of images taken by a single camera at knownpositions. The camera translates along the X, Yand Z axes with little rotation. The camera iscalibrated using the Tsai’s calibration technique(Tsai, 1987) and the accuracy is 0.1-pixel withproperly calibrated equipment.

11 datasets are obtained with the camera posi-tioned in the manner shown in Fig. 1. Fig. 2 showsthe images taken at these positions. Frame 1 wastaken at camera position 1 in Fig. 1 and frame 2 atcamera position 2 respectively.

Fig. 3 shows one of the images with cornerssuperimposed. It is claimed that the corners areextracted with sub-pixel accuracy. In addition, acareful calibration was obtained such that the ra-

dial distortion is also computed. 28 corners areselected from a list and their correspondences arealso available. So the datasets provide an excellenttest bed for our purpose of comparing the per-formances of various algorithms with real data.

6.2. Performance and analysis on translationalmotion

We have implemented the following algorithms:

1. The analytical solution based on Kanatani’stheory that is described in Section 1 (denotedas K-algo in the table).

2. The proposed minimisation approach in Sec-tion 3 (denoted as SD in the table).

3. The proposed statistically unbiased method inSection 4 with one pass using the Eq. (30) asWi (denoted as UBSD-1).

4. The proposed statistically unbiased method inSection 4 with two pass using the Eqs. (31)and (32) (denoted as UBSD-2).

In implementation of K-algo, motion parame-ters h and R were computed and then the rota-tional motion h is recovered from R. In the otherthree algorithms, h and h were computed directly.Table 1 shows the errors in computed h. Thecamera motion is provided and denoted as H. Wenormalise it, namely hk ¼ N ½H. Denoting thecomputed unit translational motion as hc, the erroris defined as the difference of the two unit vectors,namely khk hck.

2 http://www.cs.cmu.edu/afs/cs/project/cil/www/cil-ster.html.

This link is checked valid as of 15 July, 2001.

Fig. 1. Camera positions when taking images.

1510 H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514

Page 7: Correction of bias for motion estimation algorithms

Since the camera undergoes translational mo-tion only, the recovered rotational motion is verysmall, in the order of 10 3 of a degree. We cannotcompare them at all.

It is interesting to know that the K-algo pro-vides analytical solution and the rest are numericalsolutions. We see that all the four listed algorithmshave very close performances and the proposedmethods do improve over the analytical methodwith the presence of noise.

Comparing the statistically unbiased methods,UBSD-1 and UBSD-2, they have almost identical

performances. Indeed, Eq. (30) is a good approxi-mation for the choice of weights Wi.

6.3. Performance and analysis on rotational motion

Synthetic data were used for estimation of ro-tational motion. A set of 50 points were created ina cuboid (similar to that of Fig. 1) bound by

x 2 ½ 4m; 4my 2 ½ 4m; 4mz 2 ½8m; 12m

8<: ð35Þ

Fig. 2. Images taken from the camera in the positions shown in Fig. 1.

H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514 1511

Page 8: Correction of bias for motion estimation algorithms

The ‘‘camera’’ is then translated and rotated toa new position. These 3D points were projectedonto the two image planes (before and after themotion) and random noises (Gaussian distribu-tion) were introduced to each point with zeromean and standard deviation of 1 pixel. Tables 2and 3 show the result when the four algorithmswere applied to the data sets. Each item in thetable shows the rotation ðhx; hy ; hzÞ.

Table 4 shows the error of each of these algo-rithms from the result shown in Tables 2 and 3.The error is defined as the mean square root of the

difference between the true rotation and the esti-mated rotation.

Fig. 3. Image with corners superimposed (positions of corners

are computed with sub-pixel accuracy and correction for radial

distortion).

Table 1

Errors in computed motion h unit¼ 10 2

Motion

between frames

K-algo SD UBSD-1 UBSD-2

01 & 02 6.98 7.32 7.33 7.31

01 & 08 1.08 1.29 0.79 0.51

01 & 11 3.91 1.40 1.39 1.42

02 & 06 8.20 8.02 7.91 7.95

02 & 07 5.85 5.17 5.18 5.20

02 & 08 3.38 3.34 3.64 3.52

02 & 11 8.05 5.26 5.28 5.25

03 & 07 0.83 0.87 0.88 0.87

04 & 07 0.73 1.19 1.11 1.13

04 & 10 1.52 2.20 2.21 2.19

05 & 07 1.23 1.74 1.82 1.86

06 & 07 1.10 1.32 1.26 1.28

06 & 10 2.21 3.13 2.26 2.30

06 & 11 4.97 1.31 1.11 1.54

Mean 3.57 3.11 3.02 3.02

Table 2

Estimation of rotational motion (part 1) unit¼ 10 2 radian

True

rotation

K-algo SD UBSD-1 UBSD-2

8.726646 8.998550 8.882471 8.870433 8.875486

0.0 0.129656 0.133305 0.133963 0.129987

0.0 0.038919 )0.061748 )0.056957 )0.061675

17.45329 17.43731 17.55095 17.53781 17.54443

0.0 0.037512 0.072004 0.074195 0.069531

0.0 0.045606 0.022203 0.021888 0.021507

26.17993 26.23143 26.22461 26.21198 26.21544

0.0 0.231957 0.036831 0.018847 0.025837

0.0 0.202791 0.037160 0.033056 0.037327

34.90658 34.94533 35.05080 34.94106 35.05151

0.0 0.116340 0.121072 )0.031664 0.126893

0.0 )0.092967 0.014209 )0.035923 0.012222

8.726646 8.711315 8.410336 8.398314 8.400160

8.726646 8.656946 8.514204 8.513282 8.510062

0.0 )0.118057 )0.078729 )0.079230 )0.079801

8.726646 8.880248 9.041910 8.995090 9.011310

17.45329 17.61954 17.70480 17.67981 17.68948

0.0 0.038814 0.002857 )0.004227 )0.000014

8.726646 8.691297 8.707799 8.735200 8.722018

26.17993 26.19065 26.19113 26.16347 26.19462

0.0 )0.049631 )0.001207 0.024343 0.001307

Table 3

Estimation of rotational motion (part 2) unit¼ 10 2 radian

8.726646 8.517601 8.757768 8.743552 8.752498

34.90658 34.53855 34.87447 34.86692 34.87013

0.0 )0.131698 0.014781 0.008217 0.012278

8.726646 8.822732 8.803017 8.927486 8.776531

43.63323 43.70641 43.65970 43.74990 43.65414

0.0 )0.116428 )0.023108 0.077372 )0.034821

8.726646 9.168258 8.825576 8.891490 8.832075

0.0 0.197680 0.033215 0.060040 0.036579

8.726646 8.626978 8.718153 8.711363 8.717884

8.726646 8.516199 8.905685 8.908868 8.902462

0.0 0.104721 0.055179 0.054091 0.052490

17.45329 17.48434 17.45602 17.45748 17.45623

8.726646 9.056437 8.558015 8.551151 8.559509

0.0 )0.055726 )0.010809 )0.018717 )0.011342

26.17993 26.14062 26.19397 26.19366 26.19426

8.726646 9.062358 8.762648 8.755196 8.760456

0.0 0.091254 0.030792 0.016320 0.027684

)8.726646 )8.522678 )8.686818 )8.690946 )8.686639

8.726646 8.576618 8.885793 8.897327 8.885769

0.0 0.109214 0.435215 0.448633 0.433068

)26.17993 )26.03830 )26.20145 )26.20785 )26.20138

8.726646 8.902295 8.735876 8.734370 8.732046

0.0 0.085429 )0.145752 )0.141015 )0.148925

)17.45329 )17.59555 )17.37009 )17.36631 )17.36934

1512 H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514

Page 9: Correction of bias for motion estimation algorithms

The results from synthetic data conform to thatof real data. In the presence of noise, the statis-tically unbiased method (UBSD-2) out-performsthe others and the K-algo has the worst perfor-mance.

6.4. Summary

The statistically unbiased methods outperformthe traditional approach including the analyticalsolution with both real image data and syntheticdata. Secondly, we show that by carefully choosingthe weights, a direct numerical solution can out-perform the analytical solution in the presence ofnoise and obtain results comparable with the sta-tistically unbiased methods at a reduced compu-tation.

7. Conclusion

We have found that statistically unbiasedmethods outperform traditional optimisationmethods. However, in order to reduce (or elimi-nate) the bias, positive weights are introduced. Theweights inevitably introduce additional computa-tional cost and may deny their use in applicationswhen real time performance is critical.

Statistically unbiased methods provide an idealcase study for optimisation and it is provenmore accurate than the traditional optimisationmethods. The main drawback of statistically un-biased methods is its added computation thatprevents it from being widely used.

References

Arun, K.S., Huang, T.S., Blostein, S.D., 1987. Least-squares

fitting of two 3-D point sets. IEEE Trans. Pattern Anal.

Mach. Intell. 9 (5), 698–700.

Faugeras, O.D., 1993. Three-Dimensional Computer Vision: A

Geometric Viewpoint, first ed. MIT Press, Cambridge, MA.

Faugeras, O.D., Maybank, S., 1990. Motion from points

matches: multiplicity of solutions. Int. J. Comput. Vis. 4,

225–246.

Huang, T.S., Faugeras, O.D., 1989. Some properties of the E

matrix in two-view motion estimation. IEEE Trans. Pattern

Anal. Mach. Intell. 11 (12), 1310–1312.

Kanatani, K., 1993a. Geometric Computation For Machine

Vision. Oxford University Press, Oxford.

Kanatani, K., 1993b. Unbiased estimation and statistical

analysis of 3-D rigid motion from two views. IEEE Trans.

Pattern Anal. Mach. Intell. 15 (1), 37–50.

Kanatani, K., 1996. Statistical optimization for geometric

computation: theory and practice. Elsevier, Amsterdam,

New York.

Lee, C., Haralick, R.M., Zhuang, X., 1989. Recovering 3d

motion parameters from image sequences with gross errors.

In: IEEE Workshop on Visual Motion, pp. 46–53.

Longuet-Higgins, H.C., 1981. A computer algorithm for

reconstruction a scene from two projections. Nature 293,

133–135.

Longuet-Higgins, H.C., 1989. Multiple interpretations of a

pair of images of a surface. Proc. Roy. Soc. London A 418,

1–15.

Matthies, L., Shafer, S.A., 1987. Error modeling in stereo

navigation. IEEE J. Robot. Automat. 3 (3), 239–248.

Maybank, S.J., 1993. Theory of Reconstruction from Image

Motion. Springer-Verlag, Berlin.

Sampson, P.D., 1982. Fitting conics sections to ‘very scattered’

data: An iterative refinement of the Booksterin algorithm.

Comput. Vis. Graph Image Process 18 (1), 97–108.

Spetsakis, M.E., Aloimonos, J., 1988. Optimal computing of

structure from motion using point correspondences in two

frames. In: IEEE 2nd International Conference on Com-

puter Vision, Tampa, PL, pp. 449–453.

Spetsakis, M.E., Aloimonos, J., 1989. Optimal motion estima-

tion. In: IEEE Workshop on Visual Motion, Irvine, CA,

pp. 229–237.

Tsai, R.Y., 1987. A versatile camera calibration technique for

high-accuracy 3D machine vision metrology using off-the-

shelf TV cameras and lenses. IEEE J. Robot. Automat.

3 (4), 323–344.

Table 4

Error of rotational motion estimation unit¼ 10 3 radian

K-algo SD UBSD-1 UBSD-2

3.03739 2.14160 2.04609 2.07012

0.611743 1.23355 1.14581 1.16635

3.12378 0.688023 0.497500 0.576363

1.53881 1.88837 0.590063 1.93020

1.37951 3.89077 3.99504 3.99837

2.29649 4.03309 3.51275 3.69891

0.618679 0.219530 0.306085 0.154579

4.43273 0.470952 0.438879 0.463393

1.67760 0.840679 2.44819 0.643305

4.93996 1.04702 1.76102 1.11938

2.37104 1.87369 1.90127 1.83508

3.36769 1.69558 1.77023 1.68131

9.93498 0.618912 0.485381 0.592462

2.33429 4.63900 4.80815 4.61874

2.41637 1.68080 1.65862 1.71040

Mean

error

2.93874 1.79744 1.82434 1.75060

H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514 1513

Page 10: Correction of bias for motion estimation algorithms

Tsai, R.Y., Huang, T.S., 1984. Uniqueness and estimation of

three-dimensional motion parameters of rigid objects with

curved surfaces. IEEE Trans. Pattern Anal. Mach. Intell.

6 (1), 13–26.

Ullman, S., 1979. The Interpretation of Visual Motion. MIT

Press, Cambridge, MA.

Webb, J.A., Aggarwal, J.K., 1982. Structure from motion of

rigid and jointed objects. Artif. Intell. 19, 107–130.

Weng, J., Huang, T.S., Ahuja, N., 1989. Motion and structure

from two perspective views: Algorithms, error analysis, and

error estimation. IEEE Trans. Pattern Anal. Mach. Intell.

11 (5), 13–26.

1514 H. Wang, W. Song / Pattern Recognition Letters 23 (2002) 1505–1514