nice, 17/18 december 2001 adaptive grids for bathymetry mapping and navigation michel chedid and...

23
Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Adaptive Grids For Bathymetry Mapping And Navigation Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - I3S - MAUVE MAUVE

Upload: buck-benjamin-cooper

Post on 18-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

                   

Adaptive Grids For Bathymetry Adaptive Grids For Bathymetry Mapping And NavigationMapping And Navigation                    

Michel Chedid and Maria-João Rendas

I3S - I3S - MAUVEMAUVE

Page 2: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Problem formulationProblem formulation MappingMapping

Off-lineOff-lineOn-lineOn-line

NavigationNavigation

Real Time Optimally Adapting Meshes (Real Time Optimally Adapting Meshes (RROAM)OAM)Noiseless dataNoiseless dataNoisNoisyy data dataDynamically expand the supportDynamically expand the support

Conclusions and future workConclusions and future work

Page 3: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Mapping

Given a set of altitude measures hi taken by a robot at positions (xi,yi,di), iteratively build an efficient representation of the observed sea-bed surface

Problems :

• large volume of data (off-line and on-line mapping)

• noisy data (off-line and on-line mapping)

• dynamic definition of the support S (on-line mapping)

iiiii hdzyx S),(

xi,yi

di

hi

Page 4: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

• Find an efficient representation of a given set of data points – useful for on-line use of an a priori known map (limited on-board

memory)

– fast post-mission visualisation on acquired data

• Two distinct situations– noise-free data (existing maps)

– noisy data (learned maps)

Page 5: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Recursive update of an internal representation (of reduced complexity) of a set of (noisy) data points

New problem: the support set S is not known a priori (it depends on the robot trajectory) : the grid that supports the representation must be dynamically expanded.

Page 6: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Problem:

Given an internal map M, which contains uncertain information about the sea-bed depth over an area S, use the current robot’s measures to locate the robot in the map. Goal: reset large dead-reckoning errors, bound navigation errors.

Approaches:

• two step procedures (association filtering)

• non-linear filters (Gauss mixtures, particular filtering,...)

Requires: characterisation of the uncertainty associated to

• the current estimates of the robot position (xi,yi,zi)

• the uncertainty associated to the altitude measures, hi

• the uncertainty associated to the map M at each point zM(x,y)

Page 7: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Algorithm originated in the Computer Graphics community for fast visualisation of 3D animated scenes.

Triangulation algorithm based on a regular square grid of size (2n+1)(2n+1), n = 0, 1, 2, …that approximates a surface by a series of triangular facets.

The main advantages of the algorithm are• it adapts the resolution (size of the triangles) to the local characteristics of the surface (minimize the number of triangles that must be drawn)

on-board memory requirements • pointer structure that enables fast access to the individual triangles

real-time processing of the data

Page 8: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Page 9: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

First level

Second level

LT1

LT1

RT1RT1

LT2 LT3 RT2 RT3

LT4 LT5

LT4 LT5

LT6 LT7

LT6

LT7

RT4 RT5

RT4RT5

RT6 RT7

RT6

RT7

Third level

Example: n = 1

Page 10: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Notation for neighboring triangles:

Triangle T

Base neighbor

Left neighbor Right neighbor

Every node has six pointers.

Page 11: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Splitting is done when a triangle is not a good enough approximation of the data. It increases the depth of the tree at that node.Constraint : splitting of some triangles forces split of other triangles to prevent discontinuities in the mesh

Example:

Page 12: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Merge: The operation opposit to split where two smaller triangles are merged to build a bigger triangle (they represent irrelevant details). It corresponds to eliminating branches at the lowest tree level (the eliminated triangles are leaves).

If a triangle and its base neighbor have been split once, they are said to form a mergeable diamond.

Using split and merge operations any triangulation can be obtained from any other given triangulation.

Page 13: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

What is an error metric (associated to the triangles)?

Example : Geometric error metric eh

At the leaf nodes: eh = 0elsewhere in the tree: eh= max (eh,leftchild , eh,righchild ) + h

h

Page 14: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

The triangulation algorithm starts with the complete binary tree of highest depth, and proceeds in two steps:

1. Compute the error metric for the current tree (recursively from the tree leaves)

2. Repeat until no changes are made: at every mergeable diamond if (eh < threshold and eh,baseneighbor< threshold)

eliminate the children nodes

Page 15: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Goal : • data compression ( memory limitations), • fast access to values ( real-time processing)

Drawback:• the support of the representation is static, the algorithm needs

to know all input data (over a complete regular grid) at once.

Page 16: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

For noise-free measures1. Interpolate the data points over a regular grid (using, for instance, linear

interpolation). 2. Apply ROAM to obtain a grid adapted to the characteristics of the terrain

(concentrate density of points in high variability regions).

For noisy measures1. Define a regular grid at the finest admissible level of representation2. Recursiely update the grid points using the data set (Recursive Least

Squares)3. Apply ROAM to obtain a variable grid adapted to the geometry of the

represented terrain.

New error metric

Page 17: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

We use two error metrics:

1. Geometric error: The angle α between the two children

2. Statistical error: The mean of the variances of the points that build up the triangle. It indicates if the triangle is rather stable.

α

Page 18: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Linear Model:z(k) = T (k)(k) + e(k) : k-th data point : vector of grid points

: interpolation operator

Update equations:

(k) = (k-1) + K(k) (z(k) - T (k) (k-1))

K(k) = P(k) (k)

P(k) = P(k-1) – [P(k-1) (k) T (k)P(k-1)]/[1+ T (k)P(k-1) T (k)]

P(k) is the covariance matrix

K(k) is the gain vector

Page 19: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Trajectory of the robot Reconstructed surface(artificial noise with a variance of 1 has been added)

Page 20: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Problem: No a priori knowledge of the surface support S

Solution:Dynamic expansion of the grid

Start with a grid of a fixed size. If the robot goes outside the grid Add a new grid of the same size and link it to its neighbors

Page 21: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Modifications of the original ROAM algorithm

Split and merge operationsNew boundaries constraints

Merging the smal grids into bigger grids when possible

Linking the new triangle binary trees Maintaining ROAM structure

Page 22: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Trajectory of the robot On-line reconstructed surface

Page 23: Nice, 17/18 December 2001 Adaptive Grids For Bathymetry Mapping And Navigation Michel Chedid and Maria-João Rendas I3S - MAUVE

Nice, 17/18 December 2001

Conclusions•ROAM is efficient and structured •The off-line version is fully implemented.•The on-line partially implemented.

Future work•Introduce the changes required for the on-line version.•Evaluate the obtained map from a navigation point of view.