Update for rtabmap 0.23.10 (#1442)

* Update for rtabmap 0.23.10

* fixing min version

* Fixed PythonInterface compilation error

* CI Added workflow_dispatch
This commit is contained in:
matlabbe
2026-08-06 14:50:22 -07:00
committed by GitHub
parent b51ba8798b
commit 38b45dca16
8 changed files with 26 additions and 6 deletions
+4
View File
@@ -4,9 +4,13 @@ on:
push: push:
branches: branches:
- 'master' - 'master'
workflow_dispatch:
jobs: jobs:
docker: docker:
# Built and pushed only from master (push or manual dispatch), since it
# pushes the introlab3it/rtabmap_ros tags to Docker Hub.
if: github.ref == 'refs/heads/master'
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
+1
View File
@@ -4,6 +4,7 @@ on:
pull_request: pull_request:
branches: branches:
- 'master' - 'master'
workflow_dispatch:
concurrency: concurrency:
group: ${{ github.workflow }}-${{ github.ref }} group: ${{ github.workflow }}-${{ github.ref }}
+1 -1
View File
@@ -7,7 +7,7 @@ find_package(catkin REQUIRED COMPONENTS
image_geometry rtabmap_msgs image_geometry rtabmap_msgs
) )
find_package(RTABMap 0.23.5 REQUIRED) find_package(RTABMap 0.23.10 REQUIRED)
catkin_package( catkin_package(
INCLUDE_DIRS include INCLUDE_DIRS include
+3 -1
View File
@@ -73,7 +73,9 @@ int main(int argc, char **argv)
} }
#ifdef RTABMAP_PYTHON #ifdef RTABMAP_PYTHON
rtabmap::PythonInterface pythonInterface; // Initialize the embedded python interpreter on the main thread, as
// the nodelet below is loaded in a worker thread.
rtabmap::PythonInterface::instance("rgbdicp_odometry");
#endif #endif
nodelet::Loader nodelet; nodelet::Loader nodelet;
+3 -1
View File
@@ -73,7 +73,9 @@ int main(int argc, char **argv)
} }
#ifdef RTABMAP_PYTHON #ifdef RTABMAP_PYTHON
rtabmap::PythonInterface pythonInterface; // Initialize the embedded python interpreter on the main thread, as
// the nodelet below is loaded in a worker thread.
rtabmap::PythonInterface::instance("rgbd_odometry");
#endif #endif
nodelet::Loader nodelet; nodelet::Loader nodelet;
+3 -1
View File
@@ -74,7 +74,9 @@ int main(int argc, char **argv)
} }
#ifdef RTABMAP_PYTHON #ifdef RTABMAP_PYTHON
rtabmap::PythonInterface pythonInterface; // Initialize the embedded python interpreter on the main thread, as
// the nodelet below is loaded in a worker thread.
rtabmap::PythonInterface::instance("stereo_odometry");
#endif #endif
nodelet::Loader nodelet; nodelet::Loader nodelet;
+9
View File
@@ -32,6 +32,9 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <rtabmap/utilite/UStl.h> #include <rtabmap/utilite/UStl.h>
#include <rtabmap/utilite/UFile.h> #include <rtabmap/utilite/UFile.h>
#include <rtabmap/core/Version.h> #include <rtabmap/core/Version.h>
#ifdef RTABMAP_PYTHON
#include <rtabmap/core/PythonInterface.h>
#endif
#include "nodelet/loader.h" #include "nodelet/loader.h"
int main(int argc, char** argv) int main(int argc, char** argv)
@@ -88,6 +91,12 @@ int main(int argc, char** argv)
nargv.push_back(argv[i]); nargv.push_back(argv[i]);
} }
#ifdef RTABMAP_PYTHON
// Initialize the embedded python interpreter on the main thread, as
// the nodelet below is loaded in a worker thread.
rtabmap::PythonInterface::instance("rtabmap");
#endif
nodelet::Loader nodelet; nodelet::Loader nodelet;
nodelet::M_string remap(ros::names::getRemappings()); nodelet::M_string remap(ros::names::getRemappings());
std::string nodelet_name = ros::this_node::getName(); std::string nodelet_name = ros::this_node::getName();
+2 -2
View File
@@ -3332,10 +3332,10 @@ bool CoreWrapper::globalBundleAdjustmentCallback(rtabmap_msgs::GlobalBundleAdjus
UTimer timer; UTimer timer;
int optimizer = (int)Optimizer::kTypeG2O; // g2o int optimizer = (int)Optimizer::kTypeG2O; // g2o
int iterations = Parameters::defaultOptimizerIterations(); int iterations = Parameters::defaultOptimizerIterations();
float pixelVariance = Parameters::defaultg2oPixelVariance(); float pixelVariance = Parameters::defaultOptimizerPixelVariance();
bool rematchFeatures = true; bool rematchFeatures = true;
Parameters::parse(parameters_, Parameters::kOptimizerIterations(), iterations); Parameters::parse(parameters_, Parameters::kOptimizerIterations(), iterations);
Parameters::parse(parameters_, Parameters::kg2oPixelVariance(), pixelVariance); Parameters::parse(parameters_, Parameters::kOptimizerPixelVariance(), pixelVariance);
if(req.type == 1.0f) if(req.type == 1.0f)
{ {
optimizer = (int)Optimizer::kTypeCVSBA; optimizer = (int)Optimizer::kTypeCVSBA;