robot mapping a short introduction to homogeneous...

23
1 Robot Mapping A Short Introduction to Homogeneous Coordinates Gian Diego Tipaldi, Wolfram Burgard

Upload: others

Post on 24-Sep-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

1

Robot Mapping

A Short Introduction to Homogeneous Coordinates

Gian Diego Tipaldi, Wolfram Burgard

Page 2: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

2

Motivation

Cameras generate a projected image of the world

Euclidian geometry is suboptimal to describe the central projection

In Euclidian geometry, the math can get difficult

Projective geometry is an alternative algebraic representation of geometric objects and transformations

Math becomes simpler

Page 3: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

3

Projective Geometry

Projective geometry does not change the geometric relations

Computations can also be done in Euclidian geometry (but more difficult)

Page 4: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

4

Homogeneous Coordinates

H.C. are a system of coordinates used in projective geometry

Formulas involving H.C. are often simpler than in the Cartesian world

Points at infinity can be represented using finite coordinates

A single matrix can represent affine transformations and projective transformations

Page 5: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

5

Homogeneous Coordinates

H.C. are a system of coordinates used in projective geometry

Formulas involving H.C. are often simpler than in the Cartesian world

Points at infinity can be represented using finite coordinates

A single matrix can represent affine transformations and projective transformations

Page 6: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

6

Homogeneous Coordinates

Definition

The representation of a geometric object is homogeneous if and represent the same object for

Example

Page 7: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

7

From Homogeneous to Euclidian Coordinates

homogeneous Euclidian

Page 8: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

8

From Homogeneous to Euclidian Coordinates

Courtesy: W. Förstner

Page 9: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

9

Center of the Coordinate System

Page 10: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

10

Infinitively Distant Objects

It is possible to explicitly model infinitively distant points with finite coordinates

Great tool when working with bearing-only sensors such as cameras

Page 11: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

11

3D Points

Analogous for 3D points

homogeneous Euclidian

Page 12: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

12

Transformations

A projective transformation is a invertible linear mapping

Page 13: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

13

Important Transformations ( )

General projective mapping

Translation: 3 parameters

(3 translations)

Page 14: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

14

Important Transformations ( )

Rotation: 3 parameters (3 rotation)

rotation matrix

Page 15: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

15

Recap – Rotation Matrices

Page 16: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

16

Important Transformations ( )

Rotation: 3 parameters (3 rotation)

Rigid body transformation: 6 params (3 translation + 3 rotation)

Page 17: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

17

Important Transformations ( )

Similarity transformation: 7 params (3 trans + 3 rot + 1 scale)

Affine transformation: 12 parameters (3 trans + 3 rot + 3 scale + 3 sheer)

Page 18: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

18

Transformations in

Courtesy: K. Schindler

Page 19: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

19

Transformations

Inverting a transformation

Chaining transformations via matrix products (not commutative)

Page 20: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

20

Motions

We will express motions (rotations and translations) using H.C.

Chaining transformations via matrix products (not commutative)

Page 21: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

21

Conclusion

Homogeneous coordinates are an alternative representation for geometric objects

Equivalence up to scale

Modeled through an extra dimension

Homogeneous coordinates can simplify mathematical expressions

We often use it to represent the motion of objects

Page 22: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

22

Literature

Homogeneous Coordinates

Photogrammetrie I Skript by Wolfgang Förstner

Wikipedia as a good summary on homogeneous coordinates: http://en.wikipedia.org/wiki/Homogeneous_coordinates

Page 23: Robot Mapping A Short Introduction to Homogeneous Coordinatesais.informatik.uni-freiburg.de/.../ws15/mapping/... · the robot mapping course taught in 2012/13 and 2013/14. I created

23

Slide Information

These slides have been created by Cyrill Stachniss as part of the robot mapping course taught in 2012/13 and 2013/14. I created this set of slides partially extending existing material of Edwin Olson, Pratik Agarwal, and myself.

I tried to acknowledge all people that contributed image or video material. In case I missed something, please let me know. If you adapt this course material, please make sure you keep the acknowledgements.

Feel free to use and change the slides. If you use them, I would appreciate an acknowledgement as well. To satisfy my own curiosity, I appreciate a short email notice in case you use the material in your course.

My video recordings are available through YouTube: http://www.youtube.com/playlist?list=PLgnQpQtFTOGQrZ4O5QzbIHgl3b1JHimN_&feature=g-list

Cyrill Stachniss, 2014 [email protected]

bonn.de