Repository Summary
Checkout URI | https://github.com/snt-arg/situational_graphs_reasoning.git |
VCS Type | git |
VCS Version | develop |
Last Updated | 2024-08-05 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
situational_graphs_reasoning | 0.0.1 |
README
Situational Graphs - Reasoning
Situational Graphs - Reasoning is a ROS2 package for generating in real-time semantic concepts like Rooms and Walls from Wall Surfaces S-Graphs. For that purpose, Graph Neural Networks (GNNs) are used to estimate the existing relations between the wall surfaces.
π Table of contents
π Published Papers
βοΈ Installation
[!NOTE] Situational Graphs - Reasoning was only tested on Ubuntu 20.04, ROS2 Foxy, Humble Distros. We strongly recommend using cyclone_dds instead of the default fastdds.
π¦ Installation with S-Graphs
Follow the S-Graphs installation instructions
π¦ Installation From Source
[!IMPORTANT] Before proceeding, make sure you have
rosdep
installed. You can install it usingsudo apt-get install python3-rosdep
In addition, ssh keys are needed to be configured on you GitHub account. If you havenβt yet configured ssh keys, follow this tutorial
- Update Rosdep:
rosdep init && rosdep update --include-eol-distros
- Create a ROS2 workspace for S-Graphs
mkdir -p $HOME/workspaces && cd $HOME/workspaces
- Clone the S-Graphs repository into the created workspace
git clone git@github.com:snt-arg/situational_graphs_reasoning.git -b develop
[!IMPORTANT] If you have Nvidia GPU please install CUDA from this link. This code has only been tested with CUDA 11.8. If you dont have CUDA S-Graphs will use CPU only.
- Install required dependencies. Change $ROS_DISTRO to your ros2 version.
cd situational_graphs_reasoning && source /opt/ros/$ROS_DISTRO/setup.sh && pip3 install -r requirements.txt
[!NOTE] If you want to compile with debug traces (from backward_cpp) run:
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=RelWithDebInfo
π Usage
Follow the S-Graphs instructions to use this package along with all other functionalities.
Or launch situational_graphs_reasoning.py.
βοΈ Configuration files
File name | Description |
---|---|
config/same_room_training.json |
Describes the data preprocessing and the GNN hyperparameters for room generation. |
config/same_wall_training.json |
Describes the data preprocessing and the GNN hyperparameters for wall generation. |
π€ ROS Related
π₯ Subscribed Topics
situational_graphs_reasoning_node
node
Topic name | Message Type | Description |
---|---|---|
/s_graphs/all_map_planes |
s_graphs/PlanesData | Al the plains contained in the map. |
/s_graphs/map_planes |
s_graphs/PlanesData | Only the plains incorporated with the last keypoint. |
π€ Published Topics
situational_graphs_reasoning_node
node
Topic name | Message Type | Description |
---|---|---|
/room_segmentation/room_data |
s_graphs/RoomsData | Contains all the necessary information about the rooms on a given floor. |
/room_segmentation/wall_data |
s_graphs/WallsData | Contains all the necessary information about the walls on a given floor. |
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/snt-arg/situational_graphs_reasoning.git |
VCS Type | git |
VCS Version | develop |
Last Updated | 2024-08-05 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
situational_graphs_reasoning | 0.0.1 |
README
Situational Graphs - Reasoning
Situational Graphs - Reasoning is a ROS2 package for generating in real-time semantic concepts like Rooms and Walls from Wall Surfaces S-Graphs. For that purpose, Graph Neural Networks (GNNs) are used to estimate the existing relations between the wall surfaces.
π Table of contents
π Published Papers
βοΈ Installation
[!NOTE] Situational Graphs - Reasoning was only tested on Ubuntu 20.04, ROS2 Foxy, Humble Distros. We strongly recommend using cyclone_dds instead of the default fastdds.
π¦ Installation with S-Graphs
Follow the S-Graphs installation instructions
π¦ Installation From Source
[!IMPORTANT] Before proceeding, make sure you have
rosdep
installed. You can install it usingsudo apt-get install python3-rosdep
In addition, ssh keys are needed to be configured on you GitHub account. If you havenβt yet configured ssh keys, follow this tutorial
- Update Rosdep:
rosdep init && rosdep update --include-eol-distros
- Create a ROS2 workspace for S-Graphs
mkdir -p $HOME/workspaces && cd $HOME/workspaces
- Clone the S-Graphs repository into the created workspace
git clone git@github.com:snt-arg/situational_graphs_reasoning.git -b develop
[!IMPORTANT] If you have Nvidia GPU please install CUDA from this link. This code has only been tested with CUDA 11.8. If you dont have CUDA S-Graphs will use CPU only.
- Install required dependencies. Change $ROS_DISTRO to your ros2 version.
cd situational_graphs_reasoning && source /opt/ros/$ROS_DISTRO/setup.sh && pip3 install -r requirements.txt
[!NOTE] If you want to compile with debug traces (from backward_cpp) run:
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=RelWithDebInfo
π Usage
Follow the S-Graphs instructions to use this package along with all other functionalities.
Or launch situational_graphs_reasoning.py.
βοΈ Configuration files
File name | Description |
---|---|
config/same_room_training.json |
Describes the data preprocessing and the GNN hyperparameters for room generation. |
config/same_wall_training.json |
Describes the data preprocessing and the GNN hyperparameters for wall generation. |
π€ ROS Related
π₯ Subscribed Topics
situational_graphs_reasoning_node
node
Topic name | Message Type | Description |
---|---|---|
/s_graphs/all_map_planes |
s_graphs/PlanesData | Al the plains contained in the map. |
/s_graphs/map_planes |
s_graphs/PlanesData | Only the plains incorporated with the last keypoint. |
π€ Published Topics
situational_graphs_reasoning_node
node
Topic name | Message Type | Description |
---|---|---|
/room_segmentation/room_data |
s_graphs/RoomsData | Contains all the necessary information about the rooms on a given floor. |
/room_segmentation/wall_data |
s_graphs/WallsData | Contains all the necessary information about the walls on a given floor. |