summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO18
-rw-r--r--PKGBUILD42
-rw-r--r--opencv3.patch64
3 files changed, 102 insertions, 22 deletions
diff --git a/.SRCINFO b/.SRCINFO
index caa000def362..d6a55fdd9a89 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,8 +1,8 @@
# Generated by mksrcinfo v8
-# Sat Feb 25 15:24:30 UTC 2017
+# Sun Mar 26 17:12:57 UTC 2017
pkgbase = pfstools
pkgdesc = Set of command line programs for reading, writing and manipulating high-dynamic range (HDR) images
- pkgver = 2.0.5
+ pkgver = 2.0.6
pkgrel = 1
url = http://pfstools.sourceforge.net/
arch = i686
@@ -12,9 +12,13 @@ pkgbase = pfstools
makedepends = openexr
makedepends = imagemagick
makedepends = libtiff
+ makedepends = netpbm
+ makedepends = gsl
+ makedepends = fftw
+ makedepends = libexif
+ makedepends = opencv
makedepends = freeglut
makedepends = glu
- makedepends = netpbm
makedepends = qt4
depends = gcc-libs
optdepends = freeglut: OpenGL image viewer
@@ -26,14 +30,16 @@ pkgbase = pfstools
optdepends = netpbm: PBM support
optdepends = dcraw: RAW support
optdepends = gsl: mantiuk08 tone mapping operator
- optdepends = fftw: durand02 tone mapping operator
+ optdepends = fftw: durand02,fattal02,ferradans11 tone mapping operators
provides = pfscalibration
provides = pfstmo
conflicts = pfscalibration
conflicts = pfstmo
options = !libtool
- source = http://downloads.sourceforge.net/pfstools/pfstools-2.0.5.tgz
- md5sums = 3ebe0b0bc1e8e6d412374bcb9f695c3c
+ source = http://downloads.sourceforge.net/pfstools/pfstools-2.0.6.tgz
+ source = opencv3.patch
+ md5sums = c3148ed11e562c30a0fd65d114cf2de2
+ md5sums = 8bb92632fc2d8887a5f4aa03f6ee6636
pkgname = pfstools
diff --git a/PKGBUILD b/PKGBUILD
index 6ef1974b0dea..4692d279ef38 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@
# Contributor: Brandon Andrews <bsa@bsa.isa-geek.com>
# Contributor: Mael Kerbiriou <mael.kerbiriouATfreeDOTfr>
pkgname=pfstools
-pkgver=2.0.5
+pkgver=2.0.6
pkgrel=1
pkgdesc="Set of command line programs for reading, writing and manipulating high-dynamic range (HDR) images"
arch=('i686' 'x86_64')
@@ -12,22 +12,35 @@ depends=('gcc-libs')
provides=('pfscalibration' 'pfstmo')
conflicts=('pfscalibration' 'pfstmo')
optdepends=('freeglut: OpenGL image viewer' 'glu: OpenGL image viewer' \
- 'qt4: Qt GUI' 'opencv: pfsalign' \
- 'openexr: OpenEXR support' 'imagemagick: ImageMagick support' \
- 'netpbm: PBM support' 'dcraw: RAW support' \
+ 'qt4: Qt GUI' \
+ 'opencv: pfsalign' \
+ 'openexr: OpenEXR support' \
+ 'imagemagick: ImageMagick support' \
+ 'netpbm: PBM support' \
+ 'dcraw: RAW support' \
'gsl: mantiuk08 tone mapping operator' \
- 'fftw: durand02 tone mapping operator')
-makedepends=('cmake' 'openexr' 'imagemagick' 'libtiff' 'freeglut' 'glu' 'netpbm' 'qt4')
+ 'fftw: durand02,fattal02,ferradans11 tone mapping operators')
+makedepends=('cmake' \
+ 'openexr' 'imagemagick' 'libtiff' 'netpbm' \
+ 'gsl' 'fftw' 'libexif' 'opencv'
+ 'freeglut' 'glu' 'qt4')
options=(!libtool)
-source=(http://downloads.sourceforge.net/pfstools/$pkgname-$pkgver.tgz)
-md5sums=('3ebe0b0bc1e8e6d412374bcb9f695c3c')
+source=(http://downloads.sourceforge.net/pfstools/$pkgname-$pkgver.tgz \
+ opencv3.patch)
+md5sums=('c3148ed11e562c30a0fd65d114cf2de2'
+ '8bb92632fc2d8887a5f4aa03f6ee6636')
+
+prepare() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ patch -Np1 < "$srcdir/opencv3.patch"
+}
build() {
- cd "$srcdir"/$pkgname-$pkgver
- mkdir -p build
- cd build
+ mkdir -p "$srcdir/build"
+ cd "$srcdir/build"
- cmake .. \
+ cmake "$srcdir/$pkgname-$pkgver" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DWITH_Octave=OFF # disable octave, as it breaks build
@@ -36,9 +49,6 @@ build() {
}
package() {
- cd "$srcdir"/$pkgname-$pkgver/build
+ cd "$srcdir/build"
make DESTDIR="$pkgdir/" install
-
- cd "$pkgdir"/usr/bin
- chmod 755 *
}
diff --git a/opencv3.patch b/opencv3.patch
new file mode 100644
index 000000000000..3447540e75bc
--- /dev/null
+++ b/opencv3.patch
@@ -0,0 +1,64 @@
+diff --git a/src/camera/pfsalign.cpp b/src/camera/pfsalign.cpp
+index 12c7642..91c97ab 100644
+--- a/src/camera/pfsalign.cpp
++++ b/src/camera/pfsalign.cpp
+@@ -43,7 +43,8 @@
+ #include <opencv2/core/core.hpp>
+ #include <opencv2/highgui/highgui.hpp>
+ #include <opencv2/features2d/features2d.hpp>
+-#include <opencv2/nonfree/features2d.hpp>
++#include <opencv2/features2d.hpp>
++#include <opencv2/xfeatures2d/nonfree.hpp>
+ #include <opencv2/calib3d/calib3d.hpp>
+ #include <opencv2/imgproc/imgproc.hpp>
+ #include <libexif/exif-data.h>
+@@ -61,6 +62,7 @@ class QuietException
+
+ using namespace cv;
+ using namespace std;
++using namespace cv::xfeatures2d;
+
+ void printHelp()
+ {
+@@ -141,8 +143,12 @@ bool alignImagePair( const Mat &ref_img, const Mat &exp_img, Mat &homography, in
+ // cv::imshow( "Result2", exp_img );
+ // cv::waitKey(0);
+
+- Ptr<FeatureDetector> detector(new DynamicAdaptedFeatureDetector( new SurfAdjuster( (11-sensitivity) * 100.f, 2, 1000 ),
+- 100, 1000, sensitivity/2+2 ));
++ //Ptr<FeatureDetector> detector(new DynamicAdaptedFeatureDetector( new SurfAdjuster( (11-sensitivity) * 100.f, 2, 1000 ),
++ // 100, 1000, sensitivity/2+2 ));
++
++// SiftDescriptorExtractor surfDesc;
++ Ptr<SURF> surfDesc = SURF::create();
++
+ // Ptr<FeatureDetector> detector;
+ // detector = new GoodFeaturesToTrackDetector();
+ // detector = new SurfFeatureDetector();
+@@ -150,8 +156,8 @@ bool alignImagePair( const Mat &ref_img, const Mat &exp_img, Mat &homography, in
+ std::vector<KeyPoint> keypoints1, keypoints2;
+
+ toc.tic( "feature detection" );
+- detector->detect( ref_img, keypoints1 );
+- detector->detect( exp_img, keypoints2 );
++ surfDesc->detect( ref_img, keypoints1 );
++ surfDesc->detect( exp_img, keypoints2 );
+ toc.toc( );
+
+ if( keypoints1.size() < 10 || keypoints2.size() < 10 ) {
+@@ -171,13 +177,11 @@ bool alignImagePair( const Mat &ref_img, const Mat &exp_img, Mat &homography, in
+ return false;
+ }
+
+- // SiftDescriptorExtractor surfDesc;
+- SurfDescriptorExtractor surfDesc;
+
+ Mat descr_ref, descr_exp;
+ toc.tic( "descriptor extraction" );
+- surfDesc.compute( ref_img, keypoints1, descr_ref );
+- surfDesc.compute( exp_img, keypoints2, descr_exp );
++ surfDesc->compute( ref_img, keypoints1, descr_ref );
++ surfDesc->compute( exp_img, keypoints2, descr_exp );
+ toc.toc( );
+
+ FlannBasedMatcher matcher; \ No newline at end of file