fixed gpu tests
authorVladislav Vinogradov <no@email>
Wed, 29 Jun 2011 11:14:03 +0000 (11:14 +0000)
committerVladislav Vinogradov <no@email>
Wed, 29 Jun 2011 11:14:03 +0000 (11:14 +0000)
modules/gpu/test/test_calib3d.cpp
modules/gpu/test/test_imgproc.cpp
modules/gpu/test/test_matop.cpp

index 45404b2..bee814d 100644 (file)
@@ -88,17 +88,21 @@ TEST_P(StereoBlockMatching, Regression)
     ASSERT_TRUE(!img_l.empty() && !img_r.empty() && !img_template.empty());\r
 \r
     PRINT_PARAM(devInfo);\r
+    \r
+    cv::Mat disp;\r
 \r
-    cv::gpu::GpuMat disp;\r
-    cv::gpu::StereoBM_GPU bm(0, 128, 19);\r
+    ASSERT_NO_THROW(\r
+        cv::gpu::GpuMat dev_disp;\r
+        cv::gpu::StereoBM_GPU bm(0, 128, 19);\r
 \r
-    bm(cv::gpu::GpuMat(img_l), cv::gpu::GpuMat(img_r), disp);\r
+        bm(cv::gpu::GpuMat(img_l), cv::gpu::GpuMat(img_r), dev_disp);\r
+        \r
+        dev_disp.download(disp);\r
+    );\r
 \r
     disp.convertTo(disp, img_template.type());\r
-\r
-    ASSERT_EQ(img_template.size(), disp.size());\r
-    double norm = cv::norm(img_template, (cv::Mat)disp, cv::NORM_INF);\r
-    ASSERT_EQ(0.0, norm);\r
+    \r
+    EXPECT_MAT_NEAR(img_template, disp, 0.0);\r
 }\r
 \r
 INSTANTIATE_TEST_CASE_P(Calib3D, StereoBlockMatching, testing::ValuesIn(devices()));\r
@@ -122,16 +126,20 @@ TEST_P(StereoBeliefPropagation, Regression)
 \r
     PRINT_PARAM(devInfo);\r
 \r
-    cv::gpu::GpuMat disp;\r
-    cv::gpu::StereoBeliefPropagation bpm(64, 8, 2, 25, 0.1f, 15, 1, CV_16S);\r
+    cv::Mat disp;\r
 \r
-    bpm(cv::gpu::GpuMat(img_l), cv::gpu::GpuMat(img_r), disp);\r
+    ASSERT_NO_THROW(\r
+        cv::gpu::GpuMat dev_disp;\r
+        cv::gpu::StereoBeliefPropagation bpm(64, 8, 2, 25, 0.1f, 15, 1, CV_16S);\r
 \r
-    disp.convertTo(disp, img_template.type());\r
+        bpm(cv::gpu::GpuMat(img_l), cv::gpu::GpuMat(img_r), dev_disp);\r
+        \r
+        dev_disp.download(disp);\r
+    );\r
 \r
-    ASSERT_EQ(img_template.size(), disp.size());\r
-    double norm = cv::norm(img_template, (cv::Mat)disp, cv::NORM_INF);\r
-    ASSERT_EQ(0.0, norm);\r
+    disp.convertTo(disp, img_template.type());\r
+    \r
+    EXPECT_MAT_NEAR(img_template, disp, 0.0);\r
 }\r
 \r
 INSTANTIATE_TEST_CASE_P(Calib3D, StereoBeliefPropagation, testing::ValuesIn(devices()));\r
@@ -164,16 +172,20 @@ TEST_P(StereoConstantSpaceBP, Regression)
 \r
     PRINT_PARAM(devInfo);\r
 \r
-    cv::gpu::GpuMat disp;\r
-    cv::gpu::StereoConstantSpaceBP bpm(128, 16, 4, 4);\r
+    cv::Mat disp;\r
 \r
-    bpm(cv::gpu::GpuMat(img_l), cv::gpu::GpuMat(img_r), disp);\r
+    ASSERT_NO_THROW(\r
+        cv::gpu::GpuMat dev_disp;\r
+        cv::gpu::StereoConstantSpaceBP bpm(128, 16, 4, 4);\r
 \r
-    disp.convertTo(disp, img_template.type());\r
+        bpm(cv::gpu::GpuMat(img_l), cv::gpu::GpuMat(img_r), dev_disp);\r
+        \r
+        dev_disp.download(disp);\r
+    );\r
 \r
-    ASSERT_EQ(img_template.size(), disp.size());\r
-    double norm = cv::norm(img_template, (cv::Mat)disp, cv::NORM_INF);\r
-    ASSERT_EQ(0.0, norm);\r
+    disp.convertTo(disp, img_template.type());\r
+    \r
+    EXPECT_MAT_NEAR(img_template, disp, 1.0);\r
 }\r
 \r
 INSTANTIATE_TEST_CASE_P(Calib3D, StereoConstantSpaceBP, testing::ValuesIn(devices()));\r
index 219b73e..836f2de 100644 (file)
@@ -1629,7 +1629,7 @@ TEST_P(MeanShiftSegmentation, Regression)
     cv::Mat dst_rgb;\r
     cv::cvtColor(dst, dst_rgb, CV_BGRA2BGR);\r
 \r
-    EXPECT_MAT_SIMILAR(dst_gold, dst_rgb, 1e-5);\r
+    EXPECT_MAT_SIMILAR(dst_gold, dst_rgb, 1e-3);\r
 }\r
 \r
 INSTANTIATE_TEST_CASE_P(ImgProc, MeanShiftSegmentation, testing::Combine(\r
index 470306d..8b16a9a 100644 (file)
@@ -421,9 +421,9 @@ TEST_P(CopyTo, Masked)
 \r
     cv::RNG& rng = cvtest::TS::ptr()->get_rng();\r
 \r
-    cv::Mat mask = cvtest::randomMat(rng, src.size(), CV_8UC1, 0.0, 1.5, false);\r
+    cv::Mat mask = cvtest::randomMat(rng, src.size(), CV_8UC1, 0.0, 2.0, false);\r
 \r
-    cv::Mat dst_gold;\r
+    cv::Mat dst_gold(src.size(), src.type(), cv::Scalar::all(0));\r
     src.copyTo(dst_gold, mask);\r
 \r
     cv::Mat dst;\r
@@ -431,7 +431,7 @@ TEST_P(CopyTo, Masked)
     ASSERT_NO_THROW(\r
         cv::gpu::GpuMat dev_src(src);\r
 \r
-        cv::gpu::GpuMat dev_dst;\r
+        cv::gpu::GpuMat dev_dst(src.size(), src.type(), cv::Scalar::all(0));\r
 \r
         dev_src.copyTo(dev_dst, cv::gpu::GpuMat(mask));\r
 \r