ARM Compute Library
17.04
Main Page
Namespaces
Data Structures
Files
File List
Globals
NEHOGGradient.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2016, 2017 ARM Limited.
3
*
4
* SPDX-License-Identifier: MIT
5
*
6
* Permission is hereby granted, free of charge, to any person obtaining a copy
7
* of this software and associated documentation files (the "Software"), to
8
* deal in the Software without restriction, including without limitation the
9
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10
* sell copies of the Software, and to permit persons to whom the Software is
11
* furnished to do so, subject to the following conditions:
12
*
13
* The above copyright notice and this permission notice shall be included in all
14
* copies or substantial portions of the Software.
15
*
16
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
* SOFTWARE.
23
*/
24
#ifndef __ARM_COMPUTE_NEHOGGRADIENT_H__
25
#define __ARM_COMPUTE_NEHOGGRADIENT_H__
26
27
#include "
arm_compute/core/NEON/INEKernel.h
"
28
#include "
arm_compute/core/Types.h
"
29
#include "
arm_compute/runtime/IFunction.h
"
30
#include "
arm_compute/runtime/NEON/functions/NEDerivative.h
"
31
#include "
arm_compute/runtime/Tensor.h
"
32
33
#include <cstdint>
34
#include <memory>
35
36
namespace
arm_compute
37
{
38
class
ITensor;
45
class
NEHOGGradient
:
public
IFunction
46
{
47
public
:
49
NEHOGGradient
();
60
void
configure
(
ITensor
*input,
ITensor
*output_magnitude,
ITensor
*output_phase,
PhaseType
phase_type,
BorderMode
border_mode, uint8_t constant_border_value = 0);
61
62
// Inherited method overridden:
63
void
run
()
override
;
64
65
private
:
66
NEDerivative
_derivative;
67
std::unique_ptr<INEKernel> _mag_phase;
68
Tensor
_gx;
69
Tensor
_gy;
70
};
71
}
72
#endif
/*__ARM_COMPUTE_NEHOGGRADIENT_H__ */
arm_compute::BorderMode
BorderMode
Methods available to handle borders.
Definition:
Types.h:108
arm_compute::IFunction
Base class for all functions.
Definition:
IFunction.h:30
arm_compute::PhaseType
PhaseType
Phase calculation type.
Definition:
Types.h:235
Types.h
arm_compute::NEHOGGradient::NEHOGGradient
NEHOGGradient()
Default constructor.
arm_compute::ITensor
Interface for NEON tensor.
Definition:
ITensor.h:36
arm_compute
Definition:
arm_compute.dox:1
arm_compute::NEHOGGradient::run
void run() override
Run the kernels contained in the function.
arm_compute::NEHOGGradient::configure
void configure(ITensor *input, ITensor *output_magnitude, ITensor *output_phase, PhaseType phase_type, BorderMode border_mode, uint8_t constant_border_value=0)
Initialise the function's source, destinations, phase type and border mode.
Tensor.h
arm_compute::NEHOGGradient
Basic function to calculate the gradient for HOG.
Definition:
NEHOGGradient.h:45
arm_compute::Tensor
Basic implementation of the tensor interface.
Definition:
Tensor.h:37
NEDerivative.h
IFunction.h
arm_compute::NEDerivative
Basic function to execute first order derivative operator.
Definition:
NEDerivative.h:44
INEKernel.h
arm_compute
runtime
NEON
functions
NEHOGGradient.h
Generated on Wed Apr 12 2017 14:26:05 for ARM Compute Library by
1.8.11