Acknowledgments |
|
xiii | |
Preface |
|
xv | |
|
|
1 | (12) |
|
|
1 | (10) |
|
1.2 An Overview of the Book |
|
|
11 | (2) |
|
|
13 | (44) |
|
|
13 | (4) |
|
2.1.1 Key issues for locomotion |
|
|
16 | (1) |
|
|
17 | (18) |
|
2.2.1 Leg configurations and stability |
|
|
18 | (3) |
|
2.2.2 Consideration of dynamics |
|
|
21 | (4) |
|
2.2.3 Examples of legged robot locomotion |
|
|
25 | (10) |
|
2.3 Wheeled Mobile Robots |
|
|
35 | (15) |
|
2.3.1 Wheeled locomotion: The design space |
|
|
35 | (8) |
|
2.3.2 Wheeled locomotion: Case studies |
|
|
43 | (7) |
|
|
50 | (6) |
|
|
50 | (2) |
|
2.4.2 Aircraft configurations |
|
|
52 | (1) |
|
2.4.3 State of the art in autonomous VTOL |
|
|
52 | (4) |
|
|
56 | (1) |
|
3 Mobile Robot Kinematics |
|
|
57 | (44) |
|
|
57 | (1) |
|
3.2 Kinematic Models and Constraints |
|
|
58 | (19) |
|
3.2.1 Representing robot position |
|
|
58 | (3) |
|
3.2.2 Forward kinematic models |
|
|
61 | (2) |
|
3.2.3 Wheel kinematic constraints |
|
|
63 | (8) |
|
3.2.4 Robot kinematic constraints |
|
|
71 | (2) |
|
3.2.5 Examples: Robot kinematic models and constraints |
|
|
73 | (4) |
|
3.3 Mobile Robot Maneuverability |
|
|
77 | (7) |
|
|
77 | (4) |
|
3.3.2 Degree of steerability |
|
|
81 | (1) |
|
3.3.3 Robot maneuverability |
|
|
82 | (2) |
|
3.4 Mobile Robot Workspace |
|
|
84 | (6) |
|
|
84 | (1) |
|
|
85 | (2) |
|
3.4.3 Path and trajectory considerations |
|
|
87 | (3) |
|
3.5 Beyond Basic Kinematics |
|
|
90 | (1) |
|
3.6 Motion Control (Kinematic Control) |
|
|
91 | (8) |
|
3.6.1 Open loop control (trajectory-following) |
|
|
91 | (1) |
|
|
92 | (7) |
|
|
99 | (2) |
|
|
101 | (164) |
|
4.1 Sensors for Mobile Robots |
|
|
101 | (41) |
|
4.1.1 Sensor classification |
|
|
101 | (2) |
|
4.1.2 Characterizing sensor performance |
|
|
103 | (6) |
|
4.1.3 Representing uncertainty |
|
|
109 | (6) |
|
4.1.4 Wheel/motor sensors |
|
|
115 | (1) |
|
|
116 | (3) |
|
|
119 | (2) |
|
4.1.7 Inertial measurement unit (IMU) |
|
|
121 | (1) |
|
|
122 | (3) |
|
|
125 | (15) |
|
4.1.10 Motion/speed sensors |
|
|
140 | (2) |
|
|
142 | (1) |
|
4.2 Fundamentals of Computer Vision |
|
|
142 | (53) |
|
|
142 | (1) |
|
|
142 | (6) |
|
|
148 | (11) |
|
4.2.4 Omnidirectional cameras |
|
|
159 | (10) |
|
4.2.5 Structure from stereo |
|
|
169 | (11) |
|
4.2.6 Structure from motion |
|
|
180 | (9) |
|
4.2.7 Motion and optical flow |
|
|
189 | (3) |
|
|
192 | (3) |
|
4.3 Fundamentals of Image Processing |
|
|
195 | (13) |
|
|
196 | (3) |
|
|
199 | (8) |
|
4.3.3 Computing image similarity |
|
|
207 | (1) |
|
|
208 | (4) |
|
4.5 Image Feature Extraction: Interest Point Detectors |
|
|
212 | (22) |
|
|
212 | (1) |
|
4.5.2 Properties of the ideal feature detector |
|
|
213 | (2) |
|
|
215 | (5) |
|
4.5.4 Invariance to photometric and geometric changes |
|
|
220 | (7) |
|
|
227 | (7) |
|
|
234 | (8) |
|
|
234 | (1) |
|
4.6.2 From bag of features to visual words |
|
|
235 | (1) |
|
4.6.3 Efficient location recognition by using an inverted file |
|
|
236 | (1) |
|
4.6.4 Geometric verification for robust place recognition |
|
|
237 | (1) |
|
|
237 | (1) |
|
4.6.6 Other image representations for place recognition |
|
|
238 | (4) |
|
4.7 Feature Extraction Based on Range Data (Laser, Ultrasonic) |
|
|
242 | (20) |
|
|
243 | (5) |
|
4.7.2 Six line-extraction algorithms |
|
|
248 | (11) |
|
4.7.3 Range histogram features |
|
|
259 | (1) |
|
4.7.4 Extracting other geometric features |
|
|
260 | (2) |
|
|
262 | (3) |
|
5 Mobile Robot Localization |
|
|
265 | (104) |
|
|
265 | (1) |
|
5.2 The Challenge of Localization: Noise and Aliasing |
|
|
266 | (9) |
|
|
267 | (1) |
|
|
268 | (1) |
|
|
269 | (1) |
|
5.2.4 An error model for odometric position estimation |
|
|
270 | (5) |
|
5.3 To Localize or Not to Localize: Localization-Based Navigation Versus Programmed Solutions |
|
|
275 | (3) |
|
5.4 Belief Representation |
|
|
278 | (6) |
|
5.4.1 Single-hypothesis belief |
|
|
278 | (2) |
|
5.4.2 Multiple-hypothesis belief |
|
|
280 | (4) |
|
|
284 | (12) |
|
5.5.1 Continuous representations |
|
|
284 | (3) |
|
5.5.2 Decomposition strategies |
|
|
287 | (7) |
|
5.5.3 State of the art: Current challenges in map representation |
|
|
294 | (2) |
|
5.6 Probabilistic Map-Based Localization |
|
|
296 | (46) |
|
|
296 | (1) |
|
5.6.2 The robot localization problem |
|
|
297 | (2) |
|
5.6.3 Basic concepts of probability theory |
|
|
299 | (3) |
|
|
302 | (2) |
|
5.6.5 The ingredients of probabilistic map-based localization |
|
|
304 | (2) |
|
5.6.6 Classification of localization problems |
|
|
306 | (1) |
|
5.6.7 Markov localization |
|
|
307 | (15) |
|
5.6.8 Kalman filter localization |
|
|
322 | (20) |
|
5.7 Other Examples of Localization Systems |
|
|
342 | (6) |
|
5.7.1 Landmark-based navigation |
|
|
344 | (1) |
|
5.7.2 Globally unique localization |
|
|
345 | (1) |
|
5.7.3 Positioning beacon systems |
|
|
346 | (1) |
|
5.7.4 Route-based localization |
|
|
347 | (1) |
|
5.8 Autonomous Map Building |
|
|
348 | (18) |
|
|
348 | (1) |
|
5.8.2 SLAM: The simultaneous localization and mapping problem |
|
|
349 | (2) |
|
5.8.3 Mathematical definition of SLAM |
|
|
351 | (2) |
|
5.8.4 Extended Kalman Filter (EKF) SLAM |
|
|
353 | (3) |
|
5.8.5 Visual SLAM with a single camera |
|
|
356 | (3) |
|
5.8.6 Discussion on EKF SLAM |
|
|
359 | (2) |
|
|
361 | (2) |
|
5.8.8 Particle filter SLAM |
|
|
363 | (1) |
|
5.8.9 Open challenges in SLAM |
|
|
364 | (1) |
|
5.8.10 Open source SLAM software and other resources |
|
|
365 | (1) |
|
|
366 | (3) |
|
6 Planning and Navigation |
|
|
369 | (56) |
|
|
369 | (1) |
|
6.2 Competences for Navigation: Planning and Reacting |
|
|
370 | (1) |
|
|
371 | (22) |
|
|
373 | (13) |
|
6.3.2 Potential field path planning |
|
|
386 | (7) |
|
|
393 | (16) |
|
|
393 | (4) |
|
6.4.2 Vector field histogram |
|
|
397 | (2) |
|
6.4.3 The bubble band technique |
|
|
399 | (2) |
|
6.4.4 Curvature velocity techniques |
|
|
401 | (1) |
|
6.4.5 Dynamic window approaches |
|
|
402 | (2) |
|
6.4.6 The Schlegel approach to obstacle avoidance |
|
|
404 | (1) |
|
|
405 | (1) |
|
|
405 | (1) |
|
6.4.9 Adding dynamic constraints |
|
|
406 | (1) |
|
|
406 | (1) |
|
|
406 | (3) |
|
6.5 Navigation Architectures |
|
|
409 | (14) |
|
6.5.1 Modularity for code reuse and sharing |
|
|
410 | (1) |
|
6.5.2 Control localization |
|
|
410 | (1) |
|
6.5.3 Techniques for decomposition |
|
|
411 | (5) |
|
6.5.4 Case studies: tiered robot architectures |
|
|
416 | (7) |
|
|
423 | (2) |
|
|
425 | (22) |
|
|
425 | (2) |
|
|
427 | (17) |
|
|
444 | (3) |
Index |
|
447 | |