Title: Landmark Selection
1Landmark Selection for Vision-Based Navigation
IEEE/RSJ International Conference on Intelligent
Robots and Systems October 2nd, 2004 Pablo
Sala1, Robert Sim1,2, Ali Shokoufandeh3, Sven
Dickinson1 1 University of Toronto 2
University of British Columbia 3 Drexel
University
2Robot Navigation
- Leonard and Durrant-Whyte
- Where am I?
- Where am I going?
- How do I get there?
3Robot Navigation
- Leonard and Durrant-Whyte
- Where am I? Localization
- Where am I going?
- How do I get there?
4Robot Navigation
- Leonard and Durrant-Whyte
- Where am I? Localization
- Where am I going? Goal Identification
- How do I get there?
5Robot Navigation
- Leonard and Durrant-Whyte
- Where am I? Localization
- Where am I going? Goal Identification
- How do I get there? Path-planning
6Robot Navigation
- Leonard and Durrant-Whyte
- Where am I? Localization
- Where am I going? Goal Identification
- How do I get there? Path-planning
7Landmark-Based Navigation
- What makes a good landmark?
8Landmark-Based Navigation
- What makes a good landmark?
- Distinctiveness (does it tell me where I am?)
9Landmark-Based Navigation
- What makes a good landmark?
- Distinctiveness (does it tell me where I am?)
- Wide Visibility
10Landmark-Based Navigation
- What makes a good landmark?
- Distinctiveness (does it tell me where I am?)
- Wide Visibility
- How do we select good landmarks?
11Landmark-Based Navigation
- What makes a good landmark?
- Distinctiveness (does it tell me where I am?)
- Wide Visibility
- How do we select good landmarks?
- Manually
12Landmark-Based Navigation
- What makes a good landmark?
- Distinctiveness (does it tell me where I am?)
- Wide Visibility
- How do we select good landmarks?
- Manually
- Automatically
13Landmark-Based Navigation
- What makes a good landmark?
- Distinctiveness (does it tell me where I am?)
- Wide Visibility
- How do we select good landmarks?
- Manually
- Automatically but how?
14Landmark-Based Navigation
- What makes a good landmark?
- Distinctiveness (does it tell me where I am?)
- Wide Visibility
- How do we select good landmarks?
- Manually
- Automatically
- Store every landmark visible at each location
(costly!)
15Landmark-Based Navigation
- What makes a good landmark?
- Distinctiveness (does it tell me where I am?)
- Wide Visibility
- How do we select good landmarks?
- Manually
- Automatically
- Store every landmark visible at each location
(costly!) - Find smallest subset of landmarks that supports
reliable navigation (optimal!)
16View-Based Robot Navigation
Off-line Exploration
Landmark Database Construction
On-line Localization
17View-Based Robot Navigation
Off-line Exploration
Landmark Database Construction
On-line Localization
- Collection of images acquired at known discrete
points in pose space. Pose recorded and image
features extracted and stored in database.
18View-Based Robot Navigation
Landmark Database Construction
On-line Localization
Off-line Exploration
- Collection of images acquired at known discrete
points in pose space. Pose recorded and image
features extracted and stored in database.
19View-Based Robot Navigation
Landmark Database Construction
On-line Localization
Off-line Exploration
- Collection of images acquired at known discrete
points in pose space. Pose recorded and image
features extracted and stored in database.
20View-Based Robot Navigation
Landmark Database Construction
On-line Localization
Off-line Exploration
- Collection of images acquired at known discrete
points in pose space. Pose recorded and image
features extracted and stored in database.
21View-Based Robot Navigation
Landmark Database Construction
On-line Localization
Off-line Exploration
- Collection of images acquired at known discrete
points in pose space. Pose recorded and image
features extracted and stored in database.
22View-Based Robot Navigation
Off-line Exploration
Landmark Database Construction
On-line Localization
23View-Based Robot Navigation
Off-line Exploration
Landmark Database Construction
On-line Localization
Four features are needed in this set.
24View-Based Robot Navigation
Off-line Exploration
Landmark Database Construction
On-line Localization
Four features are needed in this set.
Only two features needed. Our goal is to find
this decomposition.
25View-Based Robot Navigation
Off-line Exploration
Landmark Database Construction
On-line Localization
- Current pose is estimated using the locations of
a small number of features in the current image,
matched against their locations in two model
views.
26View-Based Robot Navigation
27View-Based Robot Navigation
28View-Based Robot Navigation
29View-Based Robot Navigation
30View-Based Robot Navigation
31View-Based Robot Navigation
32View-Based Robot Navigation
33View-Based Robot Navigation
34View-Based Robot Navigation
35View-Based Robot Navigation
36View-Based Robot Navigation
37Robot Navigation
38Intuitive Problem Formulation
39Intuitive Problem Formulation
40Intuitive Problem Formulation
41Intuitive Problem Formulation
42Intuitive Problem Formulation
43Intuitive Problem Formulation
44Intuitive Problem Formulation
45Intuitive Problem Formulation
46Intuitive Problem Formulation
47Outline
- Problem Formulation
- Complexity
- Heuristic Methods
- Results on Synthetic and Real Images
- Conclusions
48A Graph Theoretic Formulation
Problem Definition The ?-Minimum Overlapping
Region Decomposition Problem (?-MORDP) for a
world instance ltG(V,E), F, ?v v?Vgt consists of
finding a minimum size ?-overlapping
decomposition D R1, , Rd
of V into regions such that
49A Graph Theoretic Formulation
Problem Definition The ?-Minimum Overlapping
Region Decomposition Problem (?-MORDP) for a
world instance ltG(V,E), F, ?v v?Vgt consists of
finding a minimum size ?-overlapping
decomposition D R1, , Rd
of V into regions such that Theorem 1 A
?-MORDP can be reduced to an equivalent 0-MOVRDP,
and the solution to this latter problem can be
extended to a solution for the original problem.
50A Graph Theoretic Formulation
Problem Definition The ?-Minimum Overlapping
Region Decomposition Problem (?-MORDP) for a
world instance ltG(V,E), F, ?v v?Vgt consists of
finding a minimum size ?-overlapping
decomposition D R1, , Rd
of V into regions such that Theorem 1 A
?-MORDP can be reduced to an equivalent 0-MOVRDP,
and the solution to this latter problem can be
extended to a solution for the original
problem. Theorem 2 The decision problem
lt0-MORDP, dgt is NP-complete. (Proof by reduction
from the Minimum Set Cover Problem.)
51Heuristic Methods for 0-MORDP
- Can we efficiently find an effective
approximation?
- We developed and tested six greedy approximation
algorithms.
52Algorithm A.x O(V2F)
k 4
Features commonly visible in region
53Algorithm A.x O(V2F)
k 4
Features commonly visible in region 25
54Algorithm A.x O(V2F)
k 4
Features commonly visible in region 25
55Algorithm A.x O(V2F)
k 4
Features commonly visible in region 19
56Algorithm A.x O(V2F)
k 4
Features commonly visible in region 19
57Algorithm A.x O(V2F)
k 4
Features commonly visible in region 19
58Algorithm A.x O(V2F)
k 4
Features commonly visible in region 19
59Algorithm A.x O(V2F)
k 4
Features commonly visible in region 17
60Algorithm A.x O(V2F)
k 4
Features commonly visible in region 17
61Algorithm A.x O(V2F)
k 4
Features commonly visible in region 14
62Algorithm A.x O(V2F)
k 4
Features commonly visible in region 14
63Algorithm A.x O(V2F)
k 4
Features commonly visible in region 11
64Algorithm A.x O(V2F)
k 4
Features commonly visible in region 11
65Algorithm A.x O(V2F)
k 4
Features commonly visible in region 9
66Algorithm A.x O(V2F)
k 4
Features commonly visible in region 8
67Algorithm A.x O(V2F)
k 4
Features commonly visible in region 8
68Algorithm A.x O(V2F)
k 4
Features commonly visible in region 6
69Algorithm A.x O(V2F)
k 4
Features commonly visible in region 4
70Algorithm A.x O(V2F)
k 4
Features commonly visible in region 4
71Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region
72Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 1
73Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 1
74Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 1
75Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 1
76Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 1
77Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 1
78Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 2
79Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 2
80Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 2
81Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 2
82Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 2
83Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 3
84Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 4
85Algorithms B.x and C O(kV2F)
k 5
Features commonly visible in region 5
86Results
Simulated Data
87Simulated Data (cont.)
- Two types of Worlds Irregular (Irreg) and
Rectangular (Rect). - average diameter 40m.
- pose space sampled at 50 cm intervals.
- average number of sides 6.
- average number of obstacles 7.
- Two types of Features Short-Range and
Long-Range. - visibility range N (0.65, 0.2) to N (12.5, 1) m,
- and angular range N (25, 3) degrees.
- Visibility range N (0.65, 0.2) to N (17.5, 2) m,
- and angular range N (45, 4) degrees.
88Simulated Data (cont.)
89Real Data
We applied the best-performing algorithm (B.2)
to real feature visibility data.
0?
90?
180?
270?
90Results (cont.)
- Real Data
- Experiment 1
- Data collected in 2m ? 2m area.
- Sampled at 20 cm intervals.
- Total of 46 visible features.
- Camera at a fixed orientation (looking forward).
- Features were extracted using the
Kanade-Lucas-Tomasi operator. - Parameters used ? 0, k 4.
91Results (cont.)
- Real Data
- Experiment 1
- Data collected in 2m ? 2m area.
- Sampled at 20 cm intervals.
- Total of 46 visible features.
- Camera at a fixed orientation (looking forward).
- Features were extracted using the
Kanade-Lucas-Tomasi operator. - Parameters used ? 0, k 4.
92Real Data (cont.)
- Data collected in 6m ? 3m area.
- Sampled at 25 cm intervals.
- Total of 897 visible features.
- Camera at 0, 90, 180, and 270
- degree orientations.
- SIFT features.
93Typical Feature Visibility Regions
94Real Data Decompositions
k 4, ? 0
95Real Data Decompositions (cont.)
k 4, ? 1
96Real Data Decompositions (cont.)
k 10, ? 0
97Real Data Decompositions (cont.)
k 10, ? 1
98Conclusions
- We have introduced a novel graph theoretic
formulation of the landmark acquisition problem,
and have established its intractability.
- We have explored a number of greedy approximation
algorithms, systematically testing them on
synthetic worlds and demonstrating them on real
worlds.
- The resulting decompositions find large regions
in the world in which a small number of features
can be tracked to support efficient on-line
localization.
- The formulation and solution are general, and can
accommodate other classes of image features.
99Future Work
- Integrate the image collection phase with the
region decomposition stage to yield an on-line
process for simultaneous exploration and
localization (SLAM).
- Path planning through decomposition space,
minimizing the number of region transitions in a
path.
- Detect and cope with environmental change.
- Compute the performance guarantee of our
heuristic methods and provide tight upper bounds
on the quality of our solution compared to the
optimal.
- Use feature tracking during the image collection
stage to achieve larger areas of visibility for
each feature. (Maintain equivalence classes of
features in the DB.)