Tegra-optimized Canny
authorAndrey Kamaev <no@email>
Fri, 11 Nov 2011 14:45:53 +0000 (14:45 +0000)
committerAndrey Kamaev <no@email>
Fri, 11 Nov 2011 14:45:53 +0000 (14:45 +0000)
modules/imgproc/perf/perf_canny.cpp
modules/imgproc/src/canny.cpp
modules/ts/misc/concatlogs.py

index c351659..31939b2 100644 (file)
@@ -11,10 +11,10 @@ typedef perf::TestBaseWithParam<Img_Aperture_L2_thresholds_t> Img_Aperture_L2_th
 
 PERF_TEST_P( Img_Aperture_L2_thresholds, canny,
              testing::Combine(
-                 testing::Values( "cv/shared/lena.jpg", "stitching/b1.jpg" ),
+                 testing::Values( "cv/shared/lena.jpg", "stitching/b1.jpg", "cv/detectors_descriptors_evaluation/images_datasets/leuven/img1.png" ),
                  testing::Values( 3, 5 ),
                  testing::Bool(),
-                 testing::Values( make_tuple(50.0, 100.0), make_tuple(0.0, 50.0) )
+                 testing::Values( make_tuple(50.0, 100.0), make_tuple(0.0, 50.0), make_tuple(100.0, 120.0) )
              )
            )
 {
index d02c038..fdbe03f 100644 (file)
@@ -45,6 +45,11 @@ CV_IMPL void cvCanny( const void* srcarr, void* dstarr,
                       double low_thresh, double high_thresh,
                       int aperture_size )
 {
+#ifdef HAVE_TEGRA_OPTIMIZATION
+    if (tegra::canny(cv::cvarrToMat(srcarr), cv::cvarrToMat(dstarr), low_thresh, high_thresh,
+                     aperture_size & ~CV_CANNY_L2_GRADIENT, (aperture_size & CV_CANNY_L2_GRADIENT) == CV_CANNY_L2_GRADIENT))
+        return;
+#endif
     cv::Ptr<CvMat> dx, dy;
     cv::AutoBuffer<char> buffer;
     std::vector<uchar*> stack;
index 502bcfa..af95bac 100644 (file)
@@ -1,5 +1,5 @@
 from optparse import OptionParser
-import glob, sys, os
+import glob, sys, os, re
 
 if __name__ == "__main__":
     parser = OptionParser()
@@ -29,7 +29,7 @@ if __name__ == "__main__":
                 continue
             idx1 = text.find("<tbody>") + len("<tbody>")
             idx2 = html.rfind("</tbody>")
-            html = html[:idx2] + text[idx1:]
+            html = html[:idx2] + re.sub(r"[ \t\n\r]+", " ", text[idx1:])
         except:
             pass