IEEE Robotics & Automation Magazine - December 2013 - 95

Conclusion
In this article, we showed that the proposed visual SLAM algorithm implemented on an embedded system can be successfully applied to resource-limited consumer robots such as
home cleaning robots. The proposed algorithm is made efficient and robust, in particular, by taking advantage of the
orthogonal structure of indoor environments and the invariance property offered by an upward-looking camera.
First, we proposed an algorithmic visual compass that
yields the absolute orientation information of a mobile robot
by utilizing the orthogonal lines of an environment detected
in an image captured from an upward-looking camera. Using
the algorithmic visual compass, we were able to simplify a
SLAM problem to two linear estimation problems (that correct the robot trajectory represented based on a hierarchical
map structure) because the robot orientation error can be significantly reduced. This resulted in the SLAM algorithm to be
operated in real time with the map accuracy well maintained
even in large-scale indoor environments.
Second, in contrast to a frontal view camera, the scale
invariance property of features that goes with the upward-looking camera in most indoor/home environments allowed us to
use only the 2-D image features extracted at the original image
scale. This helped speed up the feature matching process.
Finally, to further reduce the computational burden, we
integrated an additional localization process based on the
standard Kalman filter into the SLAM framework because the
computational complexity of the pose graph optimization
process based on a hierarchical map representation is still
proportional to the number of poses (or nodes) in the graph.
In the proposed method, the pose graph optimization process
was only performed in unoccupied grids. This approach was
possible because feature matching between two adjacent
images captured from an upward-looking camera can be performed regardless of a rotation of the robot about the z axis of
the robot base reference frame.
We hope this article will attract the attention of researchers
in this field toward the advancement of lightweight, low-cost,
yet highly reliable and real-time, embedded SLAMs, promoting a wide spread of SLAM-based consumer robots in the
coming years.
Acknowledgments
This work was supported in part by the Future IT Laboratory
of LG Electronics Inc., Korea, KORUS-Tech Program
(KT-2008-SW-AP-FSO-0004) of the Ministry of Knowledge
Economy, Korea, and NRF-2013M1A3A02042335, the
Ministry of Science ICT and Future Planning, Korea.
References
[1] H. Bay, A. Ess, T. Tuytelaars, and L. Van Gool, "Speeded-up robust features,"
Int. J. Comput. Vis. Image Understand., vol. 110, no. 3, pp. 346-359, 2008.
[2] J. Nocedal and S. Wright, Numerical Optimization. New York: SpringerVerlag, 1999.
[3] S. Lee, S. Lee, and J. J. Yoon, "Illumination-invariant localization based on
upward looking scenes for low-cost indoor robots," Adv. Robot., vol. 26, no. 13,
pp. 1443-1469, 2012.

[4] A. J. Davison, "Real-time simultaneous localisation and mapping with a
single camera," in Proc. IEEE Int. Conf. Computer Vision, Beijing, China, 2003,
pp. 1403-1410.
[5] L. A. Clemente, A. J. Davison, I. D. Reid, J. Neira, and J. D. Tardós,
"Mapping large loops with a single hand-held camera," in Proc. Robotics:
Science Systems, Atlanta, GA, 2007.
[6] S. Thrun, M. Bennewitz, W. Burgard, A. Cremers, F. Dellaert, D. Fox, D.
Hähnel, C. Rosenberg, N. Roy, J. Schulte, and D. Schulz, "MINERVA: A second generation mobile tour-guide robot," in Proc. IEEE Int. Conf. Robotics
Automation, Detroit, MI, 1999, pp. 1999-2005.
[7] H. F. Durrant-Whyte and T. Bailey, "Simultaneous localization and mapping: Part I," IEEE Robot. Automat. Mag., vol. 13, no. 2, pp. 99-110, 2006.
[8] T. Bailey and H. F. Durrant-Whyte, "Simultaneous localization and mapping: Part II," IEEE Robot. Automat. Mag., vol. 13, no. 2, pp. 108-117, 2006.
[9] S. Thrun, W. Burgard, and D. Fox, Probabilistic Robotics. Cambridge, MA:
MIT Press, 2005.
[10] R. Hartley and A. Zisserman, Multiple View Geometry in Computer
Vision. Cambridge, MA: Cambridge Univ. Press, 2000.
[11] J. Folkesson, P. Jensfelt, and H. Christensen, "Vision SLAM in the measurement subspace," in Proc. IEEE Int. Conf. Robotics Automation, Barcelona,
Spain, 2005, pp. 30-35.
[12] J. Montiel and A. J. Davison, "A visual compass based on SLAM," in Proc.
IEEE Int. Conf. Robotics Automation, Orlando, FL, 2006, pp. 1917-1922.
[13] G. Grisetti, C. Stachniss, S. Grzonka, and W. Burgard, "A tree parameterization for efficiently computing maximum likelihood maps using gradient
descent," in Proc. Robotics: Science Systems, Atlanta, GA, 2007.
[14] Z. Zhang, "Determining the epipolar geometry and its uncertainty: A
review," Int. J. Comput. Vis., vol. 27, no. 2, pp. 161-195, 1998.
[15] C. Harris and M. Stephens, "A combined corner and edge detector," in
Proc. 4th Alvey Vision Conf., Manchester, U.K., 1988, pp. 147-151.
[16] F. Lu and E. Milios, "Globally consistent range scan alignment for environment mapping," Auton. Robot., vol. 4, no. 4, pp. 333-349, 1997.
[17] W. Y. Jeong and K. M. Lee, "CV-SLAM: A new ceiling vision-based SLAM
technique," in Proc. IEEE/RSJ Int. Conf. Intelligent Robots Systems, Edmonton,
AB, Canada, 2005, pp. 3195-3200.
[18] J. M. M. Montiel, J. Civera, and A. J. Davison, "Unified inverse depth
parametrization for monocular SLAM," in Proc. Robotics: Science Systems,
Cambridge, CA, 2006, pp. 16-19.
[19] N. Karlsson, E. D. Bernardo, J. Ostrowski, L. Goncalves, P. Pirjanian, and
M. E. Munich, "The vSLAM algorithm for robust localization and mapping," in
Proc. IEEE Int. Conf. Robotics Automation, Barcelona, Spain, 2005, pp. 24-29.
[20] B. Steder, G. Grisetti, C. Stachniss, and W. Burgard, "Visual SLAM for
flying vehicles," IEEE Trans. Robot., vol. 24, no. 5, pp. 1088-1093, 2008.
[21] P. Rybski, F. Zacharias, J. Lett, O. Masoud, M. Gini, and N. Papanikolopoulos,
"Using visual features to build topological maps of indoor environments," in Proc.
IEEE Int. Conf. Robotics Automation, Taipei, Taiwan, 2003, pp. 850-855.
[22] A. Koenig, J. Kessler, and H.-M. Gross, "A graph matching technique for an
appearance-based, visual SLAM-approach using Rao-Blackwellized particle filters,"
in Proc. IEEE Int. Conf. Intelligent Robots Systems, Nice, France, 2008, pp. 1576-1581.
[23] K. Konolige, "SLAM via variable reduction from constraint maps," in Proc.
IEEE Int. Conf. Robotics Automation, Barcelona, Spain, 2005, pp. 667-672.
[24] K. Konolige and M. Agrawal, "FrameSLAM: From bundle adjustment to realtime visual mapping," IEEE Trans. Robot., vol. 24, no. 5, pp. 1066-1077, 2008.
[25] S. Lee, E. Kim, and Y. Park, "3D object recognition using multiple features
for robotic manipulation," in Proc. IEEE Int. Conf. Robotics Automation,
Orlando, FL, 2006, pp. 3768-3774.

Seongsoo Lee, Future IT Laboratory, LG Electronics Inc., Seoul,
Korea. E-mail: seongsoo007@gmail.com.
Sukhan Lee, School of Information and Communication
Engineering and Department of Interaction Science,
Sungkyunkwan University, Suwon, Korea. E-mail: lsh@ece.
skku.ac.kr.
DECEMBER 2013

*

IEEE ROBOTICS & AUTOMATION MAGAZINE

*

95


http://skku.ac.kr

Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - December 2013

IEEE Robotics & Automation Magazine - December 2013 - Cover1
IEEE Robotics & Automation Magazine - December 2013 - Cover2
IEEE Robotics & Automation Magazine - December 2013 - 1
IEEE Robotics & Automation Magazine - December 2013 - 2
IEEE Robotics & Automation Magazine - December 2013 - 3
IEEE Robotics & Automation Magazine - December 2013 - 4
IEEE Robotics & Automation Magazine - December 2013 - 5
IEEE Robotics & Automation Magazine - December 2013 - 6
IEEE Robotics & Automation Magazine - December 2013 - 7
IEEE Robotics & Automation Magazine - December 2013 - 8
IEEE Robotics & Automation Magazine - December 2013 - 9
IEEE Robotics & Automation Magazine - December 2013 - 10
IEEE Robotics & Automation Magazine - December 2013 - 11
IEEE Robotics & Automation Magazine - December 2013 - 12
IEEE Robotics & Automation Magazine - December 2013 - 13
IEEE Robotics & Automation Magazine - December 2013 - 14
IEEE Robotics & Automation Magazine - December 2013 - 15
IEEE Robotics & Automation Magazine - December 2013 - 16
IEEE Robotics & Automation Magazine - December 2013 - 17
IEEE Robotics & Automation Magazine - December 2013 - 18
IEEE Robotics & Automation Magazine - December 2013 - 19
IEEE Robotics & Automation Magazine - December 2013 - 20
IEEE Robotics & Automation Magazine - December 2013 - 21
IEEE Robotics & Automation Magazine - December 2013 - 22
IEEE Robotics & Automation Magazine - December 2013 - 23
IEEE Robotics & Automation Magazine - December 2013 - 24
IEEE Robotics & Automation Magazine - December 2013 - 25
IEEE Robotics & Automation Magazine - December 2013 - 26
IEEE Robotics & Automation Magazine - December 2013 - 27
IEEE Robotics & Automation Magazine - December 2013 - 28
IEEE Robotics & Automation Magazine - December 2013 - 29
IEEE Robotics & Automation Magazine - December 2013 - 30
IEEE Robotics & Automation Magazine - December 2013 - 31
IEEE Robotics & Automation Magazine - December 2013 - 32
IEEE Robotics & Automation Magazine - December 2013 - 33
IEEE Robotics & Automation Magazine - December 2013 - 34
IEEE Robotics & Automation Magazine - December 2013 - 35
IEEE Robotics & Automation Magazine - December 2013 - 36
IEEE Robotics & Automation Magazine - December 2013 - 37
IEEE Robotics & Automation Magazine - December 2013 - 38
IEEE Robotics & Automation Magazine - December 2013 - 39
IEEE Robotics & Automation Magazine - December 2013 - 40
IEEE Robotics & Automation Magazine - December 2013 - 41
IEEE Robotics & Automation Magazine - December 2013 - 42
IEEE Robotics & Automation Magazine - December 2013 - 43
IEEE Robotics & Automation Magazine - December 2013 - 44
IEEE Robotics & Automation Magazine - December 2013 - 45
IEEE Robotics & Automation Magazine - December 2013 - 46
IEEE Robotics & Automation Magazine - December 2013 - 47
IEEE Robotics & Automation Magazine - December 2013 - 48
IEEE Robotics & Automation Magazine - December 2013 - 49
IEEE Robotics & Automation Magazine - December 2013 - 50
IEEE Robotics & Automation Magazine - December 2013 - 51
IEEE Robotics & Automation Magazine - December 2013 - 52
IEEE Robotics & Automation Magazine - December 2013 - 53
IEEE Robotics & Automation Magazine - December 2013 - 54
IEEE Robotics & Automation Magazine - December 2013 - 55
IEEE Robotics & Automation Magazine - December 2013 - 56
IEEE Robotics & Automation Magazine - December 2013 - 57
IEEE Robotics & Automation Magazine - December 2013 - 58
IEEE Robotics & Automation Magazine - December 2013 - 59
IEEE Robotics & Automation Magazine - December 2013 - 60
IEEE Robotics & Automation Magazine - December 2013 - 61
IEEE Robotics & Automation Magazine - December 2013 - 62
IEEE Robotics & Automation Magazine - December 2013 - 63
IEEE Robotics & Automation Magazine - December 2013 - 64
IEEE Robotics & Automation Magazine - December 2013 - 65
IEEE Robotics & Automation Magazine - December 2013 - 66
IEEE Robotics & Automation Magazine - December 2013 - 67
IEEE Robotics & Automation Magazine - December 2013 - 68
IEEE Robotics & Automation Magazine - December 2013 - 69
IEEE Robotics & Automation Magazine - December 2013 - 70
IEEE Robotics & Automation Magazine - December 2013 - 71
IEEE Robotics & Automation Magazine - December 2013 - 72
IEEE Robotics & Automation Magazine - December 2013 - 73
IEEE Robotics & Automation Magazine - December 2013 - 74
IEEE Robotics & Automation Magazine - December 2013 - 75
IEEE Robotics & Automation Magazine - December 2013 - 76
IEEE Robotics & Automation Magazine - December 2013 - 77
IEEE Robotics & Automation Magazine - December 2013 - 78
IEEE Robotics & Automation Magazine - December 2013 - 79
IEEE Robotics & Automation Magazine - December 2013 - 80
IEEE Robotics & Automation Magazine - December 2013 - 81
IEEE Robotics & Automation Magazine - December 2013 - 82
IEEE Robotics & Automation Magazine - December 2013 - 83
IEEE Robotics & Automation Magazine - December 2013 - 84
IEEE Robotics & Automation Magazine - December 2013 - 85
IEEE Robotics & Automation Magazine - December 2013 - 86
IEEE Robotics & Automation Magazine - December 2013 - 87
IEEE Robotics & Automation Magazine - December 2013 - 88
IEEE Robotics & Automation Magazine - December 2013 - 89
IEEE Robotics & Automation Magazine - December 2013 - 90
IEEE Robotics & Automation Magazine - December 2013 - 91
IEEE Robotics & Automation Magazine - December 2013 - 92
IEEE Robotics & Automation Magazine - December 2013 - 93
IEEE Robotics & Automation Magazine - December 2013 - 94
IEEE Robotics & Automation Magazine - December 2013 - 95
IEEE Robotics & Automation Magazine - December 2013 - 96
IEEE Robotics & Automation Magazine - December 2013 - 97
IEEE Robotics & Automation Magazine - December 2013 - 98
IEEE Robotics & Automation Magazine - December 2013 - 99
IEEE Robotics & Automation Magazine - December 2013 - 100
IEEE Robotics & Automation Magazine - December 2013 - 101
IEEE Robotics & Automation Magazine - December 2013 - 102
IEEE Robotics & Automation Magazine - December 2013 - 103
IEEE Robotics & Automation Magazine - December 2013 - 104
IEEE Robotics & Automation Magazine - December 2013 - 105
IEEE Robotics & Automation Magazine - December 2013 - 106
IEEE Robotics & Automation Magazine - December 2013 - 107
IEEE Robotics & Automation Magazine - December 2013 - 108
IEEE Robotics & Automation Magazine - December 2013 - 109
IEEE Robotics & Automation Magazine - December 2013 - 110
IEEE Robotics & Automation Magazine - December 2013 - 111
IEEE Robotics & Automation Magazine - December 2013 - 112
IEEE Robotics & Automation Magazine - December 2013 - 113
IEEE Robotics & Automation Magazine - December 2013 - 114
IEEE Robotics & Automation Magazine - December 2013 - 115
IEEE Robotics & Automation Magazine - December 2013 - 116
IEEE Robotics & Automation Magazine - December 2013 - 117
IEEE Robotics & Automation Magazine - December 2013 - 118
IEEE Robotics & Automation Magazine - December 2013 - 119
IEEE Robotics & Automation Magazine - December 2013 - 120
IEEE Robotics & Automation Magazine - December 2013 - 121
IEEE Robotics & Automation Magazine - December 2013 - 122
IEEE Robotics & Automation Magazine - December 2013 - 123
IEEE Robotics & Automation Magazine - December 2013 - 124
IEEE Robotics & Automation Magazine - December 2013 - 125
IEEE Robotics & Automation Magazine - December 2013 - 126
IEEE Robotics & Automation Magazine - December 2013 - 127
IEEE Robotics & Automation Magazine - December 2013 - 128
IEEE Robotics & Automation Magazine - December 2013 - 129
IEEE Robotics & Automation Magazine - December 2013 - 130
IEEE Robotics & Automation Magazine - December 2013 - 131
IEEE Robotics & Automation Magazine - December 2013 - 132
IEEE Robotics & Automation Magazine - December 2013 - 133
IEEE Robotics & Automation Magazine - December 2013 - 134
IEEE Robotics & Automation Magazine - December 2013 - 135
IEEE Robotics & Automation Magazine - December 2013 - 136
IEEE Robotics & Automation Magazine - December 2013 - 137
IEEE Robotics & Automation Magazine - December 2013 - 138
IEEE Robotics & Automation Magazine - December 2013 - 139
IEEE Robotics & Automation Magazine - December 2013 - 140
IEEE Robotics & Automation Magazine - December 2013 - 141
IEEE Robotics & Automation Magazine - December 2013 - 142
IEEE Robotics & Automation Magazine - December 2013 - 143
IEEE Robotics & Automation Magazine - December 2013 - 144
IEEE Robotics & Automation Magazine - December 2013 - 145
IEEE Robotics & Automation Magazine - December 2013 - 146
IEEE Robotics & Automation Magazine - December 2013 - 147
IEEE Robotics & Automation Magazine - December 2013 - 148
IEEE Robotics & Automation Magazine - December 2013 - 149
IEEE Robotics & Automation Magazine - December 2013 - 150
IEEE Robotics & Automation Magazine - December 2013 - 151
IEEE Robotics & Automation Magazine - December 2013 - 152
IEEE Robotics & Automation Magazine - December 2013 - 153
IEEE Robotics & Automation Magazine - December 2013 - 154
IEEE Robotics & Automation Magazine - December 2013 - 155
IEEE Robotics & Automation Magazine - December 2013 - 156
IEEE Robotics & Automation Magazine - December 2013 - 157
IEEE Robotics & Automation Magazine - December 2013 - 158
IEEE Robotics & Automation Magazine - December 2013 - 159
IEEE Robotics & Automation Magazine - December 2013 - 160
IEEE Robotics & Automation Magazine - December 2013 - 161
IEEE Robotics & Automation Magazine - December 2013 - 162
IEEE Robotics & Automation Magazine - December 2013 - 163
IEEE Robotics & Automation Magazine - December 2013 - 164
IEEE Robotics & Automation Magazine - December 2013 - 165
IEEE Robotics & Automation Magazine - December 2013 - 166
IEEE Robotics & Automation Magazine - December 2013 - 167
IEEE Robotics & Automation Magazine - December 2013 - 168
IEEE Robotics & Automation Magazine - December 2013 - 169
IEEE Robotics & Automation Magazine - December 2013 - 170
IEEE Robotics & Automation Magazine - December 2013 - 171
IEEE Robotics & Automation Magazine - December 2013 - 172
IEEE Robotics & Automation Magazine - December 2013 - 173
IEEE Robotics & Automation Magazine - December 2013 - 174
IEEE Robotics & Automation Magazine - December 2013 - 175
IEEE Robotics & Automation Magazine - December 2013 - 176
IEEE Robotics & Automation Magazine - December 2013 - Cover3
IEEE Robotics & Automation Magazine - December 2013 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com