diff --git a/modules/cudaoptflow/perf/perf_optflow.cpp b/modules/cudaoptflow/perf/perf_optflow.cpp index 5947cdc4f..d22eb7e60 100644 --- a/modules/cudaoptflow/perf/perf_optflow.cpp +++ b/modules/cudaoptflow/perf/perf_optflow.cpp @@ -378,7 +378,6 @@ PERF_TEST_P(ImagePair, OpticalFlowDual_TVL1, alg->set("medianFiltering", 1); alg->set("innerIterations", 1); alg->set("outerIterations", 300); - TEST_CYCLE() alg->calc(frame0, frame1, flow); CPU_SANITY_CHECK(flow); diff --git a/modules/cudastereo/src/cuda/stereocsbp.cu b/modules/cudastereo/src/cuda/stereocsbp.cu index dd535e8b2..394693240 100644 --- a/modules/cudastereo/src/cuda/stereocsbp.cu +++ b/modules/cudastereo/src/cuda/stereocsbp.cu @@ -61,7 +61,7 @@ namespace cv { namespace cuda { namespace device template static float __device__ pixeldiff(const uchar* left, const uchar* right, float max_data_term); template<> __device__ __forceinline__ static float pixeldiff<1>(const uchar* left, const uchar* right, float max_data_term) { - return fmin( ::abs((int)*left - *right), max_data_term); + return fminf( ::abs((int)*left - *right), max_data_term); } template<> __device__ __forceinline__ static float pixeldiff<3>(const uchar* left, const uchar* right, float max_data_term) { @@ -69,7 +69,7 @@ namespace cv { namespace cuda { namespace device float tg = 0.587f * ::abs((int)left[1] - right[1]); float tr = 0.299f * ::abs((int)left[2] - right[2]); - return fmin(tr + tg + tb, max_data_term); + return fminf(tr + tg + tb, max_data_term); } template<> __device__ __forceinline__ static float pixeldiff<4>(const uchar* left, const uchar* right, float max_data_term) { @@ -80,7 +80,7 @@ namespace cv { namespace cuda { namespace device float tg = 0.587f * ::abs((int)l.y - r.y); float tr = 0.299f * ::abs((int)l.z - r.z); - return fmin(tr + tg + tb, max_data_term); + return fminf(tr + tg + tb, max_data_term); } template diff --git a/modules/video/test/test_tvl1optflow.cpp b/modules/video/test/test_tvl1optflow.cpp index 4772f0fb6..ed11fe4ea 100644 --- a/modules/video/test/test_tvl1optflow.cpp +++ b/modules/video/test/test_tvl1optflow.cpp @@ -166,7 +166,13 @@ TEST(Video_calcOpticalFlowDual_TVL1, Regression) ASSERT_EQ(gold.rows, flow.rows); ASSERT_EQ(gold.cols, flow.cols); - const double err = calcRMSE(gold, flow); + double err = calcRMSE(gold, flow); + EXPECT_LE(err, MAX_RMSE); + tvl1->set("gamma", 1.f); + tvl1->calc(frame1, frame2, flow); + ASSERT_EQ(gold.rows, flow.rows); + ASSERT_EQ(gold.cols, flow.cols); + err = calcRMSE(gold, flow); EXPECT_LE(err, MAX_RMSE); #endif }