How to use rtabmap-odometryViewer?

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

How to use rtabmap-odometryViewer?

Divelix
Hi Mathieu,

I just found out about rtabmap-odometryViewer from Tools page and I have several questions about it:
1) Is there any tutorial about this tool?
2) From your examples I see you use some parameters (--icp, --bin, --bow, etc.) that are not listed in --help. Are there any other params I can use and what do they mean?
3) I tried one of your code snippets (`./rtabmap-odometryViewer -hz 10 -db input.db -bow 0 -clouds 0`) on my db and I wonder what do these feature colors mean?


P.S. off topic, but I wonder do you consider to transfer this QnA from Nabble to Github Discussions of rtabmap repository? IMHO, it probably would be much more convenient for everyone.
Reply | Threaded
Open this post in threaded view
|

Re: How to use rtabmap-odometryViewer?

matlabbe
Administrator
Hi,

This is an old tool (experimental) and that wiki page didn't follow the major changes in this commit in 2016, where the more general rtabmap's parameters usage from the command line replaced all the individual options to be more general and follow rtabmap's changes over time.
$ rtabmap-odometryViewer --help

Usage:
odometryViewer [options]
Options:
  -driver #                 Driver number to use: 
                                     0=OpenNI-PCL (Kinect)
                                     1=OpenNI2    (Kinect and Xtion PRO Live)
                                     2=Freenect   (Kinect)
                                     3=OpenNI-CV  (Kinect)
                                     4=OpenNI-CV-ASUS (Xtion PRO Live)
                                     5=Freenect2  (Kinect v2)
                                     6=DC1394     (Bumblebee2)
                                     7=FlyCapture2 (Bumblebee2)
                                     8=ZED stereo
                                     9=RealSense
                                     10=Kinect for Windows 2 SDK
                                     11=RealSense2
                                     12=Kinect for Azure SDK
                                     13=MYNT EYE S
  -hz #.#                   Camera rate (default 0, 0 means as fast as the camera can)
  -db "input.db"            Use database instead of camera (recorded with rtabmap-dataRecorder)
  -clouds #                 Maximum clouds shown (default 10, zero means inf)
  -sec #.#                  Delay (seconds) before reading the database (if set)
RTAB-Map options:
   --help                         Show usage.
   --version                      Show version of rtabmap and its dependencies.
   --params                       Show all parameters with their default value and description. 
                                  If a database path is set as last argument, the parameters in the 
                                  database will be shown in INI format.
   --"parameter name" "value"     Overwrite a specific RTAB-Map's parameter :
                                    --SURF/HessianThreshold 150
                                   For parameters in table format, add ',' between values :
                                    --Kp/RoiRatios 0,0,0.1,0
Logger options:
   --nolog              Disable logger
   --logconsole         Set logger console type
   --logfile "path"     Set logger file type
   --logfilea "path"    Set logger file type with appending mode if the file already exists
   --udebug             Set logger level to debug
   --uinfo              Set logger level to info
   --uwarn              Set logger level to warn
   --uerror             Set logger level to error
   --logtime "bool"     Print time when logging
   --logwhere "bool"    Print where when logging
   --logthread "bool"   Print thread id when logging

To see all parameters, you can do --params option. For example, you can change the feature type and max features used with:
rtabmap-odometryViewer --Vis/FeatureType 11 --Vis/MaxFeatures 500 ...


It is maybe more convenient to use "Test odometry" button under Preferences->Odometry as explained in the description and change the parameters from the UI. That way we can easily use all available sensors and modify all parameters.



With "Test odometry", you will see similar colors. Red for outliers, green for inliers and yellow for features not matched.

First time I noticed the Discussions section on Github, thx for pointing that. That seems to have similar functionalities than this forum. I'll check it in more details.

cheers,
Mathieu
Reply | Threaded
Open this post in threaded view
|

Re: How to use rtabmap-odometryViewer?

Divelix
As I understand, "Test Odometry" require camera connected (as I got "Camera initialization failed..." error when clicked it), but I wanted to test odometry using only .db file (because I record .db on a remote controlled robot and then send it to my laptop via scp).

My goal for now is to test different RTAB-Map configurations on current robot's hardware setup to find out most reliable one for indoor mapping, so I explore rtabmap's offline inspection tools. In this regard, I found useful Constrains View in rtabmap-databaseViewer for odomery visualization and Graph view in rtabmap app for loop closure visualization. Is there any other GUI tool you would recommend for me? Thank you for your answers, btw

P.S. You can check out this repo as example of how Github Discussions look like.