mirror of
https://github.com/opencv/opencv.git
synced 2025-06-07 17:44:04 +08:00
Merge pull request #21172 from alalek:dnn_test_drop_non_cpu_int8
This commit is contained in:
commit
d206350738
@ -8,6 +8,13 @@
|
|||||||
#include <opencv2/dnn/all_layers.hpp>
|
#include <opencv2/dnn/all_layers.hpp>
|
||||||
namespace opencv_test { namespace {
|
namespace opencv_test { namespace {
|
||||||
|
|
||||||
|
testing::internal::ParamGenerator< tuple<Backend, Target> > dnnBackendsAndTargetsInt8()
|
||||||
|
{
|
||||||
|
std::vector< tuple<Backend, Target> > targets;
|
||||||
|
targets.push_back(make_tuple(DNN_BACKEND_OPENCV, DNN_TARGET_CPU));
|
||||||
|
return testing::ValuesIn(targets);
|
||||||
|
}
|
||||||
|
|
||||||
template<typename TString>
|
template<typename TString>
|
||||||
static std::string _tf(TString filename)
|
static std::string _tf(TString filename)
|
||||||
{
|
{
|
||||||
@ -341,7 +348,7 @@ TEST_P(Test_Int8_layers, Eltwise)
|
|||||||
testLayer("split_max", "ONNX", 0.004, 0.012);
|
testLayer("split_max", "ONNX", 0.004, 0.012);
|
||||||
}
|
}
|
||||||
|
|
||||||
INSTANTIATE_TEST_CASE_P(/**/, Test_Int8_layers, dnnBackendsAndTargets());
|
INSTANTIATE_TEST_CASE_P(/**/, Test_Int8_layers, dnnBackendsAndTargetsInt8());
|
||||||
|
|
||||||
class Test_Int8_nets : public DNNTestLayer
|
class Test_Int8_nets : public DNNTestLayer
|
||||||
{
|
{
|
||||||
@ -657,11 +664,6 @@ TEST_P(Test_Int8_nets, CaffeNet)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_EQ(2019030000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 && target == DNN_TARGET_MYRIAD
|
|
||||||
&& getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD_X, CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
float l1 = 4e-5, lInf = 0.0025;
|
float l1 = 4e-5, lInf = 0.0025;
|
||||||
testONNXNet("caffenet", l1, lInf);
|
testONNXNet("caffenet", l1, lInf);
|
||||||
}
|
}
|
||||||
@ -679,11 +681,6 @@ TEST_P(Test_Int8_nets, RCNN_ILSVRC13)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_EQ(2019030000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 && target == DNN_TARGET_MYRIAD
|
|
||||||
&& getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD_X, CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
float l1 = 0.02, lInf = 0.042;
|
float l1 = 0.02, lInf = 0.042;
|
||||||
testONNXNet("rcnn_ilsvrc13", l1, lInf);
|
testONNXNet("rcnn_ilsvrc13", l1, lInf);
|
||||||
}
|
}
|
||||||
@ -715,12 +712,6 @@ TEST_P(Test_Int8_nets, Shufflenet)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019)
|
|
||||||
{
|
|
||||||
if (target == DNN_TARGET_OPENCL_FP16) applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER);
|
|
||||||
if (target == DNN_TARGET_OPENCL) applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL, CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER);
|
|
||||||
if (target == DNN_TARGET_MYRIAD) applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD, CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER);
|
|
||||||
}
|
|
||||||
testONNXNet("shufflenet", default_l1, default_lInf);
|
testONNXNet("shufflenet", default_l1, default_lInf);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -767,12 +758,6 @@ TEST_P(Test_Int8_nets, MobileNet_v1_SSD_PPN)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_EQ(2018050000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 && (target == DNN_TARGET_OPENCL || target == DNN_TARGET_OPENCL_FP16))
|
|
||||||
applyTestTag(target == DNN_TARGET_OPENCL ? CV_TEST_TAG_DNN_SKIP_IE_OPENCL : CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16,
|
|
||||||
CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Net net = readNetFromTensorflow(findDataFile("dnn/ssd_mobilenet_v1_ppn_coco.pb", false),
|
Net net = readNetFromTensorflow(findDataFile("dnn/ssd_mobilenet_v1_ppn_coco.pb", false),
|
||||||
findDataFile("dnn/ssd_mobilenet_v1_ppn_coco.pbtxt"));
|
findDataFile("dnn/ssd_mobilenet_v1_ppn_coco.pbtxt"));
|
||||||
|
|
||||||
@ -792,11 +777,6 @@ TEST_P(Test_Int8_nets, Inception_v2_SSD)
|
|||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
applyTestTag(target == DNN_TARGET_CPU ? CV_TEST_TAG_MEMORY_512MB : CV_TEST_TAG_MEMORY_1GB);
|
applyTestTag(target == DNN_TARGET_CPU ? CV_TEST_TAG_MEMORY_512MB : CV_TEST_TAG_MEMORY_1GB);
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_LE(2019010000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 && target == DNN_TARGET_MYRIAD &&
|
|
||||||
getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD_X, CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Net net = readNetFromTensorflow(findDataFile("dnn/ssd_inception_v2_coco_2017_11_17.pb", false),
|
Net net = readNetFromTensorflow(findDataFile("dnn/ssd_inception_v2_coco_2017_11_17.pb", false),
|
||||||
findDataFile("dnn/ssd_inception_v2_coco_2017_11_17.pbtxt"));
|
findDataFile("dnn/ssd_inception_v2_coco_2017_11_17.pbtxt"));
|
||||||
@ -875,25 +855,9 @@ TEST_P(Test_Int8_nets, FasterRCNN_resnet50)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#ifdef INF_ENGINE_RELEASE
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 &&
|
|
||||||
(INF_ENGINE_VER_MAJOR_LT(2019020000) || target != DNN_TARGET_CPU))
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
|
|
||||||
if (INF_ENGINE_VER_MAJOR_GT(2019030000) &&
|
|
||||||
backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_MYRIAD)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD, CV_TEST_TAG_DNN_SKIP_IE_NGRAPH);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_NGRAPH);
|
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_OPENCV && target == DNN_TARGET_OPENCL_FP16)
|
if (backend == DNN_BACKEND_OPENCV && target == DNN_TARGET_OPENCL_FP16)
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL_FP16);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL_FP16);
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_CUDA && target == DNN_TARGET_CUDA_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_CUDA_FP16);
|
|
||||||
|
|
||||||
Net net = readNetFromTensorflow(findDataFile("dnn/faster_rcnn_resnet50_coco_2018_01_28.pb", false),
|
Net net = readNetFromTensorflow(findDataFile("dnn/faster_rcnn_resnet50_coco_2018_01_28.pb", false),
|
||||||
findDataFile("dnn/faster_rcnn_resnet50_coco_2018_01_28.pbtxt"));
|
findDataFile("dnn/faster_rcnn_resnet50_coco_2018_01_28.pbtxt"));
|
||||||
|
|
||||||
@ -918,25 +882,9 @@ TEST_P(Test_Int8_nets, FasterRCNN_inceptionv2)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#ifdef INF_ENGINE_RELEASE
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 &&
|
|
||||||
(INF_ENGINE_VER_MAJOR_LT(2019020000) || target != DNN_TARGET_CPU))
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_NN_BUILDER, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
|
|
||||||
if (INF_ENGINE_VER_MAJOR_GT(2019030000) &&
|
|
||||||
backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_MYRIAD)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD, CV_TEST_TAG_DNN_SKIP_IE_NGRAPH);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_NGRAPH);
|
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_OPENCV && target == DNN_TARGET_OPENCL_FP16)
|
if (backend == DNN_BACKEND_OPENCV && target == DNN_TARGET_OPENCL_FP16)
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL_FP16);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL_FP16);
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_CUDA && target == DNN_TARGET_CUDA_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_CUDA_FP16);
|
|
||||||
|
|
||||||
Net net = readNetFromTensorflow(findDataFile("dnn/faster_rcnn_inception_v2_coco_2018_01_28.pb", false),
|
Net net = readNetFromTensorflow(findDataFile("dnn/faster_rcnn_inception_v2_coco_2018_01_28.pb", false),
|
||||||
findDataFile("dnn/faster_rcnn_inception_v2_coco_2018_01_28.pbtxt"));
|
findDataFile("dnn/faster_rcnn_inception_v2_coco_2018_01_28.pbtxt"));
|
||||||
|
|
||||||
@ -965,17 +913,6 @@ TEST_P(Test_Int8_nets, FasterRCNN_vgg16)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE)
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 || backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) && (target == DNN_TARGET_OPENCL || target == DNN_TARGET_OPENCL_FP16))
|
|
||||||
applyTestTag(target == DNN_TARGET_OPENCL ? CV_TEST_TAG_DNN_SKIP_IE_OPENCL : CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16);
|
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_NGRAPH, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 && target == DNN_TARGET_MYRIAD)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Net net = readNetFromCaffe(findDataFile("dnn/faster_rcnn_vgg16.prototxt"),
|
Net net = readNetFromCaffe(findDataFile("dnn/faster_rcnn_vgg16.prototxt"),
|
||||||
findDataFile("dnn/VGG16_faster_rcnn_final.caffemodel", false));
|
findDataFile("dnn/VGG16_faster_rcnn_final.caffemodel", false));
|
||||||
|
|
||||||
@ -1003,17 +940,6 @@ TEST_P(Test_Int8_nets, FasterRCNN_zf)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 ||
|
|
||||||
backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16);
|
|
||||||
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 ||
|
|
||||||
backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) && target == DNN_TARGET_MYRIAD)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD);
|
|
||||||
|
|
||||||
if (target == DNN_TARGET_CUDA_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_CUDA_FP16);
|
|
||||||
|
|
||||||
Net net = readNetFromCaffe(findDataFile("dnn/faster_rcnn_zf.prototxt"),
|
Net net = readNetFromCaffe(findDataFile("dnn/faster_rcnn_zf.prototxt"),
|
||||||
findDataFile("dnn/ZF_faster_rcnn_final.caffemodel", false));
|
findDataFile("dnn/ZF_faster_rcnn_final.caffemodel", false));
|
||||||
|
|
||||||
@ -1038,14 +964,6 @@ TEST_P(Test_Int8_nets, RFCN)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 ||
|
|
||||||
backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16);
|
|
||||||
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 ||
|
|
||||||
backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) && target == DNN_TARGET_MYRIAD)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD);
|
|
||||||
|
|
||||||
Net net = readNetFromCaffe(findDataFile("dnn/rfcn_pascal_voc_resnet50.prototxt"),
|
Net net = readNetFromCaffe(findDataFile("dnn/rfcn_pascal_voc_resnet50.prototxt"),
|
||||||
findDataFile("dnn/resnet50_rfcn_final.caffemodel", false));
|
findDataFile("dnn/resnet50_rfcn_final.caffemodel", false));
|
||||||
|
|
||||||
@ -1072,22 +990,6 @@ TEST_P(Test_Int8_nets, YoloVoc)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_EQ(2020040000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_GE(2019010000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16);
|
|
||||||
#endif
|
|
||||||
#if defined(INF_ENGINE_RELEASE)
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 || backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) &&
|
|
||||||
target == DNN_TARGET_MYRIAD && getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD_X);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Mat ref = (Mat_<float>(6, 7) << 0, 6, 0.750469f, 0.577374f, 0.127391f, 0.902949f, 0.300809f,
|
Mat ref = (Mat_<float>(6, 7) << 0, 6, 0.750469f, 0.577374f, 0.127391f, 0.902949f, 0.300809f,
|
||||||
0, 1, 0.780879f, 0.270762f, 0.264102f, 0.732475f, 0.745412f,
|
0, 1, 0.780879f, 0.270762f, 0.264102f, 0.732475f, 0.745412f,
|
||||||
0, 11, 0.901615f, 0.1386f, 0.338509f, 0.421337f, 0.938789f,
|
0, 11, 0.901615f, 0.1386f, 0.338509f, 0.421337f, 0.938789f,
|
||||||
@ -1119,18 +1021,6 @@ TEST_P(Test_Int8_nets, TinyYoloVoc)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_EQ(2020040000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
#if defined(INF_ENGINE_RELEASE)
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 || backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) &&
|
|
||||||
target == DNN_TARGET_MYRIAD && getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD_X);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Mat ref = (Mat_<float>(4, 7) << 0, 6, 0.761967f, 0.579042f, 0.159161f, 0.894482f, 0.31994f,
|
Mat ref = (Mat_<float>(4, 7) << 0, 6, 0.761967f, 0.579042f, 0.159161f, 0.894482f, 0.31994f,
|
||||||
0, 11, 0.780595f, 0.129696f, 0.386467f, 0.445275f, 0.920994f,
|
0, 11, 0.780595f, 0.129696f, 0.386467f, 0.445275f, 0.920994f,
|
||||||
1, 6, 0.651450f, 0.460526f, 0.458019f, 0.522527f, 0.5341f,
|
1, 6, 0.651450f, 0.460526f, 0.458019f, 0.522527f, 0.5341f,
|
||||||
@ -1160,16 +1050,6 @@ TEST_P(Test_Int8_nets, YOLOv3)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_EQ(2020040000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_MYRIAD)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD, CV_TEST_TAG_DNN_SKIP_IE_NGRAPH);
|
|
||||||
|
|
||||||
const int N0 = 3;
|
const int N0 = 3;
|
||||||
const int N1 = 6;
|
const int N1 = 6;
|
||||||
static const float ref_[/* (N0 + N1) * 7 */] = {
|
static const float ref_[/* (N0 + N1) * 7 */] = {
|
||||||
@ -1195,19 +1075,6 @@ TEST_P(Test_Int8_nets, YOLOv3)
|
|||||||
testDarknetModel(config_file, weights_file, ref.rowRange(0, N0), scoreDiff, iouDiff, confThreshold);
|
testDarknetModel(config_file, weights_file, ref.rowRange(0, N0), scoreDiff, iouDiff, confThreshold);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019)
|
|
||||||
{
|
|
||||||
if (target == DNN_TARGET_OPENCL)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
else if (target == DNN_TARGET_OPENCL_FP16 && INF_ENGINE_VER_MAJOR_LE(202010000))
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
else if (target == DNN_TARGET_MYRIAD &&
|
|
||||||
getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD_X);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
{
|
{
|
||||||
SCOPED_TRACE("batch size 2");
|
SCOPED_TRACE("batch size 2");
|
||||||
testDarknetModel(config_file, weights_file, ref, scoreDiff, iouDiff, confThreshold);
|
testDarknetModel(config_file, weights_file, ref, scoreDiff, iouDiff, confThreshold);
|
||||||
@ -1223,17 +1090,6 @@ TEST_P(Test_Int8_nets, YOLOv4)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_EQ(2020040000)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
#if defined(INF_ENGINE_RELEASE)
|
|
||||||
if (target == DNN_TARGET_MYRIAD)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
const int N0 = 3;
|
const int N0 = 3;
|
||||||
const int N1 = 7;
|
const int N1 = 7;
|
||||||
static const float ref_[/* (N0 + N1) * 7 */] = {
|
static const float ref_[/* (N0 + N1) * 7 */] = {
|
||||||
@ -1262,19 +1118,6 @@ TEST_P(Test_Int8_nets, YOLOv4)
|
|||||||
{
|
{
|
||||||
SCOPED_TRACE("batch size 2");
|
SCOPED_TRACE("batch size 2");
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE)
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019)
|
|
||||||
{
|
|
||||||
if (target == DNN_TARGET_OPENCL)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
else if (target == DNN_TARGET_OPENCL_FP16 && INF_ENGINE_VER_MAJOR_LE(202010000))
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
else if (target == DNN_TARGET_MYRIAD &&
|
|
||||||
getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD_X);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
testDarknetModel(config_file, weights_file, ref, scoreDiff, iouDiff);
|
testDarknetModel(config_file, weights_file, ref, scoreDiff, iouDiff);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1290,11 +1133,6 @@ TEST_P(Test_Int8_nets, YOLOv4_tiny)
|
|||||||
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
if (target == DNN_TARGET_OPENCL && !ocl::Device::getDefault().isIntel())
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
applyTestTag(CV_TEST_TAG_DNN_SKIP_OPENCL);
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_GE(2021010000)
|
|
||||||
if (target == DNN_TARGET_MYRIAD)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
const float confThreshold = 0.6;
|
const float confThreshold = 0.6;
|
||||||
|
|
||||||
const int N0 = 2;
|
const int N0 = 2;
|
||||||
@ -1314,38 +1152,20 @@ TEST_P(Test_Int8_nets, YOLOv4_tiny)
|
|||||||
double scoreDiff = 0.12;
|
double scoreDiff = 0.12;
|
||||||
double iouDiff = target == DNN_TARGET_OPENCL_FP16 ? 0.2 : 0.082;
|
double iouDiff = target == DNN_TARGET_OPENCL_FP16 ? 0.2 : 0.082;
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE)
|
|
||||||
if (target == DNN_TARGET_MYRIAD) // bad accuracy
|
|
||||||
iouDiff = std::numeric_limits<double>::quiet_NaN();
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 && target == DNN_TARGET_OPENCL)
|
|
||||||
iouDiff = std::numeric_limits<double>::quiet_NaN();
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 ||
|
|
||||||
backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
iouDiff = std::numeric_limits<double>::quiet_NaN();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
{
|
{
|
||||||
SCOPED_TRACE("batch size 1");
|
SCOPED_TRACE("batch size 1");
|
||||||
testDarknetModel(config_file, weights_file, ref.rowRange(0, N0), scoreDiff, iouDiff, confThreshold);
|
testDarknetModel(config_file, weights_file, ref.rowRange(0, N0), scoreDiff, iouDiff, confThreshold);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
throw SkipTestException("batch2: bad accuracy on second image");
|
||||||
/* bad accuracy on second image
|
/* bad accuracy on second image
|
||||||
{
|
{
|
||||||
SCOPED_TRACE("batch size 2");
|
SCOPED_TRACE("batch size 2");
|
||||||
testDarknetModel(config_file, weights_file, ref, scoreDiff, iouDiff, confThreshold);
|
testDarknetModel(config_file, weights_file, ref, scoreDiff, iouDiff, confThreshold);
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(INF_ENGINE_RELEASE)
|
|
||||||
if (target == DNN_TARGET_MYRIAD) // bad accuracy
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_MYRIAD, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
if (backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 && target == DNN_TARGET_OPENCL)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
if ((backend == DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_2019 ||
|
|
||||||
backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH) && target == DNN_TARGET_OPENCL_FP16)
|
|
||||||
applyTestTag(CV_TEST_TAG_DNN_SKIP_IE_OPENCL_FP16, CV_TEST_TAG_DNN_SKIP_IE_VERSION);
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
INSTANTIATE_TEST_CASE_P(/**/, Test_Int8_nets, dnnBackendsAndTargets());
|
INSTANTIATE_TEST_CASE_P(/**/, Test_Int8_nets, dnnBackendsAndTargetsInt8());
|
||||||
|
|
||||||
}} // namespace
|
}} // namespace
|
||||||
|
Loading…
Reference in New Issue
Block a user