行動機器人的定位及 slam 導論

41
行行行行行行行行行 SLAM 行行 Source Simultaneous Localization and Mapping tutorial , Probabilistic Robotics , etc. Authors HUGH DURRANT-WHYTE TIM BAILEY , MIT.Press , etc. Speaker 行行行 Advisor 行行行 行行 Date 100.06.13 1

Upload: winola

Post on 06-Jan-2016

105 views

Category:

Documents


15 download

DESCRIPTION

行動機器人的定位及 SLAM 導論. Source : Simultaneous Localization and Mapping tutorial , Probabilistic Robotics , etc. Authors : HUGH DURRANT-WHYTE 、 TIM BAILEY , MIT.Press , etc. Speaker : 余俊瑩 Advisor : 洪國寶 老師 Date : 100.06.13. Outline. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 行動機器人的定位及 SLAM 導論

行動機器人的定位及 SLAM 導論

Source : Simultaneous Localization and Mapping tutorial , Probabilistic Robotics , etc.Authors : HUGH DURRANT-WHYTE 、 TIM BAILEY , MIT.Press , etc.Speaker :余俊瑩Advisor :洪國寶 老師Date : 100.06.13

1

Page 2: 行動機器人的定位及 SLAM 導論

2

OUTLINE一、 Introduction

二、 Problem of Localization

三、 Challenge of Localization

四、 Scene Understanding 1.Motion model(Prediction Model) 2.Observation Model (Sensor model)

五、 SLAM 1.Preliminary 2.Probabilistic SLAM 3.Solutions to the SLAM

六、 Conclusions

Page 3: 行動機器人的定位及 SLAM 導論

3

一、 INTRODUCTION 行動機器人定位的問題是在於已知的環境地圖中估測機

器人的姿態 (Robot’s state) 包含機器人的位置及方向

Localization is the most fundamental problem to providing a mobile robot with autonomous capabilities.

機器人導航 (Path planning) 是使機器人完成自主任務的必要條件 .

Page 4: 行動機器人的定位及 SLAM 導論

4

一、 INTRODUCTION 行動機器人定位是困難的,主要原因 :1. 使用單一感測器是不足的,必須整合多種感測器的資訊 .

2.GPS 的使用是局限的,以地圖為基礎技術 (Map-based) 是必須 .

3. 使用單一時間點的觀測是不足的,循序的估測 (Sequential) 是必須 .

4. 為了處理真實環境中種種不確定因素,使用機率型(Probabilistic)

演算法是必須 .

Page 5: 行動機器人的定位及 SLAM 導論

5

OUTLINE一、 Introduction

二、 Problem of Localization

三、 Challenge of Localization

四、 Scene Understanding 1.Motion model(Prediction Model) 2.Observation Model (Sensor model)

五、 SLAM 1.Preliminary 2.Probabilistic SLAM 3.Solutions to the SLAM

六、 Conclusions

Page 6: 行動機器人的定位及 SLAM 導論

6

二、 PROBLEM OF LOCALIZATION Local Localization or Position Tracking: 機器人的初始狀態

是已知的,估測是有界限的 (Bounded).

Global Localization: 假設機器人所處的環境是已知的,然而缺乏機器人初始狀態,估測是無界限的 (Unbounded).

Kidnapped Robot Problem: 考慮機器人狀態隨時是未知的, A mobile robot must recover from localization failure.

靜態環境與動態環境 被動定位與主動定位 單一機器人定位與多機器人定位

Page 7: 行動機器人的定位及 SLAM 導論

7

OUTLINE一、 Introduction

二、 Problem of Localization

三、 Challenge of Localization

四、 Scene Understanding 1.Motion model(Prediction Model) 2.Observation Model (Sensor model)

五、 SLAM 1.Preliminary 2.Probabilistic SLAM 3.Solutions to the SLAM

六、 Conclusions

Page 8: 行動機器人的定位及 SLAM 導論

8

三、 CHALLENGE OF LOCALIZATION 解決觀測與地圖的不一致性 (Inconsistence)

Page 9: 行動機器人的定位及 SLAM 導論

9

OUTLINE一、 Introduction

二、 Problem of Localization

三、 Challenge of Localization

四、 Scene Understanding 1.Motion model(Prediction Model) 2.Observation Model (Sensor model)

五、 SLAM 1.Preliminary 2.Probabilistic SLAM 3.Solutions to the SLAM

六、 Conclusions

Page 10: 行動機器人的定位及 SLAM 導論

10

四、 SCENE UNDERSTANDING 描述真實世界的『不確定性 (Uncertainty) 』如控制器的

誤差、感測器的誤差及環境的變異性…等 .

環境感知的能力是行動型機器人完成自主任務的重要根基

使用 Motion Model and Observation Model 的機率方式,描述機器人運動與環境感測器的不確定性,進而保留其他可能性的彈性 .

Page 11: 行動機器人的定位及 SLAM 導論

11

四、 SCENE UNDERSTANDING Motion Model 利用機率方式描述機器人行動的不正確性 藉由機器人的運動,預測 (Prediction) 其狀態

1. 里程計 (Odometer)

利用車輪轉動量以計算機器人的位移量

2.GPS

Page 12: 行動機器人的定位及 SLAM 導論

12

四、 SCENE UNDERSTANDING Measurement Model 利用機率方式描述環境感測器的資料不正確性 藉由感測器量測之環境資訊,修正 (Correction) 其預測之狀態

1. 數位相機 (Camera) :bear-only

2. 聲納感測器 (Sonar)

3. 雷射測距儀 (LRF)

Page 13: 行動機器人的定位及 SLAM 導論

13

四、 SCENE UNDERSTANDING Map loop-closure: A robot returns to a previously mapped

region after a long excursion. Loop detection and Global Tuning

Page 14: 行動機器人的定位及 SLAM 導論

14

Page 15: 行動機器人的定位及 SLAM 導論

15

Page 16: 行動機器人的定位及 SLAM 導論

16

小結 機器人自主移動研發主要核心技術包含兩大層面 : Scene Understanding and Localization

當環境資訊是未知的或環境中的參考點不可用時,最常使用 SLAM(Simultaneous Localization And Mapping)

- 透過 Sensors 進行環境感知,藉由機器人接收 sequential 外部資訊使用Probabilistic 達到同步自行定位及環境地圖建置 .

Page 17: 行動機器人的定位及 SLAM 導論

17

OUTLINE一、 Introduction

二、 Problem of Localization

三、 Challenge of Localization

四、 Scene Understanding 1.Motion model(Prediction Model) 2.Observation Model (Sensor model)

五、 SLAM 1.Preliminary 2.Probabilistic SLAM 3.Solutions to the SLAM

六、 Conclusions

Page 18: 行動機器人的定位及 SLAM 導論

18

五、 SLAM 機器人定位與建地圖是一體兩面的問題 : 如果機器人沒

有事先獲的環境資訊的地圖,在未知環境中建地圖要仰賴可靠機器人的位置估測;然而欲得到機器人在環境中的位置又必須要有正確的環境地圖

SLAM seems like a chicken and egg problem — but we can make progress if we assume the robot is the only thing that moves

SLAM(Simultaneous Localization And Mapping) SLAM also called concurrent mapping and

localisation(CML) Main assumption: the world is static EKF-SLAM (EKF filter)or Fast SLAM

Page 19: 行動機器人的定位及 SLAM 導論

19

五、 SLAM-PRELIMINARIES In SLAM, both the trajectory of the platform and the

location of all landmarks are estimated online At a time instant k , the following quantities are defined:

Page 20: 行動機器人的定位及 SLAM 導論

20

五、 SLAM- PROBABILISTIC SLAM

The following a control Uk and observation Zk , is computed using Bayes theorem. This computation requires that a state transition model and an observationmodel are defined describing the effect of the control input and observation respectively.

Page 21: 行動機器人的定位及 SLAM 導論

21

五、 SLAM- PROBABILISTIC SLAMThe observation model describes the probability of making an observation zk when the vehicle location and landmark locations are known

The observations are conditionally independent given the map and the current vehicle state.

The motion model for the vehicle can be described in terms of a probability distribution on state transitions in the form

The state transition is assumed to be a Markov process in which the next state Xk depends only on the immediately preceding state Xk-1 and the applied control Uk and is independent of both the observations and the map.

Page 22: 行動機器人的定位及 SLAM 導論

22

五、 SLAM- PROBABILISTIC SLAMThe SLAM algorithm is now implemented in a standard two-step recursive (sequential) prediction (time-update) correction (measurement-update)

observation model

Motion model

Page 23: 行動機器人的定位及 SLAM 導論

23

五、 SLAM- PROBABILISTIC SLAM

This assumes that the location of the vehicle Xk is known (or at least deterministic) at all times, subject to knowledge of initial location. A map m is then constructed by fusing observations from different locations.

This assumes that the landmark locations are known with certainty, and the objective is to compute an estimate of vehicle location with respect to these landmarks.

Page 24: 行動機器人的定位及 SLAM 導論

24

五、 SLAM- SOLUTIONS TO THE SLAM

利 用 MonoSLAM 並 結 合 EKF(Enhance Kalman Filter) 或 PF(Particle Filter) ,整合 sensors 進行機器人移動的預測及修正程序 .

Page 25: 行動機器人的定位及 SLAM 導論

25

OUTLINE一、 Introduction

二、 Problem of Localization

三、 Challenge of Localization

四、 Scene Understanding 1.Motion model(Prediction Model) 2.Observation Model (Sensor model)

五、 SLAM 1.Preliminary 2.Probabilistic SLAM 3.Solutions to the SLAM

六、 Conclusions

Page 26: 行動機器人的定位及 SLAM 導論

26

六、 CONCLUSION論文主要架構 :

Camera calibrati

on

Feature match??

SLAM

Path planning

Camera calibration

內在參數及外在參數求得 :

內在參數 : 描述攝影機座標與影像座標的轉換

外在參數 : 描述世界座標與攝影機座標的轉換

Feature match??

1.Apperant-based2.Upward-looking camera3.Infrared LEDs4.LRF5.Kinect

SLAM

Motion model’s contorl

Odometer 或者控制樂高的伺服馬達

Path planning

1.Shortest path2.A*3.Fuccy

Page 27: 行動機器人的定位及 SLAM 導論

27

機器人定位與建地圖是一體兩面的問題 : 如果機器人沒有事先獲的環境資訊的地圖,在未知環境中建地圖要仰賴可靠機器人的位置估測;然而欲得到機器人在環境中的位置又必須要有正確的環境地圖

SLAM seems like a chicken and egg problem — but we can make progress if we assume the robot is the only thing that moves

SLAM(Simultaneous Localization And Mapping) SLAM also called concurrent mapping and

localisation(CML) Main assumption: the world is static EKF-SLAM (EKF filter)or Fast SLAM

Page 28: 行動機器人的定位及 SLAM 導論

28

Kalman 濾波器有兩類應用:一類是濾波 (filtering) ,另一類是預測 (prediction) 。特別後者被廣泛用在需要預測 + 修正 (prediction + correction) 的場合 .

Page 29: 行動機器人的定位及 SLAM 導論

29

估計房間目前溫度 Xt : 根據經驗判斷房間的溫定為恆定,所以 Xt = Xt-1 ,假定 Xt = Xt-1 = 23 度 White Gaussian noise = 5 度 (Xt-1 covariance = 3 , prediction covariance = 4) (Step 1 and Step2, state and covariance prediction) 從溫度計上得到 Xt = 25 covariance = 4

Kg(Kalman gain) = 0.78 (Step 4,Kalman gain correct) Kg^2 = 5^2/(5^2+4^2) 估計房間目前溫度 Xt = 23 + 0.78*(25-23) = 24.56 度 (Step 3,state update) Covariance of Xt = ((1-kg)*5^2)^0.5 = 2.35 (Step 5, covariance update)

Kalman 濾波器是一個「 optimal recursive data processing algorithm (最佳化遞迴歸數據處理演算法)」

Page 30: 行動機器人的定位及 SLAM 導論

30

卡門濾波器( Kalman Filter 或 KF )以高斯分佈描述資料的分佈, 是參數式的演算法,而延伸卡門濾波器( Extended Kalman Filter 或EKF )是非線性的( Nonlinear )卡門濾波器,允許非線性的狀態轉換 .

首先透過 motion model 估測 robot 的 new location ,並透過Observation

model 估測觀測到的 landmark ,然後計算實際觀測與估測間的誤差, 結合系統 covariance 計算 Kg ,再對前面估測的 location of robot 進行校正 (更新 ) ,最後將 new landmark 加入 feature map

Page 31: 行動機器人的定位及 SLAM 導論

31

Page 32: 行動機器人的定位及 SLAM 導論

32

Page 33: 行動機器人的定位及 SLAM 導論

33

Page 34: 行動機器人的定位及 SLAM 導論

34

Page 35: 行動機器人的定位及 SLAM 導論

35

Page 36: 行動機器人的定位及 SLAM 導論

36

Page 37: 行動機器人的定位及 SLAM 導論

37

Observation model Time update

Observation update

Particle filter Kalman filter

Page 38: 行動機器人的定位及 SLAM 導論

38

因為是用不正確性的 Landmark 更新 pose of Robot與用 pose of Robot 更新 Landmark 所以機器人姿態與地標物之間的相關性無法獨立傳播

Page 39: 行動機器人的定位及 SLAM 導論

39

Page 40: 行動機器人的定位及 SLAM 導論

40

Q&A

Thanks for your attention

Page 41: 行動機器人的定位及 SLAM 導論

41

OUTLINE一、 Introduction

二、 Problem of Localization

三、 Challenge of Localization

四、 Scene Understanding 1.Motion model(Prediction Model) 2.Observation Model (Sensor model)

五、 SLAM 1.Preliminary 2.Probabilistic SLAM 3.Solutions to the SLAM

六、 Conclusions