This repository provides instructions on how to install our integrated framework
for predictive whole-body motion planning in dynamic environments, as described
in the paper:
"Motion Planning in Dynamic Environments Using
Context-Aware Human Trajectory Prediction", Mark Nicholas Finean*, Luka Petrović*,
Wolfgang Merkt, Ivan Marković, and Ioannis Havoutis, published in Robotics and
Autonomous Systems (DOI: 10.1016/j.robot.2023.104450).
Link to: Paper
Link to: Preprint
Link to: Video
Link to: Dataset
Note: We are currently in the process of making this work publicly available. Please inform us if you have any installation problems. We will very shortly be releasing examples to run as well.
We list the packages required to run our framework below.
Libraries to install (consult install instructions within library):
- GTSAM (our fork, develop branch)
- GPMP2 (our fork, release_refactoring)
- GPU-Voxels (our fork, devel branch)
The following packages can be cloned and build within a catkin workspace:
- gpu_voxels_ros (master branch)
- sdf_mp_integration (master branch)
- genpy (tested with 0.6.14)
- trajectory_prediction_ros (master branch)
- robot_self_filter (ori branch)
Additionally, to perform image segmentation and human position estimate, you will need to run a docker image: (to be updated)
- centermask_ros (release branch)
- CMake >= 3.0 (Ubuntu:
sudo apt-get install cmake
) - Boost >= 1.50 (Ubuntu:
sudo apt-get install libboost-all-dev
)
- Install GTSAM (our fork).
git clone https://github.com/ori-drs/gtsam.git cd gtsam git checkout develop mkdir build && cd build cmake .. make check # optional, run unit tests make install
- Install gpmp2 (our fork).
git clone https://github.com/ori-drs/gpmp2.git cd gpmp2 && mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. make check # optional, run unit tests make install
- Install GPU-Voxels (our fork).
Need to switch to g++ and gcc. Also need to download the latest eigen.
git clone https://github.com/ori-drs/gpu-voxels.git cd gpu-voxels && git checkout devel echo 'export GPU_VOXELS_INSTALL_DIR=$(pwd)' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=$(pwd)/export/lib:$LD_LIBRARY_PATH' >> ~/.bashrc echo 'export GPU_VOXELS_MODEL_PATH=$(pwd)/packages/gpu_voxels_models' >> ~/.bashrc mkdir build && cd build cmake -DCMAKE_PREFIX_PATH=/{path_to_eigen_install_dir} .. make check # optional, run unit tests make install
mkdir ws && cd ws && mkdir src && cd src
git clone https://github.com/ori-drs/gpu_voxels_ros.git
git clone https://github.com/ori-drs/sdf_mp_integration.git
git clone https://github.com/ros/genpy.git
git clone https://github.com/ori-drs/trajectory-prediction-ros.git
git clone https://github.com/ori-drs/robot_self_filter.git
cd ../..
catkin build
echo 'source /{path_to_ws}/devel/setup.bash' >> ~/.bashrc
If you use this work, please cite following publications:
@article{FINEAN2023104450,
title = {Motion planning in dynamic environments using context-aware human trajectory prediction},
journal = {Robotics and Autonomous Systems},
volume = {166},
pages = {104450},
year = {2023},
issn = {0921-8890},
doi = {https://doi.org/10.1016/j.robot.2023.104450},
url = {https://www.sciencedirect.com/science/article/pii/S0921889023000891},
author = {Mark Nicholas Finean and Luka Petrović and Wolfgang Merkt and Ivan Marković and Ioannis Havoutis},
}
While this repository is licensed under the BSD-3-Clause license, it uses multiple third-party packages which operate under different licenses.
We provide a summary indication of the licenses below but please consider any licensing information provided in the individual packages:
Package | License |
---|---|
GPU-Voxels | CDDL |
GPU-Voxels (icl_core helper library) | CDDL |
GPU-Voxels (build system) | BSD |
GPU-Voxels (PBA kernel code) | BSD-like license (consult the file LICENSE_PBA.txt) |
GTSAM | Simplified BSD |
GPMP2 | BSD |
robot_self_filter | BSD |
gpu_voxels_ros | BSD-3-Clause |
sdf_mp_integration | BSD-3-Clause |
trajectory-prediction-ros | BSD-3-Clause |
genpy | BSD |
centermask2 | Attribution-NonCommercial 4.0 International |
centermask_ros | MIT |
We are always interested in hearing how people are using our software, so please get in contact if you have questions or comments about this work.