Parallel Tracking and Mapping for Small AR Workspaces Vision Seminar

Slides:



Advertisements
Similar presentations
DTAM: Dense Tracking and Mapping in Real-Time
Advertisements

The fundamental matrix F
Registration for Robotics Kurt Konolige Willow Garage Stanford University Patrick Mihelich JD Chen James Bowman Helen Oleynikova Freiburg TORO group: Giorgio.
For Internal Use Only. © CT T IN EM. All rights reserved. 3D Reconstruction Using Aerial Images A Dense Structure from Motion pipeline Ramakrishna Vedantam.
MASKS © 2004 Invitation to 3D vision Lecture 7 Step-by-Step Model Buidling.
Recent work in image-based rendering from unstructured image collections and remaining challenges Sudipta N. Sinha Microsoft Research, Redmond, USA.
Silvina Rybnikov Supervisors: Prof. Ilan Shimshoni and Prof. Ehud Rivlin HomePage:
Vision Based Control Motion Matt Baker Kevin VanDyke.
Kiyoshi Irie, Tomoaki Yoshida, and Masahiro Tomono 2011 IEEE International Conference on Robotics and Automation Shanghai International Conference Center.
Daniel Shepard and Todd Humphreys
A Global Linear Method for Camera Pose Registration
Robust Object Tracking via Sparsity-based Collaborative Model
Dana Cobzas-PhD thesis Image-Based Models with Applications in Robot Navigation Dana Cobzas Supervisor: Hong Zhang.
Virtual Dart: An Augmented Reality Game on Mobile Device Supervisor: Professor Michael R. Lyu Prepared by: Lai Chung Sum Siu Ho Tung.
Adam Rachmielowski 615 Project: Real-time monocular vision-based SLAM.
Lecture 23: Structure from motion and multi-view stereo
Multi-view stereo Many slides adapted from S. Seitz.
Lecture 11: Structure from motion CS6670: Computer Vision Noah Snavely.
Planar Matchmove Using Invariant Image Features Andrew Kaufman.
Visual Odometry for Ground Vehicle Applications David Nister, Oleg Naroditsky, James Bergen Sarnoff Corporation, CN5300 Princeton, NJ CPSC 643, Presentation.
CS664 Lecture #19: Layers, RANSAC, panoramas, epipolar geometry Some material taken from:  David Lowe, UBC  Jiri Matas, CMP Prague
Augmented Reality: Object Tracking and Active Appearance Model
Presented by Pat Chan Pik Wah 28/04/2005 Qualifying Examination
CSCE 641 Computer Graphics: Image-based Modeling (Cont.) Jinxiang Chai.
Goal: Fast and Robust Velocity Estimation P1P1 P2P2 P3P3 P4P4 Our Approach: Alignment Probability ●Spatial Distance ●Color Distance (if available) ●Probability.
KLT tracker & triangulation Class 6 Read Shi and Tomasi’s paper on good features to track
CSCE 641 Computer Graphics: Image-based Modeling (Cont.) Jinxiang Chai.
Lecture 12: Structure from motion CS6670: Computer Vision Noah Snavely.
Accurate, Dense and Robust Multi-View Stereopsis Yasutaka Furukawa and Jean Ponce Presented by Rahul Garg and Ryan Kaminsky.
REAL-TIME DETECTION AND TRACKING FOR AUGMENTED REALITY ON MOBILE PHONES Daniel Wagner, Member, IEEE, Gerhard Reitmayr, Member, IEEE, Alessandro Mulloni,
Registration for Robotics Kurt Konolige Willow Garage Stanford University Patrick Mihelich JD Chen James Bowman Helen Oleynikova Freiburg TORO group: Giorgio.
Kalman filter and SLAM problem
Shape Recognition and Pose Estimation for Mobile Augmented Reality Author : N. Hagbi, J. El-Sana, O. Bergig, and M. Billinghurst Date : Speaker.
SLAM (Simultaneously Localization and Mapping)
Automatic Registration of Color Images to 3D Geometry Computer Graphics International 2009 Yunzhen Li and Kok-Lim Low School of Computing National University.
Visual Tracking Decomposition Junseok Kwon* and Kyoung Mu lee Computer Vision Lab. Dept. of EECS Seoul National University, Korea Homepage:
KinectFusion : Real-Time Dense Surface Mapping and Tracking IEEE International Symposium on Mixed and Augmented Reality 2011 Science and Technology Proceedings.
3D SLAM for Omni-directional Camera
Flow Separation for Fast and Robust Stereo Odometry [ICRA 2009]
(Wed) Young Ki Baik Computer Vision Lab.
Dynamic 3D Scene Analysis from a Moving Vehicle Young Ki Baik (CV Lab.) (Wed)
Multi-Output Learning for Camera Relocalization Abner Guzmán-Rivera UIUC Pushmeet Kohli Ben Glocker Jamie Shotton Toby Sharp Andrew Fitzgibbon Shahram.
CSCE 643 Computer Vision: Structure from Motion
Correspondence-Free Determination of the Affine Fundamental Matrix (Tue) Young Ki Baik, Computer Vision Lab.
Young Ki Baik, Computer Vision Lab.
Computer Vision Lab Seoul National University Keyframe-Based Real-Time Camera Tracking Young Ki BAIK Vision seminar : Mar Computer Vision Lab.
Ray Divergence-Based Bundle Adjustment Conditioning for Multi-View Stereo Mauricio Hess-Flores 1, Daniel Knoblauch 2, Mark A. Duchaineau 3, Kenneth I.
Asian Institute of Technology
Visual SLAM Visual SLAM SPL Seminar (Fri) Young Ki Baik Computer Vision Lab.
© 2005 Martin Bujňák, Martin Bujňák Supervisor : RNDr.
21 June 2009Robust Feature Matching in 2.3μs1 Simon Taylor Edward Rosten Tom Drummond University of Cambridge.
Communication Systems Group Technische Universität Berlin S. Knorr A Geometric Segmentation Approach for the 3D Reconstruction of Dynamic Scenes in 2D.
Real-Time Simultaneous Localization and Mapping with a Single Camera (Mono SLAM) Young Ki Baik Computer Vision Lab. Seoul National University.
Peter Henry1, Michael Krainin1, Evan Herbst1,
Chapter 5 Multi-Cue 3D Model- Based Object Tracking Geoffrey Taylor Lindsay Kleeman Intelligent Robotics Research Centre (IRRC) Department of Electrical.
Scene Reconstruction Seminar presented by Anton Jigalin Advanced Topics in Computer Vision ( )
3d Pose Detection Used by Kinect
3D reconstruction from uncalibrated images
55:148 Digital Image Processing Chapter 11 3D Vision, Geometry Topics: Basics of projective geometry Points and hyperplanes in projective space Homography.
Fast Semi-Direct Monocular Visual Odometry
Visual Odometry David Nister, CVPR 2004
Vision-based SLAM Enhanced by Particle Swarm Optimization on the Euclidean Group Vision seminar : Dec Young Ki BAIK Computer Vision Lab.
Visual Odometry for Ground Vehicle Applications David Nistér, Oleg Naroditsky, and James Bergen Sarnoff Corporation CN5300 Princeton, New Jersey
Robust Estimation Course web page: vision.cis.udel.edu/~cv April 23, 2003  Lecture 25.
Motion estimation Parametric motion (image alignment) Tracking Optical flow.
Real-Time Soft Shadows with Adaptive Light Source Sampling
Paper – Stephen Se, David Lowe, Jim Little
Announcements more panorama slots available now
Announcements more panorama slots available now
Lecture 15: Structure from motion
Presentation transcript:

Parallel Tracking and Mapping for Small AR Workspaces Vision Seminar 2008. 9. 4 (Thu) Young Ki Baik Computer Vision Lab.

References Parallel Tracking and Mapping for Small AR Workspaces Georg Klein, David Murray, ISMAR 2007 Visual Odometry David Nister et. al. , CVPR 2004

Outline What is AR? Previous works Proposed methods Demo Conclusion

What is AR? A AR : Augment Reality Full 3D? (O) Expensive? (O) ugument reality(AR) uses the real scene as the background, and makes applications with putting 3D objects to the background. Since the cost of augment reality is not as expensive as full 3D virtual reality(VR), AR has been very popular research topic. A Full 3D? (O) Expensive? (O) Full 3D (X) Expensive? (X)

Demonstration

The Aim AR with a hand-held camera Visual Tracking provides registration

The Aim AR with a hand-held camera Visual Tracking provides registration Track without prior model of world

The Aim AR with a hand-held camera Visual Tracking provides registration Track without prior model of world Challenges Speed Accuracy Robustness Interaction with real world

Existing attempts : SLAM SLAM : Simultaneous Localization and Mapping can use many different types of sensor to acquire observation data used in building the map such as laser rangefinders, sonar sensors and cameras. Well-established in robotics (using a rich array of sensors) Demonstrated with a single hand-held camera by Davison at 2003 (Mono-SLAM). Mono-SLAM was applied to AR system at 2004.

Existing attempts : Model based tracking Model-based tracking is More robust More accurate Proposed by Lepetit et. al. at ISMAR 2003

Frame by Frame SLAM Why? is SLAM fundamentally harder? Many DOF Time One frame Find features Many DOF Update camera pose and entire map Draw graphics

Frame by Frame SLAM SLAM Proposed approach Updating entire map every frame is so expensive!!! Needs “sparse map of high-quality features” - A. Davison Proposed approach Use dense map (of low quality features) Don’t update the map every frame : Keyframes Split the tracking and mapping into two threads

Parallel Tracking and Mapping Proposed method - Split the tracking and mapping into two threads Time Thread #2 Mapping Update map One frame Thread #1 Tracking Find features Update camera pose only Simple & easy Draw graphics

Parallel Tracking and Mapping Tracking thread: Responsible estimation of camera pose and rendering augmented graphics Must run at 30 Hz Make as robust and accurate as possible Mapping thread: Responsible for providing the map Can take lots of time per key frame Make as rich and accurate as possible

Tracking thread Overall flow Map Pre-process frame Project points Measure points Measure points Update Camera Pose Update Camera Pose Coarse stage Fine stage Draw Graphics

Pre-process frame Make for pyramid levels 80x60 640x480 320x240

Pre-process frame Make for pyramid levels Detect Fast corners E. Rosten et al (ECCV 2006) 80x60 640x480 320x240 160x120

Project Points Use motion model to update camera pose Constant velocity model Estimated current Pt+1 Previous pos Pt ∇t’ Previous pos Pt-1 ∇t Vt =(Pt – Pt-1)/∇t Pt+1=Pt+∇t’(Vt)

Project Points Choose subset to measure ~50 1000 ~ 50 biggest features for coarse stage 1000 randomly selected for fine stage ~50 1000 80x60 640x480 320x240 160x120

Measure Points Generate 8x8 matching template (warped from source key-frame:map) Search a fixed radius around projected position Use Zero-mean SSD Only search at Fast corner points

? Update caemra pose 6-DOF problem Obtain by SFM (Three-point algorithm) ?

Dray graphics What can we draw in an unknown scene? Assume single plane visible at start Run VR simulation on the plane

Stereo Initialization Mapping thread Overall flow Stereo Initialization Tracker Wait for new key frame Add new map points Optimize map Map maintenance

Stereo Initialization Use five-point-pose algorithm D. Nister et. al. 2006 Requires a pair of frames and feature correspondences Provides initial map User input required: Two clicks for two key-frames Smooth motion for feature correspondence

Wait for new key frame Key frames are only added if : There is a sufficient baseline to the other key frame Tracking quality is good Key frame (4 level pyramid images and its corners) When a key frame is added : The mapping thread stops whatever it is doing All points in the map are measured in the key frame New map points are found and added to the map

Add new map points Want as many map points as possible Check all maximal FAST corners in the key frame : Check score Check if already in map Epipolar search in a neighboring key frame Triangulate matches and add to map Repeat in four image pyramid levels

Optimize map Use batch SFM method: Bundle Adjustment Adjusts map point positions and key frame poses Minimize reprojection error of all points in all keyframes (or use only last N key frames)

Map maintenance When camera is not exploring, mapping thread has idle time Data association in bundle adjustment is reversible Re-attempt outlier measurements Try measure new map features in all old key frames

Comparison to EKF-SLAM More Accurate More robust Faster tracking < SLAM based AR Proposed AR

System and Results Environment Tracking speed Desktop PC (Intel Core 2 Duo 2.66 GHz) OS : Linux Language : C++ Tracking speed Total 19.2 ms Key frame preparation 2.2 ms Feature Projection 3.5 ms Patch search 9.8 ms Iterative pose update 3.7 ms

System and Results Mapping scalability and speed 150 key frames Practical limit 150 key frames 6000 points Bundle adjustment timing Key frames 2-49 50-99 100-149 Local Bundle Adjustment 170 ms 270 ms 440 ms Global Bundle Adjustment 380 ms 1.7 s 6.9 s

Demonstration

Remaining problem Outlier management Still brittle in some scenario Repeated texture Passive stereo initialization Occlusion problem Relocation problem

Conclusion Conclusion Contribution Opinion Parallel tracking and mapping process are presented using multi-thread. Contribution Visual odometry system was well presented. Overcome computation by multi-thread Opinion The proposed algorithm can be applied to our research Navigation system 3D tracking system

Q & A