Как я могу быть невосприимчивым к работе в Xcode

0

Этот код должен взять несколько изображений и загрузить их, пробуя 3 разных метода в коде, и ни один из них не работает. Ответ здесь Получение ошибки OpenCV "Шаг изображения неправильный" в методе Fisherfaces.train() не работает для меня, потому что у меня нет этих библиотек.

#include <opencv2/opencv.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv/cvaux.h>
using namespace cv;

int main(int argc, char** argv)
{

    //The code segments commented (not mine) are taken from     http://docs.opencv.org/modules/contrib/doc/facerec/facerec_api.html

    // holds images and labels (not mine)
    cv::vector<cv::Mat> images;
    cv::vector<int> labels;


    //this doesnt assign anything to img
    Mat img = cv::imread("/Users/STUFF/Desktop/Projects/OpenCV_testing/person0/0.jpg", 0);

    //this also does nothing
    IplImage *img=cvLoadImage("Image_Name);
    Mat mat(img);


   // images for first person (not mine) except incresed pathing/
   //repeat for multiple people in future
   images.push_back(cv::imread("/snip", CV_LOAD_IMAGE_GRAYSCALE));
   labels.push_back(0);

   images.push_back(cv::imread("/snip", CV_LOAD_IMAGE_GRAYSCALE));
   labels.push_back(0);

   images.push_back(cv::imread("/snip", CV_LOAD_IMAGE_GRAYSCALE));
   labels.push_back(0);

   // Create a new Fisherfaces model and retain all available Fisherfaces,
   // this is the most common usage of this specific FaceRecognizer:
   //(not mine)
   Ptr<FaceRecognizer> model =  createFisherFaceRecognizer();

   // This is the common interface to train all of the available cv::FaceRecognizer
   // implementations:
   //(not mine)
   model->train(images, labels);

   model->save("/snip.xml");

    return 0;
}

imread ничего не делает, что делает остальную часть кода бесполезной. Я действительно новичок в openCV и действительно не понимаю документацию, поэтому, возможно, я внедряю некоторые вещи неправильно. Я был бы признателен за помощь в ознакомлении и прочтении документации opencv.

Теги:
opencv

1 ответ

0

не совсем ответ (так как код в комментариях не работает..)

но всегда полезно проверять при загрузке ресурсов:

Mat img = imread(path,flags);
if ( img.empty() ) 
{   
    // either the path was wrong, or it could not decompress it
    cerr << "could not load " << path << endl;
    return -1;
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню