Skip to content

qingmingjie/ros2_moving_object

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Vision-Based Moving Object

1. Introduction

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.

2. Output Topics

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.

3. Build and Runtime dependencies

ros2 core packages

  • 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

4. Build Steps

  1. Make sure ros2 core packages are built successfully. Please follow this guide for building and installing ros2 core packages.

  2. 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
  1. 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

5. Launch Steps

  1. [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
  1. [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
  1. [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
*Any security issue should be reported using process at https://01.org/security

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 86.2%
  • CMake 13.8%