18 using namespace armcomputetensorutils;
24 const arm_compute::TensorInfo aclInputInfo = BuildArmComputeTensorInfo(input, descriptor.
m_DataLayout);
25 const arm_compute::TensorInfo aclOutputInfo = BuildArmComputeTensorInfo(output, descriptor.
m_DataLayout);
28 int32_t blockHeight = armnn::numeric_cast<int32_t>(descriptor.
m_BlockShape[0]);
29 int32_t blockWidth = armnn::numeric_cast<int32_t>(descriptor.
m_BlockShape[1]);
31 arm_compute::Size2D paddingLeftTop = BuildArmComputeSize2D(
33 arm_compute::Size2D paddingRightBottom = BuildArmComputeSize2D(
36 return arm_compute::NESpaceToBatchLayer::validate(&aclInputInfo,
56 arm_compute::ITensor& input =
57 PolymorphicPointerDowncast<IAclTensorHandle>(
m_Data.
m_Inputs[0])->GetTensor();
58 arm_compute::ITensor& output =
59 PolymorphicPointerDowncast<IAclTensorHandle>(
m_Data.
m_Outputs[0])->GetTensor();
65 arm_compute::Size2D paddingLeftTop = BuildArmComputeSize2D(
67 arm_compute::Size2D paddingRightBottom = BuildArmComputeSize2D(
71 input.info()->set_data_layout(aclDataLayout);
72 output.info()->set_data_layout(aclDataLayout);
74 m_Layer.reset(
new arm_compute::NESpaceToBatchLayer());
75 m_Layer->configure(&input,