RVC Vision API#

class RVCAIInterface#

Subclassed by RVC_AI::OIInference

Public Functions

virtual bool pre_process_image(const cv::Mat inputImage, cv::Mat &outputImage) = 0#

API entry point: define this plugin preprocessing operations.

Parameters:
  • inputImage – cv::Mat input image to preprocess

  • outputImage – preprocessed output cv::Mat

Returns:

true on success

Returns:

false otherwise

virtual bool run_inference_pipeline(const cv::Mat image, cv::Mat &output) = 0#

API entry point: run the inference on input image.

Parameters:
  • image – input image

  • output – result output blob in cv::Mat format

Returns:

true on success

Returns:

false otherwise

virtual bool post_process_image(const cv::Mat input, rvc_vision_messages::msg::RotatedBBList &rotatedBBList) = 0#

API entry point: define the post processing to perform to retrieve the rotate bounding boxes.

Parameters:
  • input – input blob cv::Mat

  • rotatedBBList – output rotate Bounding box list

Returns:

true on success

Returns:

false otherwise

virtual bool init(rclcpp::Node *node, const std::string &modelName) = 0#

API entry: plugin initialization.

Parameters:
  • node – Ros node

  • modelName – input file name

Returns:

true on success

Returns:

false otherwise

inline virtual bool on_shutdown()#

API entry: operation to clean up upon node shutdown.

Returns:

true

Returns:

false

inline virtual ~RVCAIInterface()#

Destroy the RVCAIInterface object.