2014-01-09 2 views
2

Я хочу создать матрицу в opencv для моего проекта raytracing. Это код, который я придумал:Неполный тип «cv :: Mat» opencv C++

#include "Windows.h" 
#include "core/mat.hpp" 
#include "core/core.hpp" 
#include "core/types_c.h" 

using namespace cv; 

Mat createImage() 
{ 
    Mat b(480, 640, CV_8UC3); 
    return b; 
} 

И у меня есть проблема с двумя Мат. Он говорит variable has incomplete type "cv::Mat". Я не понимаю, что это значит. Я всегда писал только Мат больше ничего.

Может кто-нибудь помочь мне, пожалуйста?

+0

Вы должны включать в себя только core.hpp, но это звучит как ошибка –

+0

линкера я нашел ответ на StackOverflow о том, как связать OpenCV с Xcode, поэтому я последовал за весь этап. Так ли эта ошибка компоновщика есть что-то о самом коде xcode? – Ekica

+0

Это больше похоже на ошибку компилятора, а не на вывод компоновщика. – AlexK

ответ

0

Вам нужно только «#include„ядро/core.hpp“`

компилятор должен быть в состоянии найти заголовочный файл, у вас есть Opencv/Include в списке включаемых каталогов компилятора? Не удалось ли найти файл core.hpp?

+0

Я просто включил core/core.hpp, и я также должен был включить type.hpp, потому что CV_8UC3 не находится в core.hpp, и я все еще есть эта проблема. :( – Ekica

1

Просто укажите "opencv2/core/core.hpp".
Вы можете использовать приведенный ниже примерный код.

#include "opencv2/core/core.hpp" 
using namespace cv; 

Mat createImage() 
{ 
Mat b(480, 640, CV_8UC3); 
return b; 
} 

int main() 
{ 
    createImage(); 
} 
Смежные вопросы