You are on page 1of 6

Edge-based Loop Closure Detection in Visual

SLAM
Dario F. Mendieta Francisco Raverta Capua Juan José Tarrio
Facultad de Ingenierı́a Facultad de Ingenierı́a Instituto Balseiro - CNEA
Universidad Nacional del Comahue Universidad Nacional del Comahue Bustillo 9500
Neuquén, Argentina Neuquén, Argentina Bariloche, Rio Negro, Argentina
dario.mendieta@fain.uncoma.edu.ar francisco.raverta@fain.uncoma.edu.ar juan.tarrio@gmail.com

Marcelo L. Moreyra
Facultad de Ingenierı́a
Universidad Nacional del Comahue
Neuquén, Argentina
marcelo.moreyra@fain.uncoma.edu.ar

Abstract— In robotics research which is focused on vision- VSLAM la habilidad de reconocer los lugares previamente
based localization estimation, Loop Closure Detection (LCD) visitados, de tal manera de poder corregir la posición actual
algorithms used to recognize visited places, have been estab- del vehı́culo, y por ende todo el mapa. Con la detección de
lished as the solution to the problem of error drift in Visual
SLAM systems. In this paper, an LCD system based on the los cruces por el mismo lugar, una etapa de minimización
popular DoW2 module is analyzed using a classical state-of-art como el BA (por sus siglas en inglés de Bundle Adjusment)
solution for keypoints extraction like FAST, and our proposal [3] puede realizar el ajuste local y global del mapa. La
for keypoint selection based on image edges detection. The disposición de módulo LCD es de gran importancia para
behavior of the system is analyzed and tested in three different un sistema de VSLAM, tal como se refleja en técnicas del
datasets (one indoors and two outdoors). This preliminary
work aims to be an initial design for future development of an estado del arte como ORB-SLAM [4] y S-PTAM [5].
LCD module to add to Visual SLAM Rebvo system. Para reconocer un cierre de lazo, es necesario establecer
Index Terms—Visual SLAM, Loop Closure Detection, Edges mecanismos para describir los lugares, ambientes o escenas
Detection, Keylines. presentes en una imagen. Las estrategias que se enfocan en
la apariencia de una imagen han cobrado gran interés porque
I. I NTRODUCCI ÓN no dependen de la localización del vehı́culo. Al representar
En el ámbito de la robótica móvil, para determinar la la apariencia de un lugar, existe una gran variedad de
ubicación de un vehı́culo se emplean usualmente unidades algoritmos que se diferencian principalmente por el tipo
de medición inercial (IMU), encoders y sensores de posi- de caracterı́sticas que detectan y el modelo usado en la
cionamiento global como GPS. Cuando además el en- representación de la escena [6], [7]. Las caracterı́sticas
torno del robot o vehı́culo es desconocido, es posible la binarias, por ejemplo, han recibido notable atención en estos
navegación a través de la localización y la construcción últimos años [8]. El empleo de descriptores binarios ofrece
de un mapa del medio mediante algoritmos que procesan un desempeño similar a SIFT [7] (por sus siglas en inglés
mediciones de rango de sensores como un radar o LIDAR. de Scale-Invariant Feature Transform) y SURF [9] (por sus
Este problema es ampliamente conocido en la comunidad siglas en inglés de Speeded-Up Robust Features) pero a un
como SLAM (por su siglas en inglés de Simultaneous menor costo computacional y de almacenamiento [10].
Localization and Mapping), ası́ también como su solución En lo que respecta al modelo para la representación de
tı́pica denominada EKF-SLAM utilizando el filtro EKF (por un lugar, BoW (por sus siglas en inglés de Bag of Words)
su siglas en inglés de Extended Kalman Filter). es el más usado y proviene del campo del procesamiento
A partir del año 2000 comenzaron a cobrar gran interés las del lenguaje. Esta estrategia permite modelar una escena
estrategias de VISUAL SLAM o VSLAM (por sus siglas en como un conjunto de palabras visuales (en inglés visual
inglés de Visual Simultaneous Localization and Mapping), words) que se obtienen de realizar una segmentación sobre
que emplean una cámara como sensor principal para la el espacio de descriptores [11]. Además, al descartar la
localización del vehı́culo, debido a que son sensores no información geométrica en la imagen, resulta menos costosa
invasivos, de bajo costo y tamaño compacto. La elección computacionalmente. Si bien aquı́ se ha hecho enfoque en
de la cámara influye además en la deriva del error en la las técnicas de BoW, también serı́a posible emplear modelos
localización del móvil y construcción del mapa de este tipo probabilı́sticos como el de [1], que también se ha vuelto un
de técnicas de SLAM a medida que el tiempo avanza. estándar en el ambiente de reconocimiento de lugar.
En esta última década, los algoritmos de LCD (por En este trabajo se evaluan dos estrategias para la detección
sus siglas en inglés de Loop Closure Detection) se han de puntos caracterı́sticos para alimentar un sistema de LCD
establecido como una solución al problema de la deriva del basado en el módulo DBoW2. Se demuestra experimental-
error [1], [2]. Su concepto radica en darle al sistema de mente en datasets públicos del tipo de interiores y de exte-
riores que serı́a posible reemplazar a detectores tı́picamente
utilizados en el estado del arte por detectores basados en
detectores de bordes.

II. E XTRACCI ÓN DE CARACTER ÍSTICAS PARA


REPRESENTAR UNA IMAGEN

Para representar la apariencia del lugar en una imagen,


es de vital importancia definir caracterı́sticas visuales de
interés que puedan emplearse en la construcción de una
medida de similitud. Se entiende por caracterı́sticas aquello
pixeles o regiones que por su brillo, contraste, orientación Fig 1. Detector FAST: Cı́rculo de Bresenham de radio r = 3 y centro p
o gradiente se destacan, como sucede en algoritmos de (imagen extraı́da de [9]).
detección de bordes que seleccionan puntos por la mag-
nitud de su gradiente; detección de puntos esquinas que
buscan el cruce de dos bordes o la detección de regiones la imagen I(x, y) en escala de grises, para cada punto
de textura destacable por la orientación de su gradiente. candidato p se define un cı́rculo Bresenham de radio r. La
La variedad de caracterı́sticas para representar una imagen intensidad del punto p se clasifica con la de todos los puntos
pueden clasificarse en caracterı́sticas locales [12] y globales sobre el cı́rculo en 3 categorı́as: más claro que p, mas oscuro
[13]. Las locales seleccionan puntos o regiones de interés en que p y similar a p. Si se encuentran S pixeles conectados
la imagen procesada y el resto de los pixeles se ignora. De que pertenezcan a la misma clasificación, entonces el punto
esta forma pueden caracterizar partes u objetos individuales p se considera como punto caracterı́stico. En su trabajo
en la imagen. En contraste, las caracterı́sticas globales no original [15], Rosten y Drummond definen r = 3 y S = 12,
emplean ningún mecanismo de selección y procesan todos obteniendo de esta forma un cı́rculo Bresenham de 12 puntos
los pixeles sin importar su contenido, permitiendo una como se observa en la Fig. 1.
caracterización completa y general de la imagen. Las car- 2) Keylines: A pesar de que existen muchas opciones en
acterı́sticas locales son preferidas por su robustez antes los la literatura, se decide emplear en este trabajo el detector
cambios en las apariencias visuales principales como puede [16] por su robustez, precisión en la ubicación de los bordes
ocurrir en oclusiones, cambio de perspectiva o iluminación. detectados y rapidez computacional. En este detector, los
Además, permiten construir caracterı́sticas globales a partir bordes son un conjunto de pixeles denominados keylines.
de ellas. Los algoritmos para la selección de caracterı́sticas La extracción de bordes en la imagen I(x, y) se basa
locales se desdoblan en etapas de detección y descripción. principalmente en la detección de cruces por cero de un
Se describen a continuación los métodos empleados en este filtro DoG (del inglés Difference of Gaussian) a partir de la
trabajo para cada una de esas etapas. diferencia de L1 (x, y, σ1 ) y L2 (x, y, σ2 ) donde L(x, y, σ) es
la imagen suavizada con un filtro gaussiano de escala σ. Para
A. Detectores realizar un descarte rápido de los ”pixeles débiles” se emplea
Si bien la literatura en Computer Vision es extensa, entre el gradiente de la imagen L(x, y, σ) con el valor de escala
los detectores de puntos caracterı́sticos se destacan HARRIS más pequeño. La detección de cruce por cero se implementa
[14] y FAST [15] y en lo que respecta a los detectores de evaluando la proporción de puntos positivos respecto a la
regiones SIFT [7] y SURF [9]. Se clasifican en aquellos que de negativos sobre la imagen DoG. Se logra obtener una
detectan puntos salientes, o regiones, o directamente realizan precisión de subpixel ajustando un plano a la imagen DoG
una selección aleatoria o uniforme sobre la imagen. Prin- en el pixel candidato.
cipalmente se diferencian por su tiempo de procesamiento,
invariancia a la escala, rotación, transformación proyectiva y B. Descriptores
robustez. El resultado de esta etapa es un vector que contiene Tiene la finalidad de caracterizar la apariencia de cada
un punto o conjunto de puntos. keypoint a partir de sus pixeles vecinos. El resultado de esta
En este trabajo se emplea por un lado el detector de etapa es un vector N dimensional llamado descriptor. Como
puntos caracterı́sticos FAST (por sus siglas en inglés de medida de similaridad para comparar y asociar keypoints
Features from Accelerated Segment Test) por su capacidad puede emplearse la norma L1 o L2 , entre otras métricas.
de encontrar estructuras discriminantes, repetibles, y su bajo Tanto la construcción de descriptores como la detección de
costo computacional, y por otro lado, el detector de bordes keypoints son los procesos de mayor costo computacional,
de [16] que proporciona keylines con mucha estructura de como se muestra en las Tablas I y II extraı́das de [10]. Los
forma rápida y robusta. algoritmos como SIFT y SURF, ampliamente populares en
1) Detector FAST: Una imagen digital I(x, y) es un ar- la comunidad, permiten obtener descriptores robustos por
reglo rectangular de h filas y w columnas tal que 1 ≤ y ≤ h su invariancia a la luz, escala y rotación. Dado que son
y 1 ≤ x ≤ w, donde I(x, y) representa el valor de intensidad vectores de valores en punto flotante (simple precisión) y
en las coordenadas espaciales del pixel p = (x, y). una dimensión elevada, conllevan un enorme costo computa-
El detector FAST de puntos caracterı́sticos (en inglés cional. Un sistema SLAM que emplee descriptores SIFT, por
keypoints) es un algoritmo rápido y muy eficiente, que ejemplo, debe emplear alguna estrategia de aceleración de
consiste en la evaluación de similaridad entre los puntos cálculos por hardware, como puede ser el uso de GPUs (del
pertenecientes a la región de interés y su centro. Dada inglés Graphics Processing Unit).
Tabla I
T IEMPO PROMEDIO PARA LA EXTRACCI ÓN DE UN KEYPOINT [10]. visual words vt se conoce como vector BoW, y permite una
asociación rápida entre imágenes mediante la norma L1 o
Detector Tiempo de detección [µs ] L2 por ejemplo.
FAST 0.87857
ORB 16.39273 Para este trabajo se emplea el módulo de DBoW2 de
BRISK 30.6353 Galvez-Lopez y Tardós [18]. DBoW2 es el primer sistema
SIFT 229.67313 de BoW que emplea descriptores binarios para obtener el
vector BoW correspondiente a cada imagen. Esta propuesta
Tabla II
T IEMPO PROMEDIO PARA EL C ÁLCULO DE UN DESCRIPTOR .
implementa la estructura jerárquica de árbol planteada en
[19] para el vocabulario e implementa una base de datos de
Descriptor Tiempo de extracción [µs ] los ı́ndices directo e inverso con el propósito de optimizar las
BRIEF 7.4299
ORB 14.57.47
búsquedas, tal como se ilustra en la Fig. 2 (imagen extraı́da
BRISK 9.60987 del original de [18]).
SIFT 174.4480
IV. D ETECCI ÓN DE C IERRE DE L AZO
Con el módulo DBoW2 para convertir la imagen It en
En este panorama, han cobrado interés los descriptores el vector BoW vt , pueden obtenerse todas las imágenes
binarios que se emplearán en este trabajo. Básicamente, candidatas Ic en I t−1 a cerrar el lazo. Para definir si
son vectores de valores binarios, es decir, que el descriptor efectivamente en el instante t hay un cierre de lazo es
resultante es un vector de bits. El proceso de asociación necesario definir una polı́tica de gestión sobre cuáles son
puede realizarse eficientemente a través de operaciones las imágenes candidatas y cuál de éstas verifican un efectivo
binarias rápidas como por ejemplo la distancia Hamming. cierre de lazo. Según [2], [8] y [18] es importante considerar
1) Descriptor BRIEF: Por siglas en inglés de Binary los siguientes criterios para descartar falsos positivos:
Robust Independent Elementary Features es el descriptor • Descartar los p recientes frames como imagen can-
propuesto por Calonder en [17]. Cada bit se define a partir didata Ic , dado que imágenes cercanas pueden tener
de las diferencias de intensidad entre pares de pı́xeles en la apariencias similares.
región de interés alrededor del keypoint. Su simplicidad le • Buscar en la base de datos las imágenes cuya similar-
otorga un costo mucho menor que SIFT como se muestra idad con It supere cierto umbral.
en la tabla II, con la desventaja de ser sensible al ruido y • Agrupar las imágenes candidatas con cercanı́a temporal
cambios de escala y rotación. En este sentido, han surgido en una única candidata.
descriptores binarios invariantes a escala y rotación como • Si el costo computacional lo permite, puede realizarse
ORB y BRISK [12], capaces de igualar y hasta superar una verificación geométrica entre la mejor candidata y
en algunos casos la calidad de las caracterı́sticas visuales la imagen It .
extraı́das por métodos más demandantes como SIFT o Aquella imagen Ic que verifique los criterios anteriores, se
SURF. considera que cierra el lazo con It .
Galvez-Lopez y Tardós ofrecen una herramienta [20] que
III. M ODELO PARA DESCRIBIR LA APARIENCIA DE UNA
sigue los lineamientos anteriores llamada DLoopDetector
ESCENA
disponible en [21], y es la que se empleará en la sigu-
Dada una secuencia de imágenes I t ≡ {I0 , I1 , . . . , It } iente sección para analizar los resultados experimentales
hasta el instante de tiempo t, para encontrar si la escena en obtenidos con cinco datasets diferentes.
It ya fue visitada anteriormente en I t−1 es necesario definir
una estrategia. Se podrı́an analizar todas las corresponden- V. E XPERIMENTOS Y R ESULTADOS
cias entre los descriptores de It y cada imagen en I t−1 , Los algoritmos para la extracción de keypoints, descrip-
pero esto serı́a realmente muy costo computacionalmente y tores, DBoW2 y DLoopDetector se compilaron y probaron
además poco robusto. en Qt 5.9 con OpenCV 3.3.0 en Ubuntu 16.04 LTS, con
En este sentido, BoW es un modelo ampliamente usado un procesador AMD Phenom II X6 1075T, con 8 Gb de
y efectivo para obtener un descriptor global de una imagen. memoria RAM.
Sivic y Zisserman en [11], proponen representar cualquier
imagen como un histograma vt (siguiendo la notación de
[11]) de n visual words de un vocabulario W . Para esto,
en una etapa de entrenamiento se procesa una secuencia de
imágenes que contemple una amplia variados de escenarios
posibles, tanto Indoor como Outdoor, estructurado y no
estructurado, estático o dinámico. Sobre esta secuencia se
extraen todos los descriptores para agruparlos con algún
método de clusterización como kmeans. Cada cluster tiene
un descriptor como representante y es lo que se conoce
como visual word. El conjunto de estos n clusters define
el vocabulario W. Finalmente, la construcción de vt es
equivalente a pensar en la proyección de todos los descrip- Fig 2. Estructura jerárquica del vocabulario y base de datos (imagen
tores encontrados en la imagen sobre W. El histograma de extraı́da de [18]).
75
57
61 77 81 85 89
A. Detector Propuesto 65
6973
53
93
97 Fast
Edges

En este trabajo se define punto-lı́nea pl al keypoint que 76


49 101

se obtiene a partir de una keyline. Dada la keyline kl , se 45


77 105
compara el ángulo de su vector normal con el de sus vecinas
41
anterior y posterior. Si este valor supera el umbral pl th , kl es

x[m]
78
109
considerada un pl . En las Fig. 3, y 4 se observa el resultado 37

de la extracción de keypoints en dos daset Indoor de [23]. 79


33
Los cı́rculos rojos representan puntos-lı́nea y los bordes 29
113
80 Fin 13
azules indican keylines en las Fig. 3(a), y 4(a). Puede verse 2517
21 121
9
117
5
Inicio

claramente como las keylines siguen la estructura existente 81


27 28 29 30 31 32 33 34
en la escena. Las Fig. 3(b), y 4(b) muestran el resultado de y[m]
las extracción de puntos FAST. La distribución de keypoints
en las Fig. 3, y 4 muestran las similitudes entre puntos- Fig 5. Detección de cierre de lazo en Bicocca [22].
lı́nea y puntos FAST. Esto permite suponer a priori que los
resultados en la detección de cierre de lazo también serán -3.5
Fast
similares. -3
501
451 Edges
551 301 251
401 351
-2.5
201
B. Detección de Cierre de Lazo -2
601
Fin 2901
2851
2951 2801
151 101
2751
801 751 701 651 51
El módulo de DBoW2 tiene disponible un vocabulario de -1.5
851
901
1101
1051
1001
951
2701
1 Inicio
2651
un millón de visual words, entrenado sobre un dataset de

y[m]
-1 2601 2551

10000 imágenes y es el que se usó en estas simulaciones. -0.5 2501


2451
1301
1251
1201
1151
La cantidad de puntos detectados en cada frame por FAST 0 1351
1401
2351
2401

y el algoritmo de puntos-lı́neas es similar como se observó 0.5


1451
1501
1551
1601
1651
2051
2101
2001 2151 2201
2251
2301

1701
1751
en la Sección V-A, variando según el dataset empleado. Los 1
1801
1851 1901 1951

datasets analizados se describen en la Tabla III. Cada uno de 1.5


3.5 3 2.5 2 1.5 1 0.5 0 -0.5 -1
estos incluye tanto una secuencia de imágenes como también x[m]

la información de la posición del vehı́culo.


Se analizan dos estrategias de LCD. La primera es la Fig 6. Detección de cierre de lazo en freiburg2 xyz [23].
misma que [18], donde la detección de keypoints se real-
iza mediante FAST. La segunda estrategia emplea puntos-
lı́nea como keypoints. En ambos casos los descriptores que trazo negro y en color rojo o azul los lugares donde se
procesa DLoopDetector son del tipo BRIEF. detecta un cierre de lazo. En la Fig. 5 se observa que los
Las Fig. 5, 6, 7, 8 y 9 muestran los resultados de la lugares detectados por ambas estrategias son exactamente
detección del cierre de lazo con ambas estrategias. En los mismos. El comportamiento que se muestra en las
cada caso, aparece la trayectoria real del vehı́culo en un detecciones relevadas tanto en la Fig. 6 como en Fig. 7
es ligeramente diferente. La Fig. 5 muestra puntos con un
claro LCD, dado que el dataset es de pocos frames y el
movimiento del robot es regular y continuo. En la Fig. 6 y
7 se observan múltiples LCD dado que el movimiento de
la Kinect es lento y libre. Finalmente, en las Figs. 8 y 9 a
pesar de que los resultados de la detección del cierre de lazo
son distintos, la diferencia observada entre ambas estrategias
es pequeña. En este sentido, es destacable que la segunda
estrategia de puntos-lı́nea, tiene el potencial de proporcionar
(a) (b)
una mayor cantidad de detecciones de cierere de lazo.
Fig 3. Selección de keypoints en un frame del dataset
freiburg2 large with loop [23]. a) keylines en color azul. b) Puntos
FAST.

(a) (b)

Fig 4. Selección de keypoints en un frame del dataset freiburg2 xyz [23].


a) keylines en color azul. b) Puntos FAST.
Fig 7. Detección de cierre de lazo en freiburg2 large with loop [23].
Tabla III
DATASETS ANALIZADOS EN EL PRESENTE TRABAJO .

Dataset Vehı́culo Descripción Resolución Nro de frames


Bicocca [22] Robot terrestre Indoors 640x480 123
Kinect con suaves movimiento en las tres
freiburg2 xyz [23] Indoors 640x480 2965
direcciones
freiburg2 large with loop [23] Kinect con suaves movimiento en las tres direcciones Indoors 640x480 5182
New College [1] RobotCar Outdoors 640x480 2146
City Centre [1] RobotCar Outdoors 640x480 2474

-690 -100 200Inicio


Fast 1640
560 Fast
-700 280
470
-710 1550
100 10 1540 -150
1450 290
-720 1460
190 1370 380 1730
650
Inicio
-730 370 910 1180 -200 Fin
550 730 1630
-740
y[m]

y[m]
1270
1360 2360
Fin 1280
-750 640 1720 740
1090
820 -250 2270 1820
1190
-760 460
1000
-770 830
1910
1900 2180
-780 -300 1100
920
2000
-790 1810
1010
2090
-800 -350
500 550 600 650 700 750 150 200 250 300 350 400 450
x[m] x[m]

(a) FAST y BRIEF. (a) FAST y BRIEF.


-690
Edges -100 200Inicio
-700 280 1640
560 Edges

-710 470
100 10 1540 1550
1450 -150
-720 290
190 1370 380
1460
Inicio 1730
650
-730 370 910
550 1180 Fin
730 -200
1630
-740
y[m]

y[m]

1270
1360 2360
1280
-750 Fin
640 1720 740
1090
820 -250 2270
1190 1820
-760 460
1000
830
1910
-770 2180
1900 -300 1100
-780 920
2000

-790 1010
2090
1810 -350
150 200 250 300 350 400 450
-800 x[m]
500 550 600 650 700 750
x[m] (b) Punto-lı́nea y BRIEF.
(b) Punto-lı́nea y BRIEF.
Fig 9. Cierre de lazo en City Centre [1].
Fig 8. Detección de cierre de lazo en New College [1].

ritmo DLoopDetector son del tipo BRIEF. Estas estrategias


VI. C ONCLUSIONES se evaluaron sobre tres dataset tipo indoor y dos datasets
tipo outdoor. Como se esperaba, los resultados obtenidos
En este trabajo, se evalúa el comportamiento de los
muestran que el algoritmo de cierre de lazo DLoopDetector
keypoints puntos-lı́nea y un sistema de LCD basado en el
puede funcionar de manera efectiva con los puntos-lı́nea
conocido módulo DBoW2. Se observa que la extracción de
como keypoints. Este resultado es muy alentador y propor-
keypoints con FAST y el algoritmo propuesto a partir de las
ciona el puntapié inicial para la incorporación de un módulo
keylines es similar. Este resultado previo permite inferir que
LCD al sistema Rebvo [16].
la detección de LCD también será similar, dado que sobre
.
estos keypoints se extraen los descriptores que definen el
vector BoW vt que caracteriza a la imagen It .
En la detección de cierre de lazo, se analiza una estrategia R EFERENCIAS
tı́pica en el estado del arte que emplea FAST para la
[1] M. Cummins and P. Newman, “Fab-map: Probabilistic localization
detección de keypoints y otra estrategia que emplea puntos- and mapping in the space of appearance,” The International Journal
lı́nea. En ambos casos los descriptores que procesa el algo- of Robotics Research, vol. 27, no. 6, pp. 647–665, 2008.
[2] A. Angeli, D. Filliat, S. Doncieux, and J.-A. Meyer, “Fast and
incremental method for loop-closure detection using bags of visual
words,” IEEE Transactions on Robotics, vol. 24, no. 5, pp. 1027–
1037, 2008.
[3] B. Triggs, P. F. McLauchlan, R. I. Hartley, and A. W. Fitzgibbon,
“Bundle adjustment - a modern synthesis,” in International workshop
on vision algorithms. Springer, 1999, pp. 298–372.
[4] R. Mur-Artal, J. M. M. Montiel, and J. D. Tardos, “Orb-slam: a
versatile and accurate monocular slam system,” IEEE Transactions
on Robotics, vol. 31, no. 5, pp. 1147–1163, 2015.
[5] G. Castro, P. De Cristóforis, and T. Pire, “Detección y cierre de
ciclos en sistemas slam basados en visión estéreo,” Bachelor Thesis,
University of Buenos Aires, Ciudad Autónoma de Buenos Aires,
Argentina, 2016.
[6] M. J. Milford and G. F. Wyeth, “Mapping a suburb with a single
camera using a biologically inspired slam system,” IEEE Transactions
on Robotics, vol. 24, no. 5, pp. 1038–1053, 2008.
[7] D. G. Lowe, “Distinctive image features from scale-invariant key-
points,” International journal of computer vision, vol. 60, no. 2, pp.
91–110, 2004.
[8] S. Khan and D. Wollherr, “Ibuild: Incremental bag of binary words for
appearance based loop closure detection,” in Robotics and Automation
(ICRA), 2015 IEEE International Conference on. IEEE, 2015, pp.
5441–5447.
[9] H. Bay, T. Tuytelaars, and L. Van Gool, “Surf: Speeded up robust
features,” in European conference on computer vision. Springer,
2006, pp. 404–417.
[10] J. Figat, T. Kornuta, and W. Kasprzak, “Performance evaluation of
binary descriptors of local features,” in International Conference on
Computer Vision and Graphics. Springer, 2014, pp. 187–194.
[11] J. Sivic and A. Zisserman, “Video google: A text retrieval approach
to object matching in videos,” in null. IEEE, 2003, p. 1470.
[12] F. Fraundorfer and D. Scaramuzza, “Visual odometry: Part ii: Match-
ing, robustness, ootimization, and applications,” IEEE Robotics &
Automation Magazine, vol. 19, no. 2, pp. 78–90, 2012.
[13] S. Lowry, N. Sünderhauf, P. Newman, J. J. Leonard, D. Cox, P. Corke,
and M. J. Milford, “Visual place recognition: A survey,” IEEE
Transactions on Robotics, vol. 32, no. 1, pp. 1–19, 2016.
[14] C. Harris and M. Stephens, “A combined corner and edge detector.”
in Alvey vision conference, vol. 15, no. 50. Citeseer, 1988, pp. 10–
5244.
[15] E. Rosten and T. Drummond, “Machine learning for high-speed cor-
ner detection,” in European conference on computer vision. Springer,
2006, pp. 430–443.
[16] J. Jose Tarrio and S. Pedre, “Realtime edge-based visual odometry
for a monocular camera,” in Proceedings of the IEEE International
Conference on Computer Vision, 2015, pp. 702–710.
[17] M. Calonder, V. Lepetit, C. Strecha, and P. Fua, “Brief: Binary
robust independent elementary features,” in European conference on
computer vision. Springer, 2010, pp. 778–792.
[18] D. Gálvez-López and J. D. Tardos, “Bags of binary words for
fast place recognition in image sequences,” IEEE Transactions on
Robotics, vol. 28, no. 5, pp. 1188–1197, 2012.
[19] D. Nister and H. Stewenius, “Scalable recognition with a vocabu-
lary tree,” in Computer vision and pattern recognition, 2006 IEEE
computer society conference on, vol. 2. Ieee, 2006, pp. 2161–2168.
[20] D. Galvez-Lopez and J. D. Tardos, “Bags of binary words for
fast place recognition in image sequences,” IEEE Transactions on
Robotics, vol. 28, no. 5, pp. 1188–1197, October 2012.
[21] “Software: Dloopdetector: Fast loop detector for sequences of
monocular images,” http://webdiis.unizar.es/ dorian/index.php?p=33,
accessed: 2018-08-13.
[22] R. (2007-2009), “Robotics advancement through webpublishing of
sensorial and elaborated extensive data sets (project fp6-ist-045144),”
http://www.rawseeds.org/rs/datasets, accessed: 2018-08-13.
[23] J. Sturm, N. Engelhard, F. Endres, W. Burgard, and D. Cremers, “A
benchmark for the evaluation of rgb-d slam systems,” in Proc. of the
International Conference on Intelligent Robot Systems (IROS), Oct.
2012.

You might also like