Skip to content

Add aruco pose estimate to gstreamer pipeline#112

Open
ErikCald wants to merge 2 commits into
mainfrom
erik-cpp-aruco-pose-estimate
Open

Add aruco pose estimate to gstreamer pipeline#112
ErikCald wants to merge 2 commits into
mainfrom
erik-cpp-aruco-pose-estimate

Conversation

@ErikCald
Copy link
Copy Markdown
Contributor

This pull request introduces ArUco marker pose estimation to the video streaming package, integrating OpenCV-based marker detection and pose calculation into the ROS2 pipeline. It adds a new ArucoPoseEstimator class, updates the DetectNode to support this feature, and enables dynamic camera selection and publishing of detected marker poses. Several dependencies are added to support image processing and message passing.

ArUco marker pose estimation integration:

  • Added new files aruco_pose_estimate.hpp and aruco_pose_estimate.cpp implementing the ArucoPoseEstimator class for detecting ArUco markers, estimating their pose using OpenCV, and publishing results as ArucoMarkers messages. The estimator manages camera calibration parameters and supports multiple cameras. [1] [2]
  • Updated DetectNode to instantiate and use ArucoPoseEstimator, connect to the GStreamer pipeline via an appsink, and process frames for pose estimation when ArUco detection is enabled. [1] [2] [3] [4] [5] [6] [7]

Pipeline and node enhancements:

  • Modified the GStreamer pipeline in DetectNode to branch the ArUco detection output to both the custom estimator (via appsink) and the existing marker detector.
  • Added support for dynamic camera selection: InputNode publishes the active camera name, and DetectNode subscribes to this topic to select the correct calibration and frame mapping. [1] [2] [3] [4] [5] [6] [7]

Dependency and build configuration updates:

  • Added required ROS2 and OpenCV dependencies to CMakeLists.txt and package.xml for image processing, message transport, and bridge functionality. [1] [2] [3]

Other improvements:

  • Minor code cleanups and removal of obsolete comments in input_node.cpp. [1] [2]

These changes collectively enable robust ArUco marker pose detection, support for multiple cameras, and seamless integration with the ROS2 ecosystem.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@ConnorNeed
Copy link
Copy Markdown
Member

Did you still need this or are you using the ZED camera?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants