ultrasonic sensing and mapping - computer science & e · 2014. 12. 4. · ultrasonic sensing...

56
Ioannis Rekleitis Ultrasonic Sensing and Mapping

Upload: others

Post on 18-Jan-2021

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Ioannis Rekleitis

Ultrasonic Sensing

and Mapping

Page 2: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Introduction to Mapping

• What the world looks like?

• Knowledge representation

– Robotics, AI, Vision

• Who is the end-user?

– Human or Machine

• Ease of Path Planning

• Uncertainty!

2CSCE 774: Robotic Systems

Page 3: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Simultaneous Localization And Mapping

SLAM is the process of building a map of an environment while, at the same time, using that map to maintain the location of the robot.

• Problems for SLAM in large scale environments:

– Controlling growth of uncertainty and complexity

– Achieving autonomous exploration

3CSCE 774: Robotic Systems

Page 4: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Consider this Environment:

4CSCE 774: Robotic Systems

Page 5: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Three Basic Map Types

Topological:Collection of nodes and their interconnections

Grid-Based:Collection of discretized obstacle/free-space pixels

Feature-Based:Collection of landmark locations and correlated uncertainty

5CSCE 774: Robotic Systems

Page 6: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Three Basic Map Types

Grid-Based Feature-Based Topological

Construction Occupancy grids Kalman Filter Navigation control

laws

Complexity Grid size and

resolution

Landmark covariance

(N3)

Minimal

complexity

Obstacles Discretized

obstacles

Only structured

obstacles

GVG defined by

the safest path

Localization Discrete localization Arbitrary localization Localize to nodes

Exploration Frontier-based

exploration

No inherent

exploration

Graph exploration

6CSCE 774: Robotic Systems

Page 7: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Other Maps

Appearance

Based

Geometry

Based

Mesh

Based

Construction Images Lines, planes, etc Mesh

Path Planning N/A Geometry based Graph based

Localization Arbitrary

localization

Arbitrary

localization

Arbitrary

localization

7CSCE 774: Robotic Systems

Page 8: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Mapping

Robot Map

World

8CSCE 774: Robotic Systems

Page 9: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Mapping

Robot Map

World

•Indoor/Outdoor•2D/2.5D/3D•Static/Dynamic•Known/Unknown•Abstract (web)

9CSCE 774: Robotic Systems

Page 10: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Mapping

Robot Map

World

•MobileIndoor/OutdoorWalking/Flying/Swimming

•Manipulator•Humanoid•Abstract

10CSCE 774: Robotic Systems

Page 11: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Mapping

Robot Map

World

•Topological•Metric•Feature Based•1D,2D,2.5D,3D

11CSCE 774: Robotic Systems

Page 12: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Mapping

Robot Map

World

•Topological•Metric•Feature Based•1D,2D,2.5D,3D

•MobileIndoor/OutdoorWalking/Flying/Swimming

•Manipulator•Humanoid•Abstract

•Indoor/Outdoor•2D/2.5D/3D•Static/Dynamic•Known/Unknown•Abstract (web)

12CSCE 774: Robotic Systems

Page 13: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Sonar sensing

CSCE 774: Robotic Systems 13

Why is sonar sensing limited to

between ~12 in. and ~25 feet ?

“The sponge”

Polaroid sonar emitter/receivers

sonar timeline

0a “chirp” is emitted into the environment

75mstypically when reverberations from the initial chirp have stopped

.5sthe transducer goes into “receiving” mode and awaits a signal...

after a short time, the signal will be too weak to be detected

Page 14: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Sonar effects

CSCE 774: Robotic Systems 14resolution: time / space

(d) Specular reflections cause walls to disappear

(e) Open corners produce a weak spherical wavefront

(f) Closed corners measure to the corner itself because of multiple reflections --> sonar ray tracing

(a) Sonar providing an accurate range measurement

(b-c) Lateral resolution is not very precise; the closest object in the beam’s cone provides the response

Page 15: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Sonar modeling

CSCE 774: Robotic Systems 15

initial time response

spatial response

blanking time

accumulated

responses

cone width

Page 16: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Sonar Modeling

CSCE 774: Robotic Systems 16

response model (Kuc)

sonar reading

obstacle

c = speed of sound

a = diameter of sonar element

t = time

z = orthogonal distance

a = angle of environment surface

• Models the response, hR, with:

a

• Then, add noise to the model to obtain a probability: p( S | o )

chance that the sonar reading is S,

given an obstacle at location o

z =

S

Page 17: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Using sonar to create maps

CSCE 774: Robotic Systems 17

What should we conclude if this sonar reads 10 feet?

10 feet

Page 18: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Using sonar to create maps

CSCE 774: Robotic Systems 18

What should we conclude if this sonar reads 10 feet?

10 feet

there is

something

somewhere

around here

there isn’t

something here

Local Mapunoccupied

occupied

Page 19: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Using sonar to create maps

CSCE 774: Robotic Systems 19

What should we conclude if this sonar reads 10 feet?

10 feet

there is

something

somewhere

around here

there isn’t

something here

Local Mapunoccupied

occupied

or ...no information

Page 20: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Using sonar to create maps

CSCE 774: Robotic Systems 20

What should we conclude if this sonar reads 10 feet...

10 feet

and how do we add the information that the next sonar reading (as the robot moves) reads 10 feet, too?

10 feet

Page 21: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Combining sensor readings

CSCE 774: Robotic Systems 21

• The key to making accurate maps is combining lots of data.

• But combining these numbers means we have to know what they are !

What should our map contain ?

• small cells

• each represents a bit of the robot’s environment

• larger values => obstacle

• smaller values => free

what is in each cell of this sonar model / map ?

Page 22: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

What is it a map of?

CSCE 774: Robotic Systems 22

Several answers to this question have been tried:It’s a map of occupied cells.

oxy oxycell (x,y) is occupied

cell (x,y) is unoccupied

Each cell is either occupied or unoccupied -- this was the approach taken by the Stanford Cart.

pre ‘83

What information should this map contain, given that it is created with sonar ?

Page 23: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

What is it a map of ?

CSCE 774: Robotic Systems 23

Several answers to this question have been tried:

It’s a map of occupied cells.

It’s a map of probabilities: p( o | S1..i )

p( o | S1..i )

The certainty that a cell is occupied, given the sensor readings S1, S2, …, Si

The certainty that a cell is unoccupied, given the sensor readings S1, S2, …, Si

oxy oxycell (x,y) is occupied

cell (x,y) is unoccupied

• maintaining related values separately?

• initialize all certainty values to zero

• contradictory information will lead to both values near 1

• combining them takes some work...

‘83 - ‘88

pre ‘83

Page 24: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Sonars from P/S

CSCE 774: Robotic Systems 24

Page 25: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Sonar Locations Pioneer 3DX Robot

CSCE 774: Robotic Systems 25

Page 26: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Sonar Data Calculation

CSCE 774: Robotic Systems 26

Page 27: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Combining probabilities

CSCE 774: Robotic Systems 27

How to combine two sets of probabilities into a single map ?

Page 28: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

What is it a map of ?

CSCE 774: Robotic Systems 28

Several answers to this question have been tried:

It’s a map of occupied cells.

It’s a map of probabilities:

It’s a map of odds.

The certainty that a cell is occupied, given the sensor readings S1, S2, …, Si

The certainty that a cell is unoccupied, given the sensor readings S1, S2, …, Si

The odds of an event are expressed relative to the complement of that event.

The odds that a cell is occupied, given the sensor readings S1, S2, …, Si

oxy oxycell (x,y) is occupied

cell (x,y) is unoccupied

‘83 - ‘88

pre ‘83

probabilities

)|( 1 iSop

)|( 1 iSop

)|(

)|()|(

1

11

i

ii

Sop

SopSoodds

Page 29: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

An example map

CSCE 774: Robotic Systems 29

units: feet

Evidence grid of a tree-lined outdoor path

lighter areas: lower odds of obstacles being present

darker areas: higher odds of obstacles being present

how to combine them?

Page 30: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Conditional probability

CSCE 774: Robotic Systems 30

Some intuition...

p( o | S ) =

The probability of event o, given event S .

The probability that a certain cell o is occupied, given that the robot sees the sensor reading S .

p( S | o ) = The probability of event S, given event o .

The probability that the robot sees the sensor reading S , given that a certain cell o is occupied.

•What is really meant by conditional probability ?

•How are these two probabilities related?

Page 31: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Bayes Rule

CSCE 774: Robotic Systems 31

- Conditional probabilities

)()|()( SpSopSop

Page 32: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Bayes Rule

CSCE 774: Robotic Systems 32

- Conditional probabilities

- Bayes rule relates conditional probabilities

Bayes rule

)()|()( SpSopSop

)(

)()|()|(

Sp

opoSpSop

Page 33: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Bayes Rule

CSCE 774: Robotic Systems 33

- Conditional probabilities

- Bayes rule relates conditional probabilities

Bayes rule

)()|()( SpSopSop

)(

)()|()|(

Sp

opoSpSop

- So, what does this say about odds( o | S2 S1 ) ?

Can we update easily ?

Page 34: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Combining evidence

CSCE 774: Robotic Systems 34

So, how do we combine evidence to create a map?

What we want --

odds( o | S2 S1) the new value of a cell in the map

after the sonar reading S2

What we know --

odds( o | S1) the old value of a cell in the map

(before sonar reading S2)

the probabilities that a certain obstacle

causes the sonar reading Si

p( Si | o ) & p( Si | o )

Page 35: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Combining evidence

CSCE 774: Robotic Systems 35

)|(

)|()|(

12

1212

SSop

SSopSSoodds

Page 36: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Combining evidence

CSCE 774: Robotic Systems 36

)()|(

)()|(

)|(

)|()|(

12

12

12

1212

opoSSp

opoSSp

SSop

SSopSSoodds

definition of odds

Page 37: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Combining evidence

CSCE 774: Robotic Systems 37

)()|()|(

)()|()|(

)()|(

)()|(

)|(

)|()|(

12

12

12

12

12

1212

opoSpoSp

opoSpoSp

opoSSp

opoSSp

SSop

SSopSSoodds

definition of odds

Bayes’ rule (+)

Page 38: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Combining evidence

CSCE 774: Robotic Systems 38

)|()|(

)|()|(

)()|()|(

)()|()|(

)()|(

)()|(

)|(

)|()|(

12

12

12

12

12

12

12

1212

SopoSp

SopoSp

opoSpoSp

opoSpoSp

opoSSp

opoSSp

SSop

SSopSSoodds

definition of odds

Bayes’ rule (+)

conditional independence of

S1 and S2

Bayes’ rule (+)

Page 39: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Combining evidence

CSCE 774: Robotic Systems 39

)|()|(

)|()|(

)()|()|(

)()|()|(

)()|(

)()|(

)|(

)|()|(

12

12

12

12

12

12

12

1212

SopoSp

SopoSp

opoSpoSp

opoSpoSp

opoSSp

opoSSp

SSop

SSopSSoodds

definition of odds

Bayes’ rule (+)

conditional independence of

S1 and S2

Bayes’ rule (+)

Update step = multiplying the previous odds by a precomputed weight.

previous oddsprecomputed values

the sensor model

Page 40: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Evidence grids

CSCE 774: Robotic Systems 40

hallway with some open doors lab space

known map and estimated evidence grid

CMU -- Hans Moravec

Page 41: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Learning the Sensor Model

CSCE 774: Robotic Systems 41

The sonar model depends dramatically on the environment-- we’d like to learn an appropriate sensor model

rather than hire Roman Kucto develop another one...

Page 42: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Learning the Sensor Model

CSCE 774: Robotic Systems 42

The sonar model depends dramatically on the environment-- we’d like to learn an appropriate sensor model

rather than hire Roman Kucto develop another one...

Page 43: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Learning the Sensor Model

CSCE 774: Robotic Systems 43

part of the learned model

the mapping results of a model that had an even better match score (against the ideal map)

the idealized model

Page 44: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Sensor fusion

CSCE 774: Robotic Systems 44

Incorporating data from other sensors -- e.g., IR rangefinders and stereo vision...

(1) create another sensor model

(2) update along with the sonar

Page 45: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Centerline

• Only consider region of significant response

• Approximate response with an arc of uniform probability

CSCE 774: Robotic Systems 45

Choosing the center pointof the arc limits error

Page 46: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Centerline

• Advantages

– Minimal computation required per sonar reading

– Low latency

• Disadvantages

– Inaccurate

– Open areas may appear occluded

only centerline points displayed

CSCE 774: Robotic Systems 46

Page 47: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Fusing Multiple Readings

• Regions of Constant Depth (RCDs)– Leonard et al. 1995

• Arc Tangents– McKerrow 1993

• Arc Transversal Median (ATM)– Choset and Nagatani 1999

• Line Fitting– MacKenzie and Dudek 1994

CSCE 774: Robotic Systems 47

Page 48: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Arc Carving Sonar Model

• Represents a sonar return as a cone with an arc base

– The arc approximates the sonar response

– The interior of the cone represents a region of likely freespace

CSCE 774: Robotic Systems 48

Page 49: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Occupancy Grid Sonar Model

• The arc carving model may be viewed as a binary approximation of the model used by Moravec and Elfes– An Arc with nonzero

probability of occupancy

– A cone with nonzero probability of freespace

CSCE 774: Robotic Systems 49

Page 50: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Arc Carving

• Each new sonar reading is checked against a history of previous readings

• If an arc is overlapped by the interior of a newer cone, the arc is “carved” to reflect this new information

• The updated arc is smaller, and therefore has a smaller bound on the error

CSCE 774: Robotic Systems 50

Page 51: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Arc Carving

• Multiple passes of Arc Carving may completely remove an arc

– Spurious sonar readings are removed

– Response to dynamic environments is increased

CSCE 774: Robotic Systems 51

Page 52: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Example – Ordinary Centerline

CSCE 774: Robotic Systems 52

Page 53: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Example – Arc Carving

CSCE 774: Robotic Systems 53

Page 54: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Arc Carving Video

• Latency issues are avoided

• The readings are more accurate than centerline

• Multiple reading approaches can be run off of the carved data

only carved points displayed

CSCE 774: Robotic Systems 54

Page 55: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Experimental Results:Centerline Map

CSCE 774: Robotic Systems 55

Page 56: Ultrasonic Sensing and Mapping - Computer Science & E · 2014. 12. 4. · Ultrasonic Sensing and Mapping. Introduction to Mapping • What the world looks like? • Knowledge representation

Experimental Results:Arc Carving Map

CSCE 774: Robotic Systems 56