summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2019-01-14 11:32:02 +0200
committerEfraim Flashner <efraim@flashner.co.il>2019-01-14 15:07:42 +0200
commit8e21fa0bd347117ae907827272f95cf4647a0af7 (patch)
tree150a25575c94f2d1c74ddee9e39ec57a9f5bffc3 /gnu
parentfdeb2def6a65887113ce77af1be1fef4d156caa7 (diff)
downloadguix-8e21fa0bd347117ae907827272f95cf4647a0af7.tar.gz
gnu: opencv: Loosen test suite failures.
* gnu/packages/image-processing.scm (opencv)[native-inputs]: Add patch
to opencv-contrib.
[arguments]: Update 'unpack-submodule-sources phase.
* gnu/packages/patches/opencv-rgbd-aarch64-test-fix.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/image-processing.scm9
-rw-r--r--gnu/packages/patches/opencv-rgbd-aarch64-test-fix.patch40
3 files changed, 48 insertions, 2 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 7eb4366af2..499dbed267 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1036,6 +1036,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/ola-readdir-r.patch			\
   %D%/packages/patches/openbabel-fix-crash-on-nwchem-output.patch	\
   %D%/packages/patches/opencascade-oce-glibc-2.26.patch		\
+  %D%/packages/patches/opencv-rgbd-aarch64-test-fix.patch	\
   %D%/packages/patches/openfoam-4.1-cleanup.patch			\
   %D%/packages/patches/openjdk-10-idlj-reproducibility.patch	\
   %D%/packages/patches/openldap-CVE-2017-9287.patch		\
diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm
index 792259c087..68bcfed996 100644
--- a/gnu/packages/image-processing.scm
+++ b/gnu/packages/image-processing.scm
@@ -322,9 +322,13 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
              (let ((unpack (lambda (source target)
                              (with-directory-excursion target
                                (apply invoke "unzip"
-                                      (list (assoc-ref inputs source)))))))
+                                      (list (assoc-ref inputs source))))))
+                   (untar (lambda (source target)
+                            (with-directory-excursion target
+                              (apply invoke "tar" "xvf"
+                                     (list (assoc-ref inputs source)))))))
                (unpack "opencv-extra" "../opencv-extra")
-               (unpack "opencv-contrib" "../opencv-contrib"))))
+               (untar "opencv-contrib" "../opencv-contrib"))))
 
          (add-after 'set-paths 'add-ilmbase-include-path
            (lambda* (#:key inputs #:allow-other-keys)
@@ -363,6 +367,7 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
            (uri (string-append "https://codeload.github.com/"
                                "opencv/opencv_contrib/zip/" version))
            (file-name (string-append "opencv-contrib-" version ".zip"))
+           (patches (search-patches "opencv-rgbd-aarch64-test-fix.patch"))
            (sha256
            (base32 "0j0ci6ia1qwklp9hq07ypl0vkngj1wrgh6n98n657m5d0pyp4m0g"))))))
     (inputs `(("libjpeg" ,libjpeg)
diff --git a/gnu/packages/patches/opencv-rgbd-aarch64-test-fix.patch b/gnu/packages/patches/opencv-rgbd-aarch64-test-fix.patch
new file mode 100644
index 0000000000..7792f8d1bf
--- /dev/null
+++ b/gnu/packages/patches/opencv-rgbd-aarch64-test-fix.patch
@@ -0,0 +1,40 @@
+https://github.com/opencv/opencv_contrib/commit/8aaa91c3dc835690477d7777e66948dbf5a87edc.patch
+
+From 8aaa91c3dc835690477d7777e66948dbf5a87edc Mon Sep 17 00:00:00 2001
+From: Tomoaki Teshima <tomoaki.teshima@gmail.com>
+Date: Mon, 5 Nov 2018 20:32:23 +0900
+Subject: [PATCH] avoid test failing on Aarch64   * loosen the threshold in
+ Rgbd_Normals.compute   * make the minimum tvec larger in
+ RGBD_Odometry_Rgbd.algorithmic
+
+---
+ modules/rgbd/test/test_normal.cpp   | 2 +-
+ modules/rgbd/test/test_odometry.cpp | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules/rgbd/test/test_normal.cpp b/modules/rgbd/test/test_normal.cpp
+index f2233553a7..ed54f2cd98 100644
+--- a/modules/rgbd/test/test_normal.cpp
++++ b/modules/rgbd/test/test_normal.cpp
+@@ -211,7 +211,7 @@ class CV_RgbdNormalsTest: public cvtest::BaseTest
+             std::cout << std::endl << "*** FALS" << std::endl;
+             errors[0][0] = 0.006f;
+             errors[0][1] = 0.03f;
+-            errors[1][0] = 0.00008f;
++            errors[1][0] = 0.0001f;
+             errors[1][1] = 0.02f;
+             break;
+           case 1:
+diff --git a/modules/rgbd/test/test_odometry.cpp b/modules/rgbd/test/test_odometry.cpp
+index 62b654a1ec..f5a2084504 100644
+--- a/modules/rgbd/test/test_odometry.cpp
++++ b/modules/rgbd/test/test_odometry.cpp
+@@ -213,7 +213,7 @@ void CV_OdometryTest::generateRandomTransformation(Mat& rvec, Mat& tvec)
+     normalize(rvec, rvec, rng.uniform(0.007f, maxRotation));
+ 
+     randu(tvec, Scalar(-1000), Scalar(1000));
+-    normalize(tvec, tvec, rng.uniform(0.007f, maxTranslation));
++    normalize(tvec, tvec, rng.uniform(0.008f, maxTranslation));
+ }
+ 
+ void CV_OdometryTest::run(int)