Compute Library
18.05
|
Interface for the cumulative distribution (cummulative summmation) calculation kernel. More...
#include <NECumulativeDistributionKernel.h>
Public Member Functions | |
const char * | name () const override |
Name of the kernel. More... | |
NECumulativeDistributionKernel () | |
Default constructor. More... | |
NECumulativeDistributionKernel (const NECumulativeDistributionKernel &)=delete | |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
NECumulativeDistributionKernel & | operator= (const NECumulativeDistributionKernel &)=delete |
Prevent instances of this class from being copied (As this class contains pointers) More... | |
NECumulativeDistributionKernel (NECumulativeDistributionKernel &&)=default | |
Allow instances of this class to be moved. More... | |
NECumulativeDistributionKernel & | operator= (NECumulativeDistributionKernel &&)=default |
Allow instances of this class to be moved. More... | |
void | configure (const IImage *input, const IDistribution1D *distribution, IDistribution1D *cumulative_sum, ILut *output) |
Set the input and output distribution. More... | |
void | run (const Window &window, const ThreadInfo &info) override |
Execute the kernel on the passed window. More... | |
bool | is_parallelisable () const override |
Indicates whether or not the kernel is parallelisable. More... | |
Public Member Functions inherited from ICPPKernel | |
virtual | ~ICPPKernel ()=default |
Default destructor. More... | |
Public Member Functions inherited from IKernel | |
IKernel () | |
Constructor. More... | |
virtual | ~IKernel ()=default |
Destructor. More... | |
virtual BorderSize | border_size () const |
The size of the border for that kernel. More... | |
const Window & | window () const |
The maximum window the kernel can be executed on. More... | |
Interface for the cumulative distribution (cummulative summmation) calculation kernel.
This kernel calculates the cumulative sum of a given distribution (meaning that each output element is the sum of all its previous elements including itself) and creates a lookup table with the normalized pixel intensities which is used for improve the constrast of the image.
Definition at line 44 of file NECumulativeDistributionKernel.h.
Default constructor.
Referenced by NECumulativeDistributionKernel::name().
|
delete |
Prevent instances of this class from being copied (As this class contains pointers)
|
default |
Allow instances of this class to be moved.
void configure | ( | const IImage * | input, |
const IDistribution1D * | distribution, | ||
IDistribution1D * | cumulative_sum, | ||
ILut * | output | ||
) |
Set the input and output distribution.
[in] | input | Input image. Data type supported: U8 |
[in] | distribution | Unnormalized 256-bin distribution of the input image. |
[out] | cumulative_sum | Cummulative distribution (Summed histogram). Should be same size as distribution . |
[out] | output | Equalization lookup table. Should consist of 256 entries of U8 elements. |
Referenced by NECumulativeDistributionKernel::name().
|
overridevirtual |
Indicates whether or not the kernel is parallelisable.
If the kernel is parallelisable then the window returned by window() can be split into sub-windows which can then be run in parallel.
If the kernel is not parallelisable then only the window returned by window() can be passed to run()
Reimplemented from IKernel.
Referenced by NECumulativeDistributionKernel::name().
|
inlineoverridevirtual |
Name of the kernel.
Implements ICPPKernel.
Definition at line 47 of file NECumulativeDistributionKernel.h.
References NECumulativeDistributionKernel::configure(), arm_compute::test::validation::info(), NECumulativeDistributionKernel::is_parallelisable(), NECumulativeDistributionKernel::NECumulativeDistributionKernel(), NECumulativeDistributionKernel::operator=(), NECumulativeDistributionKernel::run(), and IKernel::window().
|
delete |
Prevent instances of this class from being copied (As this class contains pointers)
Referenced by NECumulativeDistributionKernel::name().
|
default |
Allow instances of this class to be moved.
|
overridevirtual |
Execute the kernel on the passed window.
[in] | window | Region on which to execute the kernel. (Must be a region of the window returned by window()) |
[in] | info | Info about executing thread and CPU. |
Implements ICPPKernel.
Referenced by NECumulativeDistributionKernel::name().