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