38
1 Juan D. Tardós, University of Zaragoza, Spain Juan D. Tardós, University of Zaragoza, Spain Evaluation of Loop Detection in Evaluation of Loop Detection in Visual SLAM Visual SLAM Dorian Gálvez-López, Juan D. Tardós University of Zaragoza, Spain Robotics: Science and Systems 2012 W11. Performance Comparison and Result Replication Contributors: Cesar Cadena, José Neira, Lina Paz, Pedro Piniés

Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

1Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Evaluation of Loop Detection in Evaluation of Loop Detection in Visual SLAMVisual SLAM

Dorian Gálvez-López, Juan D. TardósUniversity of Zaragoza, Spain

Robotics: Science and Systems 2012 W11. Performance Comparison and Result Replication

Contributors: Cesar Cadena, José Neira, Lina Paz, Pedro Piniés

Page 2: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

2Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

OutlineOutline• Loop detection in Visual SLAM• Our approach: Bags of Binary Words• Evaluation of Loop Detection• Conclusion

Page 3: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

3Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Why is Loop Detection Important?Why is Loop Detection Important?

Page 4: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

4Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Correct Map Topology and GeometryCorrect Map Topology and Geometry

Page 5: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

5Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Loop Detection ApproachesLoop Detection Approaches• Map to Map

– Move the robot and build a local map– Match current local maps with previous local maps

» works for laser or sonar, too brittle for vision

• Image to Map– Build a visual feature map– Match features in the current image with map features

» Works well, but scales badly in large environments

• Image to Image (Appearance–Based)– Image features clustered into visual words (visual vocabulary)– For each image obtain a Bag-of-Words representation– Match BOWs of current and previous images

» Needs geometrical verification

Page 6: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

6Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Why is Loop Detection Difficult?Why is Loop Detection Difficult?• Is this a loop closure?

YES TRUE POSITIVELikely algorithm answer:

YES

Page 7: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

7Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Why is Loop Detection Difficult?Why is Loop Detection Difficult?• Is this a loop closure?

NO TRUE NEGATIVELikely algorithm answer:

NOYES FALSE POSITIVENO

Page 8: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

8Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Why is Loop Detection Difficult?Why is Loop Detection Difficult?• Is this a loop closure?

NO FALSE NEGATIVELikely algorithm answer:

YES!NO TRUE NEGATIVENO

Page 9: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

9Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Why is Loop Detection Difficult?Why is Loop Detection Difficult?• Is this a loop closure?

YES FALSE POSITIVELikely algorithm answer:

NOPerceptual aliasing is common in some indoor scenarios

Page 10: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

10Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Why is Loop Detection Difficult?Why is Loop Detection Difficult?• Is this a loop closure?

YES FALSE POSITIVELikely algorithm answer:

NOSpecular perceptual aliasing!

Page 11: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

11Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

BoW+epipolar

False positivesFalse positives

• False positives may ruin the map– But see two RSS 2012 papers that address this issue:

» Edwin Olson, Pratik Agarwal» Yasir Latif, Cesar Cadena, José Neira,

Page 12: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

12Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Common MetricsCommon Metrics

Precision = # Correct detections# Detections fired

= TPTP + FP

Recall = # Correct detections# Existing Loops

= TPTP + FN

Desired: 100% precision,No false positives

Desired: high recall,Few false negatives

Ideal working region

Page 13: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

13Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

OutlineOutline• Loop detection in Visual SLAM• Our approach: Bags of Binary Words• Evaluation of Loop Detection• Conclusion

Page 14: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

14Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Bags of Binary WordsBags of Binary Words• Extract image features

– FAST keypoint detector– BRIEF descriptor (binary)

• Convert into visual words– Binary version of the hierarchical vocabulary tree (Nister 2006)– Store the BOW representation of current image

• Search for matches with the previous images– Inverse index: which images contain some common word

• Check temporal consistency – with k previous matches

• Check geometric consistency: epipolar geometry– Direct index

Page 15: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

15Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

BRIEF Binary FeaturesBRIEF Binary Features

Each bit, intensity comparison of two pixels:

Predefined random pixel coordinates:

We use a patch of size Sb = 48 pixels and L = 256 bits

Page 16: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

16Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

BRIEF Binary featuresBRIEF Binary features• Very fast to compute: 13ms per image

– c.f. SURF: 100-400 ms

• Need less memory: 256 bits = 32 bytes– c.f. SURF of SIFT 64-128 bytes or floats

• Faster to compare: Hamming distance == xor– c.f. SURF or SIFT: Euclidean distance

• BUT not rotation and scale invariant

Page 17: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

17Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Are BRIEF features good for loop closing?Are BRIEF features good for loop closing?• BRIEF achieves results similar to SURF:

BRIEF SURF*

Without Geometrical Checking

C. Cadena, D. Gálvez-López, F. Ramos, J.D. Tardós, and J. Neira: Robust place recognition with stereo cameras. IROS 2010, pp. 5182–5189

Page 18: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

18Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

BRIEF SURF*

(Results without geometrical verification)

Without Geometrical Checking

Are BRIEF features good for loop closing?Are BRIEF features good for loop closing?• BRIEF achieves results similar to SURF:

Page 19: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

19Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

BRIEF .vs. SURF BRIEF .vs. SURF • Example of words matched by BRIEF and SURF:

BRIEF

SURF

Page 20: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

20Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

BRIEF .vs. SURFBRIEF .vs. SURF

BRIEF

SURF

• Sometimes BRIEF works better

Page 21: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

21Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

BRIEF .vs. SURFBRIEF .vs. SURF

BRIEF

SURF

• Sometimes BRIEF works worse

Page 22: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

22Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Bags of Binary WordsBags of Binary Words• Hierarchical vocabulary tree (Nister & Stewénius 2006)

– Tree structure: branch factor 10, depth levels 6– Clustering with kmeans++– Created off-line

• Online:– Compute the BOW of current image

vk = (0,...0, vki , 0,...0 vk

j , 0,… ) tf-idf weights

– Compare to previous images to find candidates

Image Similarity (L1 norm)

Normalized Image Similarity

Page 23: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

23Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Image databaseImage database• Vocabulary tree + Inverse index + Direct index

Only compare with images thathave some word in common

Speed up correspondence searchfor verification of epipolar geometry

Page 24: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

24Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Very fast loop closingVery fast loop closing• Execution time with 26K images:

mean 21.6ms, max 52ms

One order of magnitude faster than previous approaches!!

Page 25: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

25Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

OutlineOutline• Loop detection in Visual SLAM• Our approach: Bags of Binary Words• Evaluation of Loop Detection• Conclusion

Page 26: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

26Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Parameter tuning, how bad can it be?Parameter tuning, how bad can it be?

Precision-recall curves plot the performance as the main parameter changes

Page 27: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

27Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

WhatWhat’’s wrong with precisions wrong with precision--recall curves?recall curves?

• They tell us that for some parameter value the performance is good• But is the parameter consistent across different experiments?

Avoid Overfitting

Page 28: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

28Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Usual ApproachUsual Approach

Post-TuningTake an available datasetRepeat

Tune parametersRun your method on it

Until satisfiedPlot resultsWrite paper

Repeated Post-TuningTake several available datasetFor each dataset

RepeatTune parametersRun your method on it

Until satisfiedPlot results

End ForWrite paper

OVERFITTINGImpossible to see the future is (Yoda 2002)

Page 29: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

29Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Proposed ApproachProposed ApproachAvoid OverFittingTake several dataset of different typesSome for training, some for evaluation (never peek into these)Repeat

Tune parametersRun on the training datasets

Until satisfiedFreeze parametersFor all datasets

Run your methodPlot results

End ForWrite paper

And you can claim robust performance on a wide range of real scenarios

Page 30: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

30Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

www.rawseeds.orgwww.rawseeds.org• Benchmark for SLAM algorithms• Indoor and Outdoor multisensor datasets

– Odometry and IMU– Sonar and Laser sensors: (Sick & Hokuyo)– Monocular, trinocular and panoramic vision

• Ground truth available• Excellent benchmark for visual SLAM in the next years:

– Size of datasets allows to test the scalability of the algorithms– GT allows to asses the accuracy– Challenging loop closings

Page 31: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

31Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

3 Datasets for tuning, 2 for evaluation3 Datasets for tuning, 2 for evaluation

Page 32: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

32Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Example results: Example results: NewCollegeNewCollege

Page 33: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

33Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Example result: Example result: RawseedsRawseeds, indoor, indoor

Page 34: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

34Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

ResultsResults• No false positives, high recall:

Page 35: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

35Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Tuning datasetsTuning datasets

Page 36: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

36Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

Validation DatasetsValidation Datasets

D. Gálvez-López, J. D. Tardós: Bags of Binary Words for Fast Place Recognition in Image Sequences. IEEE Transactions on Robotics, 2012 (in press)

Page 37: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

37Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

ConclusionsConclusions• Loop detection with BRIEF features is:

– One order of magnitude faster – Reliable for 2D camera motions

• Consistent results for diverse datasets, with the SAME parameters and vocabulary

• Big vocabularies speed-up matching• But BRIEF lacks rotation and scale invariance

– ORB, BRISK, …

Page 38: Evaluation of Loop Detection in Visual SLAM...Juan D. Tardós, University of Zaragoza, Spain 1 Evaluation of Loop Detection in Visual SLAM Dorian Gálvez-López, Juan D. Tardós University

38Juan D. Tardós, University of Zaragoza, SpainJuan D. Tardós, University of Zaragoza, Spain

TakeTake--Home MessagesHome Messages• Compare to previous approaches• Evaluate the merit of each part of your algorithm• Use available datasets, as diverse as possible• Avoid over-fitting

– Separate tuning and validation datasets– Don’t peek into the validation datasets– Report results with a fixed configuration for all datasets