Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2...

53
Tracker Alignment using Hand-Eye Calibration Sebastian Grembowietz

Transcript of Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2...

Page 1: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

Tracker Alignmentusing Hand-Eye Calibration

Sebastian Grembowietz

Page 2: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 2

Outline Introduction

Tracker Alignment• Definition and Applications

Achieving Aligned Trackers Solving AX=XB

classical solution (Tsai)• Splitting and solving AX=XB

More robust solution (Daniilidis)• Complex Numbers, Dual Quaternions and Screws• Solving aq = qb

Improving accuracy

Page 3: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 3

Introduction of myself Sebastian Grembowietz

23 years old studying computer science at TUM 5th semester Current focus: Augmented Reality

Page 4: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 4

Tracker Alignment Hybrid trackers

Combining strengths Minimizing weaknesses

Page 5: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 5

Applications More robust sensors:

ART + camera:• fewer dependence on illumination• obtaining 3d data from camera

Aurora + ART:• partly independent from line-of-view• high precision

Page 6: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 6

Applications Robotics aided model generation

Robot arm and laser scanner combined

Page 7: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 7

Applications Robotics aided model generation

Taking measurementsfor custom-madeclothing

Page 8: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 8

Applications Automated part assembly

Automatic weldingguidedby feedbackfrom cameras

Page 9: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 9

Applications Endoscopic Surgery

minimally invasive surgery

Page 10: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 10

Aligning Trackers Forward Engineering

Hybrid tracker entirely designed Only one way of mounting possible Fixed alignment

Page 11: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 11

Aligning Trackers Manually registering points

User points on marker Correspondences used

for tracker alignment

Page 12: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 12

Aligning Trackers Automatic

alignmentfrommovements

Page 13: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 13

Setup Transforms

obtained

Page 14: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 14

Setup Transforms

computed

Page 15: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 15

Setup Transform

wanted

from

Page 16: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 16

Classical Solution 1989: Roger Tsai and Reimar Lenz

Page 17: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 17

Splitting AX=XB AX=XB in matrix form

multiplied out

Page 18: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 18

2 Phases Solving AX=XB in 2 phases

Phase 1 - computing modified Rodrigues formula

Phase 2 - computing

Page 19: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 19

Phase 1 - Rotation Rodrigues formula corresponding to

Rodrigues formula computed soon

Page 20: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 20

Phase 1 - Rotation Step 1 - For all movement pairs

rewritten to

and solved usinglinear least squares

Page 21: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 21

Phase 1 - Computing Rotation Step 2 - obtain

Page 22: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 22

Phase 2 - Translation known

Computation of from

using linear least squares

Page 23: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 23

Modern Solution 1998:

KostasDaniilidis

Page 24: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 24

Complex Numbers Short introduction:

Addition

Page 25: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 25

Complex Numbers Multiplication

Conjugate

Norm

Page 26: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 26

Complex Numbers Multiplication = Rotation in 2D

anglesadded

normsmultiplied

Page 27: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 27

Quaternions Discovered by Hamilton in 1834

Page 28: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 28

Quaternions extension of complex numbers to 4D

imaginaryunitsi, j, k

Page 29: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 29

Quaternion Conjugate

Addition

Page 30: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 30

Quaternions Multiplication

Page 31: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 31

Quaternions Norm

Unit quaternions: norm of 1

Page 32: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 32

Using Quaternions Unit quaternion used for rotation in 3D

Rotating x to y

Page 33: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 33

Superiority of quaternions......concerning rotations: size

4 values instead of 9 interpolation

SLERP: Spherical Linear Interpolation no gimbal lock robustness thanks to easy normalization

Page 34: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 34

Dual Numbers Definition

Addition

Page 35: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 35

Dual Numbers Multiplication

Page 36: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 36

Plücker Coordinates Dual numbers used in vectors as

representation of lines

direction u moment v

Page 37: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 37

Dual Quaternions Dual Quaternion = Quaternion using dual

numbers

with q, q‘ quaternions

Page 38: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 38

Line transformations Line as Plücker coordinate

with additional constraint

line transformations by

line transformationsusing dual quaternions

Page 39: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 39

Line transformations Proof: From vector ...

... to quaternion ...

Page 40: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 40

Line transformations

... to dual quaternions

or equivalently

Page 41: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 41

Screws Rigid transformation (R, t)

equivalentto screw

rotation axis lnot throughorigin

pitch d same angle

Page 42: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 42

Screw from Transform Direction l of screw axis

parallel to rotation axis of transform Pitch d

projecton of translation on rotation axis Moment m

using auxilliary point c

Page 43: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 43

Screw to Dual Quaternion

Page 44: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 44

Back to Tracker Alignment AX=XB with dual quaterions

Screw Congruence Theorem Pitch and angle of a screw invariant under

rigid transformations

Page 45: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 45

Tracker Alignment Simplified

Note: only motion of the screw axis left

Page 46: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 46

Tracker Alignment Splitting in dual and non-dual part

rearranging and using

Page 47: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 47

Tracker Alignment Disregarding the scalar parts to set up

the linear system

with S being 6x8 matrix

Page 48: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 48

Tracker Alignment Construct 6nx8 matrix T

for n motion pairs

Compute SVD

and obtain

Page 49: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 49

Tracker Alignment Compute the lambdas using

unit quaternion criterions

Constraits result in

and

Page 50: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 50

Tracker Alignment Assuming so that

and substituting results in

and thus two solutions for s Choose the s maximizing

and easily obtain the lambas

Page 51: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 51

Tracker Alignment Convert dual quaternions to

non-dual part corresponds to rotation

translation by using

Page 52: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 52

Improving accuracy Preselection by applying threshold angle

for rotations

Optimality criterion to be minimized for allmotion pairs

Using as many stations as possible RANSAC approach

Page 53: Tracker Alignment - TUM · 2005. 7. 22. · 2005-03-31 Sebastian Grembowietz [tracker alignment] 2 Outline Introduction Tracker Alignment •Definition and Applications Achieving

2005-03-31 Sebastian Grembowietz [tracker alignment] 53

Thank you...... for your attention