From 4e965caf866455ca8d615d33e751737d5a7e0bec Mon Sep 17 00:00:00 2001 From: zhengyuanhua Date: Thu, 25 Mar 2021 12:32:55 +0800 Subject: [PATCH] dts: onnex parser dim value set -1 modify when dynamic --- parser/onnx/onnx_parser.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/parser/onnx/onnx_parser.cc b/parser/onnx/onnx_parser.cc index a2dcaf3..8745fb9 100644 --- a/parser/onnx/onnx_parser.cc +++ b/parser/onnx/onnx_parser.cc @@ -148,6 +148,7 @@ const std::map kOnnxOpMap = { }; const char* const MATMULV2 = "MatMulV2"; const std::vector kNoNeedUpdateFormat = {MATMULV2}; +const int64_t kDimValue = 1; } Status OnnxModelParser::ParseInput(ge::onnx::GraphProto &onnx_graph, @@ -182,7 +183,10 @@ Status OnnxModelParser::ParseInput(ge::onnx::GraphProto &onnx_graph, const ge::onnx::TensorShapeProto tensor_shape = type_proto_tensor.shape(); for (int j = 0; j < tensor_shape.dim_size(); j++) { const ge::onnx::TensorShapeProto_Dimension dimension = tensor_shape.dim(j); - int64_t dim_value = dimension.dim_value(); + int64_t dim_value = -1; + if (dimension.value_case() == kDimValue) { + dim_value = dimension.dim_value(); + } tensor_tmp.add_dims(dim_value); GELOGI("elem_type: %d, dim_value: %ld", elem_type, dim_value); }