Compute Library
 21.02
NEBox3x3 Class Reference

Basic function to execute box filter 3x3. More...

#include <NEBox3x3.h>

Collaboration diagram for NEBox3x3:
[legend]

Public Member Functions

void configure (ITensor *input, ITensor *output, BorderMode border_mode, uint8_t constant_border_value=0, bool use_fp16=false)
 Initialise the function's input, output and border mode. More...
 
- Public Member Functions inherited from INESimpleFunction
 INESimpleFunction ()
 Constructor. More...
 
 INESimpleFunction (const INESimpleFunction &)=delete
 Prevent instances of this class from being copied (As this class contains pointers) More...
 
 INESimpleFunction (INESimpleFunction &&)=default
 Default move constructor. More...
 
INESimpleFunctionoperator= (const INESimpleFunction &)=delete
 Prevent instances of this class from being copied (As this class contains pointers) More...
 
INESimpleFunctionoperator= (INESimpleFunction &&)=default
 Default move assignment operator. More...
 
 ~INESimpleFunction ()
 Default destructor. More...
 
void run () override final
 Run the kernels contained in the function. More...
 
- Public Member Functions inherited from IFunction
virtual ~IFunction ()=default
 Destructor. More...
 
virtual void prepare ()
 Prepare the function for executing. More...
 

Detailed Description

Basic function to execute box filter 3x3.

This function calls the following Neon kernels:

  1. NEFillBorderKernel (executed if border_mode == CONSTANT or border_mode == REPLICATE)
  2. NEBox3x3Kernel
Deprecated:
This function is deprecated and is intended to be removed in 21.05 release

Definition at line 44 of file NEBox3x3.h.

Member Function Documentation

◆ configure()

void configure ( ITensor input,
ITensor output,
BorderMode  border_mode,
uint8_t  constant_border_value = 0,
bool  use_fp16 = false 
)

Initialise the function's input, output and border mode.

Note
The border handler is run on the input tensor.
Parameters
[in,out]inputSource tensor. Data type supported: U8. (Written to only for border_mode != UNDEFINED)
[out]outputDestination tensor, Data type supported: U8.
[in]border_modeStrategy to use for borders.
[in]constant_border_value(Optional) Constant value to use for borders if border_mode is set to CONSTANT.
[in]use_fp16(Optional) If true the FP16 kernels will be used. If false F32 kernels are used.

Definition at line 34 of file NEBox3x3.cpp.

References arm_compute::test::validation::b, and arm_compute::UNDEFINED.

35 {
36  if(use_fp16)
37  {
38  auto k = std::make_unique<NEBox3x3FP16Kernel>();
39  k->configure(input, output, border_mode == BorderMode::UNDEFINED);
40  _kernel = std::move(k);
41  }
42  else
43  {
44  auto k = std::make_unique<NEBox3x3Kernel>();
45  k->configure(input, output, border_mode == BorderMode::UNDEFINED);
46  _kernel = std::move(k);
47  }
48  auto b = std::make_unique<NEFillBorderKernel>();
49  b->configure(input, _kernel->border_size(), border_mode, PixelValue(constant_border_value));
50  _border_handler = std::move(b);
51 }
SimpleTensor< float > b
Definition: DFT.cpp:157
Borders are left undefined.

The documentation for this class was generated from the following files: