Почему нет шаблона с именем 'cv_image' в пространстве имен 'dlib'? - PullRequest
0 голосов
/ 12 мая 2019

Я пытаюсь преобразовать формат изображения OpenCV в формат изображения Dlib, используя cv_image, но получаю:

Нет шаблона с именем 'cv_image' в пространстве имен 'dlib'

вот файл .h:

    #import <Foundation/Foundation.h>
    #include <dlib/opencv.h>
    #include <dlib/opencv/cv_image.h>
    #include <opencv2/highgui/highgui.hpp>
    #include <dlib/image_processing/frontal_face_detector.h>
    #include <dlib/image_processing/render_face_detections.h>
    #include <dlib/image_processing.h>
    #include <dlib/gui_widgets.h>

    using namespace dlib;
    using namespace std;
    using namespace cv;

    NS_ASSUME_NONNULL_BEGIN

    @interface dlibObject : NSObject
    -(void) faceDetection: (cv::Mat*) frame;
    @end

    NS_ASSUME_NONNULL_END

вот файл .mm:

    #import "dlibObject.h"

    @implementation dlibObject

    -(void) faceDetection: (cv::Mat*) frame{

        frontal_face_detector detector = get_frontal_face_detector();
        dlib::cv_image<dlib::bgr_pixel> cimg(frame); // here is the error 
        std::vector<dlib::rectangle> faceRects = detector(frame);

        for ( size_t i = 0; i < faceRects.size(); i++ )
        {
            int x1 = faceRects[i].left();
            int y1 = faceRects[i].top();
            int x2 = faceRects[i].right();
            int y2 = faceRects[i].bottom();

        }
    }

    @end
...