RTMapperSDK
RTMapperSDK copied to clipboard
RTMapperSDK is the c++ sdk for application development like RTMapper. It handle images captured with UAVs and outputs ortho mosaic at realtime.
RTMapperSDK
1. Introduction
RTMapperSDK is a cross platform development SDK for RTMapperDesktop. It is developed with C++ and now supports both Linux & Windows x64 system enviroment. It use the GSLAM which is well designed to support different SLAM & SfM applications with the same APIs. RTMapperSDK needs images with GPS information as input while output both the pointcloud&ortho map at realtime.
Download from website: http://www.rtmapper.com
2. Examples
Currently, thereare two examples:
-
Console example: run in console, without GUI interface. If you want just compile this example, please comment the line
set(BUILD_EXAMPLE_QT TRUE)
inCMakeLists.txt
- Qt example: with a Qt GUI interface, showing the map in real-time.
3. Compile example codes
3.1. Compile on Linux
3.2. Compile on Windows with CMake+VS2017+Qt5.9.4
3.3. Compile with MinGW64 on Windows
4. Usages
4.1. Registration
When the SDK is not registed, it can only handle less than 30 keyframes and zoom less than 18. If you want to process more images with higher resolution, registration is needed using RTMapperDesktop.
4.2. Run with Datasets
- Run DroneMap Dataset
Download sample dataset with git:
git clone https://github.com/zdzhaoyong/phantom3-village-kfs
Run dataset:
./sample Dataset=path_of_dataset/phantom3-village-kfs/config.cfg
More dronemap datasets can be found at : http://zhaoyong.adv-ci.com/downloads/npu-dronemap-dataset/
- Run images Dataset
./sample conf=_sampletop_/data/mavic-factory/mavic-factory.imgs
4.3. Demostration of outputs
- png & kml png and kml file can be exported with code:
tileManager->save("ortho.png");
The kml file can be imported to GoogleEarth:
- tif
tif file can be exported with code:
tileManager->save("ortho.tif");
The geotiff file can be imported to GIS systems such as ArcGis, QGis .etc.
- ply
ply file can be exported with code:
tileManager->save("sparse.ply");
The pointcloud file can be opened with softwares like meshlab.
4.4. Parameters
The sample use Svar to config parameters. Users can modify the "Default.cfg" file or use code to set parameters.
Some of Parameters used by RTMapperSDK are listed below.
Parameter Name | Default | Interval | Description |
---|---|---|---|
SLAM.isOnline | 0 | 0: offline 2: online | |
SLAM.nFeature | 1000 | 1000-4000 | desired keypoint number |
SLAM.LostRestart | 10 | 0-1e10 | seconds slam tryed to relocalize |
SLAM.MaxOverlap | 0.92 | 0.7-0.99 | Overlap percentage |
Map2DFusion.CacheFolder | . | the folder need to be edited mannally | |
Map2DFusion.Coordinate | GPS | GPS GCJ | GCJ for GaoDe and GoogleChina |
Map2DFusion.MaxZoom | 19 | 17-23 | The map level of Map2DFusion |
Map2DFusion.Thread | 0 | 0: offline datasets 1: online datasets | |
Map2DFusion.CacheMB | 1000 | 200-8000 | size of map cache, should not be too small |