OpenCV SVM HOG детектор svm.predict () исключение

Я использую Visual Studio 2013 с OpenCV 2.4.11
Я обучил SVM с XML-файлом положительных и отрицательных образцов.
Вот код, который я хочу сравнить с некоторым изображением. Сборка в порядке, но когда я запускаю отладку, она прерывается на svm.predict ().

Необработанное исключение в 0x00007FFF43148A5C в ConsoleApplication2.exe: исключение Microsoft C ++: cv :: Исключение в расположении памяти 0x000000AF2D16ECA0.

А есть в локальных переменных возле свм

Информация недоступна, символы не загружены для opencv_ml2411d.dll

Любая идея или подсказка, что не так?

void compare()
{

//variables
char FullFileName[100];
char FirstFileName[100] = "E:\Dropbox/DIP/Images/Train/";
int FileNum = 5; //262;

//Load trained SVM xml data

CvSVM svm;
svm.load("E:/Dropbox/DIP/Images/Train/trainedSVM.xml");

//count variable
int nnn = 0, ppp = 0;

for (int i = 1; i< FileNum; ++i)
{
sprintf_s(FullFileName, "%s%d.jpg", FirstFileName, i + 1);
//printf("%s\n", FullFileName);

//read image file
Mat img, img_gray;
img = imread(FullFileName);

//resizing
resize(img, img, Size(64, 48)); //Size(32*2,16*2)); //Size(80,72) );
//gray
cvtColor(img, img_gray, CV_RGB2GRAY);

//Extract HogFeature
HOGDescriptor d(Size(32, 16), Size(8, 8), Size(4, 4), Size(4, 4), 9);
vector< float> descriptorsValues;
vector< Point> locations;
d.compute(img_gray, descriptorsValues, Size(0, 0), Size(0, 0), locations);
//vector to Mat
Mat fm = Mat(descriptorsValues);

//Classification whether data is positive or negative   HERE COME PROBLEM
int result = svm.predict(fm); //svm.predict(fm);
printf("%s - > %d\n", FullFileName, result);

//Count data
if (result == 1)
ppp++;
else
nnn++;

//show image
imshow("origin", img);

waitKey(5);
}

printf(" positive/negative = (%d/%d) \n", ppp, nnn);
}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector