how to get a map basic mapping task
play

How to Get a Map? Basic Mapping Task By hand? Slow, expensive and - PDF document

5/5/20 What is Mapping? Mapping and SLAM: A (High-Level) Survey Building a mo model of the robots environme ment Based on sensor data obtained in that environment Sebastian Thrun, 2002 Many different environment representations


  1. 5/5/20 What is Mapping? Mapping and SLAM: A (High-Level) Survey § Building a mo model of the robot’s environme ment § Based on sensor data obtained in that environment Sebastian Thrun, 2002 § Many different environment representations Original presentation: David Black-Schaffer, Kristof Richmond Used with many, many thanks to authors exist § Mapping means constructing one § Based on sensor data § Doesn’t have to be geometric 2 1 2 How to Get a Map? Basic Mapping Task § By hand? § Slow, expensive and imprecise § Automatically: Mapping § The robot learns its environment 123.5 § Can cope with dynamically changing environment § Map is built from sensors that will be used to navigate https://www.youtube.com/watch?v=eAbF3QBGwzA 3 4 3 4 Historical Overview The Problems § Metric Mapping § Measurement noise § Geometric representations § Sensor and position noise are not independent § Occupancy Grids § Map size § Larger maps much more computationally intensive § High resolution maps can be very large § Correspondence § Topological Mapping § Do multiple measurements at different times § Milestones with connections correspond to the same object? § Require navigation information § Loop closure is a subset of this § Hard to scale § Dynamic environments § Many algorithms assume a static environment 5 6 5 6 1

  2. 5/5/20 Basic Mapping Requirements Challenges: Maintenance § A way to incorporate sensed information into § Map Maintenance: keeping track of changes in world model the environment § Sufficient information for navigation ? example: § Estimating position, path planning, obstacle disappearing avoidance, … cupboard § Correctness § Often uses a measure of belief of each feature § Predictability § Most environments are a mixture of predictable and § If localizing: did the world change, or are you unpredictable features lost? 7 12 7 12 Challenges: Cyclic Environments Dynamic Environments § Small local error accumulates § Dynamic changes require continuous (re-)mapping § This is usually irrelevant for navigation § High-level features help if § When closing loops, global error do does matter you can get them § Humans are more dynamic navigate around map features than walls cupboard… § Can also learn that certain things are dynamic over time ? Courtesy of Sebastian Thrun 13 14 13 14 Current State of Mapping Why Probabilistic Mapping? § Algorithms are: § Noise in commands and sensors § Robust for static, structured, and small environments § Commands are not executed exactly basically (e.g., slippage leads to odometry errors) everything § Probabilistic we’ve ever § Sensors noise due to real world § Only ok with correspondence problem covered (e.g., angle of incidence and scattering) § Incremental or or multi-pass about error § Noise is not statistically independent Incremental algorithms only need one “pass” through data, § and can possibly be run in real time § Control errors accumulate with time/distance § Continuing areas § Can’t “average out” noise § Dynamic environments § Semantic labeling of environments § Planning exploration paths of unknown environments 15 16 15 16 2

  3. 5/5/20 Command Noise SLAM § SLAM § Odometry Errors: heading and distance measurements accumulate errors with time § S imultaneous L ocalization A nd M apping § Figure out where we are and what our world looks like at the same time § Localization § Where are we? § Position error accumulates with movement § Mapping § What does the environment look like? § Sensor error (not independent of position error) 17 19 17 19 Mapping ≠ SLAM? What are we trying to do? § Can you do mapping without localization? § Sort of. § Gathering environment data doesn’t depend on knowing where you are, but… § If you don’t track robot’s location, the re relative po position of different sensor readings is harder to calculate § Some problems (e.g., loop closure) may be impossible www.kalmanfilter.net 20 22 20 22 What are we trying to do? Bayes Rule § p ( x | d ) = h p ( d | x ) p ( x )* Whatever we’re § p ( x | d ) is the probability of (the map) x being true estimating given the (sensor) measurement d § p(d | x) is the probabeingbility of the (sensor) measurement being d given (an object at) x § p(x) is the prior probability (of the map) * h = normalization constant www.kalmanfilter.net 23 24 23 24 3

  4. 5/5/20 s: robot configuration (pose) Bayes Rule over Time Bayes Filter u: command z: sensor reading m: map ☐ t / ☐ t : value at/up to time t § Notation p ( s t , m | z t , u t ) = η ⋅ p ( z t | s t , m ) ∫ p ( s t | u t , s t − 1 ) p ( s t − 1 , m | z t − 1 , u t − 1 ) ds t − 1 § s = pose of robot ( x, y, Q ) § u = command given to robot § Probability of a location (pose) and a map, § z = sensor measurement given sensor readings and command. § m = map § p ( z t | s t , m ) is the se senso sor m model § All are functions of time § p ( s t | u t , s t-1 ) is the mo motion mo model § z t = sensor measurements at time t § z t = all sensor measurements up to time t § p ( s t-1 , m | z t-1 , u t-1 ) is probability we were ac actual ally § (same for s , u , and m ) where we thought we were last timestep Sensor and motion models are usually static 25 26 25 26 Mapping Methods Monte Carlo Localization § Probabilistic Kalman EM Occupancy Dogma 1. Start with a uniform distribution of possible poses Grids ( x, y, Q ) Landmark Point Occupancy Occupancy 2. Compute the probability of each pose given current Representation Locations Obstacles Grids Grids sensor data and a map YES NO YES NO 3. Normalize probabilities Incremental § Throw out low probability points Requires Poses NO NO YES YES § Blur current points (we never know exactly where we are) Handles NO YES YES YES Correspondence § Performance: excellent! Dynamic § Need non-symmetric geometries limited NO limited YES Environments 27 28 27 28 Monte Carlo Localization Monte Carlo SLAM Thrun, Sebastian. “ Animation of Monte Carlo Localization using laser range finders ” Thrun, Sebastian. “ Animation: Online mapping with Monte Carlo Localization.” 29 30 29 30 4

  5. 5/5/20 Expectation Maximization (EM) EM Performance § Pros: § Find most likely map (and poses) § Resolves correspondences 1. E xpectation step: 1. § Cons: § Calculate probabilities of robot poses for § Non-incremental current guess of map § No posterior probabilities for map § Slow 2. M aximization step: 2. § Greedy § Calculate single most likely map for § Improvements: Hybrid approaches distribution of robot poses § Incremental computation § Iterate § Maintain a few possible robot poses 31 32 31 32 Kalman filters Kalman filter (SLAM) § Prediction algorithm that handles uncertainty § Core idea: pr predi dict where we should be, take readings, then update our es estimate of where § Process (actuation) uncertainty we are § Measurement (sensor) uncertainty § We need to take prior states into consideration § ALL of them?! § But, we can condition on the previous state § Which is conditioned on the state before that, … § State Update Equation: 33 34 www.kalmanfilter.net 33 34 KF core idea (2) Kalman Filter Performance Position prediction: § Pros: 1. Position at time step k+1 is predicted based on old location ( k ) § Full (Gaussian) posterior probabilities § and its movement § Incremental Observe: sense the new location at k+1 § Good convergence 2. Measurement prediction: § Cons: 3. Use the predicted robot position and the map to generate § § Limited model multiple pr predi dicted d obs bservations § Correspondence problem Given where we might be, what do we expect to see? § § Limited map size Matching: Map from all predicted observations to all 4. observations § Many improvements exist! Estimate location: keep best n and continue 5. 35 38 35 38 5

  6. 5/5/20 Particle Filter SLAM Occupancy Grids § Impose grid on space to be mapped § Find inverse sensor model p(m x,y |z t ,s t ) § Update odds that grid cells are occupied https://www.youtube.com/watch?v=khSrWtB0Xik 39 41 39 41 Occupancy Grid (simple) Occupancy Grid (real) https://www.youtube.com/watch?v=zOj4s9TEmg8 https://www.youtube.com/watch?v=iD47JWVqTCk 42 43 42 43 Occupancy Grids Object Maps § Pros § Extensions: Object Maps § Simple § Reduced memory § Accurate requirements § Incremental § Better for dynamic § Cons environments § Require known poses § Limited by available § Independence object models assumptions 46 47 46 47 6

  7. 5/5/20 Using a Laser and Dynamic Environments A Real Example an RGB-D Sensor § Kalman filters § Decaying occupancy grids § Dogma § D ynamic o ccupancy g rid m apping a lgorithm https://www.youtube.com/watch?v=o1GSQanY-Do 48 49 48 49 Mapping Approaches § Turning percepts (sensor readings) into a § Many algorithms exist model of an environment (a map) § All modern approaches are probabilistic § Maps come in many forms § Must have sufficient information for navigation § Many are particle filter based tasks § Usually SLAM is involved § Estimating position, path planning, obstacle avoidance, … § Doesn’t strictly have to be § Many challenges § Different approaches address different challenges § Difficult environments: cycles, dynamism, … § Sensor noise and precision § Actuator noise § Labeling environment 50 51 50 51 7

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend