SA-1 Mapping with Known Poses Ch 4.2 and Ch 9. 2 Why Mapping? Learning maps is one of the...

Preview:

Citation preview

SA-1

Mapping with Known Poses

Ch 4.2 and Ch 9

2

Why Mapping?

•Learning maps is one of the fundamental problems in mobile robotics

•Maps allow robots to efficiently carry out their tasks, allow localization …

•Successful robot systems rely on maps for localization, path planning, activity planning etc.

3

The General Problem of Mapping

What does the environment look like?

4

The General Problem of Mapping•Formally, mapping involves, given the

sensor data,

to calculate the most likely map

},,...,,,,{ 2211 nn zuzuzud

)|(maxarg* dmPmm

5

Mapping as a Chicken and Egg Problem

• So far we learned how to estimate the pose of the 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).

• We will first describe how to calculate a map given we know the pose of the robot.

6

Problems in Mapping

•Sensor interpretation• How do we extract relevant information

from raw sensor data?• How do we represent and integrate this

information over time?

•Robot locations have to be estimated• How can we identify that we are at a

previously visited place?• This problem is the so-called data

association problem.

7

Occupancy Grid Maps

• Introduced by Moravec and Elfes in 1985

• Represent environment by a grid.

• Estimate the probability that a location is occupied by an obstacle.

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

• Remember that Robot positions are known in current discussion!

yx

xyt

tttt

mBel

zuzumPmBel

,

][

121

)(

),,,|()(

8

Updating Occupancy Grid Maps

• Idea: Update each individual cell using a binary Bayes filter (ch4.2, P94).

•Additional assumption: Map is static.

•Let’s look at the binary Bayes filter first.

9

Binary Bayes Filter

10

Binary Bayes Filter

11

Binary Bayes Filter

• This binary Bayes filter uses an inverse measurement model p(x|zt), instead of the familiar forward model p(zt |x).

• The inverse measurement model specifies a distribution over the (binary) state variable as a function of the measurement zt.

• Inverse models are often used in situations where measurements are more complex than the binary state. • An example of such a situation is the problem of

estimating whether or not a door is closed, from camera images.

12

Binary Bayes Filter

13

Binary Bayes Filter

14

Binary Bayes Filter

15

Binary Bayes Filter

16

Updating Occupancy Grid Maps

),|( :1:1 tt xzmp

}m{ im

),|m( :1:1 tti xzp

i

ttitt xzpxm|zp ),|m(),( :1:1:1:1

17

Updating Occupancy Grid Maps

),|m(1

),|m(log

:1:1

:1:1,

tti

ttiit xzp

xzpl

}exp{1

11),|m(

:1:1:1

ttti lxzp

)m(1

)m(log

)0m(

)1m(log0

i

i

i

i

p

p

p

pl

18

Updating Occupancy Grid Maps

19

Updating Occupancy Grid Maps

• Inverse Sensor Model (inverse measurement model)

),|m(1

),|m(log), ,(mnsor_modelinversr_se i

tti

ttitt xzp

xzpzx

),|m( :modelsensor inversr

),m|(

tti

tit

xzp

xzp

20

Updating Occupancy Grid Maps

21

Incremental Updating of Occupancy Grids (Example)

22

Resulting Map Obtained with Ultrasound Sensors

23

Occupancy Grids: From scans to maps

24

Tech Museum, San Jose

CAD map occupancy grid map

25

Summary

• Occupancy 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.

• It stores the posterior probability that the corresponding area in the environment is occupied.

• Occupancy grid maps can be learned efficiently using a probabilistic approach.

Recommended