Commit a1df2950 authored by Vadim Pisarevsky's avatar Vadim Pisarevsky

Merge pull request #3525 from jet47:fix-cudev-tests

parents 7b20ce49 ec33c4ae
...@@ -797,8 +797,7 @@ namespace color_cvt_detail ...@@ -797,8 +797,7 @@ namespace color_cvt_detail
if (diff > numeric_limits<float>::epsilon()) if (diff > numeric_limits<float>::epsilon())
{ {
s = (l < 0.5f) * diff / (vmax + vmin); s = l < 0.5f ? diff / (vmax + vmin) : diff / (2 - vmax - vmin);
s += (l >= 0.5f) * diff / (2.0f - vmax - vmin);
diff = 60.f / diff; diff = 60.f / diff;
...@@ -1190,7 +1189,7 @@ namespace color_cvt_detail ...@@ -1190,7 +1189,7 @@ namespace color_cvt_detail
dst.x = saturate_cast<uchar>(buf.x * 2.55f); dst.x = saturate_cast<uchar>(buf.x * 2.55f);
dst.y = saturate_cast<uchar>(buf.y * 0.72033898305084743f + 96.525423728813564f); dst.y = saturate_cast<uchar>(buf.y * 0.72033898305084743f + 96.525423728813564f);
dst.z = saturate_cast<uchar>(buf.z * 0.99609375f + 139.453125f); dst.z = saturate_cast<uchar>(buf.z * 0.9732824427480916f + 136.259541984732824f);
return dst; return dst;
} }
...@@ -1255,7 +1254,7 @@ namespace color_cvt_detail ...@@ -1255,7 +1254,7 @@ namespace color_cvt_detail
buf.x = src.x * (100.f / 255.f); buf.x = src.x * (100.f / 255.f);
buf.y = src.y * 1.388235294117647f - 134.f; buf.y = src.y * 1.388235294117647f - 134.f;
buf.z = src.z * 1.003921568627451f - 140.f; buf.z = src.z * 1.027450980392157f - 140.f;
Luv2RGB<float, 3, 3, srgb, blueIdx> cvtf; Luv2RGB<float, 3, 3, srgb, blueIdx> cvtf;
buf = cvtf(buf); buf = cvtf(buf);
......
...@@ -69,7 +69,7 @@ public: ...@@ -69,7 +69,7 @@ public:
Mat dst_gold; Mat dst_gold;
cv::sqrt(src, dst_gold); cv::sqrt(src, dst_gold);
EXPECT_MAT_NEAR(dst_gold, dst, 0.0); EXPECT_MAT_NEAR(dst_gold, dst, 1e-4);
} }
void test_expr() void test_expr()
...@@ -88,7 +88,7 @@ public: ...@@ -88,7 +88,7 @@ public:
cv::multiply(src1, src2, dst_gold); cv::multiply(src1, src2, dst_gold);
cv::sqrt(dst_gold, dst_gold); cv::sqrt(dst_gold, dst_gold);
EXPECT_MAT_NEAR(dst_gold, dst, 0.0); EXPECT_MAT_NEAR(dst_gold, dst, 1e-4);
} }
}; };
......
...@@ -69,7 +69,7 @@ enum { ...@@ -69,7 +69,7 @@ enum {
GpuMat_<SelectIf<dst_cn == 1, uchar, uchar ## dst_cn>::type> dstb = src_space ## _to_ ## dst_space ## _(d_srcb); \ GpuMat_<SelectIf<dst_cn == 1, uchar, uchar ## dst_cn>::type> dstb = src_space ## _to_ ## dst_space ## _(d_srcb); \
Mat dstb_gold; \ Mat dstb_gold; \
cv::cvtColor(srcb, dstb_gold, COLOR_ ## src_space ## 2 ## dst_space); \ cv::cvtColor(srcb, dstb_gold, COLOR_ ## src_space ## 2 ## dst_space); \
EXPECT_MAT_NEAR(dstb_gold, dstb, 1.0); \ EXPECT_MAT_NEAR(dstb_gold, dstb, 2.0); \
Mat bgrf = randomMat(size, CV_32FC3, 0, 1); \ Mat bgrf = randomMat(size, CV_32FC3, 0, 1); \
Mat srcf; \ Mat srcf; \
cv::cvtColor(bgrf, srcf, COLOR_BGR ## 2 ## src_space, src_cn); \ cv::cvtColor(bgrf, srcf, COLOR_BGR ## 2 ## src_space, src_cn); \
...@@ -77,7 +77,7 @@ enum { ...@@ -77,7 +77,7 @@ enum {
GpuMat_<SelectIf<dst_cn == 1, float, float ## dst_cn>::type> dstf = src_space ## _to_ ## dst_space ## _(d_srcf); \ GpuMat_<SelectIf<dst_cn == 1, float, float ## dst_cn>::type> dstf = src_space ## _to_ ## dst_space ## _(d_srcf); \
Mat dstf_gold; \ Mat dstf_gold; \
cv::cvtColor(srcf, dstf_gold, COLOR_ ## src_space ## 2 ## dst_space); \ cv::cvtColor(srcf, dstf_gold, COLOR_ ## src_space ## 2 ## dst_space); \
EXPECT_MAT_NEAR(dstf_gold, dstf, 1.0); \ EXPECT_MAT_NEAR(dstf_gold, dstf, 2.0); \
} }
// RGB <-> BGR // RGB <-> BGR
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment