SlideShare a Scribd company logo
1 of 7
Download to read offline
!
!
RTABMAP Report
A simple investigation and things learned
!
Lihang Li
Jan.30 2015

!1RTABMAP INVESTIGATION REPORT
RTABMAP Report
A simple investigation and things learned
!
1. Papers
(1) Appearance-Based Loop Closure Detection for Online Large-Scale and Long-Term
Operation
!
!2RTABMAP INVESTIGATION REPORT
!
!
!3RTABMAP INVESTIGATION REPORT
(2) Online Global Loop Closure Detection for Large-Scale Multi-Session Graph-Based SLAM
!
See paper 1.
!
(3) Memory Management for Real-Time Appearance-Based Loop Closure Detection
(4) Video Google: A Text Retrieval Approach to Object Matching in Videos
An approach to object and scene retrieval which searches for and localizes all the
occurrences of a user outlined object in a video. The object is represented by a set of
viewpoint invariant region descriptors so that recog- nition can proceed successfully
despite changes in view- point, illumination and partial occlusion.	

The analogy with text retrieval is in the implementation where matches on descriptors
are pre-computed (using vec- tor quantization), and inverted file systems and
document rankings are used. The result is that retrieval is immediate, returning a
ranked list of key frames/shots in the manner of Google.	

(5) A Fast and Incremental Method for Loop-Closure Detection Using Bags of Visual Words
!4RTABMAP INVESTIGATION REPORT
!
!
2. Methods
(1) Bag-of-words
http://people.csail.mit.edu/fergus/iccv2005/bagwords.html
!
(2) Vector Quantisation
http://www.data-compression.com/vq.html
http://www.princeton.edu/~achaney/tmve/wiki100k/docs/Vector_quantization.html
!
(3) Recursive Bayesian Filtering
http://en.wikipedia.org/wiki/Recursive_Bayesian_estimation
!
(4) Pose Graph Optimisation
http://www2.informatik.uni-freiburg.de/~stachnis/toro/
!
(5) FLANN
http://docs.opencv.org/trunk/modules/flann/doc/
flann_fast_approximate_nearest_neighbor_search.html
http://www.cs.ubc.ca/~lowe/papers/09muja.pdf
!
3. Source Code
(1) main.cpp
The application entry.
http://qt-project.org/doc/qt-4.8/qapplication.html#exec
http://qt-project.org/doc/qt-4.8/qcoreapplication.html#processEvents
Directory Functionality
app main.cpp
corelib The RTABMAP backend
guilib The Qt frontend
utilite Utilities include logger, thread manager, event
manager,etc. Independent project at https://
code.google.com/p/utilite/.
!5RTABMAP INVESTIGATION REPORT
RtabmapThread starts as an backend here.
!
(2) Rtabmap.h/Rtabmap.cpp
The main class which hold the ‘process’ method, the core function of RTABMAP.
!
(3) CameraRGBD.h/CameraRGBD.cpp
• Image I/O, abstract for RGB and RGBD even Scanner sensors, for RGBD sensors, support
OpenNI, OpenNI2, OpenNICV, Freenect, etc.
• Store sensor data by RtabmapThread with std::list<SensorData> _dataBuffer
!
(4) UThread.h
Thread management abstraction layer.
• Posix(UThreadC.h)
• Win32(UThreadC.h & UWin32.h)
!
Specific Threads include:
• Main Thread
• RtabmapThread
• CamearThread(Triggered by actionStart, slot is startDetection)
• OdometryThread(OdometryOpticalFlow or OdometryBOW or OdometryICP)
• DBReader
• CompressionThread
• DBDriver
• qimageThread
• qimageLoopThread
• qdepthThread
• qdepthLoopThread
!
(5) UEvent*
Event management abstraction layer.
• UEvent
• UEventHandler
• UEventManager
• UEventSender
!6RTABMAP INVESTIGATION REPORT
(6) Odometry.h/Odomery.cpp
Visual Odometry.
!
(7) VMDictionary.cpp
Visual words dictionary.
!
(8) Memory.cpp
STM(Short Term Memory) & WM(Working Memory).
!
(9) BayesFilter.h/BayesFilter.cpp
Implementation of the recursive bayesian filter.
!
(10)EpipolarGeometry.cpp
Used to check loop closure hypothesis.
!
!
4. Things learned
(1) RTABMAP is a good framework to start with Graph Based SLAM which uses Qt, PCL,
OpenCV, OpenNI, etc
(2) The popular approach currently seems to build a pose graph first, then optimise after loop
closure detection, finally obtain the point cloud
(3) However, the open source implementation address the problem of loop closure detection,
not much to Mapping, so it does not fit well to do Object Reconstruction using Kinect
(4) Other investigations need to be done, like RGBDSLAM & Washington University’s
RGBD Mapping project
!7RTABMAP INVESTIGATION REPORT

More Related Content

What's hot

stitching presentation
stitching presentationstitching presentation
stitching presentationNicholas Eu
 
MajorProjects16-2
MajorProjects16-2MajorProjects16-2
MajorProjects16-2Gromit Park
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
20110220 computer vision_eruhimov_lecture02
20110220 computer vision_eruhimov_lecture0220110220 computer vision_eruhimov_lecture02
20110220 computer vision_eruhimov_lecture02Computer Science Club
 
LTTng (EclipseCon 2010)
LTTng (EclipseCon 2010)LTTng (EclipseCon 2010)
LTTng (EclipseCon 2010)Fchouinard
 
III EEE-CS2363-Computer-Networks-model-question-paper-set-2-for-may-june-2014
III EEE-CS2363-Computer-Networks-model-question-paper-set-2-for-may-june-2014III EEE-CS2363-Computer-Networks-model-question-paper-set-2-for-may-june-2014
III EEE-CS2363-Computer-Networks-model-question-paper-set-2-for-may-june-2014Selva Kumar
 
Petri Nets: Properties, Analysis and Applications
Petri Nets: Properties, Analysis and ApplicationsPetri Nets: Properties, Analysis and Applications
Petri Nets: Properties, Analysis and ApplicationsDr. Mohamed Torky
 
Kernel Recipes 2014 - kGraft: Live Patching of the Linux Kernel
Kernel Recipes 2014 - kGraft: Live Patching of the Linux KernelKernel Recipes 2014 - kGraft: Live Patching of the Linux Kernel
Kernel Recipes 2014 - kGraft: Live Patching of the Linux KernelAnne Nicolas
 

What's hot (11)

Gc in android
Gc in androidGc in android
Gc in android
 
stitching presentation
stitching presentationstitching presentation
stitching presentation
 
MajorProjects16-2
MajorProjects16-2MajorProjects16-2
MajorProjects16-2
 
Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
 
20110220 computer vision_eruhimov_lecture02
20110220 computer vision_eruhimov_lecture0220110220 computer vision_eruhimov_lecture02
20110220 computer vision_eruhimov_lecture02
 
LTTng (EclipseCon 2010)
LTTng (EclipseCon 2010)LTTng (EclipseCon 2010)
LTTng (EclipseCon 2010)
 
Detection
DetectionDetection
Detection
 
III EEE-CS2363-Computer-Networks-model-question-paper-set-2-for-may-june-2014
III EEE-CS2363-Computer-Networks-model-question-paper-set-2-for-may-june-2014III EEE-CS2363-Computer-Networks-model-question-paper-set-2-for-may-june-2014
III EEE-CS2363-Computer-Networks-model-question-paper-set-2-for-may-june-2014
 
Petri Nets: Properties, Analysis and Applications
Petri Nets: Properties, Analysis and ApplicationsPetri Nets: Properties, Analysis and Applications
Petri Nets: Properties, Analysis and Applications
 
Benchmarking on JVM
Benchmarking on JVMBenchmarking on JVM
Benchmarking on JVM
 
Kernel Recipes 2014 - kGraft: Live Patching of the Linux Kernel
Kernel Recipes 2014 - kGraft: Live Patching of the Linux KernelKernel Recipes 2014 - kGraft: Live Patching of the Linux Kernel
Kernel Recipes 2014 - kGraft: Live Patching of the Linux Kernel
 

Similar to Rtabmap investigation report-lihang

Prometheus - Intro, CNCF, TSDB,PromQL,Grafana
Prometheus - Intro, CNCF, TSDB,PromQL,GrafanaPrometheus - Intro, CNCF, TSDB,PromQL,Grafana
Prometheus - Intro, CNCF, TSDB,PromQL,GrafanaSridhar Kumar N
 
Presentation1.2.pptx
Presentation1.2.pptxPresentation1.2.pptx
Presentation1.2.pptxpranaykusuma
 
QTP Interview Questions and answers
QTP Interview Questions and answersQTP Interview Questions and answers
QTP Interview Questions and answersRita Singh
 
Interview qutions
Interview qutionsInterview qutions
Interview qutionssatyaragha
 
Real Time Object Dectection using machine learning
Real Time Object Dectection using machine learningReal Time Object Dectection using machine learning
Real Time Object Dectection using machine learningpratik pratyay
 
REAL-TIME PEDESTRIAN DETECTION USING APACHE STORM IN A DISTRIBUTED ENVIRONMENT
REAL-TIME PEDESTRIAN DETECTION USING APACHE STORM IN A DISTRIBUTED ENVIRONMENTREAL-TIME PEDESTRIAN DETECTION USING APACHE STORM IN A DISTRIBUTED ENVIRONMENT
REAL-TIME PEDESTRIAN DETECTION USING APACHE STORM IN A DISTRIBUTED ENVIRONMENTcscpconf
 
Real-Time Pedestrian Detection Using Apache Storm in a Distributed Environment
Real-Time Pedestrian Detection Using Apache Storm in a Distributed Environment Real-Time Pedestrian Detection Using Apache Storm in a Distributed Environment
Real-Time Pedestrian Detection Using Apache Storm in a Distributed Environment csandit
 
Java Performance and Profiling
Java Performance and ProfilingJava Performance and Profiling
Java Performance and ProfilingWSO2
 
Opentracing jaeger
Opentracing jaegerOpentracing jaeger
Opentracing jaegerOracle Korea
 
Distributed Tracing with Jaeger
Distributed Tracing with JaegerDistributed Tracing with Jaeger
Distributed Tracing with JaegerInho Kang
 
LTTng-UST: Efficient System-Wide User-Space Tracing
LTTng-UST: Efficient System-Wide User-Space TracingLTTng-UST: Efficient System-Wide User-Space Tracing
LTTng-UST: Efficient System-Wide User-Space TracingChristian Babeux
 
OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012Wingston
 
Distributed tracing 101
Distributed tracing 101Distributed tracing 101
Distributed tracing 101Itiel Shwartz
 
426 lecture 4: AR Developer Tools
426 lecture 4: AR Developer Tools426 lecture 4: AR Developer Tools
426 lecture 4: AR Developer ToolsMark Billinghurst
 
Development of wearable object detection system &amp; blind stick for visuall...
Development of wearable object detection system &amp; blind stick for visuall...Development of wearable object detection system &amp; blind stick for visuall...
Development of wearable object detection system &amp; blind stick for visuall...Arkadev Kundu
 
Java Performance & Profiling
Java Performance & ProfilingJava Performance & Profiling
Java Performance & ProfilingIsuru Perera
 
HiPEAC 2019 Tutorial - Maestro RTOS
HiPEAC 2019 Tutorial - Maestro RTOSHiPEAC 2019 Tutorial - Maestro RTOS
HiPEAC 2019 Tutorial - Maestro RTOSTulipp. Eu
 
COSC 426 Lect. 3 -AR Developer Tools
COSC 426 Lect. 3 -AR Developer ToolsCOSC 426 Lect. 3 -AR Developer Tools
COSC 426 Lect. 3 -AR Developer ToolsMark Billinghurst
 

Similar to Rtabmap investigation report-lihang (20)

Prometheus - Intro, CNCF, TSDB,PromQL,Grafana
Prometheus - Intro, CNCF, TSDB,PromQL,GrafanaPrometheus - Intro, CNCF, TSDB,PromQL,Grafana
Prometheus - Intro, CNCF, TSDB,PromQL,Grafana
 
Presentation1.2.pptx
Presentation1.2.pptxPresentation1.2.pptx
Presentation1.2.pptx
 
QTP Interview Questions and answers
QTP Interview Questions and answersQTP Interview Questions and answers
QTP Interview Questions and answers
 
Interview qutions
Interview qutionsInterview qutions
Interview qutions
 
Real Time Object Dectection using machine learning
Real Time Object Dectection using machine learningReal Time Object Dectection using machine learning
Real Time Object Dectection using machine learning
 
REAL-TIME PEDESTRIAN DETECTION USING APACHE STORM IN A DISTRIBUTED ENVIRONMENT
REAL-TIME PEDESTRIAN DETECTION USING APACHE STORM IN A DISTRIBUTED ENVIRONMENTREAL-TIME PEDESTRIAN DETECTION USING APACHE STORM IN A DISTRIBUTED ENVIRONMENT
REAL-TIME PEDESTRIAN DETECTION USING APACHE STORM IN A DISTRIBUTED ENVIRONMENT
 
Real-Time Pedestrian Detection Using Apache Storm in a Distributed Environment
Real-Time Pedestrian Detection Using Apache Storm in a Distributed Environment Real-Time Pedestrian Detection Using Apache Storm in a Distributed Environment
Real-Time Pedestrian Detection Using Apache Storm in a Distributed Environment
 
slide-171212080528.pptx
slide-171212080528.pptxslide-171212080528.pptx
slide-171212080528.pptx
 
Java Performance and Profiling
Java Performance and ProfilingJava Performance and Profiling
Java Performance and Profiling
 
Opentracing jaeger
Opentracing jaegerOpentracing jaeger
Opentracing jaeger
 
Distributed Tracing with Jaeger
Distributed Tracing with JaegerDistributed Tracing with Jaeger
Distributed Tracing with Jaeger
 
Distributed Tracing
Distributed TracingDistributed Tracing
Distributed Tracing
 
LTTng-UST: Efficient System-Wide User-Space Tracing
LTTng-UST: Efficient System-Wide User-Space TracingLTTng-UST: Efficient System-Wide User-Space Tracing
LTTng-UST: Efficient System-Wide User-Space Tracing
 
OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012
 
Distributed tracing 101
Distributed tracing 101Distributed tracing 101
Distributed tracing 101
 
426 lecture 4: AR Developer Tools
426 lecture 4: AR Developer Tools426 lecture 4: AR Developer Tools
426 lecture 4: AR Developer Tools
 
Development of wearable object detection system &amp; blind stick for visuall...
Development of wearable object detection system &amp; blind stick for visuall...Development of wearable object detection system &amp; blind stick for visuall...
Development of wearable object detection system &amp; blind stick for visuall...
 
Java Performance & Profiling
Java Performance & ProfilingJava Performance & Profiling
Java Performance & Profiling
 
HiPEAC 2019 Tutorial - Maestro RTOS
HiPEAC 2019 Tutorial - Maestro RTOSHiPEAC 2019 Tutorial - Maestro RTOS
HiPEAC 2019 Tutorial - Maestro RTOS
 
COSC 426 Lect. 3 -AR Developer Tools
COSC 426 Lect. 3 -AR Developer ToolsCOSC 426 Lect. 3 -AR Developer Tools
COSC 426 Lect. 3 -AR Developer Tools
 

More from Lihang Li

Something about SSE and beyond
Something about SSE and beyondSomething about SSE and beyond
Something about SSE and beyondLihang Li
 
Some experiences and lessons learnt from hunting a job
Some experiences and lessons learnt from hunting a jobSome experiences and lessons learnt from hunting a job
Some experiences and lessons learnt from hunting a jobLihang Li
 
Getting started with Linux and Python by Caffe
Getting started with Linux and Python by CaffeGetting started with Linux and Python by Caffe
Getting started with Linux and Python by CaffeLihang Li
 
Point cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihangPoint cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihangLihang Li
 
DTAM: Dense Tracking and Mapping in Real-Time, Robot vision Group
DTAM: Dense Tracking and Mapping in Real-Time, Robot vision GroupDTAM: Dense Tracking and Mapping in Real-Time, Robot vision Group
DTAM: Dense Tracking and Mapping in Real-Time, Robot vision GroupLihang Li
 
2013新人见面会-中科院开源软件协会介绍-hustcalm
2013新人见面会-中科院开源软件协会介绍-hustcalm2013新人见面会-中科院开源软件协会介绍-hustcalm
2013新人见面会-中科院开源软件协会介绍-hustcalmLihang Li
 
像Hackers一样写博客-hustcalm
像Hackers一样写博客-hustcalm像Hackers一样写博客-hustcalm
像Hackers一样写博客-hustcalmLihang Li
 

More from Lihang Li (7)

Something about SSE and beyond
Something about SSE and beyondSomething about SSE and beyond
Something about SSE and beyond
 
Some experiences and lessons learnt from hunting a job
Some experiences and lessons learnt from hunting a jobSome experiences and lessons learnt from hunting a job
Some experiences and lessons learnt from hunting a job
 
Getting started with Linux and Python by Caffe
Getting started with Linux and Python by CaffeGetting started with Linux and Python by Caffe
Getting started with Linux and Python by Caffe
 
Point cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihangPoint cloud mesh-investigation_report-lihang
Point cloud mesh-investigation_report-lihang
 
DTAM: Dense Tracking and Mapping in Real-Time, Robot vision Group
DTAM: Dense Tracking and Mapping in Real-Time, Robot vision GroupDTAM: Dense Tracking and Mapping in Real-Time, Robot vision Group
DTAM: Dense Tracking and Mapping in Real-Time, Robot vision Group
 
2013新人见面会-中科院开源软件协会介绍-hustcalm
2013新人见面会-中科院开源软件协会介绍-hustcalm2013新人见面会-中科院开源软件协会介绍-hustcalm
2013新人见面会-中科院开源软件协会介绍-hustcalm
 
像Hackers一样写博客-hustcalm
像Hackers一样写博客-hustcalm像Hackers一样写博客-hustcalm
像Hackers一样写博客-hustcalm
 

Recently uploaded

Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 

Recently uploaded (20)

Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 

Rtabmap investigation report-lihang

  • 1. ! ! RTABMAP Report A simple investigation and things learned ! Lihang Li Jan.30 2015
 !1RTABMAP INVESTIGATION REPORT
  • 2. RTABMAP Report A simple investigation and things learned ! 1. Papers (1) Appearance-Based Loop Closure Detection for Online Large-Scale and Long-Term Operation ! !2RTABMAP INVESTIGATION REPORT
  • 4. (2) Online Global Loop Closure Detection for Large-Scale Multi-Session Graph-Based SLAM ! See paper 1. ! (3) Memory Management for Real-Time Appearance-Based Loop Closure Detection (4) Video Google: A Text Retrieval Approach to Object Matching in Videos An approach to object and scene retrieval which searches for and localizes all the occurrences of a user outlined object in a video. The object is represented by a set of viewpoint invariant region descriptors so that recog- nition can proceed successfully despite changes in view- point, illumination and partial occlusion. The analogy with text retrieval is in the implementation where matches on descriptors are pre-computed (using vec- tor quantization), and inverted file systems and document rankings are used. The result is that retrieval is immediate, returning a ranked list of key frames/shots in the manner of Google. (5) A Fast and Incremental Method for Loop-Closure Detection Using Bags of Visual Words !4RTABMAP INVESTIGATION REPORT
  • 5. ! ! 2. Methods (1) Bag-of-words http://people.csail.mit.edu/fergus/iccv2005/bagwords.html ! (2) Vector Quantisation http://www.data-compression.com/vq.html http://www.princeton.edu/~achaney/tmve/wiki100k/docs/Vector_quantization.html ! (3) Recursive Bayesian Filtering http://en.wikipedia.org/wiki/Recursive_Bayesian_estimation ! (4) Pose Graph Optimisation http://www2.informatik.uni-freiburg.de/~stachnis/toro/ ! (5) FLANN http://docs.opencv.org/trunk/modules/flann/doc/ flann_fast_approximate_nearest_neighbor_search.html http://www.cs.ubc.ca/~lowe/papers/09muja.pdf ! 3. Source Code (1) main.cpp The application entry. http://qt-project.org/doc/qt-4.8/qapplication.html#exec http://qt-project.org/doc/qt-4.8/qcoreapplication.html#processEvents Directory Functionality app main.cpp corelib The RTABMAP backend guilib The Qt frontend utilite Utilities include logger, thread manager, event manager,etc. Independent project at https:// code.google.com/p/utilite/. !5RTABMAP INVESTIGATION REPORT
  • 6. RtabmapThread starts as an backend here. ! (2) Rtabmap.h/Rtabmap.cpp The main class which hold the ‘process’ method, the core function of RTABMAP. ! (3) CameraRGBD.h/CameraRGBD.cpp • Image I/O, abstract for RGB and RGBD even Scanner sensors, for RGBD sensors, support OpenNI, OpenNI2, OpenNICV, Freenect, etc. • Store sensor data by RtabmapThread with std::list<SensorData> _dataBuffer ! (4) UThread.h Thread management abstraction layer. • Posix(UThreadC.h) • Win32(UThreadC.h & UWin32.h) ! Specific Threads include: • Main Thread • RtabmapThread • CamearThread(Triggered by actionStart, slot is startDetection) • OdometryThread(OdometryOpticalFlow or OdometryBOW or OdometryICP) • DBReader • CompressionThread • DBDriver • qimageThread • qimageLoopThread • qdepthThread • qdepthLoopThread ! (5) UEvent* Event management abstraction layer. • UEvent • UEventHandler • UEventManager • UEventSender !6RTABMAP INVESTIGATION REPORT
  • 7. (6) Odometry.h/Odomery.cpp Visual Odometry. ! (7) VMDictionary.cpp Visual words dictionary. ! (8) Memory.cpp STM(Short Term Memory) & WM(Working Memory). ! (9) BayesFilter.h/BayesFilter.cpp Implementation of the recursive bayesian filter. ! (10)EpipolarGeometry.cpp Used to check loop closure hypothesis. ! ! 4. Things learned (1) RTABMAP is a good framework to start with Graph Based SLAM which uses Qt, PCL, OpenCV, OpenNI, etc (2) The popular approach currently seems to build a pose graph first, then optimise after loop closure detection, finally obtain the point cloud (3) However, the open source implementation address the problem of loop closure detection, not much to Mapping, so it does not fit well to do Object Reconstruction using Kinect (4) Other investigations need to be done, like RGBDSLAM & Washington University’s RGBD Mapping project !7RTABMAP INVESTIGATION REPORT