IDS peak ICV v1.0.0
Loading...
Searching...
No Matches
DecimationFeature Class Reference

#include <peak_icv/pipeline/features/peak_icv_decimation_feature.hpp>

Inheritance diagram for DecimationFeature:
Collaboration diagram for DecimationFeature:

Public Member Functions

 DecimationFeature (detail::DownsamplingModule &module)
 Creates a DecimationFeature for an existing downsampling module.
 
void SetEnabled (bool enabled) override
 Enables or disables the feature.
 
bool IsEnabled () const override
 Indicates whether the feature is currently enabled.
 
void ResetToDefault () override
 Resets all settings to the default values.
 
void SetX (uint32_t x)
 Sets the number of columns used for decimation.
 
void SetY (uint32_t y)
 Sets the number of rows used for decimation.
 
uint32_t GetX () const
 Retrieves the current number of columns used for decimation.
 
uint32_t GetY () const
 Retrieves the current number of rows used for decimation.
 
peak::common::IntervalU GetRange () const
 Retrieves the valid range for the decimation factors x and y.
 

Detailed Description

Decimation is used to decrease the image size.

This method reduces resolution by selecting (i.e., skipping) pixels at regular intervals along, columns (x), rows (y) or both. It is computationally efficient but may introduce aliasing.

Warning
Decimation permanently reduces image resolution. The original resolution cannot be recovered after decimation is applied.

Defaults
See also
features::BinningFeature
Since
1.0

Definition at line 46 of file peak_icv_decimation_feature.hpp.

Constructor & Destructor Documentation

◆ DecimationFeature()

DecimationFeature ( detail::DownsamplingModule & module)
inlineexplicit

Creates a DecimationFeature for an existing downsampling module.

Parameters
moduleReference to the underlying detail::DownsamplingModule.
Since
1.0

Definition at line 138 of file peak_icv_decimation_feature.hpp.

Member Function Documentation

◆ GetRange()

peak::common::IntervalU GetRange ( ) const
inline

Retrieves the valid range for the decimation factors x and y.

The returned interval specifies the minimum and maximum values that can be passed to SetX or SetY.

Returns
An IntervalU representing the valid decimation factor range.
Since
1.0

Definition at line 197 of file peak_icv_decimation_feature.hpp.

◆ GetX()

uint32_t GetX ( ) const
inline

Retrieves the current number of columns used for decimation.

Returns
The current number of columns used for decimation. The decimation algorithm uses one column, skips the next x - 1 columns, and repeats this process.
Since
1.0

Definition at line 187 of file peak_icv_decimation_feature.hpp.

◆ GetY()

uint32_t GetY ( ) const
inline

Retrieves the current number of rows used for decimation.

Returns
The current number of rows used for decimation. The decimation algorithm uses one row, skips the next y - 1 rows, and repeats this process.
Since
1.0

Definition at line 192 of file peak_icv_decimation_feature.hpp.

◆ IsEnabled()

bool IsEnabled ( ) const
inlineoverridevirtual

Indicates whether the feature is currently enabled.

Returns
true if enabled; otherwise, false.
Since
1.0

Implements IFeature.

Definition at line 147 of file peak_icv_decimation_feature.hpp.

◆ ResetToDefault()

void ResetToDefault ( )
inlineoverridevirtual

Resets all settings to the default values.

Note
The enabled state does not change when calling this function.
Since
1.0

Implements IFeature.

Definition at line 152 of file peak_icv_decimation_feature.hpp.

◆ SetEnabled()

void SetEnabled ( bool enabled)
inlineoverridevirtual

Enables or disables the feature.

Parameters
enabledSet to true to enable the feature, or false to disable it.
Since
1.0

Implements IFeature.

Definition at line 142 of file peak_icv_decimation_feature.hpp.

◆ SetX()

void SetX ( uint32_t x)
inline

Sets the number of columns used for decimation.

Parameters
xThe number of columns used for decimation. The decimation algorithm uses one column, skips the next x - 1 columns, and repeats this process. Valid values are within the range returned by GetRange.
Exceptions
OutOfRangeExceptionIf x is outside the valid range.
Since
1.0

Definition at line 157 of file peak_icv_decimation_feature.hpp.

◆ SetY()

void SetY ( uint32_t y)
inline

Sets the number of rows used for decimation.

Parameters
yThe number of rows used for decimation. The decimation algorithm uses one row, skips the next y - 1 rows, and repeats this process. Valid values are within the range returned by GetRange.
Exceptions
OutOfRangeExceptionIf y is outside the valid range.
Since
1.0

Definition at line 172 of file peak_icv_decimation_feature.hpp.