Building Mapping 6
Building Mapping 6
Mobile Robot
WANG Ke1 WANG Wei1 ZHUANG Yan1
Abstract An on-the-fly, self-localization system is developed for mobile robot which is operative in a 3D environment with
elaborative 3D landmarks. The robot estimates its pose recursively through a MAP estimator that incorporates the information
collected from odometry and unidirectional camera. We build the nonlinear models for these two sensors and maintain that the
uncertainty manipulation of robot motion and inaccurate sensor measurements should be embedded and tracked throughout our
system. We describe the uncertainty framework in a probabilistic geometry viewpoint and use unscented transform to propagate
the uncertainty, which undergoes the given nonlinear functions. Considering the processing power of our robot, image features are
extracted in the vicinity of corresponding projected features. In addition, data associations are evaluated by statistical distance.
Finally, a series of systematic experiments are conducted to prove the reliable and accurate performance of our system.
Key words Vision-based self-localization, MAP estimation, multi sensor fusion, unscented transformation, uncertainty propaga-
tion
In retrospect of self-localization, many vision-based classes previously constructed from 3D environmental in-
self-localization systems have been developed for mobile formation, there exists an unknown random vector (robot
robot[1] . One choice is based on geometric reasoning meth- pose) evolved by a certain dynamic function with prior
ods, [2−3] applied Hough transform to global localization. PDF. When the vector travels in the parameter space, some
However, they are sensitive to sensor noise and may not conditional events will generate from certain PDF of the
provide an accurate pose estimate. Another framework is given classes. Therefore, the robot could integrate these
image retrieval system, and researchers have successfully available events containing the external information to es-
localized the robot based on the appearance[4−6] of the en- timate the a posterior probability likelihood of such un-
vironment or SVM method[7] . The drawback is that a large known vector. We choose MAP[23] (Maximum a posterior)
database has to be kept in robot memory for classification. method, which is computationally direct and has experi-
Experiments indicate that a reliable localization system mentally been shown to work well[24] .
should explicitly represent and maintain the uncertainty We consider the uncertainty inherent in the localization
inherent in the available information[8−9] . Therefore, local- process and give explicitly analytical solution using un-
ization system could be designed in a probabilistic manner. scented transform (UT)[25] . The UT applies the nonlinear
[10−14] summarize some popular probabilistic methods in function to a minimal set of sample points and yields more
which Markov[15] , Mont Carlo[16] , and particle filter[17−18] accurate statistical value than linear methods. Therefore,
hold the probability likelihood to represent the robot state information and its uncertainty can be propagated through
belief. However, calculation of the Bayesian integration re- nonlinear transform without calculating Jacobian matrices.
quires a huge computation, which may prevent their appli- Because of the limited resources, the system is developed
cations to robot vision. Another choice is extended Kalman based on concurrently hierarchical frame instead of ineffi-
filter[19−21] . This approach takes a linearization step with cient serial processing mode. The former fulfills on-the-fly
explicitly analytical Jacobian matrices. As known, in some localization when there are several collaborative subpro-
cases, the matrices are difficult to obtain due to the com- grams in localization task. Moreover, we carefully design
plicated nonlinear transform. Moreover, the linearization an effective map using line segment with directional infor-
might lead to the filter instability if the time step intervals mation to improve feature detection and data association.
are not sufficiently small[22] . This paper is organized as follows. We describe firstly the
In this paper, a vision-based self-localization system is map modeling, self-localization algorithm and logic frame-
developed based on our SmartROB2 mobile robot. Our work of our system. In Section 1, scene prediction is pre-
design pattern focuses on the following issues: sented based on the camera model. Section 2 expatiates
Problem 1. How to design a vision-based self- the manipulations of uncertainty related to our system, and
localization system in a new viewpoint? This system can how the uncertainty assists the image processing and data
provide an accurate pose estimate with a more reasonable association. Finally, the experimental results are given.
and efficient uncertainty manipulation.
Problem 2. Considering run-time coordinations among
1 Vision-based self-localization
subprograms of the localization task, how to make use of 1.1 Map modeling
the resource-constrained RTOS of an embedded robot plat- As shown in Fig. 1, in the world coordinate the global
form? map MW consists of a set of 3D line segments that describe
The new standpoint we emphasis on is that we do not the line features in a whole soccer field. The primitive ele-
describe the design of self-localization method as a tradi- ment, miW ∈ MW , is defined as a directional line segment,
tional state-estimate problem but as a statistical param- i.e.,
eter estimate problem. That is, given a set of training
miW = {EW
i
(ppsW , p eW ), VW
i
(vv iW , n iW )}, i = 1, 2, · · · , N (1)
Received May 24, 2006; in revised form September 24, 2007
Supported by National Natural Science Foundation of China where p sW = [xsW , yWs s T
, zW ] and p eW represent two end-
(60605023, 60775048), Specialized Research Fund for the Doctoral
Program of Higher Education (20060141006) points of mW , v W = [aW , biW , ciW ] is the directional vector
i i i
Compared with the topological map[26] or the map that The problem is then viewed as searching the optimal
is defined only by 3D points[27] , our map can provide abun- ϕ, which maximizes the posterior probability
parameter ϕ̂
dant information and is more efficient in manipulation. ϕ|Dn ) based on the MAP estimator, i.e.,
p(ϕ
ϕ|Dn )) =
ϕ = arg max(p(ϕ
ϕ̂
ϕ
(6)
ϕ)p(Dn |ϕ
arg max(p(ϕ ϕ))
ϕ
ϕ̂ ϕ)) − 2 ln(p(Dn |ϕ
ϕ = arg minϕ (−2 ln(p(ϕ ϕ))) (7)
ϕk , u k+1 ) + ν k+1
ϕ k+1|k = f (ϕ (2) where matrix H represents the Hessian of the objective
function. The robot pose and covariance can be updated
by fusing the information of odometry and visual observa-
ϕ, u ) is the dead-reckoning function[28] , which is
where f (ϕ tions.
used to model the differential odometer of our robot; u is
input and ν is additive Gaussian white noise. The associ- 1.3 System architecture
ated covariance Pk+1|k of prior estimate ϕ k+1|k is computed Here, we summarize the software framework of our
by unscented transform. self-localization system for SmartROB2 robot. The self-
We assume ϕ obey the distribution of the a priori Gaus- localization task is developed by Oberon system and im-
sian PDF, which evaluates the statistical distance between plemented on native XO/2 RTOS[30] . The system can be
ϕ and the prior estimate ϕ k+1|k , i.e., logically divided into three layers, and each layer imple-
ments as a concurrent and collaborative subtask.
ϕ ∼ N (ϕ
ϕk+1|k , Pk+1|k ) (3) 1) Perception layer (PL): In this underlying layer, a serv-
ing thread responds to detect of the sensors states, allo-
Estimation of ϕ also depends on the information Dn = cating sensor buffers, and online correcting the image dis-
{d1 , d2 , · · · , dn }, n < N available during process (2). Sam- tortion caused by the fish-eye camera. Another thread also
ple di evaluates the Mahalanobis distance between mea- keeps track of its communication between information pro-
surement Y j and its corresponding feature prediction Y i . cessing layer (IPL) and receives sate feedback from data
Y i is determined by the camera model, ϕ and map element fusion layer (DFL).
miW as follows 2) Information processing layer: The received informa-
ϕ, miw ) + ξ
Y i = (ϕ (4) tion from PL unfolds into image data, robot pose ϕ k+1|k ,
and its covariance Pk+1|k . Image processing unit (IPU)
where ξ ∼ N (0, R) is the additive noise. We will detail (4) then use the initial scene estimated by ϕ k+1|k and 3D map
later in Section 2. MW to extract the corresponding image features.
Assume that each observation sample di generates in- 3) Data Fusion Layer: As system kernel, it manipulates
dependently from a joint parametric conditional PDF the information from each layer and uses MAP estimator
p(Dn |ϕϕ)
to perform multi-sensor fusion for the a posterior pose and
p(Dn |ϕ
ϕ) = p(di |ϕ
ϕ) (5) its covariance.
Finally, our system adopts the motion compensation[31−32] Substituting (11) into (13), we obtain the formulation
procedure to compensate the robot movement for the describing the relationship between v iI and v iC as follows.
system-processing delay.
aiI (biC zC
j
− ciC yC
j
) = biI (aiC zC
j
− ciC xjC ) (14)
2 Scene prediction
When camera parameters and ϕ are given, the robot can After some functional decompositions and variable sub-
predict where in a captured image the map lines should be stitutions, the projected v iI can be formulated as
visible.
⎡ j
⎤
2.1 Generating model point (yW − y)(aiW cos α + ciW sin α cos θ)−
⎢ j
(xW − x)(biW cos α + ciW sin α sin θ)+ ⎥
As shown in Fig. 3, we assume that camera optical center ⎢ ⎥
aiI ⎢ sin α(H − zWj
)(biW cos θ − aiW sin θ) ⎥
OC and ZR axes of robot are collinear, α is the pan angle, =⎢
⎢
⎥
⎥
xC axis is parallel to the ground. Function projp projects biI ⎢ ⎥
a random point pjW = [xjW , yW j j T
, zW ] of miW to the point ⎣ −ciW ((xjW − x) cos θ + (y j − y) sin θ))− ⎦
j
j
p I in the image plane: (H − zW )(aiW cos θ + biW sin θ)
(15)
p jI = projp (ϕ
ϕ, p jW ) (10) where H is the distance between OC and OR . Similarly, we
can obtain the vector n iI corresponding to n iW .
This function firstly transforms p jW to p jR in robot co-
2.3 Generating scene feature
ordinates using ϕ , then to p jC = [xjC , yC
j j T
, zC ] in camera
coordinates. If the parameters of the calibrated camera are The scene feature is represented in the Hough domain
given, the image point p jI can be computed. Notice that p jI using the above results as
may be defined by pjC if focal length f is provided, i.e.,
Y i = [ρ, ϑ]T = T (ppjI , v iI )
Ŷ (16)
p jI/C = [xjC f /zC
j j
, yC j
f /zC , −f ]T (11)
where p jI/C denotes the point definition of camera coordi- where function T transforms p jI and v iI into the line that is
defined by ρ and ϑ.
nates for p jI in the image plane.
2.2 Generating model vector 3 Uncertainty manipulations
Let line lIi be the projected image line of miW . lIi is de- We describe here the uncertainty manipulation for robot
fined by p jI = [xjI , yIj , 0]T and vector v iI = [aiI , biI , 0]T , which motion, image processing, and data association. As shown
can also be represented as v iI/C = [aiI , biI , 0]T in camera in Fig. 3, the uncertainty of robot motion may inevitably
coordinates. v iW ∈ miW will be sequentially transformed disturb the projected feature of line. In this case, both
to v iC = [aiC , biC , ciC ]T , and then into v iI . Because v iC lies the descriptions and coordinates of uncertainty are changed
in the interpretation plane[33] passing through OC and lIi , when the random vector is transformed by (2) and (4).
the normal vector N iI/C of this plane is equal to the cross We model these operations in a probability geometric
manner[32] and hold the Gaussian assumption owing to the
product of v iI/C and the vector defined by OC and p jI , i.e.,
central limit theorem[33] .
N iI/C = [biI f, −aiI f, aiI yIj − biI xjI ] (12) 3.1 Uncertainty propagation
The following equation verifies the orthogonality of N iI/C Instead of linearizing (2) and (4) with respect to ϕ , we
with respect to v iC . use unscented transform to capture the statistical proper-
ties of ϕ ∈ Rn×1 . The uncertainty propagation related to
aiC biI − biC aiI + ciC (aiI yIj − biI xjI )/f = 0 (13) (2) includes the following steps:
• Select
√ sample σ j from jth row or column of matrix where Λm n
j and Λj correspond to uncertainties of the de-
± nPk . tected edge pixels.
• Select
sample κ j from jth row or column of matrix
± nPk+1|k .
27 Schmitt T, Hanek R, Beetz M, Buck S, Radig B. Cooperative 37 Burden R L, Faires J D. Numerical Analysis (Seventh Edi-
probabilistic state estimation for vision-based autonomous tion). Beijing: Higher Education Press, 2001. 611−628
mobile robots. IEEE Transactions on Robotics and Automa- 38 Neira J, Tardód os J D, Horn J, Schmidt G. Fusing range and
tion, 2002, 18(5): 670−684 intensity images for mobile robot localization. IEEE Trans-
28 Diosi A, Kleeman L. Advanced sonar and laser range actions on Robotics and Automation, 1999, 15(1): 76−84
finder fusion for simultaneous localization and mapping. In:
Proceedings of IEEE International Conference on Intelli-
gent Robots and Systems. Taipei, Taiwan: IEEE, 2004. WANG Ke Ph. D. candidate in Re-
1854−1859 search Center of Information and Control
29 Bengtsson O, Baerveldt A J. Robot localization based on at Dalian University of Technology. His
scan-matching-estimating the covariance matrix for the IDC research interest covers computer vision,
algorithm. Robotics and Autonomous Systems, 2003, 44(1): image processing, human machine interac-
29−40 tion, and estimation theory and their appli-
cations in robotics. Corresponding author
30 Zhuang Yan, Wang Wei, Wang Ke, Xu Xiao-Dong. Mobile of this paper.
robot indoor simultaneous localization and mapping using E-mail: qingshang00@163.com
laser range finder and monocular vision. Acta Automatica
Sinica, 2005, 31(6): 925−933 (in Chinese)
31 Nicola T. Hybrid, Metric-topological, Mobile Robot Naviga-
tion [Ph. D. dissertation], 2001 WANG Wei Professor in Research
32 Borges G A, Aldon M B. Robustified estimation algorithms Center of Information and Control at
for mobile robot localization based on geometrical environ- Dalian University of Technology. He re-
ment maps. Robotics and Autonomous Systems, 2003, 45(3- ceived his Ph. D. degree in control theory
4): 131−159 and control engineering from Northeastern
University in 1988. He was a post-doctor
33 Dhome M, Richetir M, Lapreste J T. Determination of the at Norwegian Science and Technology Uni-
attitude of 3D objects from a single perspective view. IEEE versity (1990∼1992). His research interest
Transactions on Pattern Analysis and Machine Intelligence, covers predictive control, robotics, and in-
1989, 11(12): 1265−1278 telligent control.
34 Durrant-Whyte H F. Uncertain geometry in robotics. In: E-mail: wangwei@dlut.edu.cn
Proceedings of International Conference on Robotics and
Automation. Oxford, UK: IEEE, 1987. 851−856 ZHUANG Yan Lecturer in Depart-
ment of Automation at Dalian University
35 Ayache N, Fauqeras O D. Maintaining representations of
of Technology. He received his Ph. D. de-
the environment of a mobile robot. IEEE Transactions on
gree in control theory and control engineer-
Robotics and Automation, 1989, 5(6): 804−819
ing from Dalian University of Technology
36 Zhang Z Y, Faugeras O D. 3D Dynamic Scene Analysis: in 2004. His research interest covers robot
a Stereo Based Approach. Berlin: Springer-Verlag, 1992. localization, map building, and navigation.
43−54 E-mail: zhuang@dlut.edu.cn