Prerequisites
Camera Calibration: Ensure you have proper camera calibration data. Information on camera calibration can be found /wiki/spaces/LD/pages/2157314049.
Configuration File: A
JSON
file containing camera calibration parameters and other Visual-SLAM settings. Refer to this page for a complete list of available parameters.
LPSLAM Controller app
Locating and running the app
Navigate to the lpslam_binaries
folder:
Within this directory, you should find the executable file lpslam-gui.exe
.
You can run the controller app by executing lpslam-gui.exe
from your Command Line Interface or simply double-clicking on it. The following GUI will be displayed:
Usage
The controller app is a streamlined version intended to simply control the execution of LPSLAM in real-time.
1) Setting the verbosity
Using the verbosity buttons, you can set the desired verbosity level for the log messages LPSLAM will show in the terminal during its execution. The levels are:
→ Only ERROR log messages will show.
→ ERROR + INFORMATION log messages will show.
→ ERROR + INFORMATION + DEBUG messages will show.
2) Loading a configuration
In the configuration section, load the LPSLAM configuration file. Simply click the LOAD button, and a file explorer window will pop up for you to select your file. The configs
folder has the pre-defined configuration lpslam_Varjo_XR3.json
for Varjo XR-3 HMD.
3) Start or Stop tracking
Starting and stopping the tracking process in this app is straightforward; simply click the corresponding button:
→ START the tracking process.
→ STOP the tracking process.
Using a Varjo XR-3 HMD
To run LPSLAM with a Varjo XR-3 HMD, modify the configuration file (adjusting cameras
and datasources
) as shown in the example below.
The correct path to the file orb_vocab.dbow2
must be provided. This file contains a database used to assign identifiers to image features and is referenced by the vocab_file
parameter in the VSLAM tracker configuration. The file is in the vocabulary
folder, and can be referenced in the configuration file with the path "../vocabulary/orb_vocab.dbow2"
:
When using a Varjo XR-3 HMD, the camera calibration process can be skipped by using a configuration file without the cameras
field. LPSLAM will automatically retrieve the camera parameters at startup.
{ "_comment" : "Configuration for Varjo XR-3", "manager": { "drop_frames": true, "thread_num": 4, "show_live": false }, "cameras": [ { "number": 0, "model": "varjo", "fx": 1.18706476688385, "fy": 1.18706476688385, "cx": 0.532978355884552, "cy": 0.5058077573776245, "f_correction": 1.7, "c_correction": 2.0, "resolution_x": 1152, "resolution_y": 1152, "distortion": [ 0.6412177681922913, -0.8660373687744141, 0.47459715604782104, -0.002288734307512641, -0.0012009869096800685 ], "focal_x_baseline": 43.20569431080538, "rotation": [ 0.9999300244141561, 0.009785937266698777, 0.006646932159989518, -0.009785385681041777, 0.9999521152969042, -0.0001155009611359007, -0.006647744158775169, 5.045008421054563e-05, 0.9999779022320736 ] }, { "number": 1, "model": "varjo", "fx": 1.2481434345245361, "fy": 1.2481434345245361, "cx": 0.4319934844970703, "cy": 0.4994443356990814, "resolution_x": 1152, "resolution_y": 1152, "distortion": [ 0.7144321799278259, -0.9300915002822876, 0.5433128476142883, 0.0014141352148726583, -0.0017072069458663464 ], "rotation": [ 0.9999397368314507, -1.0797726242757499e-14, 0.010978283367585984, -5.53855340397135e-07, 0.9999999987273943, 5.044704683978703e-05, -0.010978283353614959, -5.045008712176573e-05, 0.9999397355589217 ] } ], "datasources": [ { "type": "Varjo", "configuration": { "prescale": 3 } } ], "processors": [ { "type": "Undistort", "configuration": {} } ], "trackers": [ { "type": "VSLAMStereo", "configuration": { "camera_setup": "stereo", "use_CUDA": false, "use_OpenCL": false, "live_view": true, "viewer_FPS": 22, "vocab_file": "../vocabulary/orb_vocab.dbow2", "emit_map": true, "enable_mapping": true, "loop_closure": true, "map_file_name": "../map.db", "use_map_database": false, "undistort_image": false, "min_triangulated_pts": 30, "depth_threshold": 20.0, "max_keypoints": 1200, "scale_factor": 1.2, "num_levels": 8, "ini_keypoints_threshold": 20, "min_keypoints_threshold": 7, "forward_high_res_nav": false, "forward_IMU": false, "forward_nav_state": false, "reloc_with_navigation": false, "wait_for_navigation": false } } ] }
With Varjo Base running in the background, launch GUI controller with your configuration file to start LPSLAM.