diff --git a/Emgu.CV.Contrib/Face/IFacemark.cs b/Emgu.CV.Contrib/Face/IFacemark.cs
index f99062281..ce77acba3 100644
--- a/Emgu.CV.Contrib/Face/IFacemark.cs
+++ b/Emgu.CV.Contrib/Face/IFacemark.cs
@@ -28,6 +28,7 @@ namespace Emgu.CV.Face
public static partial class FaceInvoke
{
+ /*
///
/// Set a user defined face detector for the Facemark algorithm.
///
@@ -52,7 +53,7 @@ namespace Emgu.CV.Face
[DllImport(CvInvoke.ExternLibrary, CallingConvention = CvInvoke.CvCallingConvention)]
[return: MarshalAs(CvInvoke.BoolMarshalType)]
internal extern static bool cveFacemarkSetFaceDetector(IntPtr facemark, FaceDetectNative detector);
-
+ */
///
/// A function to load the trained model before the fitting process.
///
@@ -68,6 +69,7 @@ namespace Emgu.CV.Face
[DllImport(CvInvoke.ExternLibrary, CallingConvention = CvInvoke.CvCallingConvention)]
internal extern static void cveFacemarkLoadModel(IntPtr facemark, IntPtr model);
+ /*
///
/// Default face detector This function is mainly utilized by the implementation of a Facemark Algorithm.
///
@@ -86,6 +88,7 @@ namespace Emgu.CV.Face
[DllImport(CvInvoke.ExternLibrary, CallingConvention = CvInvoke.CvCallingConvention)]
[return: MarshalAs(CvInvoke.BoolMarshalType)]
internal extern static bool cveFacemarkGetFaces(IntPtr facemark, IntPtr image, IntPtr faces);
+ */
///
/// Trains a Facemark algorithm using the given dataset.
@@ -125,6 +128,7 @@ namespace Emgu.CV.Face
[DllImport(CvInvoke.ExternLibrary, CallingConvention = CvInvoke.CvCallingConvention)]
internal extern static void cveDrawFacemarks(IntPtr image, IntPtr points, ref MCvScalar color);
+ /*
///
/// Add one training sample to the trainer.
///
@@ -154,5 +158,6 @@ namespace Emgu.CV.Face
}
[DllImport(CvInvoke.ExternLibrary, CallingConvention = CvInvoke.CvCallingConvention)]
internal extern static void cveFacemarkTraining(IntPtr facemark);
+ */
}
}
\ No newline at end of file
diff --git a/Emgu.CV.Extern/CMakeLists.txt b/Emgu.CV.Extern/CMakeLists.txt
index b9e497d91..9c1160b45 100644
--- a/Emgu.CV.Extern/CMakeLists.txt
+++ b/Emgu.CV.Extern/CMakeLists.txt
@@ -2263,7 +2263,7 @@ if(WITH_TIFF AND BUILD_TIFF)
endif()
if(WITH_JPEG AND BUILD_JPEG)
- target_link_libraries(${the_target} libjpeg)
+ target_link_libraries(${the_target} libjpeg-turbo)
endif()
# Add the required libraries for linking:
diff --git a/Emgu.CV.Extern/cvblob/libcvblob b/Emgu.CV.Extern/cvblob/libcvblob
index bea27d234..ef99c61d5 160000
--- a/Emgu.CV.Extern/cvblob/libcvblob
+++ b/Emgu.CV.Extern/cvblob/libcvblob
@@ -1 +1 @@
-Subproject commit bea27d2347233d4c92db14739191ebc922b7cbe9
+Subproject commit ef99c61d5206e9ffbc059121fb44c775d2f2cddf
diff --git a/Emgu.CV.Extern/face/face_c.cpp b/Emgu.CV.Extern/face/face_c.cpp
index 4a8ad2c59..22b1c5863 100644
--- a/Emgu.CV.Extern/face/face_c.cpp
+++ b/Emgu.CV.Extern/face/face_c.cpp
@@ -152,7 +152,7 @@ void cveFacemarkKazemiRelease(cv::face::FacemarkKazemi** facemark)
delete *facemark;
*facemark = 0;
}
-*/
+
typedef struct
{
@@ -170,20 +170,22 @@ bool cveFacemarkSetFaceDetector(cv::face::Facemark* facemark, CSharp_FaceDetecto
detector_pointer.face_detector_func = detector;
return facemark->setFaceDetector((cv::face::FN_FaceDetector) myDetector, &detector_pointer);
}
-
+*/
void cveFacemarkLoadModel(cv::face::Facemark* facemark, cv::String* model)
{
facemark->loadModel(*model);
}
+/*
bool cveFacemarkGetFaces(cv::face::Facemark* facemark, cv::_InputArray* image, cv::_OutputArray* faces)
{
return facemark->getFaces(*image, *faces);
-}
+}*/
bool cveFacemarkFit(cv::face::Facemark* facemark, cv::_InputArray* image, cv::_InputArray* faces, cv::_InputOutputArray* landmarks)
{
return facemark->fit(*image, *faces, *landmarks);
}
+/*
bool cveFacemarkAddTrainingSample(cv::face::Facemark* facemark, cv::_InputArray* image, cv::_InputArray* landmarks)
{
return facemark->addTrainingSample(*image, *landmarks);
@@ -191,7 +193,7 @@ bool cveFacemarkAddTrainingSample(cv::face::Facemark* facemark, cv::_InputArray*
void cveFacemarkTraining(cv::face::Facemark* facemark)
{
facemark->training();
-}
+}*/
void cveDrawFacemarks(cv::_InputOutputArray* image, cv::_InputArray* points, CvScalar* color)
diff --git a/Emgu.CV.Extern/face/face_c.h b/Emgu.CV.Extern/face/face_c.h
index b5cead748..f44e66aeb 100644
--- a/Emgu.CV.Extern/face/face_c.h
+++ b/Emgu.CV.Extern/face/face_c.h
@@ -47,16 +47,16 @@ CVAPI(void) cveFacemarkKazemiParamsRelease(cv::face::FacemarkKazemi::Params** pa
CVAPI(cv::face::FacemarkKazemi*) cveFacemarkKazemiCreate(cv::face::FacemarkKazemi::Params* parameters, cv::face::Facemark** facemark, cv::Algorithm** algorithm);
CVAPI(void) cveFacemarkKazemiRelease(cv::face::FacemarkKazemi** facemark);
-*/
typedef bool(*CSharp_FaceDetector)(const cv::_InputArray*, const cv::_OutputArray*);
CVAPI(bool) cveFacemarkSetFaceDetector(cv::face::Facemark* facemark, CSharp_FaceDetector detector);
+*/
CVAPI(void) cveFacemarkLoadModel(cv::face::Facemark* facemark, cv::String* model);
-CVAPI(bool) cveFacemarkGetFaces(cv::face::Facemark* facemark, cv::_InputArray* image, cv::_OutputArray* faces);
+//CVAPI(bool) cveFacemarkGetFaces(cv::face::Facemark* facemark, cv::_InputArray* image, cv::_OutputArray* faces);
CVAPI(bool) cveFacemarkFit(cv::face::Facemark* facemark, cv::_InputArray* image, cv::_InputArray* faces, cv::_InputOutputArray* landmarks);
-CVAPI(bool) cveFacemarkAddTrainingSample(cv::face::Facemark* facemark, cv::_InputArray* image, cv::_InputArray* landmarks);
-CVAPI(void) cveFacemarkTraining(cv::face::Facemark* facemark);
+//CVAPI(bool) cveFacemarkAddTrainingSample(cv::face::Facemark* facemark, cv::_InputArray* image, cv::_InputArray* landmarks);
+//CVAPI(void) cveFacemarkTraining(cv::face::Facemark* facemark);
CVAPI(void) cveDrawFacemarks(cv::_InputOutputArray* image, cv::_InputArray* points, CvScalar* color);
#endif
\ No newline at end of file
diff --git a/opencv b/opencv
index 2601e1883..369ab2629 160000
--- a/opencv
+++ b/opencv
@@ -1 +1 @@
-Subproject commit 2601e1883dec59a1cc4af5d373e47860d3eda0ba
+Subproject commit 369ab26292a297584b485ea84ff1b6128f450697