lecture 8 map building 2

Upload: jack2423

Post on 30-May-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 Lecture 8 Map Building 2

    1/34

    Kalman Filter Localization

  • 8/14/2019 Lecture 8 Map Building 2

    2/34

    Introduction to Kalman Filter (1)

    Two measurements

    Weighted least-square

    Finding minimum error

    After some calculation and rearrangements if we take2

    1

    i

    iw

    =

  • 8/14/2019 Lecture 8 Map Building 2

    3/34

    Introduction to Kalman Filter (2)

    In Kalman Filter notation

  • 8/14/2019 Lecture 8 Map Building 2

    4/34

    Introduction to Kalman Filter (3)

    Dynamic Prediction (robot moving)

    u = velocity

    w = noise

    Motion

    Combining fusion and dynamic prediction

  • 8/14/2019 Lecture 8 Map Building 2

    5/34

    Kalman Filter for Robot localization

    Require pose the robot localization problem as a sensor fusion problem

    since Kalman filter is an optimal and efficient sensor fusion technique

    Robot localization methodsMarkov localization

    o the entire perception is used to update each possible robot position

    in the belief state individually using the Bayes fomula Kalman filter localization

    o Given a set of possible features, the Kalman filter is used to fuse the

    distance estimate from each feature to a matching object in the map.

    o The probabilistic update is accomplished by treading the whole,

    unimodal, and Gaussian belief state at once.

  • 8/14/2019 Lecture 8 Map Building 2

    6/34

    Kalman filter localization: Robot Position Prediction

    In the first step, the robots position at time step k+1 is predicted based

    on its old location (time step k) and its movement due to the control

    input u(k):

    f: Odometry function))(,)(()1( kukkpfkkp =+

    T

    uuu

    T

    pppp f)k(ff)kk(f)kk( +=+ 1

  • 8/14/2019 Lecture 8 Map Building 2

    7/34

    Robot Position Prediction: Example

    +

    +

    +

    +

    +

    =+=+

    b

    ss

    b

    ssssb

    ssss

    k

    ky

    kx

    kukkpkkp

    lr

    lrlr

    lrlr

    )2

    sin(2

    )2

    cos(2

    )(

    )(

    )(

    )()()1( OdometryOdometry

    Tuuu

    Tpppp f)k(ff)kk(f)kk( +=+ 1

    =

    ll

    rr

    usk

    skk

    0

    0)(

  • 8/14/2019 Lecture 8 Map Building 2

    8/34

    Kalman filter localization: Observation

    The second step it to obtain the observationZ(k+1) (measurements) from

    the robots sensors at the new location at time k+1

    The observation usually consists of a set n0 of single observationszj(k+1)extracted from the different sensors signals. It can represent raw data

    scans as well asfeatures like lines, doors or any kind of landmarks.

    The parameters of the targets are usually observed in the sensor frame{S}.

    Therefore the observations have to be transformed to the world frame {W}

    or

    the measurement prediction have to be transformed to the sensor frame {S}.

    This transformation is specified in the function hi (seen later).

  • 8/14/2019 Lecture 8 Map Building 2

    9/34

    Kalman filter localization: Observation: Example

    j

    rj

    linej

    Extracted Lines Extracted Lines

    in Model Space

    jrrr

    rjR k

    =+

    )1(,

    =+j

    jR

    j rkz )1(

    Sensor(robot)frame

    Raw Date of

    Laser Scanner

  • 8/14/2019 Lecture 8 Map Building 2

    10/34

    Kalman filter localization: Measurement Prediction

    In the next step we use the predicted robot position

    and the mapM(k) to generate multiple predicted observationszt.

    They have to be transformed into the sensor frame

    We can now define the measurement prediction as the set containingall ni predicted observations

    The function hi is mainly the coordinate transformation between the

    world frame and the sensor frame

    ( )kkp 1+=

    ( ) ( )( )kkp,zhkz tii 11 +=+

    ( ) ( )( ){ }ii nikzkZ +=+ 111

  • 8/14/2019 Lecture 8 Map Building 2

    11/34

    Kalman Filter for Mobile Robot Localization

    Measurement Prediction: Example

    For prediction, only the walls that are in

    the field of view of the robot are selected.

    This is done by linking the individuallines to the nodes of the path

  • 8/14/2019 Lecture 8 Map Building 2

    12/34

    Kalman Filter for Mobile Robot Localization

    Measurement Prediction: Example

    The generated measurement predictions have to be transformed to the

    robot frame {R}

    According to the figure in previous slide the transformation is given by

    and its Jacobian by

    5 6 3

  • 8/14/2019 Lecture 8 Map Building 2

    13/34

    5.6.3Kalman Filter for Mobile Robot Localization

    Matching

    Assignment from observationszj(k+1) (gained by the sensors) to the targetszt(stored in

    the map)

    For each measurement prediction for which an corresponding observation is found we

    calculate the innovation:

    and its innovation covariance found by applying the error propagation law:

    The validity of the correspondence between measurement and prediction can e.g. be

    evaluated through the Mahalanobis distance:

  • 8/14/2019 Lecture 8 Map Building 2

    14/34

    Kalman Filter for Mobile Robot Localization

    Matching: Example

  • 8/14/2019 Lecture 8 Map Building 2

    15/34

    Kalman Filter for Mobile Robot Localization

    Estimation: Applying the Kalman Filter

    Kalman filter gain:

    Update of robots position estimate:

    The associate variance

  • 8/14/2019 Lecture 8 Map Building 2

    16/34

    Kalman Filter for Mobile Robot Localization

    Estimation: 1D Case

    For the one-dimensional case with we can

    show that the estimation corresponds to the Kalman filter for one-

    dimension presented earlier.

  • 8/14/2019 Lecture 8 Map Building 2

    17/34

    Kalman Filter for Mobile Robot Localization

    Estimation: Example

    Kalman filter estimation of the new robot

    position :

    By fusing the prediction of robot position(magenta) with the innovation gained by

    the measurements (green) we get the

    updated estimate of the robot position

    (red)

    )( kkp

  • 8/14/2019 Lecture 8 Map Building 2

    18/34

    Autonomous Indoor Navigation (Pygmalion EPFL)

    very robust on-the-fly localization

    one of the first systems with probabilistic sensor fusion

    47 steps,78 meter length, realistic office environment,

    conducted 16 times > 1km overall distance

    partially difficult surfaces (laser), partially few vertical edges (vision)

  • 8/14/2019 Lecture 8 Map Building 2

    19/34

    Autonomous Indoor Navigation (Pygmalion EPFL)

  • 8/14/2019 Lecture 8 Map Building 2

    20/34

    Other Localization Methods (not probabilistic)

    Localization Base-on Artificial Landmarks

    Landmaks enable reliable and accurate pose estimation by the robot,

    which must travel using dead reckoning between the landmarks

    Advantage: a strong formal theory has been developedDisadvantage: require significant environmental modification

  • 8/14/2019 Lecture 8 Map Building 2

    21/34

    Other Localization Methods (not probabilistic)

    Localization Base on Artificial Landmarks

  • 8/14/2019 Lecture 8 Map Building 2

    22/34

    Other Localization Methods (not probabilistic)

    Positioning Beacon Systems: Triangulation

  • 8/14/2019 Lecture 8 Map Building 2

    23/34

    Other Localization Methods (not probabilistic)

    Positioning Beacon Systems: Triangulation

    Active ultrasonic beacons

    O h L li i M h d ( b bili i )

  • 8/14/2019 Lecture 8 Map Building 2

    24/34

    Other Localization Methods (not probabilistic)

    Positioning Beacon Systems: Triangulation

    Passive optical beacons

  • 8/14/2019 Lecture 8 Map Building 2

    25/34

    Autonomous Map Building

    Starting from an arbitrary initial point, a mobile robot should

    be able to autonomously explore the environment with its on

    board sensors, gain knowledge about it, interpret the scene,build an appropriate map and localize itself relative to this

    map.

    SLAMThe Simultaneous Localization and Mapping Problem

    Map Building:

  • 8/14/2019 Lecture 8 Map Building 2

    26/34

    Map Building:

    How to Establish a Map

    1. By Hand

    2. Automatically: Map Building

    The robot learns its environment

    Motivation:

    - by hand: hard and costly

    - dynamically changing environment

    - different look due to different perception

    3. Basic Requirements of a Map:

    a way to incorporate newly sensed

    information into the existing world model

    information and procedures forestimatingthe robots position

    information to dopath planning and other

    navigation task(e.g. obstacle avoidance)

    Measure of Quality of a map

    topological correctness

    metrical correctness

    But: Most environments are a mixture ofpredictable and unpredictable features

    hybrid approachmodel-based vs. behaviour-based

    123.5

    predictability

    Map Building:

  • 8/14/2019 Lecture 8 Map Building 2

    27/34

    Map Building:

    The Problems

    2. Representation andReduction of Uncertainty

    position of robot -> position of wall

    position of wall -> position of robot

    probability densities for feature positions additional exploration strategies

    1. Map Maintaining: Keeping track ofchanges in the environment

    e.g. disappearingcupboard

    - e.g. measure of belief of eachenvironment feature

    ?

  • 8/14/2019 Lecture 8 Map Building 2

    28/34

    General Map Building Schematics

  • 8/14/2019 Lecture 8 Map Building 2

    29/34

    Map Representation

    Mis a set n of probabilistic feature locations

    Each feature is represented by the covariance matrix tand an

    associated credibility factor ct

    ctis between 0 and 1 and quantifies the belief in the existence of thefeature in the environment

    a and b define the learning and forgetting rate and ns and nu are the

    number of matched and unobserved predictions up to time k,

    respectively.

    Autonomous Map Building

  • 8/14/2019 Lecture 8 Map Building 2

    30/34

    Autonomous Map Building

    Stochastic Map Technique

    Stacked system state vector:

    State covariance matrix:

    Autonomous Map Building

  • 8/14/2019 Lecture 8 Map Building 2

    31/34

    Autonomous Map Building

    Example of Feature Based Mapping (EPFL)

  • 8/14/2019 Lecture 8 Map Building 2

    32/34

    Cyclic EnvironmentsCourtesy of Sebastian Thrun

    Small local error accumulate to arbitrary large global errors!

    This is usually irrelevant for navigation

    However, when closing loops, global error does matter Topology, submaps, combine topology and submaps

  • 8/14/2019 Lecture 8 Map Building 2

    33/34

    Dynamic Environments

    Dynamical changes require continuous mapping

    If extraction of high-level features would bepossible, the mapping in dynamic

    environments would become

    significantly more straightforward.

    e.g. difference between human and wall

    Environment modeling is a key factor

    for robustness?

    Map Building:

  • 8/14/2019 Lecture 8 Map Building 2

    34/34

    p g

    Exploration and Graph Construction

    2. Graph Construction

    Where to put the nodes?

    Topology-based: at distinctive locations

    Metric-based: where features disappear or

    get visible

    1. Exploration

    - provides correct topology

    - must recognize already visited location

    - backtracking for unexplored openings

    explore

    on stackalready

    examined