MoveIt Pro API
Core Behaviors for MoveIt Pro
Loading...
Searching...
No Matches
moveit_pro::behaviors::FilterMasks2DByBoundingBox Class Referencefinal

Filter 2D masks based on bounding box dimensions only. More...

#include <filter_masks2d_by_bounding_box.hpp>

Inheritance diagram for moveit_pro::behaviors::FilterMasks2DByBoundingBox:
Collaboration diagram for moveit_pro::behaviors::FilterMasks2DByBoundingBox:

Public Member Functions

 FilterMasks2DByBoundingBox (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< moveit_pro::behaviors::BehaviorContext > &shared_resources)
 
BT::NodeStatus tick () override
 
- Public Member Functions inherited from moveit_pro::behaviors::SharedResourcesNode< BT::SyncActionNode >
 SharedResourcesNode (const std::string &name, const BT::NodeConfiguration &config, const std::shared_ptr< BehaviorContext > &behavior_context)
 Constructor for SharedResourcesNode. Called by BT::BehaviorTreeFactory when creating a new behavior tree containing this node.
 
const std::shared_ptr< BehaviorContext > & getBehaviorContext () const
 

Static Public Member Functions

static BT::PortsList providedPorts ()
 
static BT::KeyValueVector metadata ()
 

Detailed Description

Filter 2D masks based on bounding box dimensions only.

This behavior filters a vector of Mask2D messages by computing the bounding box of each mask and checking if the dimensions fall within the specified ranges. Only masks that satisfy all bounding box constraints are included in the output.

For each Mask2D in the input vector:

  • Compute bounding box using cv::boundingRect
  • Check if min_width <= bbox.width <= max_width
  • Check if min_height <= bbox.height <= max_height
  • If all conditions pass, add to output vector
Data Port Name Port Type Object Type
masks Input std::vector<moveit_studio_vision_msgs::msg::Mask2D>
min_width Input int
max_width Input int
min_height Input int
max_height Input int
filtered_masks Output std::vector<moveit_studio_vision_msgs::msg::Mask2D>

Constructor & Destructor Documentation

◆ FilterMasks2DByBoundingBox()

moveit_pro::behaviors::FilterMasks2DByBoundingBox::FilterMasks2DByBoundingBox ( const std::string &  name,
const BT::NodeConfiguration &  config,
const std::shared_ptr< moveit_pro::behaviors::BehaviorContext > &  shared_resources 
)

Member Function Documentation

◆ metadata()

BT::KeyValueVector moveit_pro::behaviors::FilterMasks2DByBoundingBox::metadata ( )
static

◆ providedPorts()

BT::PortsList moveit_pro::behaviors::FilterMasks2DByBoundingBox::providedPorts ( )
static

◆ tick()

BT::NodeStatus moveit_pro::behaviors::FilterMasks2DByBoundingBox::tick ( )
override

The documentation for this class was generated from the following files: