Ошибка загрузки каскадного классификатора в Opencv с помощью cascade.load()!

Я использую код facedetect.cpp, приведенный в примерах opencv. Но после сборки и запуска появляется ошибка, потому что cascade.load(cascadeName) учитывая ошибку, т.е. возвращает ноль. Это работало несколько дней назад. Внезапно эта ошибка начала приходить. Я также полный путь к файлу XML, но он не работает! Эта команда использовалась для запуска исполняемого кода:

`objectDetect --cascade="Full path to haarcascade_frontalface_alt.xml" --scale=1.3 %1`

Путь к файлу XML правильный!! Пожалуйста, проверьте этот снимок

#include <opencv2\objdetect\objdetect.hpp>
#include <opencv2\highgui\highgui.hpp>
#include <opencv2\imgproc\imgproc.hpp>
#include <cv.h>
#include <highgui.h>
#include <iostream>

using namespace std;
using namespace cv;

int main(int argc, char* argv[]) {
string xmlArray[] = {
"D:/Visual Studio 2010/Projects/loadClassifierTest/haarcascades/haarcascade_eye.xml",
"D:/Visual Studio 2010/Projects/loadClassifierTest/haarcascades/haarcascade_eye_tree_eyeglasses.xml",
"D:/Visual Studio 2010/Projects/loadClassifierTest/haarcascades/haarcascade_frontalface_alt.xml",
"D:/Visual Studio 2010/Projects/loadClassifierTest/haarcascades/haarcascade_frontalface_alt2.xml",
"D:/Visual Studio 2010/Projects/loadClassifierTest/haarcascades/haarcascade_frontalface_alt_tree.xml",
"D:/Visual Studio 2010/Projects/loadClassifierTest/haarcascades/haarcascade_frontalface_default.xml",
"D:/Visual Studio 2010/Projects/loadClassifierTest/haarcascades/haarcascade_fullbody.xml"
};
CascadeClassifier cascade;
for (int i = 0; i < 6; ++i) {
    if (!cascade.load(xmlArray[i]))
        cerr << "Could not load " << xmlArray[i] << " !" << endl;
    else
        cout << xmlArray[i] << " has been loaded!" << endl;
}
return 0;
}

Все XML-файлы находятся в одной папке.... даже после указания полного пути.... они не загружаются...! Я не думаю, что есть какие-либо проблемы с разрешениями...

Пожалуйста помоги!

1 ответ

Вы пробовали пройти абсолютный путь таким образом:

 String xmlFilePath = "c:/.../haarcascade_frontalface_alt.xml";

Ваш файл находится в папке с разрешением на чтение?

Это должно работать, иначе проблема в другом месте вашего кода..

Другие вопросы по тегам