localization
play

Localization Nischal K N System Overview Mapping Hector Mapping - PowerPoint PPT Presentation

F1/10 th Autonomous Racing Localization Nischal K N System Overview Mapping Hector Mapping Localization Path Planning Control System Overview Mapping Hector Mapping Adaptive Monte Localization Carlo Localization Path Planning


  1. F1/10 th Autonomous Racing Localization Nischal K N

  2. System Overview Mapping Hector Mapping Localization Path Planning Control

  3. System Overview Mapping Hector Mapping Adaptive Monte Localization Carlo Localization Path Planning Control

  4. Where am I ??? ? ? ?

  5. Where am I ??? ? ? Position & ? Orientation

  6. Localization using Odometry Car Trajectory Free Space Initial Car Position Walls

  7. Drawbacks of Localization using Wheel Odometry Wheel spin due to lack of traction

  8. Drawbacks of Localization using Hector odometry Failed scan matching due to lack of features

  9. Issue • A mechanism to compensate the mistakes committed by odometry • A solution robust to compensate for lack of information on initial position

  10. Issue • A mechanism to compensate the mistakes committed by odometry • A solution robust to compensate for lack of information on initial position Solution: Monte Carlo Localization Alternate Solutions: Kalman Filter, Topological Markov Localization

  11. Particle Filter A Example in 1 Dimension Robot Door Belief State

  12. Particle Filter A Example in 1 Dimension Robot Door Direction of motion Belief State

  13. Particle Filter A Example in 1 Dimension At time t = 1 Robot Door Direction of motion

  14. Particle Filter A Example in 1 Dimension At time t = 1 Robot Door Direction of motion Measurement Model

  15. Particle Filter A Example in 1 Dimension At time t = 1 Robot Door Direction of motion Measurement Model Belief State

  16. At time t = 2, robot moves forward a certain distance

  17. At time t = 2, robot moves forward a certain distance Motion Model update

  18. At time t = 2, robot moves forward a certain distance Motion Model update Measurement model

  19. At time t = 2, robot moves forward a certain distance Motion Model update Measurement model Belief State

  20. Continuous State

  21. Continuous State Discrete State Discrete State

  22. Continuous State Discrete State

  23. Particle Filter in 2D

  24. Particle Filter in 2D Odometry pose

  25. Particle Filter in 2D

  26. Scan Correlation

  27. Scan Correlation σ 𝑛 σ 𝑜 (𝐵𝑛𝑜 − 𝐵)(𝐶𝑛𝑜 − 𝐶) 𝑇 = 2 2 σ 𝑛 σ 𝑜 𝐵 𝑛𝑜 − 𝐵 σ 𝑛 σ 𝑜 𝐶 𝑛𝑜 − 𝐶

  28. Scan Correlation σ 𝑛 σ 𝑜 (𝐵𝑛𝑜 − 𝐵)(𝐶𝑛𝑜 − 𝐶) 𝑇 = 2 2 σ 𝑛 σ 𝑜 𝐵 𝑛𝑜 − 𝐵 σ 𝑛 σ 𝑜 𝐶 𝑛𝑜 − 𝐶 Particle Weight Particle 1 S 1

  29. Scan Correlation σ 𝑛 σ 𝑜 (𝐵𝑛𝑜 − 𝐵)(𝐶𝑛𝑜 − 𝐶) 𝑇 = 2 2 σ 𝑛 σ 𝑜 𝐵 𝑛𝑜 − 𝐵 σ 𝑛 σ 𝑜 𝐶 𝑛𝑜 − 𝐶 Particle Weight Particle 1 S 1 Particle 2 S 2

  30. Scan Correlation σ 𝑛 σ 𝑜 (𝐵𝑛𝑜 − 𝐵)(𝐶𝑛𝑜 − 𝐶) 𝑇 = 2 2 σ 𝑛 σ 𝑜 𝐵 𝑛𝑜 − 𝐵 σ 𝑛 σ 𝑜 𝐶 𝑛𝑜 − 𝐶 Particle Weight Particle 1 S 1 Particle 2 S 2 Particle 3 S 3

  31. Scan Correlation σ 𝑛 σ 𝑜 (𝐵𝑛𝑜 − 𝐵)(𝐶𝑛𝑜 − 𝐶) 𝑇 = 2 2 σ 𝑛 σ 𝑜 𝐵 𝑛𝑜 − 𝐵 σ 𝑛 σ 𝑜 𝐶 𝑛𝑜 − 𝐶 Particle Weight Particle 1 S 1 Particle 2 S 2 Particle 3 S 3 Particle 4 S 4

  32. Scan Correlation σ 𝑛 σ 𝑜 (𝐵𝑛𝑜 − 𝐵)(𝐶𝑛𝑜 − 𝐶) 𝑇 = 2 2 σ 𝑛 σ 𝑜 𝐵 𝑛𝑜 − 𝐵 σ 𝑛 σ 𝑜 𝐶 𝑛𝑜 − 𝐶 Particle Weight Particle 1 S 1 Particle 2 S 2 Particle 3 S 3 Particle 4 S 4 Particle 5 S 5

  33. Scan Correlation σ 𝑛 σ 𝑜 (𝐵𝑛𝑜 − 𝐵)(𝐶𝑛𝑜 − 𝐶) 𝑇 = 2 2 σ 𝑛 σ 𝑜 𝐵 𝑛𝑜 − 𝐵 σ 𝑛 σ 𝑜 𝐶 𝑛𝑜 − 𝐶 Particle Weight Particle 1 S 1 Particle 2 S 2 Particle 3 S 3 Particle 4 S 4 Particle 5 S 5 Particle 6 S 6

  34. Scan Correlation σ 𝑛 σ 𝑜 (𝐵𝑛𝑜 − 𝐵)(𝐶𝑛𝑜 − 𝐶) 𝑇 = 2 2 σ 𝑛 σ 𝑜 𝐵 𝑛𝑜 − 𝐵 σ 𝑛 σ 𝑜 𝐶 𝑛𝑜 − 𝐶 Particle Weight Particle 1 S 1 Particle 2 S 2 Particle 3 S 3 Particle 4 S 4 Particle 5 S 5 Particle 6 S 6

  35. Localization using Odometry Particle Filter

  36. Update step • Update the particle cloud with the update in position from the odometry • Repeat Scan matching process for each particle and determine the weights.

  37. Update step • Update the particle cloud with the update in position from the odometry • Repeat Scan matching process for each particle and determine the weights. Odometry update

  38. Update step • Update the particle cloud with the update in position from the odometry • Repeat Scan matching process for each particle and determine the weights. Odometry update Particle Weights 𝑋 𝑢 ← 𝑋 𝑢 − 1 × 𝑇

  39. Particle Filter without Resampling Weights Particles

  40. Resampling Original Particles After N iterations Resampling

  41. Resampling Original Particles After N iterations Resampling

  42. Resampling Original Particles After N iterations Resampling

  43. Particles

  44. Particle filter with Resampling Weights Particles

  45. Kullback – Leibler divergence (KLD Sampling) • Variable Particle size • Sample size is proportional to error between odometry position and sample based approximation • i.e smaller sample size when particles have converged

  46. Particle Filters in ROS • Adaptive Monte Carlo Localization Package • Localization for a robot moving in a 2D space • Localizes against a pre-existing map

  47. Tf tree – Where does AMCL fit in world_frame map odom base_frame

  48. Tf tree – Where does AMCL fit in world_frame map odom Odometry (Hector) base_frame

  49. Tf tree – Where does AMCL fit in world_frame map Odometry (AMCL) Drift odom Odometry (Hector) base_frame

  50. Input and Output Parameters

  51. Input and Output Parameters Input Parameters: 1. Laser Scan

  52. Input and Output Parameters Input Parameters: 1. Laser Scan 2. Dead Reckoning/Odometry

  53. Input and Output Parameters Input Parameters: 1. Laser Scan 2. Dead Reckoning/Odometry 3. Map

  54. Input and Output Parameters Input Parameters: 1. Laser Scan 2. Dead Reckoning/Odometry 3. Map Output Parameters: 1. AMCL pose

  55. Input and Output Parameters Input Parameters: 1. Laser Scan 2. Dead Reckoning/Odometry 3. Map Output Parameters: 1. AMCL pose 2. Particle Cloud

  56. Video of AMCL particles

  57. AMCL Parameters min_particles Default: 100 The minimum number of particles to be used for calculating correlation max_particles Default: 500 The maximum number of particles to be used for calculating correlation

  58. AMCL Parameters update_min_d Default: 0.2m The minimum translation movement required by the vehicle before an pose update is published update_min_a π 6 radians Default: Τ The minimum angular movement required by the vehicle before an pose update is published

  59. AMCL Parameters initial_pose_x Default: 0 initial_pose_y Default: 0 initial_pose_a Default: 0 The initial mean position of the particles to initialize the particle filter

  60. AMCL Parameters initial_cov_xx Default: 0 initial_cov_yy Default: 0 initial_cov_aa Default: 0 The covariance of particles distributed around the mean

  61. What Next? • Path Planning and Trajectory Generation • Cost Maps • Control Algorithms For Navigation

Recommend


More recommend