robokudo.descriptors.analysis_engines.query

Analysis engine for handling query-based processing.

This module provides an analysis engine that demonstrates how to implement query-based processing in a pipeline. It shows how to set up a pipeline that can receive queries, process them using camera data, and return responses.

The pipeline implements the following functionality:

  • Query reception and handling

  • Kinect camera data processing

  • Query response generation

  • Action server status checking

Note

This is a basic query handling pipeline that can be extended with additional processing steps between query reception and response generation.

Classes

AnalysisEngine

Analysis engine for query-based processing.

Module Contents

class robokudo.descriptors.analysis_engines.query.AnalysisEngine

Bases: robokudo.analysis_engine.AnalysisEngineInterface

Analysis engine for query-based processing.

This class implements a pipeline that handles incoming queries by processing them with camera data and generating appropriate responses. It uses an action server to manage the query-response cycle.

The pipeline includes:

  • Query reception through QueryAnnotator

  • Camera data collection and preprocessing

  • Query response generation

  • Action server status monitoring

Note

The pipeline is designed to work with the ROS action server framework, allowing external systems to send queries and receive responses.

name()

Get the name of the analysis engine.

Returns:

The name identifier of this analysis engine

Return type:

str

implementation()

Create a pipeline for query-based processing.

This method constructs a processing pipeline that can handle incoming queries. The pipeline receives queries through a QueryAnnotator, processes them using camera data, and generates responses.

Pipeline execution sequence:

  1. Initialize pipeline

  2. Wait for query

  3. Read camera data

  4. Preprocess image

  5. Generate query response

  6. Check action server status

Returns:

The configured pipeline for query processing

Return type:

robokudo.pipeline.Pipeline