add sanity checks into the objdetect gpu performance tests
authormarina.kolpakova <marina.kolpakova@itseez.com>
Wed, 10 Oct 2012 06:26:48 +0000 (10:26 +0400)
committermarina.kolpakova <marina.kolpakova@itseez.com>
Wed, 10 Oct 2012 12:13:25 +0000 (16:13 +0400)
modules/gpu/perf/perf_objdetect.cpp

index ec12100..0c5af17 100644 (file)
@@ -17,7 +17,7 @@ PERF_TEST_P(Image, ObjDetect_HOG, Values<string>("gpu/hog/road.png"))
 \r
     std::vector<cv::Rect> found_locations;\r
 \r
-    if (runOnGpu)\r
+    if (PERF_RUN_GPU())\r
     {\r
         cv::gpu::GpuMat d_img(img);\r
 \r
@@ -43,6 +43,8 @@ PERF_TEST_P(Image, ObjDetect_HOG, Values<string>("gpu/hog/road.png"))
             hog.detectMultiScale(img, found_locations);\r
         }\r
     }\r
+\r
+    SANITY_CHECK(found_locations);\r
 }\r
 \r
 //===========test for CalTech data =============//\r
@@ -57,7 +59,7 @@ PERF_TEST_P(HOG, CalTech, Values<string>("gpu/caltech/image_00000009_0.png", "gp
 \r
     std::vector<cv::Rect> found_locations;\r
 \r
-    if (runOnGpu)\r
+    if (PERF_RUN_GPU())\r
     {\r
         cv::gpu::GpuMat d_img(img);\r
 \r
@@ -83,6 +85,8 @@ PERF_TEST_P(HOG, CalTech, Values<string>("gpu/caltech/image_00000009_0.png", "gp
             hog.detectMultiScale(img, found_locations);\r
         }\r
     }\r
+\r
+    SANITY_CHECK(found_locations);\r
 }\r
 \r
 \r
@@ -98,7 +102,7 @@ PERF_TEST_P(ImageAndCascade, ObjDetect_HaarClassifier,
     cv::Mat img = readImage(GetParam().first, cv::IMREAD_GRAYSCALE);\r
     ASSERT_FALSE(img.empty());\r
 \r
-    if (runOnGpu)\r
+    if (PERF_RUN_GPU())\r
     {\r
         cv::gpu::CascadeClassifier_GPU d_cascade;\r
         ASSERT_TRUE(d_cascade.load(perf::TestBase::getDataPath(GetParam().second)));\r
@@ -112,6 +116,8 @@ PERF_TEST_P(ImageAndCascade, ObjDetect_HaarClassifier,
         {\r
             d_cascade.detectMultiScale(d_img, d_objects_buffer);\r
         }\r
+\r
+        GPU_SANITY_CHECK(d_objects_buffer);\r
     }\r
     else\r
     {\r
@@ -126,6 +132,8 @@ PERF_TEST_P(ImageAndCascade, ObjDetect_HaarClassifier,
         {\r
             cascade.detectMultiScale(img, rects);\r
         }\r
+\r
+        CPU_SANITY_CHECK(rects);\r
     }\r
 }\r
 \r
@@ -138,7 +146,7 @@ PERF_TEST_P(ImageAndCascade, ObjDetect_LBPClassifier,
     cv::Mat img = readImage(GetParam().first, cv::IMREAD_GRAYSCALE);\r
     ASSERT_FALSE(img.empty());\r
 \r
-    if (runOnGpu)\r
+    if (PERF_RUN_GPU())\r
     {\r
         cv::gpu::CascadeClassifier_GPU d_cascade;\r
         ASSERT_TRUE(d_cascade.load(perf::TestBase::getDataPath(GetParam().second)));\r
@@ -152,6 +160,8 @@ PERF_TEST_P(ImageAndCascade, ObjDetect_LBPClassifier,
         {\r
             d_cascade.detectMultiScale(d_img, d_gpu_rects);\r
         }\r
+\r
+        GPU_SANITY_CHECK(d_gpu_rects);\r
     }\r
     else\r
     {\r
@@ -166,6 +176,8 @@ PERF_TEST_P(ImageAndCascade, ObjDetect_LBPClassifier,
         {\r
             cascade.detectMultiScale(img, rects);\r
         }\r
+\r
+        CPU_SANITY_CHECK(rects);\r
     }\r
 }\r
 \r