RGBD Mapping Using Depth Cameras for Dense 3

RGB-D Mapping: Using Depth Cameras for Dense 3 D Modeling of Indoor Environments Peter Henry 1, Michael Krainin 1, Evan Herbst 1, Xiaofeng Ren 2, and Dieter Fox 1, 2 1 University of Washington Computer Science and Engineering 2 Intel Labs Seattle 1

RGB-D Data 2

3
![Related Work SLAM [Davison et al, PAMI 2007] (monocular) [Konolige et al, IJR 2010] Related Work SLAM [Davison et al, PAMI 2007] (monocular) [Konolige et al, IJR 2010]](http://slidetodoc.com/presentation_image_h/1b17b906c24c84c98ca33112d0662323/image-4.jpg)
Related Work SLAM [Davison et al, PAMI 2007] (monocular) [Konolige et al, IJR 2010] (stereo) [Pollefeys et al, IJCV 2007] (multi-view stereo) [Borrmann et al, RAS 2008] (3 D laser) [May et al, JFR 2009] (To. F sensor) Loop Closure Detection [Nister et al, CVPR 2006] [Paul et al, ICRA 2010] Photo collections [Snavely et al, SIGGRAPH 2006] [Furukawa et al, ICCV 2009] 4

System Overview 1. Frame-to-frame alignment 2. Loop closure detection and global consistency 3. Map representation 5

Alignment (3 D SIFT RANSAC) SIFT features (from image) in 3 D (from depth) RANSAC alignment requires no initial estimate Requires sufficient matched features 6

RANSAC Failure Case 7

Alignment (ICP) Does not need visual features or color Requires sufficient geometry and initial estimate 8

ICP Failure Case 9

Joint Optimization (RGBD-ICP) Fixed feature matches Dense point-to-plane 10

Loop Closure Sequential alignments accumulate error Revisiting a previous location results in an inconsistent map 11

Loop Closure Detection Detect by running RANSAC against previous frames Pre-filter options (for efficiency): Only a subset of frames (keyframes) Every nth frame New Keyframe when RANSAC fails directly against previous keyframe Only keyframes with similar estimated 3 D pose Place recognition using vocabulary tree 12
![Loop Closure Correction TORO [Grisetti 2007]: Constraints between camera locations in pose graph Maximum Loop Closure Correction TORO [Grisetti 2007]: Constraints between camera locations in pose graph Maximum](http://slidetodoc.com/presentation_image_h/1b17b906c24c84c98ca33112d0662323/image-13.jpg)
Loop Closure Correction TORO [Grisetti 2007]: Constraints between camera locations in pose graph Maximum likelihood global camera poses 13

14
![Map Representation: Surfels Surface Elements [Pfister 2000, Weise 2009, Krainin 2010] Circular surface patches Map Representation: Surfels Surface Elements [Pfister 2000, Weise 2009, Krainin 2010] Circular surface patches](http://slidetodoc.com/presentation_image_h/1b17b906c24c84c98ca33112d0662323/image-15.jpg)
Map Representation: Surfels Surface Elements [Pfister 2000, Weise 2009, Krainin 2010] Circular surface patches Accumulate color / orientation / size information Incremental, independent updates Incorporate occlusion reasoning 750 million points reduced to 9 million surfels 16

17

Experiment 1: RGBD-ICP 16 locations marked in environment (~7 m apart) Camera on tripod carried between and placed at markers Error between ground truth distance and the accumulated distance from frame-to-frame alignment α weight 0. 0 (ICP) 0. 2 0. 5 0. 8 1. 0 (RANSAC) Mean error (m) 0. 22 0. 19 0. 16 0. 18 1. 29 18

Experiment 2: Robot Arm Camera held in WAM arm for ground truth pose Method Mean Angular Translational Error (deg) Error (m) RANSAC . 168 4. 5 ICP . 144 3. 9 RGBD-ICP (α=0. 5) . 123 3. 3 RGBD-ICP + TORO . 069 2. 8 19

Map Accuracy: Architectural Drawing 20

Map Accuracy: 2 D Laser Map 21

Conclusion Kinect-style depth cameras have recently become available as consumer products RGB-D Mapping can generate rich 3 D maps using these cameras RGBD-ICP combines visual and shape information for robust frame-to-frame alignment Global consistency achieved via loop closure detection and optimization (RANSAC, TORO, SBA) Surfels provide a compact map representation 22

Open Questions Which are the best features to use? How to find more loop closure constraints between frames? What is the right representation (point clouds, surfels, meshes, volumetric, geometric primitives, objects)? How to generate increasingly photorealistic maps? Autonomous exploration for map completeness? Can we use these rich 3 D maps for semantic mapping? 23

Thank You! 24
- Slides: 23