VORONOI BASED PLACE RECOGNITION USING HIDDEN MARKOV MODELS

VORONOI BASED PLACE RECOGNITION USING HIDDEN MARKOV MODELS

Copyright © 2002 IFAC 15th Triennial World Congress, Barcelona, Spain www.elsevier.com/locate/ifac VORONOI BASED PLACE RECOGNITION USING HIDDEN MARK...

215KB Sizes 0 Downloads 75 Views

Copyright © 2002 IFAC 15th Triennial World Congress, Barcelona, Spain

www.elsevier.com/locate/ifac

VORONOI BASED PLACE RECOGNITION USING HIDDEN MARKOV MODELS B.L.Boada, D.Palazon, D.Blanco and L.Moreno

System Engineering and Automation Dept. Carlos III University, Spain

Abstract: This article presents a new algorithm to recognize natural distinctive places such as corridors, halls, narrowings, corridors with open doors on the left side etc., from indoor environments using Hidden Markov Models. The environment is modelled as a graph. This graph is obtained from a Voronoi Diagram from measurements of laser scanner. The characteristics of Voronoi Diagram (nodes, number of edges adjacent to nodes, slope of edges etc. ) are used to learn and recognize the different places. Copyright © 2002 IFAC Keywords: Mobile robots, Markov models, Machine recognition, Modelling.

1. INTRODUCTION

1.1 Previous Work In the literature can be found works on extraction of natural landmarks. The advantage of natural landmarks is that they do not require environment modifications.

When an autonomous mobile robot moves in an unknown environment it needs to know its position (Salichs and Moreno 2000). Recent approaches tend to recognize natural landmarks, from an environment, to localize the mobile robot. A landmark is a place which has distinctive features. Landmarks are not required to be globally distinctive because two places with similar characteristics can be distinguished by using the odometer information.

Various features have been used as natural landmarks: Zhang et al. (Zhang and K.Ghosh 2000) use line segments, circular arcs and point clusters as the basic geometric features. Mallet et al. (Mallet and Lacroix 1998) extract relevant obstacle contour lines, which approximate the obstacle/ground border (the landmark) on the basis of stereo-vision data.

We define the environment as a graph, in a topogeometric form, where each node corresponds to a distinctive place, and the arcs are paths which join the nodes. A Local Voronoi Diagram (LVD) is built from measurements of a laser scanner and the topo-geometric map is generated directly from LVD. The Voronoi Diagram represents the way, or set of points which are equidistant to different objects in the environment. The LVD is thought to be the safest way to move the robot.

Some authors use neural-networks to recognize different distinctive places. Lin et al. (Lin et al. 1998) employ a neural-network technique to learn reliable image features as edge strip in an outdoor environment. Mahadevan et al. (Mahadevan et al. 1998) use a neural network to distinguish doors, openings and walls from sonar readings. Thrun (Thrun 1998) uses a neural network to learn what features are best suited for localization.

We present an algorithm which permits to recognize distinctive places from indoor environment using Hidden Markov Models.

The work most closely related to ours is the one by Aycard et al. (Aycard et al. 1997) (Aycard et al. 1998). They propose a new method based

433

on Hidden Markov Models to learn and recognize places in an indoor environment using the measurements from ultrasonic sensors. Our algorithm has the advantage of recognizing the distinctive places before the robot is in its position and it uses a laser scanner to obtain the topo-geometric map. The measurements from laser scanner are more accurate than measurements from ultrasonic sensors. The number of distinctive places recognized by our algorithm is greater.







































































































 













Fig. 2. Slope segmentation 2.3 Observation symbols

2. HIDDEN MARKOV MODELS

We represent the environment as a graph. This graph is obtained from Local Voronoi Diagram (LVD) using the measurements of a laser scanner. A LVD represents the free way which is equidistant to at least two objects. It is supposed that each node in the LVD corresponds to each state of the topological map (different places), and that edges join these states. The LVD building algorithm can be found in (Blanco et al. 2000) (Blanco et al. 2001).

Hidden Markov Model (HMM) (Rabiner 1989) modelling is a stochastic technique for the study of the complete-incomplete data problems associated with time series. HMMs have been used for modelling observed patterns, specially in speech recognition (Huang et al. 1990). In this paper HMMs have been used for recognizing distinctive places.

The distinct places, which are learnt and recognized, are shown in figure 3. 2.1 Elements of an HMM An HMM is characterized by: • N: Number of states in the model. • M: Number of observation symbols. • The state transition probability distribution A = {aij }. • The observation symbol probability distribution B = {bj (k)}. • The initial distribution πi . • Observation sequence O = {O1 O2 · · · OT }.



"

"

#

%

, " 



"

"

#

%

"

-

1

(

#

*

"

"

#

%

"

-

"

(

#

*

-

*

-

.

%

.

-

.

%

+

-



*

+

+

"

1

-

#

%

2

.

*

,

* *

-

+

.

%

-

5

1

1

-

2

(

*

+

#

3

+

"

"

" 

"

"

#

*

+ +

5

1

1

(

#

*

3

+

.

*

.

%

5

1

*

+

"

"

-

1

,

-

2

"

#

%

"

(

#

*

+

1

"

-

.

%

"

*

*

%

+



-

.

#

#

*

*

+

,

"

"

"

"

. .

%

+

+

, ,

* .

*

+

-

"

#

3

+

(

,

-

.

%

"

*

2.2 The model Each HMM is used to represent a characteristic place (see figure 3). The chosen model has 3 states and 5 transitions (see figure 1). A state is reachable from another state when a characteristic symbol is recognized. The transition between one state to another is only dependent on the previous state. This topology has the advantage of being simple and the obtained results are very successfully.

S1

S2

.

+

5

1

1

*



"

"

#

%

"

# 

"

"

#

%

"

*

+

5

1

.

*

-

"

6

-



*

#

5

"

"



"

Fig. 3. Distinctive places The observation symbols are generated considering: • Number of edges adjacent to one node. • Slope of edges. In figure 2 the slope segmentation is represented. • Distance from points of edges to objects. In table 1 the distance segmentation is represented.

S3

The number of states is equal to 3 and the number of observation symbols is equal to 22 (see table 2).

Fig. 1. HMM model

434

(

#

.

3

.

1

"

#

%

"

#

.

6

Table 1. Distance segmentation Distance between edge and object (cm) 1500

Slope symbol 0 1 2 3

hall to corridor corridor hall corridor to hall

Table 2. Observation Symbols Slope Symbols — — -2 -2 -2 -2 -1 -1 -1 -1 0 0 0 0 1 1 1 1 2 2 2 2

Distance Symbols — — 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3

Observation Symbols 0 (node with 2 edges) 1(node with more 2 edges) 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

Fig. 5. Observation sequence corresponding to corridor with open door on the right

is only one observation symbol. The sequence of observations is O = {11, 11, 11} because the minimum length of observation sequence has to be three. If there are several sequences in a graph, the graph is segmented in several simple observation sequences as in figure 7. The observation sequences are: O1 = {11, 1, 3, 11} (corridor with a open door on the left), O2 = {11, 11, 11, 11} (corridor), O3 = {11, 1, 19, 11} (corridor with open door on the right) and O4 = {11, 0, 15} (narrowing).

3. LEARNING PHASE AND REESTIMATION PROCEDURE

2.4 Observation sequence 3.1 Forward - backward procedure. Given the observation symbols and the state model, it is necessary to generate the observation sequence. The observation sequence is obtained to segment the topological map. The two criteria to generate the sequence of observations are: presence of nodes and length of edges.

Two probabilities are defined in order to obtain the model parameters λ = (A, B, π) from a observation sequence, ξt and γt : ξt

= P rob(qt = Si , qt+1 = Si |(O1 , · · · , Ot ), λ) αt (i) · bj (Ot+1 βt+1 (j)) = P rob(O|λ) N  ξt (i, j) γt (i) = j=1

Where αt is the forward variable and βt+1 is the backward variable. These variables can be calculated inductively (Thrun et al. 1998).

3.2 Baum-Welch algorithm

Fig. 4. Observation sequence corresponding to ”corridor to hall”

The observation sequence of graph of figure 4 is O = {11, 0, 17} which represents a transition from corridor to hall. The observation sequence of graph of figure 5 is O = {11, 1, 19, 11} which represents a corridor with a open door on the right. In the case of corridor (see figure 6), there

The most difficult problem in HMM is how to adjust the model parameters λ = (A, B, π) to maximize the probability of observation sequence given the model. The iterative algorithm used to re-estimate the parameters is the Baum-Welch algorithm. A set of reasonable reestimation formulas to π, A, and, B are: πi = expected frequency in state Si , at time t=1

435





 























































Fig. 8. State sequencies and observating symbols It can occur that there would be several learning sequences for a model. For example, four learning sequences are found to corridor: O1 = {11, 11, 11, 11}, O2 = {11, 0, 11}, O3 = {7, 7, 7, 7} and O4 = {15, 15, 15, 15}. For each sequence, the model parameters are calculated, λi = (Ai , Bi , πi ). The final model parameters are the average of all

Fig. 6. Observation sequence corresponding to corridor







models, λ = (Ai , Bi , πi ).

4. RECOGNITION PHASE. VITERBI ALGORITHM A formal technique to find the optimal state sequence Q = {q1 , q2 , · · · , qt } associated with the given observation sequence O = {O1 , O2 , · · · , Ot } is the Viterbi algorithm. It is necessary to define the variable: Fig. 7. Segmentation corresponding to topological map

δt (i) = [ max P [q1 , · · · , qt = i, O1 , · · · , Ot |λ]] q1 ,··· ,qt−1

T −1

ξt (i, j) aij = t=1 T −1 t=1 γt (i) expected no of transitions from Si to Sj = expected no of transitions from Si

T bj (k) =

t−1

t∈Ot =vk

By induction we have: δt+1 (j) = [maxδt (i)aij ]bj (Ot+1 ) i

For t=1, δ1 (i) = πi · bi (O1 ). Our algorithm works as is shown in figure 9. When a new observation sequence is recognized,

γt (j)

T

t=1 γt (j) expected no of times in Sj and observing vk = expected no of times in Sj

There is a model λ = (A, B, π) for each distinctive place (see figure 3).

3.3 Computing model parameters Figure 5 shows the observation sequence corresponding to corridor with open door on the right, O = {11, 1, 19, 11}. Its state sequences and observation symbols are shown in figure 8. The model parameters are:     A=

1/4 3/4 0 0 1/4 3/4

0

0

1 0 0

;π =

1 c−3

0 1/4 0 · · · B = 0 2/4 0 · · · 0 0 0 ···

c−11

0 0 0

3/4

0 3/4

c−13

0 0 0

··· ··· ···

c−19

0 0 0

Fig. 9. Recognition algorithm its model parameters are calculated and the recognized model parameters are reestimated . For example, figure 10 shows how δT (N ) is calculated for observation sequence O = {11, 1, 3, 11} (corridor with open door on the left) using the model corresponding to a corridor with open door on the right (see section 3.3).

 0 00 2/4 0 0 1/4 0 0



436



 

 



In the last row of table 3 the percent of recognizing places is shown. Distinctive places are well recognized in most cases. The worst results are the following: 1)To recognize open door on the left to corridor which is sometimes mistaken with corridor with open door on the left. 2)To recognize open door on the right to corridor which is sometimes mistaken with corridor with open door on the right. But these errors are not very important because it is always recognized that it is a corridor with open door in this side.







  









 

















































































































"









& # 

$

#

&





(

'

  





#

Fig. 10. Viterbi algorithm 5. EXPERIMENTAL RESULTS

6. SUMMARY AND CONCLUSIONS

The experimental results are carried out in a B21 robot from RWI (Real World Interface) and a laser scanner PLS-220 from SICK. The maximum number of measurements values transferred by this laser is 361 with an angular resolution of 0.5o (see figure 11).

In this work we present a new algorithm which learns and recognizes several natural places using Hidden Markov Models. The environment is modelled as a graph. This graph is obtained from Voronoi Diagram from measurements of laser scanner. The characteristic of Voronoi Diagram (nodes, number of edges adjacent to nodes, slope of edges etc.) are used to learn and recognize the different places.

The algorithm runs on a Pentium II at 350Mhz. The medium computing time is 5.5ms to recognize different observation sequences from a local graph. This time is very short, therefore our algorithm can be used while the robot is displacing. In table

The main advantage of this approach is that the places are recognized by mobile robots before the place is reached. This is important for mobile robot navigation because the robot can take decisions about its movements or where it must go. Other important advantage of this algorithm compared to others approaches is that it uses directly the map to recognition places. This map can be used to localization, navigation and exploration.

ACKNOWLEDGEMENTS The authors gratefully acknowledge the funds provided by the Spanish Government through the CICYT project DPI2000-0425. Fig. 11. B21 robot with a laser telemeter 7. REFERENCES 3 the number of times of each recognized model is shown. Three different errors can occur during the recognizing phase: the robot has not recognized a place (deletions), the robot has mistaken a place with other and the robot has seen a non existing place (insertions). Each number in table 3 represents a model from figure 3: 1-open door on the left to corridor, 2-corridor with open door on the left, 3-open door on the right to corridor, 4corridor with open door on the right, 5-narrowing in corridor, 6-corridor, 7-corridor with two open doors, 8-hall to corridor, 9- hall with open door on the left, 10- hall with open door on the right, 11-hall, 12-intersection, 13-corridor to hall, Ddeletions and I-insertions.

Aycard, O., F. Charpillet, D. Fohr and J.-F. Mari (1997). Place learning and recognition using hidden markov models. In: Proceedings of the 1997 IEEE International Conference on Intelligent Robots and Systems. IROS’97. Aycard, O., J.-F. Mari and F. Charpillet (1998). Second order hidden markov models for place recognition: New resuts.. In: Proceedings of the 1998 IEEE International Conference on Tools with Artificial Intelligence (ICTAI’98). Blanco, D., B. L. Boada, L. Moreno and M .A. Salichs (2000). Local mapping from on-line laser voronoi extraction. In: IEEE/RSJ International Conference on Intelligent Robots and Systems.

437

Table 3. Experimental results Recognized places 1 2 3 4 5 6 7 8 9 10 11 12 13 D Total Total%

1 10 12 0 0 0 0 0 0 0 0 0 0 0 0 22 45

2 0 19 0 0 0 0 0 0 0 0 0 0 0 0 19 100

3 0 0 20 13 0 0 0 0 0 0 0 0 0 0 33 60

4 0 0 2 32 0 0 0 0 0 0 0 0 0 0 34 94

5 0 0 0 0 29 0 0 0 0 0 0 0 0 0 29 100

Real places 9 8 7 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 67 0 0 14 0 0 20 0 0 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0 0 0 13 23 14 67 72 86 100 100

Blanco, D., B.L. Boada and L. Moreno (2001). Localization by voronoi diagrams correlation. In: ICRA2001. Huang, X. D., Y. Ariki and M. A. Jack (1990). Hidden Markov Models for Speech Recognition. Edinburg University Press. Lin, L.-J., T.R. Hancock and J.S. Judd (1998). A robust landmark-based system for vehicle location using low-bandwidth vision.. Robotics and Autonomous Systems 25, 19–32. Mahadevan, S., G. Theocharous and N. Khaleeli (1998). Rapid concept learning for mobile robots. Machine Learning 31, 7–27. Mallet, A. and S. Lacroix (1998). Toward realtime 2d localization in outdoor environments. In: Proceedings of the 1998 IEEE International Conference on Robotics and Automation. Leuven, Belgium. pp. 2827–2832. Rabiner, L.R. (1989). A tutorial on hidden markov models and selected applications in speech recognition. Proceedings of the IEEE 77(2), 257–286. Salichs, M.A. and L. Moreno (2000). Navigation of mobile robots: Open questions. Robotica 18, 227–234. Thrun, S. (1998). Bayesian landmark learning for mobile robot localization. Machine Learning. Thrun, S., W. Burgard and D. Fox (1998). A probabilistic approach to concurrent mapping and localization for mobile robots. Autonomous Robots 5, 253–271. Zhang, L. and B. K.Ghosh (2000). Geometric feature based 2 1/2d map building and planning with laser, sonar and tactile sensors. In: Proceedings of the 2000 IEEE/RSJ International Conference on Intelligent Robots and Systems.

438

11 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14 37 0 4 0 0 0 2 0 41 14 86 100

13 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 0 7 11 0 0 2 13 10 84 63

I 0 4 0 4 0 0 0 0 3 4 0 0 0 0 15