diff --git a/modules/dnn/src/dnn.cpp b/modules/dnn/src/dnn.cpp index d0ddd02d0f..b9cb1545eb 100644 --- a/modules/dnn/src/dnn.cpp +++ b/modules/dnn/src/dnn.cpp @@ -655,6 +655,8 @@ struct Net::Impl fusion = true; preferableBackend = DNN_BACKEND_DEFAULT; preferableTarget = DNN_TARGET_CPU; + blobManager.setPreferableBackend(DNN_BACKEND_DEFAULT); + blobManager.setPreferableTarget(DNN_TARGET_CPU); } Ptr netInputLayer; diff --git a/modules/dnn/src/layers/convolution_layer.cpp b/modules/dnn/src/layers/convolution_layer.cpp index d34ee9856e..f650afab7a 100644 --- a/modules/dnn/src/layers/convolution_layer.cpp +++ b/modules/dnn/src/layers/convolution_layer.cpp @@ -783,6 +783,7 @@ public: if( IS_POWER_LAYER(activ) ) { Ptr activ_power = activ.dynamicCast(); + CV_Assert(activ_power); a = activ_power->scale; b = activ_power->shift; } diff --git a/modules/imgproc/src/smooth.cpp b/modules/imgproc/src/smooth.cpp index afe45af2c3..d55c06b815 100644 --- a/modules/imgproc/src/smooth.cpp +++ b/modules/imgproc/src/smooth.cpp @@ -1844,7 +1844,7 @@ static bool ocl_GaussianBlur_8UC1(InputArray _src, OutputArray _dst, Size ksize, const char * const borderMap[] = { "BORDER_CONSTANT", "BORDER_REPLICATE", "BORDER_REFLECT", 0, "BORDER_REFLECT_101" }; char build_opts[1024]; - sprintf(build_opts, "-D %s %s%s", borderMap[borderType], + sprintf(build_opts, "-D %s %s%s", borderMap[borderType & ~BORDER_ISOLATED], ocl::kernelToStr(kernelX, CV_32F, "KERNEL_MATRIX_X").c_str(), ocl::kernelToStr(kernelY, CV_32F, "KERNEL_MATRIX_Y").c_str());