Click here to load reader

Simultaneous Localization and Mapping (SLAM)

  • View
    224

  • Download
    0

Embed Size (px)

Text of Simultaneous Localization and Mapping (SLAM)

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    1/66

    Minya UniversityFaculty of Engineering

    CSE 2011

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    2/66

    Simultaneous Localization and Mapping

    Ibraam Mahroos Fekri Mostafa Hassan Khamees

    Omar Shaaban Ibrahim

    Dr. Hassan Ali Hassan

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    3/66

    Contents

    Introduction Where we are ?

    SLAM Problem

    Objectives

    Linear Dynamic Systems

    Extended Kalman Filter

    EKF SLAM Algorithm

    Data Association Computer Vision

    Work

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    4/66

    Introduction

    14/04/2012SLAM4

    Localization Determine position given a priori map of the environment.

    Mapping

    Generating map of the environment when the pose is accuratelyknown from auxiliary source.

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    5/66

    Where we are?

    14/04/2012SLAM5

    Localization

    Mapping

    Path

    Planning

    SLAM

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    6/66

    SLAM Problem

    14/04/2012SLAM6

    Simultaneous Localization And Mapping (SLAM)

    An autonomous vehicle exploring an unknown environmentwith onboard sensor and incrementally build a map of thisenvironment while simultaneously using this map to

    computing the vehicle location.

    SLAM combines the two problems of localization andmapping.

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    7/66

    Objective

    14/04/2012SLAM7

    Solving the SLAM problem in a static environmentusing vision sensor and Extended Kalman Filter as

    an estimator.

    Given Robots controls.

    Onboard sensor (stereo camera).

    Estimate

    Map representation of the environment (feature basedmap).

    Trajectory of the robot.

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    8/66

    Linear dynamic systems

    14/04/2012SLAM8

    Dynamic model:

    +=

    : State vector of the system at instant t = k T(assumed to be complete, Markov assumption).

    : known control inputs.

    : unknown system noise (can be due to systemperturbations, model imperfectionsetc.).

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    9/66

    Sensor model

    14/04/2012SLAM9

    Measurement model

    =

    measurements vector at instance time

    : unknown system noise (imprecision in theobservation process and/or model)

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    10/66

    Optimal Estimation

    14/04/2012SLAM10

    Available information up to time k:

    = * , , 3 , U = * u, u , 3 ,

    Assuming independent white Gaussian noises for thestate and the measurement, this system can besummarized in these conditional PDFs:

    | , Prediction (| , ) Estimation

    Optimal estimation(minimum mean squared error)

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    11/66

    Bayesian recursive estimation

    14/04/2012SLAM11

    | = , ) Prediction = ) | Update

    No analytical solution in general

    Linear Gaussian case (additive white Gaussian

    noise, AWGN)

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    12/66

    Kalman Filter

    14/04/2012SLAM12

    = + + = + Prediction

    = + =

    Update

    = ( )

    = ( ) = ( )MMSE Estimator

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    13/66

    Extended Kalman Filter

    14/04/2012SLAM13

    Nonlinear dynamic systems

    += ( , ) = ( ) Linear approximation of dynamic model and

    measurement model

    Prediction = ( , ) =

    Update = ( ) = ( ())

    = ( )Best linear Estimator

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    14/66

    EKF-SLAM Algorithm

    14/04/2012SLAM14

    Consider a mobile robot moving through anenvironment taking relative observations of a

    number of unknown landmarks using a sensorlocated on the robot.

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    15/66

    14/04/2012SLAM15

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    16/66

    EKF-SLAM Algorithm cont.

    14/04/2012SLAM16

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    17/66

    Data Association

    14/04/2012SLAM17

    Data association consists in relating sensorobservations with the elements included in the map.

    Interpretation tree.

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    18/66

    Data Association cont.

    14/04/2012SLAM18

    Individual Compatibility Nearest Neighbor Algorithm (ICNN)

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    19/66

    Why data association is so difficult?

    14/04/2012SLAM19

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    20/66

    Why data association is so difficult?

    14/04/2012SLAM20

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    21/66

    Why data association is so difficult?

    14/04/2012SLAM21

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    22/66

    Why Vision ?

    Human use vision

    Exclusive details

    Cheaper

    14/04/2012SLAM22

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    23/66

    Perception

    Ambient environment!

    Acquire knowledge

    Communicate Interact

    14/04/2012SLAM23

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    24/66

    Sensors

    Why To Sense ?

    Proprioceptive / Exteroceptive

    Proprioceptive: Motor speed Wheel Load

    Exteroceptive: Light intensity - Distance

    Active / Passive

    Active: Wheel quadrature encoder

    Passive: Microphones CMOS camera

    14/04/2012SLAM24

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    25/66

    Vision Sensors Tech.

    CCD

    Charged Coupled Device

    CMOSComplementary Metal Oxide Semi

    Conductor

    14/04/2012SLAM25

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    26/66

    Mono Vs. Stereo

    Details

    2D or 3D

    Range of Vision Estimated Vs. Virtual 3D

    14/04/2012SLAM26

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    27/66

    Camera Calibration

    Why be done?

    Intrinsic parameters

    Focal length Principal point

    Extrinsic parameters

    denote the coordinate system transformation from3D world coordinate to camera 3D coordinates

    14/04/2012SLAM27

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    28/66

    Depth Estimation

    Depth needed for interactions

    Depth for stereo using Triangulation

    14/04/2012SLAM28

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    29/66

    Depth Estimation

    14/04/2012SLAM29

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    30/66

    Depth Estimation

    14/04/2012SLAM30

    = 2

    = 2

    = ;

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    31/66

    Vision Algorithms

    14/04/2012SLAM31

    Detection

    Description

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    32/66

    Harris Algorithm

    14/04/2012SLAM32

    Feature Detector

    Affine-Invariant

    Corner Measure Gaussian Scale-Space

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    33/66

    Corner Measure

    14/04/2012SLAM33

    = ,

    ,

    , = , , =1

    2 ( +

    )

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    34/66

    Gaussian Scale-Space

    14/04/2012SLAM34

    , = . 6.7

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    35/66

    Harris Algorithm

    14/04/2012SLAM35

    Combination between Corner Measure

    and Scale-space

    Scale-Invariant detector

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    36/66

    SIFT Algorithm

    14/04/2012SLAM36

    ScaleInvariantFeatureTransform

    Detector and descriptor

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    37/66

    Objects

    14/04/2012SLAM37

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    38/66

    Image

    14/04/2012SLAM38

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    39/66

    Result

    14/04/2012SLAM39

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    40/66

    Algorithm

    14/04/2012SLAM40

    Constructing Scale-Space

    LOG Approximation

    Finding Keypoints Accurate Keypoints

    Assigning Keypoints Orientation

    Generating SIFT Features

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    41/66

    Scale-Space

    14/04/2012SLAM41

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    42/66

    Laplacian of Gaussian

    14/04/2012SLAM42

    , , = , , ,

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    43/66

    Laplacian of Gaussian

    14/04/2012SLAM43

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    44/66

    Finding Keypoints

    14/04/2012SLAM44

  • 8/4/2019 Simultaneous Localization and Mapping (SLAM)

    45/66

    Fi