Clemson University College of Engineering and Science Control and Robotics (CRB) Technical Report Number: CU/CRB/9/11/06/#1 Title: A Lyapunov-Based Method for Estimation of Euclidean Position of Static Features Using a Single Camera Authors: V. K. Chitrakaran and D. M. Dawson Report Documentation Page Form Approved OMB No. 0704-0188 Public reporting burden for the collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources, gathering and maintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this collection of information, including suggestions for reducing this burden, to Washington Headquarters Services, Directorate for Information Operations and Reports, 1215 Jefferson Davis Highway, Suite 1204, Arlington VA 22202-4302. Respondents should be aware that notwithstanding any other provision of law, no person shall be subject to a penalty for failing to comply with a collection of information if it does not display a currently valid OMB control number. 1. REPORT DATE 3. DATES COVERED 2006 2. REPORT TYPE 00-00-2006 to 00-00-2006 4. TITLE AND SUBTITLE 5a. CONTRACT NUMBER A Lyapunov-Based Method for Estimation of Euclidean Position of Static 5b. GRANT NUMBER Features Using a Single Camera 5c. PROGRAM ELEMENT NUMBER 6. AUTHOR(S) 5d. PROJECT NUMBER 5e. TASK NUMBER 5f. WORK UNIT NUMBER 7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) 8. PERFORMING ORGANIZATION Clemson University,Department of Electrical & Computer REPORT NUMBER Engineering,Clemson,SC,29634-0915 9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES) 10. SPONSOR/MONITOR’S ACRONYM(S) 11. SPONSOR/MONITOR’S REPORT NUMBER(S) 12. DISTRIBUTION/AVAILABILITY STATEMENT Approved for public release; distribution unlimited 13. SUPPLEMENTARY NOTES The original document contains color images. 14. ABSTRACT 15. SUBJECT TERMS 16. SECURITY CLASSIFICATION OF: 17. LIMITATION OF 18. NUMBER 19a. NAME OF ABSTRACT OF PAGES RESPONSIBLE PERSON a. REPORT b. ABSTRACT c. THIS PAGE 7 unclassified unclassified unclassified Standard Form 298 (Rev. 8-98) Prescribed by ANSI Std Z39-18 A Lyapunov-Based Method for Estimation of Euclidean Position of Static Features Using a Single Camera1 Vilas K. Chitrakaran and Darren M. Dawson † † †DepartmentofElectrical& ComputerEngineering,Clemson University,Clemson,SC 29634-0915 E-mail: cvilas,[email protected] Abstract era is calibrated, and hence, the intrinsic calibration para- meters are available. The kinematics of camera motion is formulated based on 21D visual servoing work presented in In this paper, we present the design of an adaptive non- 2 [13]. A stack of continuous motion estimators, described in linear algorithm for estimation of Euclidean position of detail in [3], is then utilized to estimate this kinematic sig- features in a static environment in the field of view of a nal in terms of every feature point. The result is a stack of monocular camera. The development of the geometric camera velocity estimates that are scaled by the (constant) model and camera motion kinematics is based on our depthoftheindividualfeaturepointsfrom thecamerarela- previous work in [2]. This paper presents a new alter- tivetoitsreferencelocation. Theunknownscalefactorsare nateapproachtoestimationof3Dcoordinatesoffeature subsequently identified by using the adaptive least-squares points that is simpler in mathematical formulation and technique[16],basedonthesatisfactionofapersistentexci- easier to implement. tationcondition. Withtheunknowndepthsforeveryfeature pointidentified,the3DEuclideanpositionofallfeaturesare 1 Introduction recovered. This is unlike our previous approach, where we developedastackofEuclideanpositionestimatorsbasedon The estimation of 3D Euclidean position of features in an the image-space dynamics for every feature point. Hence, environment from 2D images have applications in such di- the mathematical formulation of the algorithm is simpler verse areas as autonomous vehicle navigation, visual servo- and more intuitive. Experimental results obtained from the ing,3Dmodeling,andgeospatialmapping. Inthecomputer sameinputdatautilizedinourpreviouswork2 seemtosug- vision community, this is typically recognized as the prob- gest that the new estimation algorithm converges faster, in lemofidentificationofStructurefromMotion(SFM),orSi- aspanofafewsecondsasopposedtomanytensofseconds. multaneous Localization and Mapping (SLAM, [5]), where a vehicle such as a mobile robot is required to incremen- This paper is organized as follows. A geometric model de- tally build a map of its environment as well as determine scribingtheevolutionofimagecoordinatesofvariousfeature its position as it travels through the environment, scanning pointsintheenvironmentintermsofcameramotionispre- the scene using a vision system. Although the transforma- sentedinSection2. Section3presentsthekinematicsofthe tion of 3D Euclidean information by a perspective camera camera in terms of image space and partially reconstructed into 2D image space representation is inherently nonlinear, Euclidean information. The velocity estimation algorithm the most well known approaches are based on linearization is described in Section 4, and is key to the development of based techniques such as extended Kalman filtering [5, 14]. the3DEuclideanpositionestimationalgorithmdescribedin Recently, the application of nonlinear system analysis tools Section 5. Sections6and7demonstratetheperformanceof towards a solution to this problem have begun to appear the position estimation algorithm through simulations and in works from many researchers [1, 8, 9], utilizing sliding experimental results from our test-bed, respectively. modeandadaptiveestimationtechniquestobuildnonlinear observers. 2 Vision System Geometric Model The work presented in this paper is an evolution from our Figure1showsthegeometricrelationshipbetweenamoving previous efforts [2] in the design and implementation of a perspective camera and features on a static object in its nonlinear algorithm for 3D Euclidean position estimation. fieldofview. Thegeometricmodeldevelopedinthissection Similartoourpreviousapproach,thecameramotionismod- is based on two views of the object from the camera; one eledintermsofthehomographybetweentwodifferentviews of which is from a reference position denoted by , and of the environment captured by the camera. One of the I∗ the other is from a time varying current position denoted views is utilized as a constant image (corresponding to a by . The origin of the camera frame is assumed to be referenceposition),whiletheotherisacontinuoustemporal I coincidentwiththeopticalcenterofthecamera. Letx (t) uthpedactaemoefrathweh2iDle pinromjeocttiioonn.ofItthies eanssvuirmonedmetnhtatasthseeecnamby- R3 represent the position of the object’s body fixedffram∈e 1This work was supported in part by two DOC Grants, an 2A version of the work in [2] containing experimental re- ARO AutomotiveCenterGrant,a DOE Contract,aHonda Cor- sultsiscurrentlyunderpeer-reviewforconsiderationasajournal poration Grant,and a DARPA Contract. publication. (cameracurrentposition) in (6) in terms of image coordinates of the feature points (object) as captured by the moving camera, we define the normal- R;x F¤ ¼¤ izedEuclideancoordinatesofthefeaturepoints,denotedby I f mi(t),m∗i ∈R3 as s m¹i iO mi, m¯zii m∗i , m¯zi∗∗i. (7) i n¤ Thecorrespondingprojectivepixelcoordinatesofthefeature ¹ R¤;x¤f points are denoted by pi(t),p∗i ∈R3 as follows R;x¹ f m¹¤i pi= ui vi 1 T p∗i = u∗i vi∗ 1 T. (8) d¤ i The imag£e coordinates¤of the featur£es and their n¤ormalized Euclidean coordinates are related by the pin-hole camera model [7] such that ¤ I (imageplane) pi =Ami p∗i =Am∗i (9) (camerareferenceposition) where A R3×3 is a known, constant, and invertible in- ∈ trinsic camera calibration matrix. Utilizing (7)and (9), the Figure 1: Geometrical relationships between the moving relationship in (6) can be expressed in terms of image coor- camera and the object. dinates as follows ∗ relative to the camera frame , and let R(t) SO(3) pi= zzi∗i A R¯+x¯h(n∗)T A−1p∗i (10) F I ∈ ³ ´ representtheorientationbetweentheobjectandthecamera α G faornfadtmhteehseiutvhcehcfettaohtraumt¯reRi(pt:)oiF∈nt∗RO→3idIeren.loaTtteihvteehcetoo3nDtshtaEenuotcblvjiedeccettaonfrrpasmois∈eitiFRon∗3 dwehneorteesαit(hte) ∈scaRledd|e{tnzir}oatness|latthioendevpecth{tozrraatniod, xG¯h((}tt)) =Rxd¯3f∗×3∈isRa3 and camera frame , respectively, and ∈ full rank homogeneouscollineation matrix [12]. Given more I m¯i , xi yi zi T . (1) than four pairs of correspondences (pi(t),p∗i) coplanar with π∗, the set of linear equations in (10) can be solved for a £ ¤ uniqueG(t)uptoascalefactorbyusingtechniquessuchas The constant terms x∗f ∈R3, R∗ ∈SO(3) and m¯∗i ∈R3 are least squares minimization [12]. This approach is appropri- similarly defined for the camera at the reference position ateforvisualservoinginstructuredenvironments,wherewe denoted by ∗. From the geometry between the coordinate havetheoptionofchoosingfeaturepointsthatarecoplanar. I frames depicted in Figure 1, it can be seen that In a structure-from-motion algorithm, we are interested in mappingtheshapeofobjectsintheenvironmentaroundthe m¯ = x +Rs (2) i f i camera, and feature points of interest tracked by the vision m¯∗i = x∗f +R∗si. (3) system will not lie on a plane. The key here is to utilize After eliminating the term s from (2) and (3), we have the Virtual Parallax algorithm, proposed in [13] and also i described in detail in our previous work in [2], in order to m¯i =x¯f +R¯m¯∗i (4) compute G(t) and αi(t). Utilizing this method, any three feature points on the object can be chosen in order to de- where R¯(t) SO(3) and x¯ (t) R3 are defined as follows ∈ f ∈ finea‘virtual’planeπ∗. Theepipolarconstraintsgoverning R¯=R(R∗)T x¯f =xf −R¯x∗f. (5) tvhiretuparlopjelactnieonaroefththene uretsiltizoefdtthoedfeevaetluorpeapnoeinxtpsreosnsiotnotthhaist It is clear from (5) and Figure 1 that R¯(t) and x¯f(t) de- facilitates the computation of G(t). The Virtual Parallax scribetherotationandtranslation,respectively,ofthecam- algorithm requires at least eight feature points in order to era frame relative to the reference position ∗. compute the matrix G(t), which can be subsequently used I I to uniquely determine H(t) in (6), given that the intrinsic Let three non-collinear feature points on the object define camera calibration matrix A is assumed to be known [12]. the plane π∗ in Figure 1. If the constants n∗ R3 and ∈ The matrix H(t) can be decomposed to its constituent ro- rde∈spRectdiveneloyt,efrtohme nthoermcaaml veercatroerfearnedncdeisptoasnitcieonto th,itshpelnanfoer, tation matrix R¯(t) and scaled translation vector x¯h(t) by ∗ I utilizingthedecompositionalgorithmsdescribedindetailin allifeaturepointsthatlieontheplane,(4)canbeexpressed works such as [7, 12]. as follows x¯ m¯i = ³R¯+ df∗n∗T´m¯∗i (6) Remark 1 The reader is referred to [2] for computation of H the homography matrix H(t) and the depth ratios α (t) us- i where H(t) R3×3 rep|resent{sz a Eu}clidean homography ing the Virtual Parallax algorithm for non-coplanar feature [6]. To facilit∈ate the development of the relationship given points. 3 Camera Kinematics where Thetranslationandrotationkinematicsofthecameraframe J = αiAei Aei[mi] (18) iaImnrdaegleeaωtc(ivot)eor∈tdoiRnt3ah,teersefisxopfeedoctnpievoesoliyft,itoahnreeIfde∗a,etvdueerlnoepopteedodinintbsyt(eeirvm=(ts)1o∈fcthRho3e- vkii = ∙ 0z1i∗3×v3cT ω−TcL(tω) T×. ¸ (19) sen here for the sake of simplicity) and the partially recon- h i structed Euclidean information from the decomposition of nNootteetthhealtintehaerfivresltoctihtyreoefetlheemietnhtfseaotfuvrie(tp)o∈intRs6cainled(1b9y) tdhee- the homography matrix H(t) as follows constant depth zi∗. The scaled motion signal e˙i(t) ∈ R6 is ev , u1−u∗1 v1−v1∗ −ln(α1) T (11) estimated utilizing the following continuous estimator t t eω , £uφ ¤ (12) eˆ˙i , (Ki+I6 6)e˜i(τ)dτ + ρisgn(e˜i(τ))dτ Zt0 × Zt0 where e (t) is expressed in terms of the axis-angle repre- ω +(K +I )e˜(t) (20) sentation [17] of R¯(t) defined in (5) such that u(t) R3 i 6×6 i ∈ rreoptarteisoenntasnagluenaitboruottauti(otn),aaxsissu,manedd tφo(tb)e∈coRnfidneendotteos tthhee where eˆ˙i(t) , eˆ˙Tvi(t) eˆ˙Tω(t) T ∈ R6 denotes the esti- region π < φ(t) < π. After taking the time derivative of mate of the signhal e˙i(t), e˜i(t) ,i ei(t) eˆi(t) R6 is the (11) an−d (12), the camera kinematics can be written in the estimation error in ei(t), Ki,ρi ∈ R6×−6are p∈ositive defi- following form nite constant diagonal gain matrices, and sgn(e˜i) denotes e˙=Jv (13) the signum function applied to each element of the vector e˜(t). The development of the above estimator is described where e(t) = eTv(t) eTω(t) T ∈ R6 and v(t) = ini detail in [3]. To summarize, it was shown that the esti- thevcTli(nt)earωaTcn(dt)an£Tgul∈arRv6e,lowcihteierse¤ovfc(tth)e,ωcca(mt)er∈a rRe3latdievneottoe meˆ˙ (att)or ine˙(2(0t)) aassymt ptotica),llypriodveindteidfiesthtahtetshigenajtlhe˙id(tia)g(oi.nea.l, i i tI£nhe(1re3f)e,rJen(ct)epoRs¤i6t×io6nisIt∗hbeuftolelxowpriensgseJdacinobtihaen-lloickaelmfraatmriexI. evleecmtoer→nste.o.if(tt)heangdaie.n.i→. (mt)∞atsraitxisρfiiesanthdetfhoellojwthingelecmonednittioofntfhoer ∈ all ifeature points α1A A [m ] J =" 0z31∗×3e1 −eL1ω 1 × # (14) [ρi]j ≥ e..i j + e..i. j ∀j =1,2,...6. (21) where [mi] R3×3 denotes the skew-symmetric form of Theanalysisprese¯¯¯£nte¤d¯¯¯in[¯¯¯3£]d¤em¯¯¯onstrated thattheestima- mi(t), O3 ×3 ∈R3×3 denotes a 3 3 zero matrix, Aei(t) tor in (20) satisfies the following property R3×3is a×fun∈ction of the camera×intrinsic calibration para∈- e˜i(t),e˜˙i(t) 2. (22) meters and image coordinates of the ith feature point as ∈L∞∩L shown below The result in (22) is critical for the subsequent Euclidean positionestimatordesign. SinceJ (t)isfullrank,andcom- ki 0 0 u i posed of known signals, the estimate for the scaled velocity Aei,A−⎡ 00 00 0vi ⎤ (15) signal, denoted by vˆi(t) = z1i∗vˆcT ωˆTc(t) T ∈ R6 can be ⎣ ⎦ obtained from (17) and (20h) as follows i and Lω(t)∈R3×3is defined as follows vˆi =Jk−i1 eˆ.i (23) φ sinc(φ) and as a consequence of the result in (22), it can be shown Lω ,I3− 2 [u]×+⎛⎜⎜1− sinc2µφ2¶⎞⎟⎟[u]2× (16) [v˜2i](tt)h,atvtih(te)e−stvˆimi(ta)ti∈onR6ersraotrisifinessctahleedfovlelolowciintgy, denoted by ⎝ ⎠ v˜(t) (24) where sinc(φ(t)), sinφφ(t()t). and vˆi(t) ∈ vLi∞(t)∩aLs2t . (25) → →∞ 4 Velocity Estimation 5 Euclidean Position Estimation Unlike our previous approach [2], where we utilized the From(17),thekinematicsignale˙ (t)fortheithfeaturepoint i image-space dynamics for every feature point in order to can be written in terms of the scaled velocity of any other develop a stack of estimators for their Euclidean positions, jth feature point, j = i. Choosing j = 1 for the sake of 6 the estimation algorithm presented in this paper is based simplicity, it can be shown that on a stack of velocity estimators; one per feature point. To facilitatethisdevelopment,thekinematicexpressionin(13) e˙i =Jkidiag(λi,λi,λi,1,1,1)Jk−11e˙1 (26) is rewritten for every feature point tracked by the vision where system as follows λ = z1∗ (27) e˙i =Jkivi (17) i zi∗ is the unknown depth ratio, and diag() R6×6 denotes a Aftertakingthetimederivativeof(38)andsubstitutingthe diagonalmatrix. Intermsoftheestima·tes∈eˆ˙ (t),theexpres- adaptiveupdatelawin(35),thefollowingexpressioncanbe i sion in (26) can be rewritten in the following manner obtained eˆ˙i =Jkidiag(λi,λi,λi,1,1,1)Jk−11eˆ˙1+ηi (28) V˙ = −βiλ˜iL−i 1Li¯hT1i λ˜ih¯1i+ηvi where ηi(t)∈R6 is defined as follows ≤ −βi λ˜i 2 h¯1i 2³+ βiλ˜i¯hT1iηv´i . (39) ηi =Jkidiag(λi,λi,λi,1,1,1)Jk−11e˜˙1−e˜˙i. (29) Afterutilizingthenonli¯¯¯nea¯¯¯r°°dam°°ping¯¯¯argument[1¯¯¯0],thesec- ond term in (39) can be upper-bounded as follows After substituting for J (t) in (28) and simplifying the re- ki sulting expression, the translational kinematics for the ith feature point can be expressed as βiλ˜ih¯T1iηvi ≤ λ˜i 2 ¯h1i 2+β2ikηvik2, (40) y¯i=λi¯h1i+h¯2i+ηvi (30) hence, the¯¯¯time deriv¯¯¯ativ¯¯¯e o¯¯¯f (°°38) °°can be upper-bounded in the following manner wffiorhlsletorwtehiny¯rgei(etm)eel,eamsueˆ˙ervnait(bstl)eo∈fsiηgRin(3at,)ls,ηavin(dt)h¯∈1i(Rt)3,h¯is2ic(ot)m∈poRse3daoref tthhee V˙ ≤−µi λ˜i 2 ¯h1i 2+β2ikηvik2 (41) h¯1i = ααi AeiA−e11eˆ˙v1+Aei[m1] L−ω1eˆ˙w (31) (w2h2e)r,e(2µ4i)=an(dβi(2−9)1,)w∈eR¯¯¯cain¯¯¯s as°°hsocwa°°lathraptoηsiti(vte) constant. F,raonmd h¯2i = −1A³ei[mi]×L−ω1eˆ˙w. × ´ (32) hence, vi ∈L2∩L∞ RItnh3e,tdecraempntsbhoerfaeatxiposruλebsiss,eetqdhueaesenstftloiylmlodawetsesigfonredy¯ie(ts)t,imdeanteotλˆeid(tb)y∈yˆ¯iR(t)fo∈r wheZrte0tεµii¯¯¯λ˜Ri(iτs)¯¯¯a2p°°oh¯s1iit(ivτe)°°c2odnτst≤anVt s(u0c)h−tVha(t∞)+εi (42) ∈ yˆ¯ =λˆ h¯ +h¯ . (33) i i 1i 2i t β2 η (τ) 2dτ ε . (43) After denoting y˜¯i(t) , y¯i(t)−yˆ¯i(t) ∈ R3 as the estimation Zt0 ik vi k ≤ i error signal, it can be seen from (30) and (33) that From (42), it can be concluded that λ˜ (t)¯h (t) . As i 1i 2 y˜¯ =λ˜ h¯ +η (34) evident from (38) and (42), V(t) V(0)+ε for∈anLy time i i 1i vi t, and hence, V(t) ; therefor≤e, λ˜ (t) . Since the i where λ˜i(t) , λi(t)−λˆi(t) ∈ R. Based on the subsequent term h¯1i(t) defined∈inL(∞31) is composed of∈boLu∞nded signals, Lyapunov-based stability analysis, the depth ratio estimate λ˜ (t)h¯ (t) . From(34),y˜¯(t) ,anditfollows λˆi(t)isupdatedperthefollowingadaptiveleast-squaresup- friom (13i5) t∈haLt∞λˆ˙∩(Lt)2,λ˜˙ (t) .i Fol∈loLw∞ing the analysis i i date law λˆ˙i=βiLi¯hT1iy˜¯i (35) panredsehnetnecde,infr[o3m], wtaekicnagntshheo∈wtimLth∞eadtetrhiveatsiivgenaolfy¯˙(i3(1t)),∈itLc∞an, weshtiemreatβioin>ga1in∈thRatisisacopmospituitveedcaosnfsotlalnowt,sLi(t) ∈ R is an tbheatshλ˜ow(tn)h¯tha(tt)h¯˙is1iu(tn)if∈ormLl∞y.coHnteinncueo,usw,ebhasaevde oenstatbhleisfhaecdt i 1i thatλ˜ (t)h¯ (t)and d λ˜ (t)h¯ (t) areboundedsignals[4]. ddtL−i 1 =h¯T1ih¯1i (36) Utiliziing B1airbalat’sdletm³mia [4]1,iit c´an be concluded that and initialized such that L−i 1(0)>0. λ˜i(t)h¯1i(t) 0 ast . (44) → →∞ 5.1 Stability Analysis If the signal h¯1i(t) satisfies the persistent excitation condi- tion [16] given in (37), then it can be concluded from (44) Theorem 1 The update law defined in (35) ensures that that λˆi(t) λi as t provided that the following persistent λ˜ (t) 0 as t . (45) excita→tion condit→ion∞is satisfied i → →∞ ¤ t0+T γ h¯T(τ)h¯ (τ)dτ γ (37) 1 ≤ 1i 1i ≤ 2 Zt0 Remark 2 From(31),itcanbeobservedthatthepersistent excitation condition in (37) is easily satisfied if the camera where t0,T,γ1,γ2 ∈R are positive constants. has non-zero translational velocity. Proof: Let V(t) R denote a non-negative scalar function defined as follows∈ Remark 3 λˆi(t) provides an estimate for zz1i∗∗ (see (27)). If 1 z1∗ is known a priori from secondary measurements, an es- V , 2λ˜iL−i 1λ˜i. (38) timate for the 3D Euclidean coordinates of the ith feature point at the reference position, denoted by mˆ¯∗i(t) ∈ R3, can 2.5 be obtained as follows mˆ¯∗i(t)= λˆz(1∗t)A−1p∗i. (46) 2 i If the Euclidean distance between any two features i and j 1.5 (i 6= j) is known (i.e., m¯∗i −m¯∗j ), then from (35), (46) ∧ λi and the above theorem, it can be seen that ° ° 1 ° ° 1 1 1 Tthl→iem∞sc°°°°°aλlˆei(fta)cAto−r1zp1∗i∗−canλˆjb(et)rAec−o1vpe∗jr°°°°°ed=frzo1∗m°°tm¯he∗i −abom¯v∗je°°e.xp(r4e7s)- 0.05 0 1 2 3 4 5 6 7 8 9 10 sionandutilizedin(46)inordertodeterminetheEuclidean time(s) coordinates. 6 Simulation Results Figure 2: Convergence of scaled inverse depth estimates (dimensionless) for all feature pointsontheob- Forvalidationofthepositionestimationalgorithmpresented ject (simulated camera motion). intheprevioussection,wesimulatedastaticobjectwith12 feature points in the field of view of a moving camera. The trajectory for camera translational velocity was chosen as 2 follows 1.8 v (t)=[cos(t), sin(t),0.1sin(t)]T (m/s). (48) 1.6 c − 1.4 For the sake of simplicity, the camera intrinsic calibration miwmeaartegrieuxcpiodnoar(td9eid)nawuttaeisslizaoisfnstguhmtehefedeakttiounrebemepatothiincestisdpoernnestteithnyetemsdtaaittnriciSxoe.bctTjieohcnet estimation error (1/m)01..182 3. The estimator gains were chosen through trial and error 0.6 for all i feature points as follows 0.4 K = diag(10,10,10,10,10,10), 0.2 i ρi = diag(1,1,1,1,1,1), 00 1 2 3 4 tim5e(s) 6 7 8 9 10 β = 1.5. (49) i Figure 2 shows the convergence of the inverse depth esti- matesλˆ (t)forallfeaturepointsontheobject. Theestima- Figure 3: Error in depth estimation (simulated camera i tion errors are shown in Figure 3. motion). 7 Experimental Results video stream. The implementation of feature tracking and Figure 4 shows a single frame from a video sequence uti- depth estimation programs were in C++. The estimator lized to verify the practical performance of the estimator. utilized the gains shown in (49). Table 1 shows a compar- The video was captured from a monocular gray-scale cam- ison between the actual and the estimated lengths in the era (Sony XC-ST50) found to have the following intrinsic scene. Thetimeevolutionoftheinversedepthestimatesare calibration parameters shown in Figure 5. Note that the depth estimates converge quickly, in a matter of a few seconds as opposed to several 797.5 0 312.9 tens of seconds required by the estimator design based on A= 0 819.4 231.8 . (50) ⎡ ⎤ pixel dynamics in our previous work [2]. 0 0 1 ⎣ ⎦ The camera was mounted on the end-effector of a Puma 8 Conclusions 560 industrial manipulator arm and programmed to move alongasmoothclosedtrajectory. Thecamerawasinterfaced This paper presented an algorithm to identify the Euclid- to our vision system through an Imagenation PXC200-AF ean coordinates of features points in a static environment framegrabber, and triggered to capture images at the rate using a calibrated monocular moving camera. The work of 20 frames per second through an external time source. presented here utilizes an approach to geometric modeling WeutilizedanimplementationoftheLucas-Kanadefeature similar to our previous work [2], but describes the develop- tracking algorithm [11] provided in the OpenCV computer ment of an alternate nonlinear estimation algorithm which vision library [15] to detect and track feature points in the the authors believe to be simpler in mathematical formula- tion, and more intuitive. The performance of the algorithm has been verified through simulations and an experimental implementation. References [1] X. Chen, and H. Kano, “State Observer for a Class of NonlinearSystemsandItsApplicationtoMachineVision,”IEEE Transactions on Automatic Control,Vol.49,No. 11,2004. [2] V. K. Chitrakaran, D. M. Dawson, J. Chen, and W. E. Dixon, “Euclidean Position Estimation of Features on a Moving Object Using a Single Camera: A Lyapunov-Based Approach,” Proc. of the American Control Conference, pp. 4601-4606, June 2005. [3] V.Chitrakaran,D.M.Dawson,W.E.Dixon,andJ.Chen, “Identificationof aMoving Object’s Velocity with aFixedCam- era,”Automatica,Vol.41,No. 3,pp. 553-562,March2005. [4] W.E.Dixon,A.Behal,D.M.Dawson,andS.Nagarkatti, Nonlinear Control of Engineering Systems: A Lyapunov-Based Figure4:Aframefromthedoll-housevideosequenceused Approach, BirkhäuserBoston,2003. in the experimental validation. The white dots [5] H. Durrant-Whyte, and T. Bailey, “Simultaneous Local- are the tracked feature points. ization and Mapping: Part I,” IEEE Robotics and Automation Magazine,Vol.13,No.2, pp.99-108,June 2006. [6] O.FaugerasandF.Lustman,“MotionandStructureFrom MotioninaPiecewisePlanarEnvironment,”InternationalJour- nalofPattern Recognition and ArtificialIntelligence,Vol.2,No. 1.5 3,pp.485-508,1988. [7] O. Faugeras, Three-Dimensional Computer Vision, The MIT Press,Cambridge,Massachusetts,2001. [8] X. Hu, and T. Ersson, “Active State Estimation of Non- 1 linearSystems,” Automatica,Vol.40,pp.2075-2082,2004. ∧ λi [9] M.Jankovic,andB.K.Ghosh,“VisuallyGuidedRanging from Observations of Points, Lines and Curves via an Identifier 0.5 Based Nonlinear Observer,” Systems and Control Letters, Vol. 25, pp.63-73,1995. [10] M. Krsti´c, I. Kanellakopoulos, and P. Kokotovi´c, Nonlin- ear and Adaptive Control Design, New York, NY: John Wiley 0 and Sons,1995. 0 1 2 3 4 5 6 7 8 9 10 time(s) [11] B. D. Lucas and T. Kanade, “An Iterative Image Regis- tration Technique with an Application to Stereo Vision,” Inter- nationalJoint Conference on ArtificialIntelligence,pp.674-679, Figure 5: The time evolution of inverse depth estimates 1981. from the experimental test-bed. [12] Y.Ma,S.Soatto,J.Košecká,andS.Sastry,An Invitation to 3D Vision, Springer-Verlag,ISBN:0387008934,2003. [13] E.Malis,andF.Chaumette,“21/2DVisualServoingwith RespecttoUnknownObjectsThroughaNewEstimationScheme ofCameraDisplacement,”InternationalJournalofComputerVi- Object Act. dim. (cm.) Est. dim. (cm.) sion,Vol.37,No.1,pp.79-97,2000. Length I 23.6 23.4 [14] J. Oliensis, “A Critique of Structure From Motion Algo- Length II 39.7 40.4 rithms,” Computer Vision and Image Understanding, Vol. 80, Length III 1.0 1.0 No.2,pp.172-214,2000. Length IV 13.0 13.1 [15] Open Source Computer Vision Library, Length V 10.0 10.1 http://www.intel.com/technology/computing/opencv/index.htm. Length VI 19.8 19.7 [16] S. Sastry, and M. Bodson, Adaptive Control: Stability, Length VII 30.3 30.1 Convergence, and Robustness, Prentice Hall, Inc: Englewood Cliffs,NJ,1989. Table1:Estimateddimensionsfromtheexperimentaltest- [17] M. W. Spong and M. Vidyasagar, Robot Dynamics and bed. Control,John Wileyand Sons,Inc: New York,NY,1989.