diff --git a/interbotix_perception_toolbox/interbotix_perception_modules/README.md b/interbotix_perception_toolbox/interbotix_perception_modules/README.md
index da99e2e0..1d0a8faf 100644
--- a/interbotix_perception_toolbox/interbotix_perception_modules/README.md
+++ b/interbotix_perception_toolbox/interbotix_perception_modules/README.md
@@ -79,8 +79,8 @@ Short descriptions for each launch file's arguments are below...
| standalone_tags | individual AprilTags the algorithm should be looking for | refer to [tags.yaml](config/tags.yaml) |
| camera_frame | the camera frame in which the AprilTag will be detected | camera_color_optical_frame |
| apriltag_ns | name-space where the AprilTag related nodes and parameters are located | apriltag |
-| camera_color_topic | the absolute ROS topic name to subscribe to color images | camera/color/image_raw |
-| camera_info_topic | the absolute ROS topic name to subscribe to the camera color info | camera/color/camera_info |
+| camera_color_topic | the absolute ROS topic name to subscribe to color images | /camera/camera/color/image_raw |
+| camera_info_topic | the absolute ROS topic name to subscribe to the camera color info | /camera/camera/color/camera_info |
#### armtag.launch
@@ -102,7 +102,7 @@ Besides for the arguments listed below, the arguments above are in this launch f
| filter_params | file location of the parameters used to tune the perception pipeline filters | "" |
| use_pointcloud_tuner_gui | whether to show a GUI that a user can use to tune filter parameters | false |
| enable_pipeline | whether to enable the perception pipeline filters to run continuously; to save computer processing power, this should be set to False unless you are actively trying to tune the filter parameters; if False, the pipeline will only run if the `get_cluster_positions` ROS service is called | $(arg use_pointcloud_tuner_gui) |
-| cloud_topic | the absolute ROS topic name to subscribe to raw pointcloud data | /camera/depth/color/points |
+| cloud_topic | the absolute ROS topic name to subscribe to raw pointcloud data | /camera/camera/depth/color/points |
## Troubleshooting
diff --git a/interbotix_perception_toolbox/interbotix_perception_modules/interbotix_perception_modules/apriltag.py b/interbotix_perception_toolbox/interbotix_perception_modules/interbotix_perception_modules/apriltag.py
index 88ac575c..c92fcfb2 100644
--- a/interbotix_perception_toolbox/interbotix_perception_modules/interbotix_perception_modules/apriltag.py
+++ b/interbotix_perception_toolbox/interbotix_perception_modules/interbotix_perception_modules/apriltag.py
@@ -69,7 +69,7 @@ def __init__(
# set up subs, pubs, and services
self.node_inf.declare_parameter(
f'/{apriltag_ns}/camera_info_topic',
- '/camera/color/camera_info'
+ '/camera/camera/color/camera_info'
)
camera_info_topic = self.node_inf.get_parameter(
f'/{apriltag_ns}/camera_info_topic').get_parameter_value().string_value.strip('/')
diff --git a/interbotix_perception_toolbox/interbotix_perception_modules/interbotix_perception_modules/picture_snapper.py b/interbotix_perception_toolbox/interbotix_perception_modules/interbotix_perception_modules/picture_snapper.py
index 03bb5f96..bb15f3c7 100755
--- a/interbotix_perception_toolbox/interbotix_perception_modules/interbotix_perception_modules/picture_snapper.py
+++ b/interbotix_perception_toolbox/interbotix_perception_modules/interbotix_perception_modules/picture_snapper.py
@@ -68,7 +68,7 @@ def __init__(self):
self.declare_parameter(
'camera_color_topic',
- '/camera/color/image_raw'
+ '/camera/camera/color/image_raw'
)
self.declare_parameter(
'apriltag_ns',
diff --git a/interbotix_perception_toolbox/interbotix_perception_modules/launch/apriltag.launch.py b/interbotix_perception_toolbox/interbotix_perception_modules/launch/apriltag.launch.py
index 2a447121..ff83d9b4 100644
--- a/interbotix_perception_toolbox/interbotix_perception_modules/launch/apriltag.launch.py
+++ b/interbotix_perception_toolbox/interbotix_perception_modules/launch/apriltag.launch.py
@@ -106,12 +106,12 @@ def generate_launch_description():
),
DeclareLaunchArgument(
'camera_color_topic',
- default_value='camera/color/image_raw',
+ default_value='/camera/camera/color/image_raw',
description='the absolute ROS topic name to subscribe to color images.',
),
DeclareLaunchArgument(
'camera_info_topic',
- default_value='camera/color/camera_info',
+ default_value='/camera/camera/color/camera_info',
description='the absolute ROS topic name to subscribe to the camera color info.',
),
]
diff --git a/interbotix_perception_toolbox/interbotix_perception_modules/launch/armtag.launch.py b/interbotix_perception_toolbox/interbotix_perception_modules/launch/armtag.launch.py
index 29e1a387..b357a65f 100644
--- a/interbotix_perception_toolbox/interbotix_perception_modules/launch/armtag.launch.py
+++ b/interbotix_perception_toolbox/interbotix_perception_modules/launch/armtag.launch.py
@@ -120,12 +120,12 @@ def generate_launch_description():
),
DeclareLaunchArgument(
'camera_color_topic',
- default_value='camera/color/image_raw',
+ default_value='/camera/camera/color/image_raw',
description='the absolute ROS topic name to subscribe to color images.',
),
DeclareLaunchArgument(
'camera_info_topic',
- default_value='camera/color/camera_info',
+ default_value='/camera/camera/color/camera_info',
description='the absolute ROS topic name to subscribe to the camera color info.',
),
DeclareLaunchArgument(
diff --git a/interbotix_perception_toolbox/interbotix_perception_modules/launch/pc_filter.launch.py b/interbotix_perception_toolbox/interbotix_perception_modules/launch/pc_filter.launch.py
index c244f7c1..d7731dfb 100644
--- a/interbotix_perception_toolbox/interbotix_perception_modules/launch/pc_filter.launch.py
+++ b/interbotix_perception_toolbox/interbotix_perception_modules/launch/pc_filter.launch.py
@@ -117,7 +117,7 @@ def generate_launch_description():
),
DeclareLaunchArgument(
'cloud_topic',
- default_value='camera/depth/color/points',
+ default_value='/camera/camera/depth/color/points',
description='the absolute ROS topic name to subscribe to raw pointcloud data.',
),
]
diff --git a/interbotix_perception_toolbox/interbotix_perception_modules/launch/picture_snapper.launch.py b/interbotix_perception_toolbox/interbotix_perception_modules/launch/picture_snapper.launch.py
index 35b4577c..c9f61031 100644
--- a/interbotix_perception_toolbox/interbotix_perception_modules/launch/picture_snapper.launch.py
+++ b/interbotix_perception_toolbox/interbotix_perception_modules/launch/picture_snapper.launch.py
@@ -51,12 +51,12 @@ def generate_launch_description():
),
DeclareLaunchArgument(
'camera_color_topic',
- default_value='/camera/color/image_raw',
+ default_value='/camera/camera/color/image_raw',
description='topic in which the picture_snapper node can find the raw image message.',
),
DeclareLaunchArgument(
'camera_info_topic',
- default_value='/camera/color/camera_info',
+ default_value='/camera/camera/color/camera_info',
description=(
'topic in which the picture_snapper node can find the camera_info message.'
),
diff --git a/interbotix_perception_toolbox/interbotix_perception_pipelines/CMakeLists.txt b/interbotix_perception_toolbox/interbotix_perception_pipelines/CMakeLists.txt
index 3c3c8370..cf4bedfc 100644
--- a/interbotix_perception_toolbox/interbotix_perception_pipelines/CMakeLists.txt
+++ b/interbotix_perception_toolbox/interbotix_perception_pipelines/CMakeLists.txt
@@ -15,26 +15,24 @@ endif()
find_package(ament_cmake REQUIRED)
find_package(ament_index_cpp REQUIRED)
-find_package(rclcpp REQUIRED)
-find_package(sensor_msgs REQUIRED)
-find_package(interbotix_xs_msgs REQUIRED)
find_package(interbotix_perception_msgs REQUIRED)
-find_package(visualization_msgs REQUIRED)
find_package(pcl_conversions REQUIRED)
find_package(pcl_ros REQUIRED)
-find_package(tf2_ros REQUIRED)
-find_package(tf2_geometry_msgs REQUIRED)
+find_package(rclcpp REQUIRED)
+find_package(sensor_msgs REQUIRED)
find_package(std_srvs REQUIRED)
+find_package(visualization_msgs REQUIRED)
set(
PERCEPTION_PIPELINE_ROS_DEPENDENCIES
ament_index_cpp
- rclcpp
- sensor_msgs
interbotix_perception_msgs
- visualization_msgs
+ pcl_conversions
pcl_ros
+ rclcpp
+ sensor_msgs
std_srvs
+ visualization_msgs
)
add_executable(pointcloud_pipeline src/pointcloud_pipeline.cpp)
diff --git a/interbotix_perception_toolbox/interbotix_perception_pipelines/package.xml b/interbotix_perception_toolbox/interbotix_perception_pipelines/package.xml
index 19e754aa..904b3e5a 100644
--- a/interbotix_perception_toolbox/interbotix_perception_pipelines/package.xml
+++ b/interbotix_perception_toolbox/interbotix_perception_pipelines/package.xml
@@ -10,20 +10,14 @@
ament_cmake
- cv_bridge
+ ament_index_cpp
+ interbotix_perception_msgs
pcl_conversions
pcl_ros
rclcpp
- tf2_ros
- tf2_geometry_msgs
- interbotix_xs_msgs
- interbotix_perception_msgs
- interbotix_common_modules
- visualization_msgs
- std_srvs
sensor_msgs
- rcutils
- tf_transformations
+ std_srvs
+ visualization_msgs
ament_lint_common
ament_lint_auto
diff --git a/interbotix_perception_toolbox/interbotix_perception_pipelines/src/pointcloud_pipeline.cpp b/interbotix_perception_toolbox/interbotix_perception_pipelines/src/pointcloud_pipeline.cpp
index 9b5bbadd..6f81ddbc 100644
--- a/interbotix_perception_toolbox/interbotix_perception_pipelines/src/pointcloud_pipeline.cpp
+++ b/interbotix_perception_toolbox/interbotix_perception_pipelines/src/pointcloud_pipeline.cpp
@@ -32,30 +32,28 @@
#include
#include "ament_index_cpp/get_package_share_directory.hpp"
-#include "pcl/point_cloud.h"
-#include "pcl/point_types.h"
-#include "pcl/filters/voxel_grid.h"
+#include "interbotix_perception_msgs/msg/cluster_info.hpp"
+#include "interbotix_perception_msgs/srv/cluster_info_array.hpp"
+#include "interbotix_perception_msgs/srv/filter_params.hpp"
+#include "pcl_conversions/pcl_conversions.h"
+#include "pcl/common/common.h"
+#include "pcl/common/transforms.h"
#include "pcl/filters/crop_box.h"
-#include "pcl/sample_consensus/model_types.h"
-#include "pcl/sample_consensus/method_types.h"
-#include "pcl/segmentation/sac_segmentation.h"
#include "pcl/filters/extract_indices.h"
#include "pcl/filters/radius_outlier_removal.h"
-#include "pcl/segmentation/extract_clusters.h"
+#include "pcl/filters/voxel_grid.h"
#include "pcl/kdtree/kdtree.h"
-#include "pcl/common/common.h"
-#include "pcl/common/transforms.h"
-#include "pcl_conversions/pcl_conversions.h"
-
+#include "pcl/point_cloud.h"
+#include "pcl/point_types.h"
+#include "pcl/sample_consensus/method_types.h"
+#include "pcl/sample_consensus/model_types.h"
+#include "pcl/segmentation/extract_clusters.h"
+#include "pcl/segmentation/sac_segmentation.h"
#include "rclcpp/rclcpp.hpp"
-#include "std_srvs/srv/set_bool.hpp"
#include "sensor_msgs/msg/point_cloud2.hpp"
+#include "std_srvs/srv/set_bool.hpp"
#include "visualization_msgs/msg/marker.hpp"
-#include "interbotix_perception_msgs/msg/cluster_info.hpp"
-#include "interbotix_perception_msgs/srv/filter_params.hpp"
-#include "interbotix_perception_msgs/srv/cluster_info_array.hpp"
-
typedef pcl::PointXYZRGB PointT;
using SetBool = std_srvs::srv::SetBool;
@@ -388,7 +386,7 @@ int main(int argc, char ** argv)
std::string cloud_topic;
node_->declare_parameter("enable_pipeline", true);
- node_->declare_parameter("cloud_topic", "/camera/depth/color/points");
+ node_->declare_parameter("cloud_topic", "/camera/camera/depth/color/points");
node_->declare_parameter("voxel_leaf_size", 0.004);
node_->declare_parameter("x_filter_min", -0.25);
node_->declare_parameter("y_filter_min", -0.25);