visualodometryforground! vehicle!applica7ons!ee225b/sp14/student... · 2014-03-18 ·...

28
Visual Odometry for Ground Vehicle Applica7ons David Nister, Oleg Naroditsky, James Bergen Presented by: Chaoran Yu, Chayut Thanapirom Some slides derived from authors’ presentaCon (hEp://faculty.cs.tamu.edu/dzsong/teaching/spring2009/cpsc643/JiPresentaCon%204.ppt)

Upload: others

Post on 23-Apr-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

 Visual  Odometry  for  Ground  Vehicle  Applica7ons  

David  Nister,  Oleg  Naroditsky,  James  Bergen    

 Presented  by:  Chaoran  Yu,  Chayut  Thanapirom    

Some  slides  derived  from  authors’  presentaCon    (hEp://faculty.cs.tamu.edu/dzsong/teaching/spring2009/cpsc643/JiPresentaCon%204.ppt)  

                                                                                                                                                     

Page 2: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Abstract  

•  A  system  that  esCmates  the  moCon  of  a  stereo  head  or  a  single  camera  based  on  video  input  

•  Real-­‐Cme  navigaCon  for  ground  vehicles  

Page 3: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Related Work

•  A Visual Odometry System – Olson 2003 •  Previous Work of this Paper – Nister 2004

Page 4: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Related Work •  A Visual Odometry System – Olson 2003 •  Previous Work of this Paper – Nister 2004

•  With absolute orientation sensor

•  Forstner interest operator in the left Image, matches from left to right

•  Use approximate prior knowledge

•  Iteratively select landmark points

Page 5: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Related Work •  A Visual Odometry System – Olson 2003 •  Previous Work of this Paper – Nister 2004

•  Estimates ego-motion using a hand-held Camera •  Real-time algorithm based on RANSAC

Page 6: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Motivation

Olson: With absolute orientation sensor

Forstner interest operator

Use approximate prior knowledge

Iteratively select landmark points

Nister:

Use pure visual information

Use Harris corner detection in all images, track feature to feature

No prior knowledge

RANSAC based estimation in real-time

Page 7: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Feature Detection

Harris Corner Detection

Search for the local maxima of the corner strength . determinant, trance, constant, window area, derivatives of input image, weight function.

( , )s x yd t k,x yI I w

,a b

max

Page 8: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Feature  DetecCon  

•  Non-­‐max  Suppression    A  feature  point  is  declared  at  each  pixel  

         where  the  response  is  stronger  than  all  other            pixels  in  a  5*5  neighborhood.  •   Local  SaturaCon    Limit  the  number  of  features  in  a  local  region  

         of  the  image  to  bound  processing  Cme.  

     

Page 9: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Feature Detection

Detected Feature Points

Superimposed feature tracks through images

Page 10: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Feature  Matching  

•  Disparity  Limit    1)  A  feature  in  one  image  is  matched  to  every  

feature  within  a  fixed  distance  from  it  in  the  next  image.    2)  DL  chosen  based  on  speed  requirements  

and  smoothness  of  the  input    

Page 11: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Feature Matching Two Directional Matching (Mutual Consistency Check)

•  Calculate the normalized correlation in boxes centered around each detected feature, where , , are two input image patches.

•  Match the feature points in the circular area that have the maximum correlation in two directions.

21 2 1 2

2 2 2 21 1 2 2

max ( ) ( )

n I I I I

n I I n I I

− −

∑ ∑ ∑∑ ∑ ∑ ∑

1I 2In n×

n n× n n×

Page 12: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Pose  EsCmaCon  Problem  

Rotation Translation

Input:

Output:

Frame(t0,t1,t2,…)

Page 13: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Epipolar  Geometry  

348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

epipolar plane

p�p

(R,t)

c0 c1

epipolarlines

x0

e0 e1

x1

l1l0

Figure 7.3 Epipolar geometry: The vectors t = c1 � c0, p � c0 and p � c1 are co-planarand define the basic epipolar constraint expressed in terms of the pixel measurements x0 andx1.

Taking the dot product of both sides with x̂1 yields

d0x̂T1 ([t]⇥R)x̂0 = d1x̂

T1 [t]⇥x̂1 = 0, (7.9)

since the right hand side is a triple product with two identical entries. (Another way to saythis is that the cross product matrix [t]⇥ is skew symmetric and returns 0 when pre- andpost-multiplied by the same vector.)

We therefore arrive at the basic epipolar constraint

x̂T1 E x̂0 = 0, (7.10)

whereE = [t]⇥R (7.11)

is called the essential matrix (Longuet-Higgins 1981).An alternative way to derive the epipolar constraint is to notice that in order for the cam-

eras to be oriented so that the rays x̂0 and x̂1 intersect in 3D at point p, the vectors connectingthe two camera centers c1 � c0 = �R�1

1 t and the rays corresponding to pixels x0 and x1,namely R�1

j x̂j , must be co-planar. This requires that the triple product

(x̂0,R�1x̂1,�R�1t) = (Rx̂0, x̂1,�t) = x̂1 · (t⇥Rx̂0) = x̂T

1 ([t]⇥R)x̂0 = 0. (7.12)

Notice that the essential matrix E maps a point x̂0 in image 0 into a line l1 = Ex̂0

in image 1, since x̂T1 l1 = 0 (Figure 7.3). All such lines must pass through the second

epipole e1, which is therefore defined as the left singular vector of E with a 0 singular value,or, equivalently, the projection of the vector t into image 1. The dual (transpose) of these

x

T1 Ex0 = 0

xi is a vector in projective space representing a 2D point in camera i

Rotation and translation information (R,t) can be extracted from the matrix E

Epipolar constraint equation:

Page 14: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Naïve  vs  Robust  Method  

x

T1 Ex0 = 0

Find E that minimize

2

4X

all points

�x

T1

Ex

0

�2

3

5

Robust method – RANSAC (RANdom Sample Consensus)

Pick few random points to generate pose hypothesis Evaluate and pick the best one

Very bad if we have a lot of outliers

Naïve method – least square error

Page 15: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Monocular  Scheme:  Step  1  

Frame(t0) Frame(t1)

(R,t)  

Input:

Output:

Use  5-­‐point  algorithm  to  solve  epipolar  equaCon  and  generate  pose  hypothesis  in  RANSAC  method  

Page 16: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Monocular  Scheme:  Step  2  

Triangulate  to  obtain  3D  points  

Output:

Input:

Page 17: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Monocular  Scheme:  Step  3  

(R,t)  

Use  3-­‐point  algorithm  to  generate  pose  hypothesis  in  RANSAC  method  

Input: 3D points, 2D points on camera Output: pose (R,t)

Repeat Step 3

Page 18: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Monocular  Scheme  

5-­‐point  algorithm  =>  pose  hypothesis  RANSAC  

TriangulaCon  =>  3D  points  

3-­‐point  algorithm  =>  pose  hypothesis  RANSAC  

Re-­‐triangulate  3D  points  

Page 19: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Stereo  Scheme  

Triangulate  points  from  stereo  pairs  (relaCve  pose  between  two  cameras  is  known)  

3-­‐point  algorithm  =>  pose  hypothesis  RANSAC  

Re-­‐triangulate  3D  points  

Page 20: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Stereo  vs.  Monocular  

•  More  informaCon  •  No  scale  ambiguity  •  More  stable  when  moCon  is  small  

Page 21: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Experiments

Different Platforms

Page 22: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Experiments  

•  Evaluate  performance  of  visual  odometry  system    Ground  truth:  Integrated  differenCal  GPS  

         (DGPS)  and  high-­‐precision  inerCal  navigaCon              system  (INS)  –  VNS.  •  Align  coordinate  systems  of  visual  odometry  and  VNS  by  a  least  square  fit  of  iniCal  20  poses.      

Page 23: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Experiments

Speed and Accuracy

Page 24: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Experiments

Visual Odometry vs. Differential GPS

Page 25: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Experiments

Visual Odometry vs. Inertial Navigation System (INS)

Page 26: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Experiments Visual Odometry vs. Wheel Recorder

Page 27: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Comparison  with  ExisCng  Systems  

•  GPS/DGPS    May  have  beEer  accuracy  but  GPS  signals  are  

         not  always  available.  •  Wheel  encoder    Suffer  from  wheel  slip.  

•  Visual  Odometry  +  IMU    Smoother  path  than  GPS  and  more  accurate    

         than  wheel  encoders.            

Page 28: VisualOdometryforGround! Vehicle!Applica7ons!ee225b/sp14/Student... · 2014-03-18 · Epipolar&Geometry& 348 Computer Vision: Algorithms and Applications (September 3, 2010 draft)

Conclusion    

•  A  real-­‐7me  ego  mo7on  es7ma7on  system.  

•  Work  both  on  monocular  camera  and  stereo  head.  

•  Results  are  accurate  and  robust.