Moving Object component is addressing moving objects based on messages generated by Object Analytics ros2_object_analytics. ros2_moving_object delivers further analysis for the localized and tracked objects from Object Analytics by adding motion information, i.e., the velocity information about tracked objects. Such information can extend robot's ability of motion planing and collision avoidance.
Thanks to ros2_object_analytics and ros2_intel_movidius_ncs to provide an AI solution for object detection, tracking and localization. See the umbrella wiki page to learn the hierarchical data flow and overview description for the related components.
This component involves 2 ROS2 packages:
- moving_object: the main package covering logic of moving object analysis and information generation.
- moving_object_msgs: the message package storing the motion information of moving objects and published into ROS2 system.
ros2_moving_object package publishes some messages to indicate different status/data.
- /moving_object/moving_objects merges info from the 3 input messages into one message and calculating (on demand) the velocity info of the tracked moving objects.
- ament_cmake
- std_msgs
- sensor_msgs
- geometry_msgs
- rclcpp
- rosidl_default_generators
- rosidl_interface_packages
- builtin_interfaces
- rviz_yaml_cpp_vendor
- ament_index_cpp
Other packages from Intel repos
-
Make sure ros2 core packages are built successfully. Please follow this guide for building and installing ros2 core packages.
-
Make sure ros2_message_filters and ros2_object_analysis_msgs) are built and installed successfully. If not, follow below steps (note that the path between < and > should be customized according to your real environment):
source </ros2/install/dir>/local_setup.bash
cd </my/overlay_ws/dir>/src
git clone https://github.com/intel/ros2_message_filters.git
git clone https://github.com/intel/ros2_object_analytics.git
cd ..
ament build --symlink-install
- Build Moving Object Component
cd </my/overlay_ws/dir>/src
source </ros2/dir>/local_setup.bash
git clone https://github.com/intel/ros2_moving_object.git
cd ..
ament build --symlink-install
- [In terminal 1] Launch realsense camera node.
source </ros2/install/dir>/local_setup.bash
source </my/overlay_ws/dir>/install/local_setup.bash
realsense_ros2_camera
- [In terminal 2] Launch object analysis node.
source </ros2/install/dir>/local_setup.bash
source </my/overlay_ws/dir>/install/local_setup.bash
echo -e "param_file: alexnet.yaml\ninput_topic: /object_analytics/rgb > src/ros2_intel_movidius_ncs/movidius_ncs_launch/config/default.yaml"
launch `ros2 pkg prefix object_analytics_launch`/share/object_analytics_launch/launch/analytics_movidius_ncs.py
- [In terminal 3] Launch moving object node.
source </ros2/install/dir>/local_setup.bash
source </my/overlay_ws/dir>/install/local_setup.bash
ros2 run moving_object moving_object