12 explicit TransposeConvFixture(
const std::string& inputShape,
13 const std::string& outputShape,
14 const std::string& filterShape,
15 const std::string& filterData,
16 const std::string& strideX,
17 const std::string& strideY,
18 const std::string& dataType)
23 "operator_codes": [ { "builtin_code": "TRANSPOSE_CONV" } ], 30 "name": "outputShapeTensor", 39 "shape": )" + filterShape + R"(, 40 "type": ")" + dataType + R"(", 42 "name": "filterTensor", 51 "shape": )" + inputShape + R"(, 52 "type": ")" + dataType + R"(", 54 "name": "inputTensor", 63 "shape": )" + outputShape + R"(, 64 "type": ")" + dataType + R"(", 66 "name": "outputTensor", 80 "inputs": [ 0, 1, 2 ], 82 "builtin_options_type": "TransposeConvOptions", 85 "stride_w": )" + strideX + R"(, 86 "stride_h": )" + strideY + R"( 88 "custom_options_format": "FLEXBUFFERS" 93 { "data": )" + outputShape + R"( }, 94 { "data": )" + filterData + R"( }, 104 struct SimpleTransposeConvFixture : TransposeConvFixture
106 SimpleTransposeConvFixture()
107 : TransposeConvFixture(
"[ 1, 2, 2, 1 ]",
119 RunTest<4, armnn::DataType::QAsymmU8>(
134 explicit TransposeConvFixtureWithBias(
const std::string& inputShape,
135 const std::string& outputShape,
136 const std::string& filterShape,
137 const std::string& filterData,
138 const std::string& strideX,
139 const std::string& strideY,
140 const std::string& dataType,
141 const std::string& biasShape,
142 const std::string& biasData)
147 "operator_codes": [ { "builtin_code": "TRANSPOSE_CONV" } ], 154 "name": "outputShapeTensor", 163 "shape": )" + filterShape + R"(, 164 "type": ")" + dataType + R"(", 166 "name": "filterTensor", 175 "shape": )" + inputShape + R"(, 176 "type": ")" + dataType + R"(", 178 "name": "inputTensor", 187 "shape": )" + biasShape + R"( , 190 "name": "biasTensor", 199 "shape": )" + outputShape + R"(, 200 "type": ")" + dataType + R"(", 202 "name": "outputTensor", 216 "inputs": [ 0, 1, 2, 3], 218 "builtin_options_type": "TransposeConvOptions", 221 "stride_w": )" + strideX + R"(, 222 "stride_h": )" + strideY + R"( 224 "custom_options_format": "FLEXBUFFERS" 229 { "data": )" + outputShape + R"( }, 230 { "data": )" + filterData + R"( }, 232 { "data": )" + biasData + R"( }, 237 SetupSingleInputSingleOutput("inputTensor",
"outputTensor");
241 struct SimpleTransposeConvFixtureWithBias : TransposeConvFixtureWithBias
243 SimpleTransposeConvFixtureWithBias()
244 : TransposeConvFixtureWithBias(
"[ 1, 2, 2, 1 ]",
256 TEST_CASE_FIXTURE(SimpleTransposeConvFixtureWithBias,
"ParseSimpleTransposeConvWithBias")
258 RunTest<4, armnn::DataType::QAsymmU8>(
274 explicit TransposeConvPerChannelFixture()
281 "builtin_code": "TRANSPOSE_CONV", 311 "details_type": "NONE", 312 "quantized_dimension": 0 322 "name": "model/conv2d_transpose/stack", 324 "details_type": "NONE", 325 "quantized_dimension": 0 338 "name": "model/conv2d_transpose/conv2d_transpose", 380 "details_type": "NONE", 381 "quantized_dimension": 0 408 "details_type": "NONE", 409 "quantized_dimension": 0 431 "builtin_options_type": "TransposeConvOptions", 437 "custom_options_format": "FLEXBUFFERS" 443 "description": "MLIR Converted.", 562 "name": "min_runtime_version", 568 SetupSingleInputSingleOutput("input",
"Identity");
572 TEST_CASE_FIXTURE(TransposeConvPerChannelFixture,
"ParseTransposeConvPerChannel")
574 RunTest<4, armnn::DataType::QAsymmS8>(
577 -11, 40,-26, 11,-28, 8, 0, -8,
578 -10, 34, 47, 0,-33,-14, 28, 35,
579 6,-28,-26, 8, 13, 33,-31,-41,
580 31,-20,-31,-16, 8,-18,-44, 0
583 -8,-17, -8, -9,-16, 1, 2,-11,
584 3,-16,-19,-12,-11, -6, -3, -6,
585 -5, -8,-16,-12,-11, -3, -7,-13,
586 -4, 1, -9,-10, -5,-12, -5, -8,
587 2,-25, -5, -6,-20, -7, 2,-21,
588 1, 4, 5,-13,-10,-12, 3, 4,
589 -10,-17,-17, -6, -7, 12,-22,-17,
590 -17, 0, -5,-14,-21,-12, 17,-13,
591 3, -6, -3, -3, -2,-16,-11,-12,
592 -15,-14, -1, -2,-35, 5,-18, 0,
593 -6, 8, 5,-12, 12, 7, -6, -3,
594 11,-28,-28, -3,-18,-29, -5,-13,
595 -12, 11, -2, -5, 6, -9, -6, 7,
596 -9,-11,-14, -2, 12, 5,-21,-23,
597 -4, -4, -6, -6,-21,-25, 0,-18,
598 -26, 10, -7,-13, 3, 39,-39, -4
TEST_SUITE("TensorflowLiteParser_TransposeConv")
TEST_CASE_FIXTURE(ClContextControlFixture, "CopyBetweenNeonAndGpu")
void SetupSingleInputSingleOutput(const std::string &inputName, const std::string &outputName)