diff --git a/modules/dnn/src/onnx/onnx_importer.cpp b/modules/dnn/src/onnx/onnx_importer.cpp index 508ba0299e..46ee70aa5b 100644 --- a/modules/dnn/src/onnx/onnx_importer.cpp +++ b/modules/dnn/src/onnx/onnx_importer.cpp @@ -2147,6 +2147,7 @@ void ONNXImporter::parseSqueeze(LayerParams& layerParams, const opencv_onnx::Nod for (int i = 0; i < axes_dict.size(); ++i) { int axis = axes_dict.getIntValue(i); + axis = normalize_axis(axis, inpShape.size()); CV_CheckLE(axis, static_cast(inpShape.size()), "Squeeze axis"); maskedAxes[axis] = inpShape[axis] == 1; } @@ -2162,6 +2163,7 @@ void ONNXImporter::parseSqueeze(LayerParams& layerParams, const opencv_onnx::Nod for (int i = 0; i < axesLen; i++) { int axis = axesMat.at(i); + axis = normalize_axis(axis, inpShape.size()); CV_CheckLE(axis, static_cast(inpShape.size()), "Squeeze axis"); maskedAxes[axis] = inpShape[axis] == 1; }