Cpp-Processing
Public Attributes | List of all members
celantur::ProcessorParams Struct Reference

Structure to hold parameters for the image processor. This structure contains various settings for configuring the image processing. More...

#include <CommonParameters.h>

Collaboration diagram for celantur::ProcessorParams:
Collaboration graph
[legend]

Public Attributes

std::filesystem::path inference_plugin
 
int n_tiles_x {1}
 Number of tiles in horizontal direction. More...
 
int n_tiles_y {1}
 Number of tiles in vertical direction. More...
 
float ol_x {0.0f}
 Overlap of tiles in horizontal direction as a fraction of tile width. More...
 
float ol_y {0.0f}
 Overlap of tiles in vertical direction as a fraction of tile height. More...
 
bool swapRB {false}
 Swap Red and Blue channels. Useful when input data is in BGR format (when its loaded with OpenCV for example), because it is done fast in the processor. More...
 
cv::Rect_< float > roi {0.0f, 0.0f, 1.0f, 1.0f}
 Region of interest. Measured from 0 to 1 The region of interest is a rectangle that defines the area of the image that will be processed. In format of x, y, width, height. More...
 
ModelThresholds thresholds
 The thresholds for the model. More...
 
float nms_threshold {0.5f}
 The NMS threshold (Non-Maximum Suppression threshold) is used during the process to eliminate redundant detections. NMS is a technique used to select the best bounding box when multiple boxes overlap and detect the same object. The NMS threshold is a value between 0 and 1 that represents the Intersection over Union (IoU) threshold. IoU is a measure of the overlap between two bounding boxes. More...
 
int queue_size {std::numeric_limits<int>::max()}
 Specifies the maximum size of the queue. More...
 
PerTypeProcessingConfig per_type_processing_config {DEFAULT_PER_TYPE_PROCESSING_CONFIG}
 Fine-tuning the processing of detections based on their class. More...
 

Detailed Description

Structure to hold parameters for the image processor. This structure contains various settings for configuring the image processing.

Member Data Documentation

◆ inference_plugin

std::filesystem::path celantur::ProcessorParams::inference_plugin

Path to the inference plugin For CPU model it is libONNXInference.so or libOpenVINOInference.so For GPU model it is libTensorRTRuntime.so

◆ n_tiles_x

int celantur::ProcessorParams::n_tiles_x {1}

Number of tiles in horizontal direction.

◆ n_tiles_y

int celantur::ProcessorParams::n_tiles_y {1}

Number of tiles in vertical direction.

◆ nms_threshold

float celantur::ProcessorParams::nms_threshold {0.5f}

The NMS threshold (Non-Maximum Suppression threshold) is used during the process to eliminate redundant detections. NMS is a technique used to select the best bounding box when multiple boxes overlap and detect the same object. The NMS threshold is a value between 0 and 1 that represents the Intersection over Union (IoU) threshold. IoU is a measure of the overlap between two bounding boxes.

Note
Probably not important for the end user, but in some cases might become useful.

◆ ol_x

float celantur::ProcessorParams::ol_x {0.0f}

Overlap of tiles in horizontal direction as a fraction of tile width.

◆ ol_y

float celantur::ProcessorParams::ol_y {0.0f}

Overlap of tiles in vertical direction as a fraction of tile height.

◆ per_type_processing_config

PerTypeProcessingConfig celantur::ProcessorParams::per_type_processing_config {DEFAULT_PER_TYPE_PROCESSING_CONFIG}

Fine-tuning the processing of detections based on their class.

◆ queue_size

int celantur::ProcessorParams::queue_size {std::numeric_limits<int>::max()}

Specifies the maximum size of the queue.

This parameter defines the maximum number of elements that can be held in the processing queue of CelanturSDK::Processor at any given time. By default, it is set to the
largest possible integer value, effectively making the queue unbound unless explicitly configured.

Note
Adjusting the queue size can help manage memory usage and processing latency, especially in high-throughput scenarios.

◆ roi

cv::Rect_<float> celantur::ProcessorParams::roi {0.0f, 0.0f, 1.0f, 1.0f}

Region of interest. Measured from 0 to 1 The region of interest is a rectangle that defines the area of the image that will be processed. In format of x, y, width, height.

◆ swapRB

bool celantur::ProcessorParams::swapRB {false}

Swap Red and Blue channels. Useful when input data is in BGR format (when its loaded with OpenCV for example), because it is done fast in the processor.

◆ thresholds

ModelThresholds celantur::ProcessorParams::thresholds

The thresholds for the model.