gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

Repository Summary

Description Implementations of several GSL methods for ROS.
Checkout URI https://github.com/mapirlab/gassourcelocalization.git
VCS Type git
VCS Version ros2
Last Updated 2025-03-31
Dev Status UNKNOWN
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
grgsl_env 0.0.0
pmfs_env 0.0.0
semantic_gsl_env 0.0.0
gsl_actions 0.0.0
gsl_server 0.0.1

README

Gas Source Localization

Implementations of several GSL methods for ROS.

To use one of the implemented algorithms, simply launch the gsl_actionserver_node node and create an ActionClient to send a goal with the name of the chosen algorithm (see gsl_server_call.cpp for an example). Currently available algorithms include:

  • "PMFS" (See paper here)
  • "GrGSL" (See paper: here)
  • "surge_cast", "surge_spiral", "spiral", "particle_filter" (See paper here)
  • "SemanticPMFS", "SemanticGrGSL" (See paper here)

Installing and building

You can download this package by navigating to your ROS workspace and running:

git clone --recurse-submodules git@github.com:MAPIRlab/Gas-Source-Localization.git GSL

Dependencies

Due to the nature of how ROS code is organized in semi-independent packages, it does not quite make sense for this repository to include other ament packages (which you might already have in the same workspace for something else) as submodules. You will need to install those separately:

There are also some additional, optional dependecies that you might not need, depending on which algorithms you choose to compile (see next section).

Compiling specific algorithms

While this project contains several different GSL algorithms, you might only be interested in using one of them. Since some of these algorithms carry additional dependencies, you might want to completely disable the compilation of algorithms you are not going to use, to avoid having to install their dependencies. You can do that by commenting out the corresponding line in the main CMakeLists.txt

Disabling optional dependencies

Even if you are compiling all algorithms, there are some dependencies that can just be turned off by disabling the corresponding features.

If you don’t want to use Gaden for your experiments you can omit it and set the USE_GADEN option in the CMakeLists.txt file to OFF to compile without the corresponding dependency.

Similarly, the dependency with ament_imgui can be disabled using the USE_GUI option, and the dependency with Nav-Assistant can be disabled with USE_NAV_ASSISTANT in the CMakeLists.txt.

CONTRIBUTING

No CONTRIBUTING.md found.

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository

gassourcelocalization repository