summaryrefslogtreecommitdiff
path: root/graphics
diff options
context:
space:
mode:
authormarkd <markd@pkgsrc.org>2019-11-25 06:14:32 +0000
committermarkd <markd@pkgsrc.org>2019-11-25 06:14:32 +0000
commitb88991a271b7c6c248060d3d0ae886c22a27107b (patch)
tree56e2bbf0a6b2b03aa70ae79687b10c8e04b86b60 /graphics
parent4a0886ab55689895acf4cd434a1d8047a28ec619 (diff)
downloadpkgsrc-b88991a271b7c6c248060d3d0ae886c22a27107b.tar.gz
libkface: remove - only used by old digikam
Diffstat (limited to 'graphics')
-rw-r--r--graphics/Makefile3
-rw-r--r--graphics/libkface/DESCR4
-rw-r--r--graphics/libkface/Makefile30
-rw-r--r--graphics/libkface/PLIST26
-rw-r--r--graphics/libkface/buildlink3.mk16
-rw-r--r--graphics/libkface/distinfo14
-rw-r--r--graphics/libkface/patches/patch-CMakeLists.txt29
-rw-r--r--graphics/libkface/patches/patch-README18
-rw-r--r--graphics/libkface/patches/patch-libkface_CMakeLists.txt22
-rw-r--r--graphics/libkface/patches/patch-libkface_detection_opencvfacedetector.cpp31
-rw-r--r--graphics/libkface/patches/patch-libkface_libopencv.h.cmake.in76
-rw-r--r--graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_facerec_borrowed.cpp169
-rw-r--r--graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_facerec_borrowed.h100
-rw-r--r--graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_lbphfacemodel.cpp155
14 files changed, 1 insertions, 692 deletions
diff --git a/graphics/Makefile b/graphics/Makefile
index f2bcccfbd5b..abdc0a595bb 100644
--- a/graphics/Makefile
+++ b/graphics/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.862 2019/11/22 17:23:53 nia Exp $
+# $NetBSD: Makefile,v 1.863 2019/11/25 06:14:32 markd Exp $
#
COMMENT= Graphics tools and libraries
@@ -320,7 +320,6 @@ SUBDIR+= libjpeg-turbo
SUBDIR+= libkdcraw
SUBDIR+= libkexiv2
SUBDIR+= libkexiv2-kde4
-SUBDIR+= libkface
SUBDIR+= libkipi
SUBDIR+= libksane
SUBDIR+= liblqr
diff --git a/graphics/libkface/DESCR b/graphics/libkface/DESCR
deleted file mode 100644
index b209346b418..00000000000
--- a/graphics/libkface/DESCR
+++ /dev/null
@@ -1,4 +0,0 @@
-Libkface is a Qt/C++ wrapper around LibFace library to perform face recognition
-and detection over pictures.
-
-This library is used by kipi-plugins, digiKam and others kipi host programs.
diff --git a/graphics/libkface/Makefile b/graphics/libkface/Makefile
deleted file mode 100644
index a803a8f372f..00000000000
--- a/graphics/libkface/Makefile
+++ /dev/null
@@ -1,30 +0,0 @@
-# $NetBSD: Makefile,v 1.43 2019/08/22 12:23:20 ryoon Exp $
-#
-
-PKGNAME= libkface-4.13.0
-PKGREVISION= 14
-DISTNAME= digikam-4.13.0
-CATEGORIES= graphics
-MASTER_SITES= ${MASTER_SITE_KDE:=digikam/}
-EXTRACT_SUFX= .tar.bz2
-
-MAINTAINER= pkgsrc-users@NetBSD.org
-HOMEPAGE= https://www.digikam.org/
-COMMENT= LibFace Library interface for KDE
-LICENSE= gnu-gpl-v2
-
-BUILD_DEPENDS+= automoc4>=0.9.83:../../devel/automoc4
-
-USE_LANGUAGES= c c++
-USE_TOOLS+= pkg-config
-CMAKE_ARGS+= -DENABLE_OPENCV3:BOOL=ON
-
-PKGCONFIG_OVERRIDE+= libkface.pc.cmake
-
-WRKSRC= ${WRKDIR}/${DISTNAME}/extra/libkface
-
-.include "../../meta-pkgs/kde4/kde4.mk"
-.include "../../graphics/opencv/buildlink3.mk"
-.include "../../graphics/opencv-contrib-face/buildlink3.mk"
-.include "../../x11/kdelibs4/buildlink3.mk"
-.include "../../mk/bsd.pkg.mk"
diff --git a/graphics/libkface/PLIST b/graphics/libkface/PLIST
deleted file mode 100644
index ed1dff6a68c..00000000000
--- a/graphics/libkface/PLIST
+++ /dev/null
@@ -1,26 +0,0 @@
-@comment $NetBSD: PLIST,v 1.3 2015/11/03 20:28:57 markd Exp $
-include/libkface/dataproviders.h
-include/libkface/facedetector.h
-include/libkface/identity.h
-include/libkface/libkface_export.h
-include/libkface/recognitiondatabase.h
-include/libkface/version.h
-lib/cmake/Kface-3.5.0/Kface-export-relwithdebinfo.cmake
-lib/cmake/Kface-3.5.0/Kface-export.cmake
-lib/cmake/Kface-3.5.0/kface-config-version.cmake
-lib/cmake/Kface-3.5.0/kface-config.cmake
-lib/libkface.so
-lib/libkface.so.3
-lib/libkface.so.3.0.0
-lib/pkgconfig/libkface.pc
-share/kde/apps/libkface/alignment-congealing/face-funnel.data
-share/kde/apps/libkface/database/dbconfig.xml
-share/kde/apps/libkface/haarcascades/haarcascade_frontalface_alt.xml
-share/kde/apps/libkface/haarcascades/haarcascade_frontalface_alt2.xml
-share/kde/apps/libkface/haarcascades/haarcascade_frontalface_alt_tree.xml
-share/kde/apps/libkface/haarcascades/haarcascade_frontalface_default.xml
-share/kde/apps/libkface/haarcascades/haarcascade_mcs_lefteye.xml
-share/kde/apps/libkface/haarcascades/haarcascade_mcs_mouth.xml
-share/kde/apps/libkface/haarcascades/haarcascade_mcs_nose.xml
-share/kde/apps/libkface/haarcascades/haarcascade_mcs_righteye.xml
-share/kde/apps/libkface/haarcascades/haarcascade_profileface.xml
diff --git a/graphics/libkface/buildlink3.mk b/graphics/libkface/buildlink3.mk
deleted file mode 100644
index fdc829f57b3..00000000000
--- a/graphics/libkface/buildlink3.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-# $NetBSD: buildlink3.mk,v 1.35 2019/08/22 12:23:20 ryoon Exp $
-
-BUILDLINK_TREE+= libkface
-
-.if !defined(LIBKFACE_BUILDLINK3_MK)
-LIBKFACE_BUILDLINK3_MK:=
-
-BUILDLINK_API_DEPENDS.libkface+= libkface>=2.5.0
-BUILDLINK_ABI_DEPENDS.libkface?= libkface>=4.13.0nb14
-BUILDLINK_PKGSRCDIR.libkface?= ../../graphics/libkface
-
-.include "../../graphics/opencv/buildlink3.mk"
-.include "../../x11/kdelibs4/buildlink3.mk"
-.endif # LIBKFACE_BUILDLINK3_MK
-
-BUILDLINK_TREE+= -libkface
diff --git a/graphics/libkface/distinfo b/graphics/libkface/distinfo
deleted file mode 100644
index d749df1547a..00000000000
--- a/graphics/libkface/distinfo
+++ /dev/null
@@ -1,14 +0,0 @@
-$NetBSD: distinfo,v 1.7 2016/03/29 10:14:05 markd Exp $
-
-SHA1 (digikam-4.13.0.tar.bz2) = d696ac88dcb3bcbd3a5da83b0fbe5e7315a43f92
-RMD160 (digikam-4.13.0.tar.bz2) = 11d6aa15a94cd38acca79f2a31f65393a01a2b0b
-SHA512 (digikam-4.13.0.tar.bz2) = 0cadb55f568a34d07f008791ca351428f4cd9e7060ba79aa8acc25e5e38f0bbcd586df764dacbcb9d1dadb56d2fb9160760cc89aeab4d7cef9bdbd26f691752b
-Size (digikam-4.13.0.tar.bz2) = 69554099 bytes
-SHA1 (patch-CMakeLists.txt) = a5c798fc35127996d38ce1103c7b321108f56eaa
-SHA1 (patch-README) = 520dd6ee6562b708fb96adf6bf209056adb5d159
-SHA1 (patch-libkface_CMakeLists.txt) = d183bcfa09244984350fa0ae2957d877618b2d0d
-SHA1 (patch-libkface_detection_opencvfacedetector.cpp) = e8a31a469df3f0bc4d3f3bb2c3864a0913985fab
-SHA1 (patch-libkface_libopencv.h.cmake.in) = 354103b0be8e202630059dc438af9d03837bed72
-SHA1 (patch-libkface_recognition-opencv-lbph_facerec_borrowed.cpp) = 29d390a44a52daf15e7bfd8f2b7e7ee73d59f45a
-SHA1 (patch-libkface_recognition-opencv-lbph_facerec_borrowed.h) = 96e28212344df9bd749ed8db69d877a0aba3c140
-SHA1 (patch-libkface_recognition-opencv-lbph_lbphfacemodel.cpp) = c181d1b94948f7988081b09e3c2bf3190eaf046e
diff --git a/graphics/libkface/patches/patch-CMakeLists.txt b/graphics/libkface/patches/patch-CMakeLists.txt
deleted file mode 100644
index 9f88606edb6..00000000000
--- a/graphics/libkface/patches/patch-CMakeLists.txt
+++ /dev/null
@@ -1,29 +0,0 @@
-$NetBSD: patch-CMakeLists.txt,v 1.1 2015/11/03 20:28:57 markd Exp $
-
-opencv3 support. https://bugs.kde.org/show_bug.cgi?id=349601
-
---- CMakeLists.txt.orig 2015-09-03 21:22:44.000000000 +0000
-+++ CMakeLists.txt
-@@ -10,6 +10,8 @@ project(libkface)
- message(STATUS "----------------------------------------------------------------------------------")
- message(STATUS "Starting CMake configuration for: libkface")
-
-+option(ENABLE_OPENCV3 "Build libkface with OpenCV3 instead OpenCV2 (default=OFF)" OFF)
-+
- find_package(Qt4 4.6.0 REQUIRED)
- find_package(KDE4 REQUIRED)
-
-@@ -30,7 +32,12 @@ add_definitions(-DKDE_DEFAULT_DEBUG_AREA
- set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
-
- include(MacroOpenCV)
--DETECT_OPENCV(2.4.9 core highgui objdetect contrib legacy imgproc)
-+
-+if (ENABLE_OPENCV3)
-+ DETECT_OPENCV(3.0.0 core face highgui objdetect imgproc)
-+else()
-+ DETECT_OPENCV(2.4.9 core highgui objdetect contrib legacy imgproc)
-+endif()
-
- include_directories(${OpenCV_INCLUDE_DIRS})
-
diff --git a/graphics/libkface/patches/patch-README b/graphics/libkface/patches/patch-README
deleted file mode 100644
index 6f6e110d058..00000000000
--- a/graphics/libkface/patches/patch-README
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-README,v 1.1 2015/11/03 20:28:57 markd Exp $
-
-opencv3 support. https://bugs.kde.org/show_bug.cgi?id=349601
-
---- README.orig 2015-09-03 21:22:44.000000000 +0000
-+++ README
-@@ -21,6 +21,11 @@ libqt >= 4.6.x h
- libkde >= 4.4.x http://www.kde.org
- libopencv >= 2.4.9 http://opencv.willowgarage.com/wiki (with opencv 'haarcascades' data files)
-
-+CMake compilation options to custom libkface:
-+
-+Use CMake "-DENABLE_OPENCV3=on" flag to compile libkface source code using OpenCV3 instead OpenCV2 (disabled by default).
-+ OpenCV3 support needs extra contrib modules package, especially 'face' ands 'legacy' components.
-+
- -- INSTALL ------------------------------------------------------------
-
- In order to compile, especially when QT3/Qt4 are installed at the same time,
diff --git a/graphics/libkface/patches/patch-libkface_CMakeLists.txt b/graphics/libkface/patches/patch-libkface_CMakeLists.txt
deleted file mode 100644
index da74d0f480c..00000000000
--- a/graphics/libkface/patches/patch-libkface_CMakeLists.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-$NetBSD: patch-libkface_CMakeLists.txt,v 1.1 2015/11/03 20:28:57 markd Exp $
-
-opencv3 support. https://bugs.kde.org/show_bug.cgi?id=349601
-
---- libkface/CMakeLists.txt.orig 2015-09-03 21:22:44.000000000 +0000
-+++ libkface/CMakeLists.txt
-@@ -1,5 +1,5 @@
- #
--# Copyright (c) 2010-2014, Gilles Caulier, <caulier dot gilles at gmail dot com>
-+# Copyright (c) 2010-2015, Gilles Caulier, <caulier dot gilles at gmail dot com>
- #
- # Redistribution and use is allowed according to the terms of the BSD license.
- # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-@@ -52,7 +52,7 @@ target_link_libraries(kface ${KDE4_KDECO
- ${QT_QTXML_LIBRARY}
- ${QT_QTSQL_LIBRARY}
-
-- ${OpenCV_LIBRARIES}
-+ ${OpenCV_LIBRARIES} -lopencv_face
- )
-
- set_target_properties(kface PROPERTIES VERSION ${KFACE_LIB_SO_VERSION_STRING}
diff --git a/graphics/libkface/patches/patch-libkface_detection_opencvfacedetector.cpp b/graphics/libkface/patches/patch-libkface_detection_opencvfacedetector.cpp
deleted file mode 100644
index 59511920b0d..00000000000
--- a/graphics/libkface/patches/patch-libkface_detection_opencvfacedetector.cpp
+++ /dev/null
@@ -1,31 +0,0 @@
-$NetBSD: patch-libkface_detection_opencvfacedetector.cpp,v 1.1 2015/11/03 20:28:57 markd Exp $
-
-opencv3 support. https://bugs.kde.org/show_bug.cgi?id=349601
-
---- libkface/detection/opencvfacedetector.cpp.orig 2015-09-03 21:22:44.000000000 +0000
-+++ libkface/detection/opencvfacedetector.cpp
-@@ -18,7 +18,7 @@
- * <a href="alexjironkin at gmail dot com">alexjironkin at gmail dot com</a>
- * @author Copyright (C) 2010 by Aditya Bhatt
- * <a href="adityabhatt at gmail dot com">adityabhatt at gmail dot com</a>
-- * @author Copyright (C) 2010-2014 by Gilles Caulier
-+ * @author Copyright (C) 2010-2015 by Gilles Caulier
- * <a href="mailto:caulier dot gilles at gmail dot com">caulier dot gilles at gmail dot com</a>
- * @author Copyright (C) 2010-2013 by Marcel Wiesweg
- * <a href="mailto:marcel dot wiesweg at gmx dot de">marcel dot wiesweg at gmx dot de</a>
-@@ -136,13 +136,14 @@ public:
-
- cv::Size getOriginalWindowSize() const
- {
-+#if OPENCV_VERSION <= OPENCV_MAKE_VERSION(2,4,11)
- // This is a HACK which may break any time. Work around the fact that getOriginalWindowSize()
- // always returns (0,0) and we need these values.
- if (oldCascade)
- {
- return oldCascade->orig_window_size;
- }
--
-+#endif
- return cv::Size(0, 0);
- }
-
diff --git a/graphics/libkface/patches/patch-libkface_libopencv.h.cmake.in b/graphics/libkface/patches/patch-libkface_libopencv.h.cmake.in
deleted file mode 100644
index 5052e2f7749..00000000000
--- a/graphics/libkface/patches/patch-libkface_libopencv.h.cmake.in
+++ /dev/null
@@ -1,76 +0,0 @@
-$NetBSD: patch-libkface_libopencv.h.cmake.in,v 1.1 2015/11/03 20:28:57 markd Exp $
-
-opencv3 support. https://bugs.kde.org/show_bug.cgi?id=349601
-
---- libkface/libopencv.h.cmake.in.orig 2015-09-03 21:22:44.000000000 +0000
-+++ libkface/libopencv.h.cmake.in
-@@ -7,7 +7,7 @@
- * @date 2010-06-16
- * @brief Wrapper for OpenCV header files
- *
-- * @author Copyright (C) 2012-2014 by Gilles Caulier
-+ * @author Copyright (C) 2012-2015 by Gilles Caulier
- * <a href="mailto:caulier dot gilles at gmail dot com">caulier dot gilles at gmail dot com</a>
- *
- * This program is free software; you can redistribute it
-@@ -31,16 +31,16 @@
-
- // Pragma directives to reduce warnings from OpenCV header files.
- #if not defined(__APPLE__) && defined(__GNUC__)
--#pragma GCC diagnostic push
--#pragma GCC diagnostic ignored "-Wnon-virtual-dtor"
--#pragma GCC diagnostic ignored "-Woverloaded-virtual"
-+# pragma GCC diagnostic push
-+# pragma GCC diagnostic ignored "-Wnon-virtual-dtor"
-+# pragma GCC diagnostic ignored "-Woverloaded-virtual"
- #endif
-
- #if defined(__APPLE__) && defined(__clang__)
--#pragma clang diagnostic push
--#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
--#pragma clang diagnostic ignored "-Woverloaded-virtual"
--#pragma clang diagnostic ignored "-Wcast-align"
-+# pragma clang diagnostic push
-+# pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-+# pragma clang diagnostic ignored "-Woverloaded-virtual"
-+# pragma clang diagnostic ignored "-Wcast-align"
- #endif
-
- // OpenCV includes
-@@ -51,23 +51,30 @@
- #define OPENCV_VERSION OPENCV_MAKE_VERSION(CV_MAJOR_VERSION,CV_MINOR_VERSION,CV_SUBMINOR_VERSION)
- #define OPENCV_TEST_VERSION(major,minor,patch) ( OPENCV_VERSION >= OPENCV_MAKE_VERSION(major,minor,patch) )
-
--#include <opencv2/core/core.hpp>
--#include <opencv2/core/internal.hpp>
--#include <opencv2/contrib/contrib.hpp>
-+#if OPENCV_TEST_VERSION(3,0,0)
-+# include <opencv2/face.hpp>
-+# include <opencv2/core.hpp>
-+#else
-+# include <opencv2/core/core.hpp>
-+# include <opencv2/core/internal.hpp>
-+# include <opencv2/contrib/contrib.hpp>
-+#endif
-
- // for old-style code
-+#if OPENCV_VERSION <= OPENCV_MAKE_VERSION(2,4,11)
-+# include <opencv2/legacy/compat.hpp>
-+#endif
- #include <opencv2/opencv.hpp>
--#include <opencv2/legacy/compat.hpp>
- #include <opencv2/highgui/highgui_c.h>
- #include <opencv/cvaux.h>
-
- // Restore warnings
- #if not defined(__APPLE__) && defined(__GNUC__)
--#pragma GCC diagnostic pop
-+# pragma GCC diagnostic pop
- #endif
-
- #if defined(__APPLE__) && defined(__clang__)
--#pragma clang diagnostic pop
-+# pragma clang diagnostic pop
- #endif
-
- #endif // LIB_OPEN_CV_H
diff --git a/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_facerec_borrowed.cpp b/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_facerec_borrowed.cpp
deleted file mode 100644
index 792ad25b0f7..00000000000
--- a/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_facerec_borrowed.cpp
+++ /dev/null
@@ -1,169 +0,0 @@
-$NetBSD: patch-libkface_recognition-opencv-lbph_facerec_borrowed.cpp,v 1.2 2016/03/29 10:14:05 markd Exp $
-
-opencv3 support. https://bugs.kde.org/show_bug.cgi?id=349601
-opencv3.1 - https://git.reviewboard.kde.org/r/126833/ with test reversed
-
---- libkface/recognition-opencv-lbph/facerec_borrowed.cpp.orig 2015-09-03 21:22:44.000000000 +0000
-+++ libkface/recognition-opencv-lbph/facerec_borrowed.cpp
-@@ -36,6 +36,8 @@
- *
- * ============================================================ */
-
-+#define QT_NO_EMIT
-+
- #include "facerec_borrowed.h"
-
- // C++ includes
-@@ -375,7 +377,11 @@ void LBPHFaceRecognizer::train(InputArra
- }
- }
-
-+#if OPENCV_VERSION < OPENCV_MAKE_VERSION(3,1,0)
- void LBPHFaceRecognizer::predict(InputArray _src, int &minClass, double &minDist) const
-+#else
-+void LBPHFaceRecognizer::predict(cv::InputArray _src, cv::Ptr<cv::face::PredictCollector> collector, const int state) const
-+#endif
- {
- if(m_histograms.empty())
- {
-@@ -394,8 +400,12 @@ void LBPHFaceRecognizer::predict(InputAr
- m_grid_y, /* grid size y */
- true /* normed histograms */
- );
-+#if OPENCV_VERSION < OPENCV_MAKE_VERSION(3,1,0)
- minDist = DBL_MAX;
- minClass = -1;
-+#else
-+ collector->init((int)m_histograms.size(), state);
-+#endif
-
- // This is the standard method
-
-@@ -406,11 +416,19 @@ void LBPHFaceRecognizer::predict(InputAr
- {
- double dist = compareHist(m_histograms[sampleIdx], query, CV_COMP_CHISQR);
-
-+#if OPENCV_VERSION < OPENCV_MAKE_VERSION(3,1,0)
- if((dist < minDist) && (dist < m_threshold))
- {
- minDist = dist;
- minClass = m_labels.at<int>((int) sampleIdx);
- }
-+#else
-+ int label = m_labels.at<int>((int) sampleIdx);
-+ if (!collector->emit(label, dist, state))
-+ {
-+ return;
-+ }
-+#endif
- }
- }
-
-@@ -422,7 +440,7 @@ void LBPHFaceRecognizer::predict(InputAr
- // Create map "label -> vector of distances to all histograms for this label"
- std::map<int, std::vector<int> > distancesMap;
-
-- for(size_t sampleIdx = 0; sampleIdx < m_histograms.size(); sampleIdx++)
-+ for(size_t sampleIdx = 0; sampleIdx < m_histograms.size(); sampleIdx++)
- {
- double dist = compareHist(m_histograms[sampleIdx], query, CV_COMP_CHISQR);
- std::vector<int>& distances = distancesMap[m_labels.at<int>((int) sampleIdx)];
-@@ -445,11 +463,18 @@ void LBPHFaceRecognizer::predict(InputAr
- double mean = sum / it->second.size();
- s += QString("%1: %2 - ").arg(it->first).arg(mean);
-
-+#if OPENCV_VERSION < OPENCV_MAKE_VERSION(3,1,0)
- if((mean < minDist) && (mean < m_threshold))
- {
- minDist = mean;
- minClass = it->first;
- }
-+#else
-+ if (!collector->emit(it->first, mean, state))
-+ {
-+ return;
-+ }
-+#endif
- }
-
- kDebug() << s;
-@@ -462,7 +487,7 @@ void LBPHFaceRecognizer::predict(InputAr
- // map "label -> number of histograms"
- std::map<int, int> countMap;
-
-- for(size_t sampleIdx = 0; sampleIdx < m_histograms.size(); sampleIdx++)
-+ for(size_t sampleIdx = 0; sampleIdx < m_histograms.size(); sampleIdx++)
- {
- int label = m_labels.at<int>((int) sampleIdx);
- double dist = compareHist(m_histograms[sampleIdx], query, CV_COMP_CHISQR);
-@@ -480,7 +505,9 @@ void LBPHFaceRecognizer::predict(InputAr
- scoreMap[it->second]++;
- }
-
-+#if OPENCV_VERSION < OPENCV_MAKE_VERSION(3,1,0)
- minDist = 0;
-+#endif
- QString s("Nearest Neighbor score: ");
-
- for (std::map<int,int>::iterator it = scoreMap.begin(); it != scoreMap.end(); ++it)
-@@ -488,17 +515,26 @@ void LBPHFaceRecognizer::predict(InputAr
- double score = double(it->second) / countMap.at(it->first);
- s += QString("%1/%2 %3 ").arg(it->second).arg(countMap.at(it->first)).arg(score);
-
-+#if OPENCV_VERSION < OPENCV_MAKE_VERSION(3,1,0)
- if (score > minDist)
- {
- minDist = score;
- minClass = it->first;
- }
-+#else
-+ // large is better thus it is -score.
-+ if (!collector->emit(it->first, -score, state))
-+ {
-+ return;
-+ }
-+#endif
- }
-
- kDebug() << s;
- }
- }
-
-+#if OPENCV_VERSION < OPENCV_MAKE_VERSION(3,1,0)
- int LBPHFaceRecognizer::predict(InputArray _src) const
- {
- int label;
-@@ -506,6 +542,7 @@ int LBPHFaceRecognizer::predict(InputArr
- predict(_src, label, dummy);
- return label;
- }
-+#endif
-
- // Static method ----------------------------------------------------
-
-@@ -531,14 +568,16 @@ Ptr<LBPHFaceRecognizer> LBPHFaceRecogniz
- return ptr;
- }
-
--CV_INIT_ALGORITHM(LBPHFaceRecognizer, "FaceRecognizer.LBPH-KFaceIface",
-- obj.info()->addParam(obj, "radius", obj.m_radius);
-- obj.info()->addParam(obj, "neighbors", obj.m_neighbors);
-- obj.info()->addParam(obj, "grid_x", obj.m_grid_x);
-- obj.info()->addParam(obj, "grid_y", obj.m_grid_y);
-- obj.info()->addParam(obj, "threshold", obj.m_threshold);
-- obj.info()->addParam(obj, "histograms", obj.m_histograms); // modification: Make Read/Write
-- obj.info()->addParam(obj, "labels", obj.m_labels); // modification: Make Read/Write
-- obj.info()->addParam(obj, "statistic", obj.m_statisticsMode)); // modification: Add parameter
-+#if OPENCV_VERSION <= OPENCV_MAKE_VERSION(2,4,11)
-+ CV_INIT_ALGORITHM(LBPHFaceRecognizer, "FaceRecognizer.LBPH-KFaceIface",
-+ obj.info()->addParam(obj, "radius", obj.m_radius);
-+ obj.info()->addParam(obj, "neighbors", obj.m_neighbors);
-+ obj.info()->addParam(obj, "grid_x", obj.m_grid_x);
-+ obj.info()->addParam(obj, "grid_y", obj.m_grid_y);
-+ obj.info()->addParam(obj, "threshold", obj.m_threshold);
-+ obj.info()->addParam(obj, "histograms", obj.m_histograms); // modification: Make Read/Write
-+ obj.info()->addParam(obj, "labels", obj.m_labels); // modification: Make Read/Write
-+ obj.info()->addParam(obj, "statistic", obj.m_statisticsMode)); // modification: Add parameter
-+#endif
-
- } // namespace KFaceIface
diff --git a/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_facerec_borrowed.h b/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_facerec_borrowed.h
deleted file mode 100644
index a156006a49b..00000000000
--- a/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_facerec_borrowed.h
+++ /dev/null
@@ -1,100 +0,0 @@
-$NetBSD: patch-libkface_recognition-opencv-lbph_facerec_borrowed.h,v 1.2 2016/03/29 10:14:05 markd Exp $
-
-opencv3 support. https://bugs.kde.org/show_bug.cgi?id=349601
-opencv3.1 - https://git.reviewboard.kde.org/r/126833/ with test reversed
-
---- libkface/recognition-opencv-lbph/facerec_borrowed.h.orig 2015-09-03 21:22:44.000000000 +0000
-+++ libkface/recognition-opencv-lbph/facerec_borrowed.h
-@@ -45,7 +45,11 @@
- namespace KFaceIface
- {
-
-+#if OPENCV_TEST_VERSION(3,0,0)
-+class LBPHFaceRecognizer : public cv::face::FaceRecognizer
-+#else
- class LBPHFaceRecognizer : public cv::FaceRecognizer
-+#endif
- {
- public:
-
-@@ -99,8 +103,13 @@ public:
-
- ~LBPHFaceRecognizer() {}
-
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ using cv::face::FaceRecognizer::save;
-+ using cv::face::FaceRecognizer::load;
-+#else
- using cv::FaceRecognizer::save;
- using cv::FaceRecognizer::load;
-+#endif
-
- static cv::Ptr<LBPHFaceRecognizer> create(int radius=1, int neighbors=8, int grid_x=8, int grid_y=8, double threshold = DBL_MAX, PredictionStatistics statistics = NearestNeighbor);
-
-@@ -116,6 +125,8 @@ public:
- */
- void update(cv::InputArrayOfArrays src, cv::InputArray labels);
-
-+
-+#if OPENCV_VERSION < OPENCV_MAKE_VERSION(3,1,0)
- /**
- * Predicts the label of a query image in src.
- */
-@@ -125,6 +136,13 @@ public:
- * Predicts the label and confidence for a given sample.
- */
- void predict(cv::InputArray _src, int &label, double &dist) const;
-+#else
-+ using cv::face::FaceRecognizer::predict;
-+ /*
-+ * Predict
-+ */
-+ void predict(cv::InputArray src, cv::Ptr<cv::face::PredictCollector> collector, const int state = 0) const override;
-+#endif
-
- /**
- * See FaceRecognizer::load().
-@@ -139,6 +157,34 @@ public:
- /**
- * Getter functions.
- */
-+#if OPENCV_TEST_VERSION(3,0,0)
-+
-+ int getNeighbors() const { return m_neighbors; }
-+ void setNeighbors(int _neighbors) { m_neighbors = _neighbors; }
-+
-+ int getRadius() const { return m_radius; }
-+ void setRadius(int radius) { m_radius = radius; }
-+
-+ int getGrid_x() const { return m_grid_x; }
-+ void setGrid_x(int _grid_x) { m_grid_x = _grid_x; }
-+
-+ int getGrid_y() const { return m_grid_y; }
-+ void setGrid_y(int _grid_y) { m_grid_y = _grid_y; }
-+
-+ double getThreshold() const { return m_threshold; }
-+ void setThreshold(double _threshold) { m_threshold = _threshold; }
-+
-+ void setHistograms(std::vector<cv::Mat> _histograms) { m_histograms = _histograms; }
-+ std::vector<cv::Mat> getHistograms() const { return m_histograms; }
-+
-+ void setLabels(cv::Mat _labels) { m_labels = _labels; }
-+ cv::Mat getLabels() const { return m_labels; }
-+
-+ void setStatistic(int _statistic) { m_statisticsMode = _statistic; }
-+ int getStatistic() const { return m_statisticsMode; }
-+
-+#else
-+
- int neighbors() const { return m_neighbors; }
- int radius() const { return m_radius; }
- int grid_x() const { return m_grid_x; }
-@@ -147,6 +193,8 @@ public:
- // NOTE: Implementation done through CV_INIT_ALGORITHM macro from OpenCV.
- cv::AlgorithmInfo* info() const;
-
-+#endif
-+
- private:
-
- /** Computes a LBPH model with images in src and
diff --git a/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_lbphfacemodel.cpp b/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_lbphfacemodel.cpp
deleted file mode 100644
index f127b215649..00000000000
--- a/graphics/libkface/patches/patch-libkface_recognition-opencv-lbph_lbphfacemodel.cpp
+++ /dev/null
@@ -1,155 +0,0 @@
-$NetBSD: patch-libkface_recognition-opencv-lbph_lbphfacemodel.cpp,v 1.1 2015/11/03 20:28:57 markd Exp $
-
-opencv3 support. https://bugs.kde.org/show_bug.cgi?id=349601
-
---- libkface/recognition-opencv-lbph/lbphfacemodel.cpp.orig 2015-09-03 21:22:44.000000000 +0000
-+++ libkface/recognition-opencv-lbph/lbphfacemodel.cpp
-@@ -61,7 +61,11 @@ LBPHFaceModel::LBPHFaceModel()
- : cv::Ptr<LBPHFaceRecognizer>(LBPHFaceRecognizer::create()),
- databaseId(0)
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ ptr()->setThreshold(100.0);
-+#else
- ptr()->set("threshold", 100.0);
-+#endif
- }
-
- LBPHFaceModel::~LBPHFaceModel()
-@@ -80,9 +84,13 @@ LBPHFaceRecognizer* LBPHFaceModel::ptr()
-
- const LBPHFaceRecognizer* LBPHFaceModel::ptr() const
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ const LBPHFaceRecognizer* const ptr = cv::Ptr<LBPHFaceRecognizer>::operator KFaceIface::LBPHFaceRecognizer*();
-+#else
- const LBPHFaceRecognizer* const ptr = cv::Ptr<LBPHFaceRecognizer>::operator const KFaceIface::LBPHFaceRecognizer*();
-+#endif
-
-- if (!ptr)
-+ if (!ptr)
- kWarning() << "LBPHFaceRecognizer pointer is null";
-
- return ptr;
-@@ -90,47 +98,83 @@ const LBPHFaceRecognizer* LBPHFaceModel:
-
- int LBPHFaceModel::radius() const
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ return ptr()->getRadius();
-+#else
- return ptr()->get<int>("radius");
-+#endif
- }
-
- void LBPHFaceModel::setRadius(int radius)
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ ptr()->setRadius(radius);
-+#else
- ptr()->set("radius", radius);
-+#endif
- }
-
- int LBPHFaceModel::neighbors() const
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ return ptr()->getNeighbors();
-+#else
- return ptr()->get<int>("neighbors");
-+#endif
- }
-
- void LBPHFaceModel::setNeighbors(int neighbors)
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ ptr()->setNeighbors(neighbors);
-+#else
- ptr()->set("neighbors", neighbors);
-+#endif
- }
-
- int LBPHFaceModel::gridX() const
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ return ptr()->getGrid_x();
-+#else
- return ptr()->get<int>("grid_x");
-+#endif
- }
-
- void LBPHFaceModel::setGridX(int grid_x)
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ ptr()->setGrid_x(grid_x);
-+#else
- ptr()->set("grid_x", grid_x);
-+#endif
- }
-
- int LBPHFaceModel::gridY() const
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ return ptr()->getGrid_y();
-+#else
- return ptr()->get<int>("grid_y");
-+#endif
- }
-
- void LBPHFaceModel::setGridY(int grid_y)
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ ptr()->setGrid_y(grid_y);
-+#else
- ptr()->set("grid_y", grid_y);
-+#endif
- }
-
- OpenCVMatData LBPHFaceModel::histogramData(int index) const
- {
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ return OpenCVMatData(ptr()->getHistograms().at(index));
-+#else
- return OpenCVMatData(ptr()->get<std::vector<cv::Mat> >("histograms").at(index));
-+#endif
- }
-
- QList<LBPHistogramMetadata> LBPHFaceModel::histogramMetadata() const
-@@ -168,12 +212,24 @@ void LBPHFaceModel::setHistograms(const
- m_histogramMetadata << metadata;
- }
-
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ std::vector<cv::Mat> currentHistograms = ptr()->getHistograms();
-+ cv::Mat currentLabels = ptr()->getLabels();
-+#else
- std::vector<cv::Mat> currentHistograms = ptr()->get<std::vector<cv::Mat> >("histograms");
- cv::Mat currentLabels = ptr()->get<cv::Mat>("labels");
-+#endif
-+
- currentHistograms.insert(currentHistograms.end(), newHistograms.begin(), newHistograms.end());
- currentLabels.push_back(newLabels);
-+
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ ptr()->setHistograms(currentHistograms);
-+ ptr()->setLabels(currentLabels);
-+#else
- ptr()->set("histograms", currentHistograms);
-- ptr()->set("labels", currentLabels);
-+ ptr()->set("labels", currentLabels);
-+#endif
-
- /*
- //Most cumbersome and inefficient way through a file storage which we were forced to use if we used standard OpenCV
-@@ -215,7 +271,11 @@ void LBPHFaceModel::update(const std::ve
-
- // Update local information
- // We assume new labels are simply appended
-+#if OPENCV_TEST_VERSION(3,0,0)
-+ cv::Mat currentLabels = ptr()->getLabels();
-+#else
- cv::Mat currentLabels = ptr()->get<cv::Mat>("labels");
-+#endif
-
- for (int i = m_histogramMetadata.size() ; i < currentLabels.rows ; i++)
- {