46 constexpr AbsoluteTolerance<uint8_t> tolerance_value(1);
47 constexpr
float tolerance_number = 0.2f;
55 datasets::BorderModes()),
58 uint8_t constant_border_value = 0;
63 std::mt19937 gen(
library->seed());
64 std::uniform_int_distribution<uint8_t> distribution_u8(0, 255);
65 constant_border_value = distribution_u8(gen);
69 std::array<float, 9> matrix = { { 0 } };
70 fill_warp_matrix<9>(matrix);
81 warp_perspective.configure(&src, &dst, matrix.data(), policy,
border_mode, constant_border_value);
86 validate(src.info()->valid_region(), valid_region);
87 validate(dst.info()->valid_region(), valid_region);
96 validate(src.info()->padding(), read_padding);
97 validate(dst.info()->padding(), write_padding);
100 template <
typename T>
108 validate(
CLAccessor(_target), _reference, _valid_mask, tolerance_value, tolerance_number);
115 validate(
CLAccessor(_target), _reference, _valid_mask, tolerance_value, tolerance_number);
InterpolationPolicy
Interpolation method.
Data set containing large tensor shapes.
Data set containing small tensor shapes.
1 channel, 1 U8 per channel
Output values are defined by bilinear interpolation between the pixels.
PaddingCalculator calculator(shape.x(), 8)
std::enable_if< is_container< T >::value, ContainerDataset< T > >::type make(std::string name, T &&values)
Helper function to create a ContainerDataset.
PaddingSize required_padding() const
Compute the required padding.
Output values are defined to match the source pixel whose center is nearest to the sample position...
This file contains all available output stages for GEMMLowp on OpenCL.
#define TEST_SUITE(SUITE_NAME)
FIXTURE_DATA_TEST_CASE(RunSmall, CLAbsoluteDifferenceFixture< uint8_t >, framework::DatasetMode::PRECOMMIT, combine(datasets::SmallShapes(), AbsoluteDifferenceU8Dataset))
validate(dst.info() ->valid_region(), dst_valid_region)
DatasetMode
Possible dataset modes.
std::unique_ptr< AssetsLibrary > library
Accessor implementation for CLTensor objects.
DATA_TEST_CASE(Configuration, framework::DatasetMode::ALL, combine(concat(datasets::SmallShapes(), datasets::LargeShapes()), AbsoluteDifferenceU8Dataset), shape, data_type0, data_type1, output_data_type)
TEST_SUITE_END() DATA_TEST_CASE(Configuration
ARM_COMPUTE_EXPECT(src.info() ->is_resizable(), framework::LogLevel::ERRORS)
Pixels outside the image are assumed to have a constant value.
combine(combine(combine(concat(datasets::SmallShapes(), datasets::LargeShapes()), framework::dataset::make("DataType",{DataType::U8, DataType::S16})), datasets::BorderModes()), framework::dataset::make("filter_size",{5}))
JoinDataset< T, U > concat(T &&dataset1, U &&dataset2)
Helper function to create a JoinDataset.
template SimpleTensor< uint8_t > warp_perspective(const SimpleTensor< uint8_t > &src, SimpleTensor< uint8_t > &valid_mask, const float *matrix, InterpolationPolicy policy, BorderMode border_mode, uint8_t constant_border_value)
DataType
Available data types.
convolution configure & src
ValidRegion shape_to_valid_region(const TensorShape &a_shape, bool border_undefined=false, BorderSize border_size=BorderSize(0))
Create a valid region based on tensor shape, border mode and border size.
void set_border_mode(BorderMode mode)
Set border mode.