24 struct ResizeTestParams
29 , m_InQuantScale(1.0f)
31 , m_OutQuantScale(1.0f)
33 , m_AlignCorners(
false)
34 , m_HalfPixelCenters(
false) {}
42 std::vector<float> m_InputData;
43 std::vector<float> m_ExpectedOutputData;
46 int32_t m_InQuantOffset;
48 float m_OutQuantScale;
49 int32_t m_OutQuantOffset;
52 bool m_HalfPixelCenters;
54 void SetInQuantParams(
float quantScale, int32_t quantOffset)
56 m_InQuantScale = quantScale;
57 m_InQuantOffset = quantOffset;
60 void SetOutQuantParams(
float quantScale, int32_t quantOffset)
62 m_OutQuantScale = quantScale;
63 m_OutQuantOffset = quantOffset;
66 void SetInOutQuantParams(
float quantScale, int32_t quantOffset)
68 SetInQuantParams(quantScale, quantOffset);
69 SetOutQuantParams(quantScale, quantOffset);
73 template<
size_t NumDims,
79 const ResizeTestParams& params)
85 if (armnn::IsQuantizedType<T>())
87 inputInfo.SetQuantizationScale(params.m_InQuantScale);
88 inputInfo.SetQuantizationOffset(params.m_InQuantOffset);
90 outputInfo.SetQuantizationScale(params.m_OutQuantScale);
91 outputInfo.SetQuantizationOffset(params.m_OutQuantOffset);
94 std::vector<T> inputData =
95 armnnUtils::QuantizedVector<T>(params.m_InputData, params.m_InQuantScale, params.m_InQuantOffset);
97 std::vector<T> expectedOutputData =
98 armnnUtils::QuantizedVector<T>(params.m_ExpectedOutputData,
99 params.m_OutQuantScale,
100 params.m_OutQuantOffset);
108 auto input = MakeTensor<T, NumDims>(inputInfo, inputData);
111 result.outputExpected = MakeTensor<T, NumDims>(outputInfo, expectedOutputData);
113 std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.
CreateTensorHandle(inputInfo);
114 std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.
CreateTensorHandle(outputInfo);
119 descriptor.m_Parameters.m_DataLayout = params.m_DataLayout;
120 descriptor.m_Parameters.m_AlignCorners = params.m_AlignCorners;
121 descriptor.m_Parameters.m_HalfPixelCenters = params.m_HalfPixelCenters;
124 descriptor.m_Parameters.m_TargetWidth = params.m_OutputShape[dataLayoutIndexed.GetWidthIndex()];
125 descriptor.m_Parameters.m_TargetHeight = params.m_OutputShape[dataLayoutIndexed.GetHeightIndex()];
128 AddInputToWorkload(descriptor, info, inputInfo, inputHandle.get());
129 AddOutputToWorkload(descriptor, info, outputInfo, outputHandle.get());
131 std::unique_ptr<armnn::IWorkload> workload = workloadFactory.
CreateResize(descriptor, info);
133 inputHandle->Allocate();
134 outputHandle->Allocate();
137 workload->PostAllocationConfigure();
150 template<armnn::DataType ArmnnType,
typename T>
156 ResizeTestParams testParams;
158 testParams.m_DataLayout = dataLayout;
160 testParams.m_InputShape = { 1, 2, 4, 4 };
161 testParams.m_OutputShape = testParams.m_InputShape;
163 testParams.m_InputData =
165 1.0f, 2.0f, 3.0f, 4.0f,
166 2.0f, 3.0f, 4.0f, 5.0f,
167 3.0f, 4.0f, 5.0f, 6.0f,
168 4.0f, 5.0f, 6.0f, 7.0f,
170 1.0f, 2.0f, 3.0f, 4.0f,
171 2.0f, 3.0f, 4.0f, 5.0f,
172 3.0f, 4.0f, 5.0f, 6.0f,
173 4.0f, 5.0f, 6.0f, 7.0f
176 testParams.m_ExpectedOutputData = testParams.m_InputData;
178 testParams.SetInOutQuantParams(1.5f, 3);
180 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
183 template<armnn::DataType ArmnnType,
typename T>
189 ResizeTestParams testParams;
191 testParams.m_DataLayout = dataLayout;
193 testParams.m_InputShape = { 1, 2, 2, 2 };
194 testParams.m_OutputShape = { 1, 2, 1, 1 };
196 testParams.m_InputData =
210 testParams.m_ExpectedOutputData =
217 testParams.SetInOutQuantParams(0.1567f, 1);
219 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
222 template<armnn::DataType ArmnnType,
typename T>
228 ResizeTestParams testParams;
230 testParams.m_DataLayout = dataLayout;
232 testParams.m_InputShape = { 1, 2, 4, 4 };
233 testParams.m_OutputShape = { 1, 2, 2, 2 };
235 testParams.m_InputData =
237 1.0f, 2.0f, 3.0f, 4.0f,
238 2.0f, 3.0f, 4.0f, 5.0f,
239 3.0f, 4.0f, 5.0f, 6.0f,
240 4.0f, 5.0f, 6.0f, 7.0f,
242 7.0f, 6.0f, 5.0f, 4.0f,
243 6.0f, 5.0f, 4.0f, 3.0f,
244 5.0f, 4.0f, 3.0f, 2.0f,
245 4.0f, 3.0f, 2.0f, 1.0f
248 testParams.m_ExpectedOutputData =
257 testParams.SetInOutQuantParams(3.141592f, 3);
259 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
262 template<armnn::DataType ArmnnType,
typename T>
268 ResizeTestParams testParams;
270 testParams.m_DataLayout = dataLayout;
272 testParams.m_InputShape = { 1, 2, 3, 5 };
273 testParams.m_OutputShape = { 1, 2, 2, 3 };
275 testParams.m_InputData =
277 1.5f, 3.0f, 4.5f, 6.0f, 7.5f,
278 9.0f, 10.5f, 12.0f, 13.5f, 15.0f,
279 16.5f, 18.0f, 19.5f, 21.0f, 22.5f,
281 16.5f, 18.0f, 19.5f, 21.0f, 22.5f,
282 9.0f, 10.5f, 12.0f, 13.5f, 15.0f,
283 1.5f, 3.0f, 4.5f, 6.0f, 7.5f
286 testParams.m_ExpectedOutputData =
289 12.75f, 15.25f, 17.75f,
291 16.50f, 19.00f, 21.50f,
295 testParams.SetInOutQuantParams(1.5f, -1);
297 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
300 template<armnn::DataType ArmnnType,
typename T>
306 ResizeTestParams testParams;
308 testParams.m_DataLayout = dataLayout;
310 testParams.m_InputShape = { 1, 2, 3, 2 };
311 testParams.m_OutputShape = { 1, 2, 3, 5 };
313 testParams.m_InputData =
324 testParams.m_ExpectedOutputData =
326 1.0f, 1.4f, 1.8f, 2.0f, 2.0f,
327 13.0f, 16.2f, 19.4f, 21.0f, 21.0f,
328 144.0f, 179.6f, 215.2f, 233.0f, 233.0f,
330 233.0f, 197.4f, 161.8f, 144.0f, 144.0f,
331 21.0f, 17.8f, 14.6f, 13.0f, 13.0f,
332 2.0f, 1.6f, 1.2f, 1.0f, 1.0f
335 testParams.SetInQuantParams(1.0f, 0);
337 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
344 template<armnn::DataType ArmnnType,
typename T>
350 ResizeTestParams testParams;
352 testParams.m_DataLayout = dataLayout;
354 testParams.m_InputShape = { 1, 2, 4, 4 };
355 testParams.m_OutputShape = testParams.m_InputShape;
357 testParams.m_InputData =
359 1.0f, 2.0f, 3.0f, 4.0f,
360 2.0f, 3.0f, 4.0f, 5.0f,
361 3.0f, 4.0f, 5.0f, 6.0f,
362 4.0f, 5.0f, 6.0f, 7.0f,
364 1.0f, 2.0f, 3.0f, 4.0f,
365 2.0f, 3.0f, 4.0f, 5.0f,
366 3.0f, 4.0f, 5.0f, 6.0f,
367 4.0f, 5.0f, 6.0f, 7.0f
370 testParams.m_ExpectedOutputData = testParams.m_InputData;
372 testParams.SetInOutQuantParams(1.5f, 3);
374 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
377 template<armnn::DataType ArmnnType,
typename T>
383 ResizeTestParams testParams;
385 testParams.m_DataLayout = dataLayout;
387 testParams.m_InputShape = { 1, 2, 2, 2 };
388 testParams.m_OutputShape = { 1, 2, 1, 1 };
390 testParams.m_InputData =
404 testParams.m_ExpectedOutputData =
411 testParams.SetInOutQuantParams(0.1567f, 1);
413 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
416 template<armnn::DataType ArmnnType,
typename T>
422 ResizeTestParams testParams;
424 testParams.m_DataLayout = dataLayout;
426 testParams.m_InputShape = { 1, 2, 4, 4 };
427 testParams.m_OutputShape = { 1, 2, 2, 2 };
429 testParams.m_InputData =
431 1.0f, 2.0f, 3.0f, 4.0f,
432 2.0f, 3.0f, 4.0f, 5.0f,
433 3.0f, 4.0f, 5.0f, 6.0f,
434 4.0f, 5.0f, 6.0f, 7.0f,
436 7.0f, 6.0f, 5.0f, 4.0f,
437 6.0f, 5.0f, 4.0f, 3.0f,
438 5.0f, 4.0f, 3.0f, 2.0f,
439 4.0f, 3.0f, 2.0f, 1.0f
442 testParams.m_ExpectedOutputData =
451 testParams.SetInOutQuantParams(3.141592f, 3);
453 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
456 template<armnn::DataType ArmnnType,
typename T>
462 ResizeTestParams testParams;
464 testParams.m_DataLayout = dataLayout;
466 testParams.m_InputShape = { 1, 2, 3, 5 };
467 testParams.m_OutputShape = { 1, 2, 2, 3 };
469 testParams.m_InputData =
471 1.5f, 3.0f, 4.5f, 6.0f, 7.5f,
472 9.0f, 10.5f, 12.0f, 13.5f, 15.0f,
473 16.5f, 18.0f, 19.5f, 21.0f, 22.5f,
475 16.5f, 18.0f, 19.5f, 21.0f, 22.5f,
476 9.0f, 10.5f, 12.0f, 13.5f, 15.0f,
477 1.5f, 3.0f, 4.5f, 6.0f, 7.5f
480 testParams.m_ExpectedOutputData =
489 testParams.SetInOutQuantParams(1.5f, -1);
491 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
494 template<armnn::DataType ArmnnType,
typename T>
500 int32_t inQuantOffset,
502 int32_t outQuantOffset)
504 ResizeTestParams testParams;
506 testParams.m_DataLayout = dataLayout;
508 testParams.m_InputShape = { 1, 2, 3, 2 };
509 testParams.m_OutputShape = { 1, 2, 3, 5 };
511 testParams.m_InputData =
513 0.183005f, 2.379065f,
514 1.054970f, 1.302565f,
515 2.400595f, 0.688960f,
517 2.400595f, 0.688960f,
518 1.054970f, 1.302565f,
519 0.183005f, 2.379065f,
522 testParams.m_ExpectedOutputData =
524 0.183005f, 0.183005f, 0.183005f, 2.379065f, 2.379065f,
525 1.054970f, 1.054970f, 1.054970f, 1.302565f, 1.302565f,
526 2.400595f, 2.400595f, 2.400595f, 0.688960f, 0.688960f,
528 2.400595f, 2.400595f, 2.400595f, 0.688960f, 0.688960f,
529 1.054970f, 1.054970f, 1.054970f, 1.302565f, 1.302565f,
530 0.183005f, 0.183005f, 0.183005f, 2.379065f, 2.379065f
533 testParams.SetInQuantParams(inQuantScale, inQuantOffset);
534 testParams.SetOutQuantParams(outQuantScale, outQuantOffset);
536 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
539 template<armnn::DataType ArmnnType,
typename T>
545 ResizeTestParams testParams;
547 testParams.m_DataLayout = dataLayout;
548 testParams.m_HalfPixelCenters =
true;
550 testParams.m_InputShape = { 2, 1, 2, 2 };
551 testParams.m_OutputShape = { 2, 1, 3, 3 };
553 testParams.m_InputData =
562 testParams.m_ExpectedOutputData =
573 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
576 template<armnn::DataType ArmnnType,
typename T>
582 ResizeTestParams testParams;
584 testParams.m_DataLayout = dataLayout;
585 testParams.m_AlignCorners =
true;
587 testParams.m_InputShape = { 1, 1, 2, 2 };
588 testParams.m_OutputShape = { 1, 1, 1, 1 };
590 testParams.m_InputData =
596 testParams.m_ExpectedOutputData =
601 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
604 template<armnn::DataType ArmnnType,
typename T>
610 ResizeTestParams testParams;
612 testParams.m_DataLayout = dataLayout;
613 testParams.m_HalfPixelCenters =
true;
615 testParams.m_InputShape = { 1, 1, 2, 5 };
616 testParams.m_OutputShape = { 1, 1, 2, 2 };
618 testParams.m_InputData =
620 1.0f, 2.0f, 3.0f, 4.0f, 5.0f,
622 1.0f, 2.0f, 3.0f, 4.0f, 5.0f
625 testParams.m_ExpectedOutputData =
631 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
634 template<armnn::DataType ArmnnType,
typename T>
640 ResizeTestParams testParams;
642 testParams.m_DataLayout = dataLayout;
643 testParams.m_AlignCorners =
true;
645 testParams.m_InputShape = { 1, 1, 2, 2 };
646 testParams.m_OutputShape = { 1, 1, 1, 1 };
648 testParams.m_InputData =
654 testParams.m_ExpectedOutputData =
659 return ResizeTestImpl<4, ArmnnType>(workloadFactory, memoryManager, testParams);
668 ResizeBilinearNopTest<armnn::DataType::Float32>(
673 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
674 SimpleResizeBilinearTest<armnn::DataType::Float32>(
679 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
680 ResizeBilinearSqMinTest<armnn::DataType::Float32>(
685 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
686 ResizeBilinearMinTest<armnn::DataType::Float32>(
691 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
692 ResizeBilinearMagTest<armnn::DataType::Float32>(
697 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
698 ResizeNearestNeighborNopTest<armnn::DataType::Float32>(
703 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
704 SimpleResizeNearestNeighborTest<armnn::DataType::Float32>(
709 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
710 ResizeNearestNeighborSqMinTest<armnn::DataType::Float32>(
715 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
716 ResizeNearestNeighborMinTest<armnn::DataType::Float32>(
721 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
722 ResizeNearestNeighborMagTest<armnn::DataType::Float32>(
727 int32_t inQuantOffset,
729 int32_t outQuantOffset);
731 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
732 HalfPixelCentersResizeBilinearTest<armnn::DataType::Float32>(
737 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
738 AlignCornersResizeBilinearTest<armnn::DataType::Float32>(
743 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
744 HalfPixelCentersResizeNearestNeighbourTest<armnn::DataType::Float32>(
749 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4>
750 AlignCornersResizeNearestNeighbourTest<armnn::DataType::Float32>(
757 ResizeBilinearNopTest<armnn::DataType::Float16>(
762 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
763 SimpleResizeBilinearTest<armnn::DataType::Float16>(
768 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
769 ResizeBilinearSqMinTest<armnn::DataType::Float16>(
774 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
775 ResizeBilinearMinTest<armnn::DataType::Float16>(
780 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
781 ResizeBilinearMagTest<armnn::DataType::Float16>(
786 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
787 ResizeNearestNeighborNopTest<armnn::DataType::Float16>(
792 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
793 SimpleResizeNearestNeighborTest<armnn::DataType::Float16>(
798 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
799 ResizeNearestNeighborSqMinTest<armnn::DataType::Float16>(
804 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
805 ResizeNearestNeighborMinTest<armnn::DataType::Float16>(
810 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
811 ResizeNearestNeighborMagTest<armnn::DataType::Float16>(
816 int32_t inQuantOffset,
818 int32_t outQuantOffset);
820 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
821 HalfPixelCentersResizeBilinearTest<armnn::DataType::Float16>(
826 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
827 AlignCornersResizeBilinearTest<armnn::DataType::Float16>(
832 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
833 HalfPixelCentersResizeNearestNeighbourTest<armnn::DataType::Float16>(
838 template LayerTestResult<armnn::ResolveType<armnn::DataType::Float16>, 4>
839 AlignCornersResizeNearestNeighbourTest<armnn::DataType::Float16>(
846 ResizeBilinearNopTest<armnn::DataType::QAsymmU8>(
851 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
852 SimpleResizeBilinearTest<armnn::DataType::QAsymmU8>(
857 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
858 ResizeBilinearSqMinTest<armnn::DataType::QAsymmU8>(
863 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
864 ResizeBilinearMinTest<armnn::DataType::QAsymmU8>(
869 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
870 ResizeBilinearMagTest<armnn::DataType::QAsymmU8>(
875 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
876 ResizeNearestNeighborNopTest<armnn::DataType::QAsymmU8>(
881 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
882 SimpleResizeNearestNeighborTest<armnn::DataType::QAsymmU8>(
887 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
888 ResizeNearestNeighborSqMinTest<armnn::DataType::QAsymmU8>(
893 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
894 ResizeNearestNeighborMinTest<armnn::DataType::QAsymmU8>(
899 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
900 ResizeNearestNeighborMagTest<armnn::DataType::QAsymmU8>(
905 int32_t inQuantOffset,
907 int32_t outQuantOffset);
910 HalfPixelCentersResizeBilinearTest<armnn::DataType::QAsymmS8>(
915 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
916 AlignCornersResizeBilinearTest<armnn::DataType::QAsymmS8>(
921 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
922 HalfPixelCentersResizeNearestNeighbourTest<armnn::DataType::QAsymmS8>(
927 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
928 AlignCornersResizeNearestNeighbourTest<armnn::DataType::QAsymmS8>(
934 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
935 ResizeBilinearNopTest<armnn::DataType::QAsymmS8>(
940 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
941 SimpleResizeBilinearTest<armnn::DataType::QAsymmS8>(
946 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
947 ResizeBilinearSqMinTest<armnn::DataType::QAsymmS8>(
952 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
953 ResizeBilinearMinTest<armnn::DataType::QAsymmS8>(
958 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
959 ResizeBilinearMagTest<armnn::DataType::QAsymmS8>(
964 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
965 ResizeNearestNeighborNopTest<armnn::DataType::QAsymmS8>(
970 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
971 SimpleResizeNearestNeighborTest<armnn::DataType::QAsymmS8>(
976 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
977 ResizeNearestNeighborSqMinTest<armnn::DataType::QAsymmS8>(
982 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
983 ResizeNearestNeighborMinTest<armnn::DataType::QAsymmS8>(
988 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4>
989 ResizeNearestNeighborMagTest<armnn::DataType::QAsymmS8>(
994 int32_t inQuantOffset,
996 int32_t outQuantOffset);
998 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
999 HalfPixelCentersResizeBilinearTest<armnn::DataType::QAsymmU8>(
1004 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
1005 AlignCornersResizeBilinearTest<armnn::DataType::QAsymmU8>(
1010 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
1011 HalfPixelCentersResizeNearestNeighbourTest<armnn::DataType::QAsymmU8>(
1016 template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4>
1017 AlignCornersResizeNearestNeighbourTest<armnn::DataType::QAsymmU8>(
1024 ResizeBilinearNopTest<armnn::DataType::QSymmS16>(
1029 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1030 SimpleResizeBilinearTest<armnn::DataType::QSymmS16>(
1035 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1036 ResizeBilinearSqMinTest<armnn::DataType::QSymmS16>(
1041 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1042 ResizeBilinearMinTest<armnn::DataType::QSymmS16>(
1047 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1048 ResizeBilinearMagTest<armnn::DataType::QSymmS16>(
1053 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1054 ResizeNearestNeighborNopTest<armnn::DataType::QSymmS16>(
1059 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1060 SimpleResizeNearestNeighborTest<armnn::DataType::QSymmS16>(
1065 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1066 ResizeNearestNeighborSqMinTest<armnn::DataType::QSymmS16>(
1071 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1072 ResizeNearestNeighborMinTest<armnn::DataType::QSymmS16>(
1077 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1078 ResizeNearestNeighborMagTest<armnn::DataType::QSymmS16>(
1083 int32_t inQuantOffset,
1084 float outQuantScale,
1085 int32_t outQuantOffset);
1087 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1088 HalfPixelCentersResizeBilinearTest<armnn::DataType::QSymmS16>(
1093 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1094 AlignCornersResizeBilinearTest<armnn::DataType::QSymmS16>(
1099 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1100 HalfPixelCentersResizeNearestNeighbourTest<armnn::DataType::QSymmS16>(
1105 template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4>
1106 AlignCornersResizeNearestNeighbourTest<armnn::DataType::QSymmS16>(
LayerTestResult< T, 4 > ResizeNearestNeighborMinTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
#define ARMNN_NO_DEPRECATE_WARN_BEGIN
ResizeMethod m_Method
The Interpolation method to use (Bilinear, NearestNeighbor).
typename ResolveTypeImpl< DT >::Type ResolveType
LayerTestResult< T, 4 > ResizeBilinearMinTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
Copyright (c) 2020 ARM Limited.
void IgnoreUnused(Ts &&...)
LayerDescriptor m_Parameters
LayerTestResult< T, 4 > ResizeNearestNeighborNopTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
void PermuteTensorNchwToNhwc(armnn::TensorInfo &tensorInfo, std::vector< T > &tensorData)
virtual std::unique_ptr< IWorkload > CreateResize(const ResizeQueueDescriptor &descriptor, const WorkloadInfo &info) const
#define ARMNN_NO_DEPRECATE_WARN_END
LayerTestResult< T, 4 > HalfPixelCentersResizeNearestNeighbourTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
LayerTestResult< T, 4 > ResizeBilinearNopTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
LayerTestResult< T, 4 > ResizeBilinearMagTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
std::shared_ptr< IMemoryManager > IMemoryManagerSharedPtr
Provides access to the appropriate indexes for Channels, Height and Width based on DataLayout...
LayerTestResult< T, 4 > HalfPixelCentersResizeBilinearTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
LayerTestResult< T, 4 > ResizeNearestNeighborMagTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout, float inQuantScale, int32_t inQuantOffset, float outQuantScale, int32_t outQuantOffset)
LayerTestResult< T, 4 > SimpleResizeBilinearTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
void CopyDataFromITensorHandle(void *memory, const armnn::ITensorHandle *tensorHandle)
virtual std::unique_ptr< ITensorHandle > CreateTensorHandle(const TensorInfo &tensorInfo, const bool IsMemoryManaged=true) const =0
LayerTestResult< T, 4 > AlignCornersResizeNearestNeighbourTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
LayerTestResult< T, 4 > AlignCornersResizeBilinearTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
LayerTestResult< T, 4 > ResizeNearestNeighborSqMinTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
LayerTestResult< T, 4 > ResizeBilinearSqMinTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
Contains information about inputs and outputs to a layer.
LayerTestResult< T, 4 > SimpleResizeNearestNeighborTest(armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, const armnn::DataLayout dataLayout)
void CopyDataToITensorHandle(armnn::ITensorHandle *tensorHandle, const void *memory)