Cpp-Processing
Classes | Typedefs | Enumerations
Common parameters
Collaboration diagram for Common parameters:

Classes

struct  celantur::DetectionProcessingConfig
 Configuration that describes processing of a particular class This structure contains the type of blurring to be applied to detections of a specific class. More...
 
struct  celantur::ProcessorParams
 Structure to hold parameters for the image processor. This structure contains various settings for configuring the image processing. More...
 

Typedefs

typedef std::map< CelanturClassId, DetectionProcessingConfigcelantur::PerTypeProcessingConfig
 Configuration map for processing different detection types. This map associates each CelanturClassId with its corresponding DetectionProcessingConfig, allowing for fine-tuned processing settings based on the type of detection. More...
 

Enumerations

enum class  celantur::DetectionType { celantur::Auto = 0 , celantur::None = 1 , celantur::BBox = 2 , celantur::Segmentation = 3 }
 Enum to describe the detection type in celantur::DetectionProcessingConfig. More...
 
enum class  celantur::BlurType { celantur::None = 0 , celantur::BBox_Oval = 1 , celantur::BBox_Rectangle = 2 , celantur::Segmentation = 3 }
 Enum to describe the blur in celantur::DetectionProcessingConfig. More...
 
enum class  celantur::CelanturClassId { celantur::LicensePlate = 101 , celantur::Person = 102 , celantur::Face = 103 , celantur::Vehicle = 104 }
 Class ids enum that is used in celantur::CelanturDetection and celantur::DetectionProcessingConfig to describe detection class Class ids are identical to the celantur container. More...
 

Detailed Description

The common parameters for complicated constructors and functions are encapsulated in this file. They are common between the internal implementation and the SDK interface.

Typedef Documentation

◆ PerTypeProcessingConfig

Configuration map for processing different detection types. This map associates each CelanturClassId with its corresponding DetectionProcessingConfig, allowing for fine-tuned processing settings based on the type of detection.

for usage see ProcessorParams and DetectionProcessingConfig

Enumeration Type Documentation

◆ BlurType

enum celantur::BlurType
strong

Enum to describe the blur in celantur::DetectionProcessingConfig.

None means no blurring, BBox_Oval means blurring in an oval shape inside the bounding box (normally used for faces), BBox_Rectangle means blurring in a rectangular shape inside the bounding box (normally used for license plates), Segmentation means blurring according to the segmentation mask (if available)

Enumerator
None 
BBox_Oval 
BBox_Rectangle 
Segmentation 

◆ CelanturClassId

Class ids enum that is used in celantur::CelanturDetection and celantur::DetectionProcessingConfig to describe detection class Class ids are identical to the celantur container.

Enumerator
LicensePlate 
Person 
Face 
Vehicle 

◆ DetectionType

Enum to describe the detection type in celantur::DetectionProcessingConfig.

Describes the minimal level of detection information that will be infered from the image. If the class (Person, Face and so on) has value of e.g. bounding box, the CelanturSDK::Processor::get_detections method will at least contain the detections of this class with a bounding box, even if the celantur::BlurType is set to None and detection is not blurred in the image. For example, if the detection type for the class Person is set to BBox, but the blur type is set to None, the processor will still return the bounding box for the detected person, but it will not be blurred in the image. If the detection type is set to Segmentation, the processor will return the segmentation mask for the detected person, but it will not be blurred in the image. Another example, if at least one of the classes has detection type set to Segmentation, the processor will return segmentation masks for all detected classes, even if all others don't need them. This is due to how the segmentation mask extraction works for the AI models Celantur uses. So to avoid unnecessary computation, it is recommended to set the detection type to the lowest level of information that you need for your use case.

This setting is especially important if you want to apply your custom blurring for processing detection.

Note that if the detection type is lower that the blur type, the processor will throw an exception.

The default value is Auto. It is a value that exists for backward compatibility and means that the processor will take the value that is best compatible with the blur type. For example, if the blur type is set to BBox_Oval, the detection type will be set to BBox, if the blur type is set to Segmentation, the detection type will be set to Segmentation and so on.

Enumerator
Auto 
None 
BBox 
Segmentation