mapping with known poses pieter abbeel uc berkeley eecs

30
Mapping with Known Poses Pieter Abbeel UC Berkeley EECS Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics

Upload: ellema

Post on 24-Feb-2016

55 views

Category:

Documents


0 download

DESCRIPTION

Mapping with Known Poses Pieter Abbeel UC Berkeley EECS Many slides adapted from Thrun , Burgard and Fox, Probabilistic Robotics. TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A A A A A A A A A A. Why Mapping?. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

Mapping with Known Poses

Pieter AbbeelUC Berkeley EECS

Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics

Page 2: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

2

Why Mapping? Learning maps is one of the fundamental problems

in mobile robotics Successful robot systems rely on maps for

localization, path planning, activity planning etc.

Page 3: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

3

The General Problem of Mapping

Formally, mapping involves, given the control inputs and sensor data,

to calculate the most likely map},,,,,,{ 2211 nn zuzuzud

)|(maxarg* dmPmm

Page 4: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

4

Mapping as a Chicken and Egg Problem

So far we learned how to estimate the pose of a robot given the data and the map.

Mapping, however, involves to simultaneously estimate the pose of the vehicle and the map.

The general problem is therefore denoted as the simultaneous localization and mapping problem (SLAM).

Throughout this set of slides we will describe how to calculate a map given we know the pose of the robot. In future lectures we’ll build on top of this

to achieve SLAM.

Page 5: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

5

Types of SLAM-Problems Grid maps or scans

[Lu & Milios, 97; Gutmann, 98: Thrun 98; Burgard, 99; Konolige & Gutmann, 00; Thrun, 00; Arras, 99; Haehnel, 01;…]

Landmark-based

[Leonard et al., 98; Castelanos et al., 99: Dissanayake et al., 2001; Montemerlo et al., 2002;…

This Lecture

Page 6: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

Occupancy grid maps For each grid cell represent whether occupied

or not

Reflection maps For each grid cell represent probability of

reflecting a sensor beam

Grid Maps

Page 7: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

8

Occupancy Grid Maps Introduced by Moravec and Elfes in 1985 Represent environment by a grid. Each

cell can be empty or occupied. E.g., 10m by 20m space, 5cm resolution

80,000 cells 280,000 possible maps. Can’t efficiently compute with general

posterior over maps Key assumption:

Occupancy of individual cells (m[xy]) is independent

Page 8: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

9

Updating Occupancy Grid Maps

][1

][11

][1

][][][ )(),|()|()( xyt

xytt

xyt

xyt

xytt

xyt dmmBelummpmzpmBel

Idea: Update each individual cell using a binary Bayes filter.

Additional assumption: Map is static.)()|()( ][

1][][ xy

txytt

xyt mBelmzpmBel

Page 9: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

12

Updating Occupancy Grid Maps Per grid-cell update:

BUT: how to obtain p(zt | mt[xy] = v) ?

=

This would require summation over all maps Heuristic approximation to update that

works well in practice

Page 10: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

13

Key Parameters of the Model

Page 11: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

14

z+d1 z+d2

z+d3z

z-d1

Occupancy Value Depending on the Measured Distance

Page 12: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

Recursive UpdateAssumption: measurements independent

Page 13: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

18

Incremental Updating of Occupancy Grids (Example)

Page 14: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

19

Resulting Map Obtainedwith Ultrasound Sensors

Page 15: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

20

Resulting Occupancy and Maximum Likelihood Map

The maximum likelihood map is obtained by clipping the occupancy grid map at a threshold of 0.5

Page 16: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

21

Occupancy Grids: From scans to maps

Page 17: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

22

Tech Museum, San Jose

CAD map occupancy grid map

Page 18: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

Occupancy grid maps For each grid cell represent whether occupied

or not

Reflection maps For each grid cell represent probability of

reflecting a sensor beam

Grid Maps

Page 19: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

24

Reflection Maps: Simple Counting For every cell count

hits(x,y): number of cases where a beam ended at <x,y>

misses(x,y): number of cases where a beam passed through <x,y>

Value of interest: P(reflects(x,y)) Turns out we can give a formal Bayesian

justification for this counting approach

),misses(),hits(),hits()( ][

yxyxyxmBel xy

Page 20: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

25

The Measurement Model

1

0,),,(),,(

1

0,),,(

, ,

,

,

0 if)1(

1 if)1(),|(

nt

tntt

nt

t

z

kntknxfznxf

z

kntknxf

tnt

mm

mmxzp

1, nt

1. pose at time t:2. beam n of scan t:3. maximum range reading:4. beam reflected by an object: 0, nt

ntz ,

tx 0 n1

),,( ,ntt znxfm

Page 21: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

26

Computing the Most Likely Map Compute values for m that maximize

Assuming a uniform prior probability for p(m), this is equivalent to maximizing (applic. of Bayes rule)

),,,,,|(maxarg 11*

ttm

xxzzmPm

T

ttt

m

T

ttt

m

ttm

xmzP

xmzP

xxmzzPm

1

1

11*

),|(lnmaxarg

),|(maxarg

),,,|,,(maxarg

Page 22: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

27

Computing the Most Likely Map

1

0

,1 1 1

,*

,

)1(ln)),,((

ln)1()),,((maxarg

ntz

kjt

jnt

J

j

T

t

N

nntt

m

mjknxfI

mjznxfIm

Suppose

T

t

N

nntnttj jznxfI

1 1,, )1()),,((

T

t

N

n

z

ktj

nt

jknxfI1 1

1

0

,

)),,((

Page 23: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

28

Meaning of j and j

T

t

N

nntnttj jznxfI

1 1,, )1()),,((

T

t

N

n

z

ktj

nt

jknxfI1 1

1

0

,

)),,((

corresponds to the number of times a beam that is not a maximum range beam ended in cell j (hits(j))

corresponds to the number of times a beam intercepted cell j without ending in it (misses(j)).

Page 24: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

29

Computing the Most Likely Reflection Map

J

jjjjj

mmmm

1

* )1ln(lnmaxarg

We assume that all cells mj are independent:

01

j

j

j

j

j mmmm

If we set

Computing the most likely map amounts to counting how often a cell has reflected a measurement and how often it was intercepted.

jj

jjm

we obtain

Page 25: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

30

Difference between Occupancy Grid Maps and Counting The counting model determines how often a cell

reflects a beam. The occupancy model represents whether or not a

cell is occupied by an object. Although a cell might be occupied by an object,

the reflection probability of this object might be very small.

Page 26: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

31

Example Occupancy Map

Page 27: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

32

Example Reflection Map

glass panes

Page 28: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

33

Example Out of 1000 beams only 60% are reflected from a

cell and 40% intercept it without ending in it. Accordingly, the reflection probability will be 0.6. Suppose p(occ | z) = 0.55 when a beam ends in a

cell and p(occ | z) = 0.45 when a cell is intercepted by a beam that does not end in it.

Accordingly, after n measurements we will have

Whereas the reflection map yields a value of 0.6, the occupancy grid value converges to 1.

2.0*4.0*6.0*4.0*6.0*

911

911*

911

55.045.0*

45.055.0 nnnnn

Page 29: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

34

Summary Grid maps are a popular approach to represent the

environment of a mobile robot given known poses. In this approach each cell is considered independently from

all others. Occupancy grid maps

store the posterior probability that the corresponding area in the environment is occupied.

can be estimated efficiently using a probabilistic approach.

Reflection maps are an alternative representation. store in each cell the probability that a beam is reflected

by this cell. the counting procedure underlying reflection maps yield

the optimal reflection map.

Page 30: Mapping with Known Poses Pieter  Abbeel UC Berkeley EECS

Inverse_range_sensor_model(mi, xt, zt)

®: thickness of obstacles ¯: width of the sensor

beam [Probabilistic Robotics, Table 9.2]