aboutsummaryrefslogtreecommitdiff
path: root/libraries/libkface/libkface.patch
diff options
context:
space:
mode:
authorWilly Sudiarto Raharjo <willysr@slackbuilds.org>2016-04-08 05:29:38 +0700
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2016-04-10 06:19:28 +0700
commit89e17f84157d037a603244104f32bc22c2078b11 (patch)
tree82648f9d3b8f604da3b7b82b71e61d0927f844ec /libraries/libkface/libkface.patch
parentf5992ac19465a525b4ee73c5e9b8e79bdb8c372a (diff)
libraries/libkface: Patched to support OpenCV 3.1.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'libraries/libkface/libkface.patch')
-rw-r--r--libraries/libkface/libkface.patch418
1 files changed, 0 insertions, 418 deletions
diff --git a/libraries/libkface/libkface.patch b/libraries/libkface/libkface.patch
deleted file mode 100644
index dff5711b74e44..0000000000000
--- a/libraries/libkface/libkface.patch
+++ /dev/null
@@ -1,418 +0,0 @@
-From: Gilles Caulier <caulier.gilles@gmail.com>
-Date: Sat, 05 Sep 2015 19:20:22 +0000
-Subject: apply patch #94414 to support OpenCV3
-X-Git-Url: http://quickgit.kde.org/?p=libkface.git&a=commitdiff&h=a53bcebbfc4e6c42ee73adddc41f8c2f8f8f39c8
----
-apply patch #94414 to support OpenCV3
-CCBUGS: 349601
----
-
-
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -9,6 +9,8 @@
-
- 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 @@
- 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})
-
-
---- a/README
-+++ b/README
-@@ -20,6 +20,11 @@
- libqt >= 4.6.x http://www.qtsoftware.com
- 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' and 'legacy' components.
-
- -- INSTALL ------------------------------------------------------------
-
-
---- a/libkface/CMakeLists.txt
-+++ b/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.
-
---- a/libkface/detection/opencvfacedetector.cpp
-+++ b/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 @@
-
- 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);
- }
-
-
---- a/libkface/libopencv.h.cmake.in
-+++ b/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
-
---- a/libkface/recognition-opencv-lbph/facerec_borrowed.cpp
-+++ b/libkface/recognition-opencv-lbph/facerec_borrowed.cpp
-@@ -531,15 +531,17 @@
- 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
-
-
---- a/libkface/recognition-opencv-lbph/facerec_borrowed.h
-+++ b/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 @@
-
- ~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);
-
-@@ -139,6 +148,34 @@
- /**
- * 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; }
-@@ -146,6 +183,8 @@
-
- // NOTE: Implementation done through CV_INIT_ALGORITHM macro from OpenCV.
- cv::AlgorithmInfo* info() const;
-+
-+#endif
-
- private:
-
-
---- a/libkface/recognition-opencv-lbph/lbphfacemodel.cpp
-+++ b/libkface/recognition-opencv-lbph/lbphfacemodel.cpp
-@@ -61,7 +61,11 @@
- : 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 @@
-
- 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*();
--
-- if (!ptr)
-+#endif
-+
-+ if (!ptr)
- kWarning() << "LBPHFaceRecognizer pointer is null";
-
- return ptr;
-@@ -90,47 +98,83 @@
-
- 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 @@
- 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 @@
-
- // 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++)
- {
-