No version for distro humble showing github. Known supported distros are highlighted in the buttons above.
Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange

No version for distro jazzy showing github. Known supported distros are highlighted in the buttons above.
Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange

No version for distro kilted showing github. Known supported distros are highlighted in the buttons above.
Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange

No version for distro rolling showing github. Known supported distros are highlighted in the buttons above.
Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange

Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange

No version for distro galactic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange

No version for distro iron showing github. Known supported distros are highlighted in the buttons above.
Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange

No version for distro melodic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange

No version for distro noetic showing github. Known supported distros are highlighted in the buttons above.
Package symbol

ekf_cal package from ekf_cal repo

ekf_cal

ROS Distro
github

Package Summary

Tags No category tags.
Version 0.4.0
License GPLv3
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Extended Kalman Filter-Based Calibration and Localization
Checkout URI https://github.com/unmannedlab/ekf_cal.git
VCS Type git
VCS Version main
Last Updated 2025-05-29
Dev Status UNKNOWN
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Kalman Filter-Base Sensor Calibration

Additional Links

No additional links.

Maintainers

  • jacob

Authors

No additional authors.

ekf_cal

All Tests

Extended Kalman Filter Calibration and Localization: ekf_cal is a package focused on the simulation and development of a multi-sensor online calibration kalman filter. It combines the architecture of a Multi-State Constraint Kalman Filter (MSCKF) with a multi-sensor calibration filter to provide intrinsic and extrinsic estimates for the following sensors:

The full project documentation is available online.

setup

Quick Start

Clone the Repository

This guide assumes you have the ekf_cal repository in a colcon workspace.

mkdir ekf_cal_ws/
mkdir ekf_cal_ws/src/
cd ekf_cal_ws/src/
git clone git@github.com:unmannedlab/ekf_cal.git
cd ../

Dependencies

The ekf_cal package has the following hard dependencies that are required for all compilations:

The following dependencies are for building the ROS node and simulation, respectively

The following soft dependencies useful for development and documentation

These can be installed by running rosdep in the base directory of the colcon workspace (e.g. ekf_cal_ws)

rosdep install --from-paths src -y --ignore-src

Build

Building can be done simply with the following command:

colcon build --symlink-install --packages-select ekf_cal --event-handlers console_cohesion+ --cmake-args -DCMAKE_BUILD_TYPE=Release

Docker

Alternatively, a Dockerfile is provided, which can be used either inside a VS Code devcontainer, or a standalone container.

Input Files

This repository offers two main ways to utilize the Kalman filter framework: a simulation and ROS2 node. Both the simulation and ROS node are configurable and runnable using identically formatted YAML files. Further documentation on how to configure this YAML file for a particular setup can be found on the Parameters page.

Simulation

Simulations can be run using a YAML configuration file that extends the base configuration file with additional parameters. See the example example.yaml. Multiple simulations can be run in parallel using the run.py. An example using a single input is given below

python3 eval/run.py config/example.yaml

The results of a run can be plotted using report.py

python3 eval/report.py config/example.yaml

To run and plot in sequence, utilize evaluate.py

python3 eval/evaluate.py config/example.yaml

This will generate and run the requested number of simulation runs for the specified run time and produce plots of the Monte Carlo data. For example, the report generates plots of the body acceleration estimates and the true error in those acceleration estimates.

acceleration acceleration-error

Launch ROS2 Node

For an example of a filter node launch file, see example.launch.py

In particular, note the configuration file example.yaml.

The configuration file specifies which sensor topics should to use and the initialization values. Once built, the ROS node can be started by running the following command

ros2 launch example.launch

Evaluating the output of the ROS node is the same as with the simulations, where reports can be generated using the resultant log files.

Testing & Static Analysis

Once the package has been built, unit tests and static analysis can be run with the following commands

```

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ekf_cal at Robotics Stack Exchange