diff --git a/modules/dnn/src/layers/max_unpooling_layer.cpp b/modules/dnn/src/layers/max_unpooling_layer.cpp index e0c105dd4c..daac57854c 100644 --- a/modules/dnn/src/layers/max_unpooling_layer.cpp +++ b/modules/dnn/src/layers/max_unpooling_layer.cpp @@ -14,6 +14,8 @@ Implementation of Batch Normalization layer. #include "op_halide.hpp" #include +#include + namespace cv { namespace dnn @@ -94,7 +96,20 @@ public: for(int i_wh = 0; i_wh < wh_area; i_wh++) { int index = idxptr[i_wh]; - CV_Assert(0 <= index && index < outPlaneTotal); + if (!(0 <= index && index < outPlaneTotal)) + { + std::cerr + << "i_n=" << i_n << std::endl + << "i_c=" << i_c << std::endl + << "i_wh=" << i_wh << std::endl + << "index=" << index << std::endl + << "outPlaneTotal=" << outPlaneTotal << std::endl + << "input.size=" << input.size << std::endl + << "indices.size=" << indices.size << std::endl + << "outBlob=" << outBlob.size << std::endl + ; + CV_Assert(0 <= index && index < outPlaneTotal); + } outptr[index] = inptr[i_wh]; } }