Я пытаюсь реализовать подход "Техника сегментации объектов на основе GrabCut" в MATLAB. Для минимизации функции энергии случайных полей Маркова я использую стандартный алгоритм Max-flow / min-cut, как показано здесь: http://vision.csd.uwo.ca/code/
Вопрос: Когда я пытаюсь создать mex-файл для вызова функций создания и минимизации графика в MATLAB, я получаю следующую ошибку:
Неопределенные символы:
"Graph :: Graph (int, int, void () (char ))", на который ссылаются из:
_mexFunction in GraphTest.o
ld: символ (ы) не найден
collect2: ld вернул 1 статус выхода
mex: сбой ссылки "GraphTest.mexmaci64".
Мой код действительно очень прост и просто скопировал часть кода, упомянутого в файле README, следующим образом:
#include "mex.h"
#include <stdio.h>
#include <math.h>
#include "graph.h"
void mexFunction(int nlhs, mxArray *plhs[],int nrhs, const mxArray *prhs[])
{
typedef Graph<int, int, int> GraphType;
GraphType *g = new GraphType(/*estimated # of nodes*/ 2, /*estimated # of edges*/1);
}
Я был бы очень признателен, если бы кто-нибудь, кто использовал этот пакет ранее или сталкивался с подобной ошибкой, мог бы дать некоторое представление о проблеме.
Заранее спасибо!