float l1 = 0.0, lInf = 0.0;
if (target == DNN_TARGET_OPENCL_FP16)
{
- l1 = 2e-2; lInf = 9e-2;
+ l1 = 2e-2;
+ lInf = 9e-2;
+ if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH)
+ lInf = 0.1f;
}
else if (target == DNN_TARGET_MYRIAD)
{
Mat out = net.forward();
// Reference output values are in range [-29.1, 69.5]
- double l1 = (target == DNN_TARGET_OPENCL_FP16 || target == DNN_TARGET_MYRIAD) ? 0.25 : 4e-4;
- double lInf = (target == DNN_TARGET_OPENCL_FP16 || target == DNN_TARGET_MYRIAD) ? 5.3 : 3e-3;
- if (target == DNN_TARGET_MYRIAD && getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X)
+ double l1 = 4e-4, lInf = 3e-3;
+ if (target == DNN_TARGET_OPENCL_FP16)
+ {
+ l1 = 0.25;
+ lInf = 5.3;
+ }
+ else if (target == DNN_TARGET_MYRIAD)
+ {
+ l1 = (getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X) ? 0.5 : 0.25;
+ lInf = (getInferenceEngineVPUType() == CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X) ? 11 : 5.3;
+ }
+ else if(target == DNN_TARGET_CUDA_FP16)
{
- l1 = 0.5; lInf = 11;
+ l1 = 0.21;
+ lInf = 4.5;
}
+ if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL_FP16)
+ {
+ l1 = 0.26; lInf = 6.5;
+ }
+
normAssert(out, ref, "", l1, lInf);
expectNoFallbacksFromIE(net);
}
#endif
// output range: [-11; 8]
- double l1 = (target == DNN_TARGET_OPENCL_FP16 || target == DNN_TARGET_MYRIAD) ? 0.017 : default_l1;
- double lInf = (target == DNN_TARGET_OPENCL_FP16 || target == DNN_TARGET_MYRIAD) ? 0.14 : default_lInf;
+ double l1 = default_l1, lInf = default_lInf;
+ if (target == DNN_TARGET_OPENCL_FP16 || target == DNN_TARGET_MYRIAD)
+ {
+ l1 = 0.017;
+ lInf = 0.14;
+ }
+ else if (target == DNN_TARGET_CUDA_FP16)
+ {
+ l1 = 0.018;
+ lInf = 0.16;
+ }
+ #if defined(INF_ENGINE_RELEASE) && INF_ENGINE_VER_MAJOR_EQ(2020040000)
+ if (backend == DNN_BACKEND_INFERENCE_ENGINE_NGRAPH && target == DNN_TARGET_OPENCL_FP16)
+ {
+ l1 = 0.018f; lInf = 0.16f;
+ }
+ #endif
+
testONNXModels("tiny_yolo2", pb, l1, lInf);
}