3d Pose Estimation. Algorithms for Augmented Reality. 3D Pose Estimation. Sebastian Grembowietz Sebastian Grembowietz

Similar documents
Simultaneous Pose and Correspondence Determination using Line Features

CALIBRATION BETWEEN DEPTH AND COLOR SENSORS FOR COMMODITY DEPTH CAMERAS. Cha Zhang and Zhengyou Zhang

Camera Model and Calibration

Top joint. Middle joint. Bottom joint. (joint angle (2)) Finger axis. (joint angle (1)) F (finger frame) P (palm frame) R, t (palm pose) Camera frame

Face Tracking Implementation with Pose Estimation Algorithm in Augmented Reality Technology

Stereo and Epipolar geometry

Agenda. Rotations. Camera calibration. Homography. Ransac

Augmented Reality II - Camera Calibration - Gudrun Klinker May 11, 2004

Geometric camera models and calibration

Agenda. Rotations. Camera models. Camera calibration. Homographies

CS 664 Structure and Motion. Daniel Huttenlocher

Camera Pose Measurement from 2D-3D Correspondences of Three Z Shaped Lines

A Summary of Projective Geometry

COS429: COMPUTER VISON CAMERAS AND PROJECTIONS (2 lectures)

3D Visualization through Planar Pattern Based Augmented Reality

Structure from motion

Camera Model and Calibration. Lecture-12

Lecture 3: Camera Calibration, DLT, SVD

Self-calibration of Multiple Laser Planes for 3D Scene Reconstruction

Structure from motion

Subpixel Corner Detection Using Spatial Moment 1)

Agenda. Perspective projection. Rotations. Camera models

Introduction to Computer Vision

Perspective Projection Describes Image Formation Berthold K.P. Horn

High Altitude Balloon Localization from Photographs

CS231A Midterm Review. Friday 5/6/2016

arxiv: v1 [cs.cv] 28 Sep 2018

calibrated coordinates Linear transformation pixel coordinates

MERGING POINT CLOUDS FROM MULTIPLE KINECTS. Nishant Rai 13th July, 2016 CARIS Lab University of British Columbia

Prof. Fanny Ficuciello Robotics for Bioengineering Visual Servoing

Visualization 2D-to-3D Photo Rendering for 3D Displays

Mysteries of Parameterizing Camera Motion - Part 1

Computer Vision Projective Geometry and Calibration. Pinhole cameras

ROBUST LINE-BASED CALIBRATION OF LENS DISTORTION FROM A SINGLE VIEW

Structure from Motion CSC 767

Projective geometry for Computer Vision

Computer Vision I - Algorithms and Applications: Multi-View 3D reconstruction

Projective geometry, camera models and calibration

Structure from Motion

Structure from Motion

Computer Vision cmput 428/615

Multiple View Geometry in Computer Vision

Shape from Textures Phenomenon for 3D Modeling Applications with Big Data Images

All human beings desire to know. [...] sight, more than any other senses, gives us knowledge of things and clarifies many differences among them.

Determining pose of a human face from a single monocular image

Introduction to Geometric Algebra Lecture VI

Camera Projection Models We will introduce different camera projection models that relate the location of an image point to the coordinates of the

Computer Vision Project-1

Recognition (Part 4) Introduction to Computer Vision CSE 152 Lecture 17

Determination of the Pose of an Articulated Object From a Single Perspective View

CS 534: Computer Vision 3D Model-based recognition

CEE598 - Visual Sensing for Civil Infrastructure Eng. & Mgmt.

The end of affine cameras

CSE 4392/5369. Dr. Gian Luca Mariottini, Ph.D.

Recovery of Intrinsic and Extrinsic Camera Parameters Using Perspective Views of Rectangles

CS6670: Computer Vision

Lecture «Robot Dynamics»: Kinematic Control

A Factorization Method for Structure from Planar Motion

Identifying Car Model from Photographs

Structure from Motion

Camera models and calibration

International Journal for Research in Applied Science & Engineering Technology (IJRASET) A Review: 3D Image Reconstruction From Multiple Images

Today s lecture. Structure from Motion. Today s lecture. Parameterizing rotations

CH2605-4/88/0000/0082$ IEEE DETERMINATION OF CAMERA LOCATION FROM 2D TO 3D LINE AND POINT CORRESPONDENCES

Multiview Stereo COSC450. Lecture 8

Announcements. Recognition (Part 3) Model-Based Vision. A Rough Recognition Spectrum. Pose consistency. Recognition by Hypothesize and Test

Inverse Kinematics. Given a desired position (p) & orientation (R) of the end-effector

Unit 3 Multiple View Geometry

Model Based Perspective Inversion

Camera Calibration with a Simulated Three Dimensional Calibration Object

Tsai s camera calibration method revisited

Robust Geometry Estimation from two Images

arxiv: v1 [cs.cv] 18 Sep 2017

Hartley - Zisserman reading club. Part I: Hartley and Zisserman Appendix 6: Part II: Zhengyou Zhang: Presented by Daniel Fontijne

COSC579: Scene Geometry. Jeremy Bolton, PhD Assistant Teaching Professor

arxiv: v1 [cs.cv] 2 May 2016

Contents. 1 Introduction Background Organization Features... 7

STRUCTURAL ICP ALGORITHM FOR POSE ESTIMATION BASED ON LOCAL FEATURES

Globally Stabilized 3L Curve Fitting

Camera Registration in a 3D City Model. Min Ding CS294-6 Final Presentation Dec 13, 2006

Minimal Projective Reconstruction for Combinations of Points and Lines in Three Views

3D FACE RECONSTRUCTION BASED ON EPIPOLAR GEOMETRY

3D Computer Vision. Structure from Motion. Prof. Didier Stricker

Nonrigid Surface Modelling. and Fast Recovery. Department of Computer Science and Engineering. Committee: Prof. Leo J. Jia and Prof. K. H.

METRIC PLANE RECTIFICATION USING SYMMETRIC VANISHING POINTS

Factorization Method Using Interpolated Feature Tracking via Projective Geometry

Accurate Motion Estimation and High-Precision 3D Reconstruction by Sensor Fusion

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Robotics - Projective Geometry and Camera model. Marcello Restelli

Accurate Non-Iterative O(n) Solution to the PnP Problem

Rigid Body Motion and Image Formation. Jana Kosecka, CS 482

A Robust Two Feature Points Based Depth Estimation Method 1)

Introduction to Computer Vision. Introduction CMPSCI 591A/691A CMPSCI 570/670. Image Formation

Pose Estimation from Circle or Parallel Lines in a Single Image

Automatic Feature Extraction of Pose-measuring System Based on Geometric Invariants

Flexible Calibration of a Portable Structured Light System through Surface Plane

arxiv: v1 [cs.cv] 28 Sep 2018

CS 532: 3D Computer Vision 7 th Set of Notes

URBAN STRUCTURE ESTIMATION USING PARALLEL AND ORTHOGONAL LINES

ActivityRepresentationUsing3DShapeModels

Transcription:

Algorithms for Augmented Reality 3D Pose Estimation by Sebastian Grembowietz - 1 - Sebastian Grembowietz

index introduction 3d pose estimation techniques in general how many points? different models of projection orthographic projection [weak] perspective projection two algorithms in detail: POSIT (DeMenthon & Davis 1994) Linear Algorithms (Quan & Lan 1999) - 2 - Sebastian Grembowietz

my task what is 3d pose estimation? pose = position and orientation of an object (6DOF) pose estimation = getting the pose of an object from a 2d image (e.g. from a CCD) and what is it good for? mixing reality and virtual reality some examples? videos - 3 - Sebastian Grembowietz

my task given calibrated camera model with feature-points corresponding points on the screen (image-plane) wanted rotation and translation of the model [r 11 r 12 r 13 t 1 r 21 r 22 r 23 t 2 r 31 r 32 r 33 t 3][ X Y Z ] - 4 - Sebastian Grembowietz

techniques algebraic algorithms positive aspects: speed negative aspects: poor noise filtering numeric instabilities Linear 4-Point Algorithm (Quan & Lan) - 5 - Sebastian Grembowietz

techniques optimizing (iterizing) algorithms positive aspects: numericly stable negative aspects: result depends on initial guess divergence Levenberg-Marquardt (next Hauptseminar) - 6 - Sebastian Grembowietz

techniques hybrid algorithms try to combine positive aspects of both algebraic algorithms and optimizing algorithms: numeric stability robust algorithm, i.e. noise does not harm much speed POSIT (DeMenthon & Davis) - 7 - Sebastian Grembowietz

features used points Quan & Lan (Linear N-Point Camera Pose Determination, [QuanLan1999]) DeMenthon & Davis (Model-Based Object Pose in 25 Lines of Code [DeMenthonDavis1994]) Lowe (Fitting Parameterized Three-Dimensional Models to Images [Lowe1991]) Yuan (A General Phogrammetric Solution for the Determining Object Position and Orientation [Yuan1989]) - 8 - Sebastian Grembowietz

features used lines Dhome et al (Determination of the Attitude of 3D Objects from Single Perspective View [Dhome1989]) Lowe (Perceptual Organization and Visual Recognition [Lowe1985]) surface Rosenhahn et al. (Pose Estimation of 3D Free-form Contours [Rosenhahn2002]) Nevatia & Ulupinar (Perception of 3-D Surfaces from 2-D Contours [NevatiaUlupinar1993]) - 9 - Sebastian Grembowietz

perspective projection [ f 0 0 0 0][ ]=[ X 0 f 0 0 Y 0 0 f 0 Z 0 0 1 1 ] [ fx fy fz Z x y f 1 ] perspective f - focal length vanishing points vanishing lines (horizon) - 10 - Sebastian Grembowietz

orthographic orthographic projection [1 0 0 0 ][ 0 1 0 0 0 0 0 f 0 0 0 1 ]=[ X Y Z 1 X Y f 1 just drop Z size preserves angles preserve - 11 - Sebastian Grembowietz

weak perspective weak perspective projection [ ][ f 0 0 0 0 f 0 0 0 0 0 f k 0 0 0 k X Y Z 1 ]=[ fx ] fy f k k k - constant fast approximation of perspective projection - 12 - Sebastian Grembowietz

p3p discovered 1795 by Lacroix (inspired by Monge [Smith2003]) solved first algebraicly by Grunert in 1841 [Haralick1991] Fischer and Bolles coined the term perspective three-point problem in 1981 [FB1981] - 13 - Sebastian Grembowietz

p3p are three points enough? 6DOF from 3 Points? - 14 - Sebastian Grembowietz

p3p NO! critical configurations: rotated leg solutions 2 solutions! - 15 - Sebastian Grembowietz

p3p rotation circle in general - 16 - Sebastian Grembowietz

p3p rotation circle projected to line (2 solutions) - 17 - Sebastian Grembowietz

p3p swept rotation circles - 18 - Sebastian Grembowietz

p3p another swept rotation circle - 19 - Sebastian Grembowietz

p3p summary p3p: Three points generate up to four possible solutions which can not be ignored in general. [Wolfe1991] Note: This is also called fourfold ambiguity. - 20 - Sebastian Grembowietz

p4+p use four or more points to determine pose straight-forward approach (4p): extract four triangles out of the four points, this gives you 16 solutions at maximum, then merge these and you have a pose. new problem: Merging results (finding the common root) can be very difficult and expensive other algorithms for four points: POSIT (optimizing algorithm) Linear Algorithms (algebraic algorithm) - 21 - Sebastian Grembowietz

POSIT Authors: Daniel F. DeMenthon and Larry S. Davis in 1992 characteristics: optimizing algorithm uses weak perspective projection does not require initial pose estimate inexpensive in its iteration loop can be written in 25 lines of code in Mathematica (as the title says) - 22 - Sebastian Grembowietz

POSIT all M x belong to the model all m x belong to the image plane G plane K parallel to G at distance Z 0 M i projects perspectively on N i (on K) and m i (on G) M i projects orthographically on P i P i projects perspectively on p i - 23 - Sebastian Grembowietz

POSIT Outline of the algorithm POS (pose from orthography and scaling) compute an object-matrix depending on model-coordinates M i only Note: Object-Matrix will be calculated only once compute a rotation-matrix from the image-points m i get translation from rotationmatrix by normalizing first or second row - 24 - Sebastian Grembowietz

POSIT POSIT (POS with iterations) shift the feature-points M i * from the object pose just found to the lines of sight (where they would belong if the pose was correct) do a POS (starting with a new rotation matrix) on the image-points m i * of the shifted feature points M i * POSIT usually takes four to five iterations until it's done - 25 - Sebastian Grembowietz

POSIT a little math... R =[ i u i v i ] w j u j v j w k u k v k w i u, i v, i w are in object coordinate system (M 0 u, M 0 v, M 0 w) once i and j are computed, k is obtained by taking the cross product of i and j if Z 0 (depth of M 0 ) is found, we can determine M 0 because of translation vector T is aligned with Om 0 (namely T = Z 0 /f * Om 0 ) (f = focal length) - 26 - Sebastian Grembowietz

POSIT more math... image points of weak perspective projection: x i ' = f X i / Z 0 y i ' = f Y i / Z 0 image points of [strong] perspective projection: x i = f X i / Z i y i = f Y i / Z i these can be combined to: ' x i = f X 0 / Z 0 + f ( X i - X 0 ) / Z 0 = x 0 + s ( X i - X 0 ) ' y i = y 0 + s ( Y i - Y 0 ) [ s = f / Z 0 ] - 27 - Sebastian Grembowietz

POSIT...more math... now i and j from the rotation matrix and Z 0 from M 0 are combined with M 0 M i and coordinates x i and y i from image points m 0 to m i M 0 M i * (f / Z 0 ) i = x i (1 + ε i ) - x 0 Equation 1 M 0 M i * (f / Z 0 ) j = y i (1 + ε i ) - y 0 Equation 2 where ε i = (1 / Z 0 ) M 0 M i *k - 28 - Sebastian Grembowietz

POSIT the end is near: We create linear systems out of equations 1 and 2, substitute (f / Z 0 ) i by I and (f / Z 0 ) j by J, using the feature points we have (at least four points). These linear equations can be solved via singular value decomposition (SVD); we get j and i from normalizing I and J. This way we also get Z 0 as f, the focal length, is known. - 29 - Sebastian Grembowietz

POSIT last words to POSIT we start setting ε i = 0, assuming scaled orthographic image points and perspective image points coincide Note: when we do tracking, we best use the ε i from the last image Once we know i, j and Z 0, we can compute a better ε i, and this leads to better values for i, j and Z 0 in the next iteration. - 30 - Sebastian Grembowietz

POSIT Picture of situation with ε i = 0 and real situation - 31 - Sebastian Grembowietz

linear algorithms Authors: Long Quan and Zhongdan Lan in 1999 characteristics: family of linear algebraic algorithms uses 4, 5 and up to n-points uses redundancy of the fourth point to directly create a unique solution - 32 - Sebastian Grembowietz

linear algorithms p3p revisited: we have correspondences between u x and p x we know the angle u j u i c p i p j we know p i - p j = d ij the following quadratic equation is valid: c u i u j d ij 2 = x i 2 + x j 2-2 x i x j cos(u j u i c) Equation 1-33 - Sebastian Grembowietz

linear algorithms from equation 1 we can go to f ij (x i, x j ) = x i 2 + x j 2-2 x i x j cos(u j u i c) - d ij 2 Equation 2 for n=3 points used, we get the following system: f 12 (x 1, x 2 ) = 0 f 13 (x 1, x 3 ) = 0 f 23 (x 2, x 3 ) = 0 by elimination of first x 3 and then x 2, we get: g(x) = a 5 x 4 + a 4 x 3 + a 3 x 2 + a 2 x 1 +a 1 = 0 (x := x 12 ) Equation 3-34 - Sebastian Grembowietz

linear algorithms Equation 3 gives as previously shown at most four different solutions... We solve the ambiguity by adding another point (so now we are in p4p) - 35 - Sebastian Grembowietz

linear algorithms The fourth point gives us g(x) = a 5 x 4 + a 4 x 3 + a 3 x 2 + a 2 x 1 +a 1 = 0 g(x) = a 5' x 4 + a 4' x 3 + a 3' x 2 + a 2' x 1 +a 1' = 0 g(x) = a 5'' x 4 + a 4'' x 3 + a 3'' x 2 + a 2'' x 1 +a 1'' = 0 which can be written in matrix form [ a 1 a 2 a 3 a 4 a 5 a 1' a 2' a 3' a 4 ' a 5' a 1' ' a 2' ' a 3' ' a 4 ' ' a 5' ' ][ 1 x x 2 x 3 x 4]=A3 x5t 5=0 Equation 4-36 - Sebastian Grembowietz

linear algorithms Quan and Lan solved equation 4 by applying SVD on it, then using a nonlinear constraint and again applying SVD After that, we have t 5 and can easily get the x: x = t 1 /t 0 or t 2 /t 1 or t 3 /t 2 or t 4 /t 3 or an average of these values. For obtaining x i we now just have to squareroot x : x i = x 1/2 (as x i is positive this is nonambiguous) - 37 - Sebastian Grembowietz

linear algorithms p5+p: given five or more point-correspondences, the linear algorithms introduced by Long Quan and Zhongdan Lan need only one SVD to determine x i - 38 - Sebastian Grembowietz

P7P Tsai's approach uses seven points very useful if camera is not calibrated see Hauptseminar on camera calibration - 39 - Sebastian Grembowietz

thank you Thank you for your attention Any questions? - 40 - Sebastian Grembowietz

resources [FB1981]: Fischer and Bolles, Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography, Graphics and Image Processing, vol. 24, no. 6, pp.381-395, June 1981 [Lowe1991]: Fitting Parameterized Three-Dimensional Models to Images, IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 13, no.5, pp129-142, May 1991 [QuanLan1999]: Linear N-Point Camera Pose Determination, IEEE Trans. on Pattern Analysis and Machine Intelligence, vol. 21, no. 7, July 1999 [DeMenthonDavis1994]: Model-Based Object Pose in 25 Lines of Code, International Journal of Computer Vision, vol. 15, no. 1 pp. 123-141, May 1995-41 - Sebastian Grembowietz

resources [Rosenhahn2002]: Rosenhahn, Perwass and Sommer : Pose Estimation of 3D Free-form Contours.Technical Report 0207,University Kiel. 2002 more Rosenhahn papers: http://www.ks.informatik.unikiel.de/~bro/myhomepage/publications.html [NevatiaUlupinar1993]: Perception of 3-D Surfaces from 2-D Contours, PAMI(15), No. 1, January 1993, pp. 3-18. other publication from Nevatia et al: http://iris.usc.edu/outlines/papers.html [Dhome1989]: Determination of the Attitude of 3D Objects from Single Perspective View, IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 11, no. 12, pp. 1265-1278, Decembre 1989-42 - Sebastian Grembowietz

resources [Yuan1989]: A General Phogrammetric Solution for the Determining Object Position and Orientation, IEEE Trans. Robotics and Automation, vol. 5, no.2, pp.129-142, April 1989 [Lowe1985]: Perceptual Organization and Visual Recognition, Norwell, Mass.: Kluwer Academic Publishers, 1985 [Haralick1991]: Analysis and Solutions of the Three Point Perspective Pose Estimation Problem, Proc. IEEE Conf. Computer Vision and Pattern Recognition, pp.592-598, Maui, Hawaii, 1991 [Smith2003]: David Eugene Smith, History of Modern Mathematics, Mathematical Monographs No. 1 ( taken from Project Gutenberg's History of MM, www2.cddc.vt.edu/gutenberg/etext05/hsmmt10p.pdf ) [Wolf1991]: The Perspective View of Three Points, IEEE Trans. on Pattern Analysis and Machine Intelligence, vol. 13, no. 1, January 1991-43 - Sebastian Grembowietz