Autonomous Mobile Robot Design

Similar documents
Particle Filter in Brief. Robot Mapping. FastSLAM Feature-based SLAM with Particle Filters. Particle Representation. Particle Filter Algorithm

Simultaneous Localization and Mapping

Introduction to Mobile Robotics SLAM Landmark-based FastSLAM

EKF Localization and EKF SLAM incorporating prior information

Data Association for SLAM

Robot Mapping. A Short Introduction to the Bayes Filter and Related Models. Gian Diego Tipaldi, Wolfram Burgard

Overview. EECS 124, UC Berkeley, Spring 2008 Lecture 23: Localization and Mapping. Statistical Models

Augmented Reality, Advanced SLAM, Applications

High-precision, consistent EKF-based visual-inertial odometry

Mobile Robotics. Mathematics, Models, and Methods. HI Cambridge. Alonzo Kelly. Carnegie Mellon University UNIVERSITY PRESS

Particle Filters. CSE-571 Probabilistic Robotics. Dependencies. Particle Filter Algorithm. Fast-SLAM Mapping

UNIVERSITÀ DEGLI STUDI DI GENOVA MASTER S THESIS

Probabilistic Robotics

COS Lecture 13 Autonomous Robot Navigation

Robotics. Lecture 7: Simultaneous Localisation and Mapping (SLAM)

Robotics. Chapter 25. Chapter 25 1

Robotics. Lecture 8: Simultaneous Localisation and Mapping (SLAM)

Robot Mapping. Graph-Based SLAM with Landmarks. Cyrill Stachniss

What is the SLAM problem?

L15. POSE-GRAPH SLAM. NA568 Mobile Robotics: Methods & Algorithms

Implementation of Odometry with EKF for Localization of Hector SLAM Method

ECE276A: Sensing & Estimation in Robotics Lecture 11: Simultaneous Localization and Mapping using a Particle Filter

Monocular SLAM for a Small-Size Humanoid Robot

SLAM with SIFT (aka Mobile Robot Localization and Mapping with Uncertainty using Scale-Invariant Visual Landmarks ) Se, Lowe, and Little

MULTI-MODAL MAPPING. Robotics Day, 31 Mar Frank Mascarich, Shehryar Khattak, Tung Dang

Practical Course WS12/13 Introduction to Monte Carlo Localization

Simuntaneous Localisation and Mapping with a Single Camera. Abhishek Aneja and Zhichao Chen

Probabilistic Robotics. FastSLAM

Nonlinear State Estimation for Robotics and Computer Vision Applications: An Overview

L10. PARTICLE FILTERING CONTINUED. NA568 Mobile Robotics: Methods & Algorithms

Turning an Automated System into an Autonomous system using Model-Based Design Autonomous Tech Conference 2018

Humanoid Robotics. Least Squares. Maren Bennewitz

CSE 527: Introduction to Computer Vision

BBR Progress Report 006: Autonomous 2-D Mapping of a Building Floor

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

Introduction to Mobile Robotics. SLAM: Simultaneous Localization and Mapping

Robot Mapping. Grid Maps. Gian Diego Tipaldi, Wolfram Burgard

Probabilistic Robotics

Robot Mapping. Graph-Based SLAM with Landmarks. Cyrill Stachniss

Optimization of the Simultaneous Localization and Map-Building Algorithm for Real-Time Implementation

ICRA 2016 Tutorial on SLAM. Graph-Based SLAM and Sparsity. Cyrill Stachniss

L17. OCCUPANCY MAPS. NA568 Mobile Robotics: Methods & Algorithms

Localization and Map Building

ME 456: Probabilistic Robotics

Dealing with Scale. Stephan Weiss Computer Vision Group NASA-JPL / CalTech

Navigation methods and systems

Stereo Vision as a Sensor for EKF SLAM

Autonomous Navigation in Complex Indoor and Outdoor Environments with Micro Aerial Vehicles

Survey: Simultaneous Localisation and Mapping (SLAM) Ronja Güldenring Master Informatics Project Intellgient Robotics University of Hamburg

Final Exam Practice Fall Semester, 2012

Removing Scale Biases and Ambiguity from 6DoF Monocular SLAM Using Inertial

Probabilistic Robotics

Zürich. Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza. ETH Master Course: L Autonomous Mobile Robots Summary

Monocular SLAM with Inverse Scaling Parametrization

Tracking. Establish where an object is, other aspects of state, using time sequence Biggest problem -- Data Association

Visual Bearing-Only Simultaneous Localization and Mapping with Improved Feature Matching

Robot Mapping. Least Squares Approach to SLAM. Cyrill Stachniss

Graphbased. Kalman filter. Particle filter. Three Main SLAM Paradigms. Robot Mapping. Least Squares Approach to SLAM. Least Squares in General

Computer Vision Group Prof. Daniel Cremers. 11. Sampling Methods

autorob.github.io Inverse Kinematics UM EECS 398/598 - autorob.github.io

Offline Simultaneous Localization and Mapping (SLAM) using Miniature Robots

UAV Autonomous Navigation in a GPS-limited Urban Environment

Monocular Visual-Inertial SLAM. Shaojie Shen Assistant Professor, HKUST Director, HKUST-DJI Joint Innovation Laboratory

(W: 12:05-1:50, 50-N202)

Final Exam Study Guide

Lecture 13 Visual Inertial Fusion

State-space models for 3D visual tracking

Attack Resilient State Estimation for Vehicular Systems

Simultaneous Localization

Robot Mapping. SLAM Front-Ends. Cyrill Stachniss. Partial image courtesy: Edwin Olson 1

L12. EKF-SLAM: PART II. NA568 Mobile Robotics: Methods & Algorithms

Robot Mapping. TORO Gradient Descent for SLAM. Cyrill Stachniss

Robot Localization based on Geo-referenced Images and G raphic Methods

ME 597/747 Autonomous Mobile Robots. Mid Term Exam. Duration: 2 hour Total Marks: 100

Gaussian Processes for Robotics. McGill COMP 765 Oct 24 th, 2017

Principles of Robot Motion

2005 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media,

Visual Odometry. Features, Tracking, Essential Matrix, and RANSAC. Stephan Weiss Computer Vision Group NASA-JPL / CalTech

Robotic Perception and Action: Vehicle SLAM Assignment

An idea which can be used once is a trick. If it can be used more than once it becomes a method

IROS 05 Tutorial. MCL: Global Localization (Sonar) Monte-Carlo Localization. Particle Filters. Rao-Blackwellized Particle Filters and Loop Closing

Simultaneous Localization and Mapping (SLAM)

Tightly-Integrated Visual and Inertial Navigation for Pinpoint Landing on Rugged Terrains

MAPPING ALGORITHM FOR AUTONOMOUS NAVIGATION OF LAWN MOWER USING SICK LASER

Localization, Where am I?

Colorado School of Mines. Computer Vision. Professor William Hoff Dept of Electrical Engineering &Computer Science.

SLAM: Robotic Simultaneous Location and Mapping

Combined Trajectory Planning and Gaze Direction Control for Robotic Exploration

Localization and Map Building

Introduction to robot algorithms CSE 410/510

RGB-D SLAM using vanishing point and door plate information in corridor environment

LAIR. UNDERWATER ROBOTICS Field Explorations in Marine Biology, Oceanography, and Archeology

Kalman Filter Based. Localization

DYNAMIC ROBOT LOCALIZATION AND MAPPING USING UNCERTAINTY SETS. M. Di Marco A. Garulli A. Giannitrapani A. Vicino

Seminar Dept. Automação e Sistemas - UFSC Scan-to-Map Matching Using the Hausdorff Distance for Robust Mobile Robot Localization

Artificial Intelligence for Robotics: A Brief Summary

Stable Vision-Aided Navigation for Large-Area Augmented Reality

Mobile Robotics. Mathematics, Models, and Methods

D-SLAM: Decoupled Localization and Mapping for Autonomous Robots

CVPR 2014 Visual SLAM Tutorial Efficient Inference

Transcription:

Autonomous Mobile Robot Design Topic: EKF-based SLAM Dr. Kostas Alexis (CSE)

These slides have partially relied on the course of C. Stachniss, Robot Mapping - WS 2013/14 Autonomous Robot Challenges Where am I? What is my environment?

Simultaneous Localization and Mapping Building a map and locate the robot in the map at the same time Chicken or Egg problem Map Localize

Definition of the SLAM Problem Given: The robot s controls Observations Wanted: Map of the environment Path of the robot

Recall: The Bayes filter concept For each time step, do: Apply motion model: Apply sensor model: η is a normalization factor to ensure that the probability is maximum 1.

EKF for Online SLAM The EKF provides a solution to the online SLAM problem, i.e.: Find the latest pose of the robot

Recall: The Extended Kalman Filter

Recall: The Extended Kalman Filter Prediction Step Correction Step

Recall: The Extended Kalman Filter EKF works for nonlinear models Prediction Step Correction Step

Recall: The Extended Kalman Filter Process noise Prediction Step Correction Step

Recall: The Extended Kalman Filter Prediction Step Kalman Gain: how certain the robot for its predicted belief and its measurements? Correction Step

Recall: The Extended Kalman Filter Prediction Step Sensor noise Correction Step

Recall: The Extended Kalman Filter Prediction Step Correction Step

Recall: The Extended Kalman Filter Prediction Step Correction Step

EKF SLAM concept Application of the EKF to SLAM Estimate robot s pose and location of features in the environment Assumption: feature correspondence is known State space parametrization:

Assume a simple 3DoF robot The pose of a simplified robot in the 2D configuration space is defined by its x-y coordinates and the heading angle θ. The heading angle of the robot affects its dynamic trajectory in the x-y space. Let us defined the rotation matrix:

EKF SLAM: State representation Map with n landmarks: (3+2n)-dimensional Gaussian Belief is represented through the covariance matrix

EKF SLAM: State representation Compact representation of the covariance matrix

EKF SLAM: State representation More compactly (and simplifying notation as ):

EKF SLAM: Filter Cycle 1. State Prediction 2. Measurement Prediction 3. Measurement 4. Data Association 5. Update

EKF SLAM: State Prediction

EKF SLAM: State Prediction

EKF SLAM: Measurement Prediction

EKF SLAM: Obtained Measurement

EKF SLAM: Data Association data association and distance calculation

EKF SLAM: Update Step

EKF SLAM: Update Step

EKF-SLAM: Comprehensive Example Setup: Robot moves in the 2D plane Velocity-based motion model Robot observes point landmarks (x,y) Range-bearing sensor Known data association Known-fixed number of landmarks

Initialization Robot starts in its own reference coordinate frame (all landmarks unknown) 2N+3 dimensions

Initialization Robot starts in its own reference coordinate frame (all landmarks unknown) 2N+3 dimensions

Initialization Robot starts in its own reference coordinate frame (all landmarks unknown) 2N+3 dimensions

EKF Algorithm

Prediction Step (motion) Goal: Update state space based on the robot s motion (Velocity-based) Robot motion on the plane

Prediction Step (motion) Goal: Update state space based on the robot s motion (Velocity-based) Robot motion on the plane How can this be mapped to the 2N+3 dimensional space?

Update the State Space From the motion on the plane To the 2N+3 dimensional space

EKF Algorithm Done!

Update Covariance The function g only affects the robot s motion and not the landmarks Jacobian of the motion (3x3) Identity (2Nx2N)

Update Covariance The function g only affects the robot s motion and not the landmarks Jacobian of the motion (3x3) Identity (2Nx2N) The landmark positions don t change during the prediction step

Jacobian of the Motion Calculate the Jacobian: no dependency on x and y (velocity-based model)

Jacobian of the Motion Calculate the Jacobian: no dependency on x and y (velocity-based model)

Then this moves us to the update Done!

Then this moves us to the update Done! not updated during the prediction step

EKF Algorithm Done! Done!

EKF SLAM - Prediction Maps from the low-dim space to the high-dim space

EKF Algorithm Done! Apply & Done!

Indexing of measurements EKF SLAM - Correction Known data association : i-th measurement observes the landmark with index j Initialize landmark if unobserved Compute the expected observation Compute the Jacobian of h Then, proceed with computing the Kalman Gain

Range-Bearing Observation Range-bearing observation If landmark has not been observed observed location of landmark j estimated robot s location relative measurement

Expected Observation Compute expected observation according to the current estimate Where the robot expects to see the landmark

Jacobian of the Observation Based on: Compute the Jacobian: low-dim space

Jacobian of the Observation Based on: Compute the Jacobian: low-dim space

Jacobian of the Observation Use the computed Jacobian: Map it to the high dimensional space

Next steps Done! Done!

Next steps Done! Done! Apply & Done Apply & Done Apply & Done

EKF SLAM Correction [1/2]

EKF SLAM Correction [2/2]

Implementation Notes Measurement update in a single step requires only one full belief update Always normalize the angular components

almost

Loop Closing Recognizing an already mapped area Data association with High ambiguity Possible environmental symmetries Uncertainties collapse after a loop closure (even if the loop closure was not correct )

Before the Loop Closure

After the Loop Closure

Code Examples and Tasks Conduct Camera Calibration MATLAB: https://github.com/unrarl/autonomous_mobile_robot_design_course/tree/master/matlab /localization-mapping/ekf-mono-slam

How does this apply to my project? To estimate the pose of the robot and the map within the environment that it navigates

Find out more http://webdiis.unizar.es/~neira/pdfs/freesubnet%20%20ekf%20slam.pdf http://ranger.uta.edu/~gianluca/astra/gustavopuerto/introductiontoestimat ionfornavigation_newman06.pdf http://www.iri.upc.edu/people/jsola/joansola/objectes/curs_slam/slam2d /SLAM%20course.pdf Course of C. Stachniss, Robot Mapping - WS 2013/14

Thank you! Please ask your question!