Как исправить (Ошибка использования mexOpenCV) на Matlab? - PullRequest
0 голосов
/ 13 декабря 2018

Я хочу использовать bgslibrary в своем исследовании, используя файлы wrapper_matlab, находящиеся в папках bgslibrary на github.

Я выполнил шаги, упомянутые в README, но получил ошибку при запуске compile.m.

Я установил Microsoft Visual Studio 2015 и работаю с Matlab 2018a.

Сокращенный вывод:

 Building with 'Microsoft Visual C++ 2015'.
    cl /c /Zp8 /GR /W3 /EHs /nologo /MD /O2 /Oy- /DNDEBUG /DMEX_COMPILE_FLAG  /DMATLAB_DEFAULT_RELEASE=R2017b  /DUSE_MEX_CMD   /D_CRT_SECURE_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE /D_SECURE_SCL=0   /DMATLAB_MEX_FILE -I"C:\Program Files\MATLAB\R2018a\toolbox\vision\builtins\src\ocvcg\opencv\include" -I"C:\Program Files\MATLAB\R2018a\extern\include" -I"C:\Program Files\MATLAB\R2018a\toolbox\distcomp\gpu\extern\include" -I"..\package_bgs"  -I"C:\Program Files\MATLAB\R2018a\extern\include" -I"C:\Program Files\MATLAB\R2018a\simulink\include" "E:\BAW\study\doctoral\bgslibrary-master\wrapper_matlab\backgroundSubtractor_wrapper.cpp" /FoC:\Users\ihssane\AppData\Local\Temp\mex_62234284571999_12516\backgroundSubtractor_wrapper.obj
    Error using mexOpenCV (line 136)
    backgroundSubtractor_wrapper.cpp
    e:\baw\study\doctoral\bgslibrary-master\wrapper_matlab\mxarray.h(591): warning C4267: 'argument': conversion from 'size_t' to
    'int', possible loss of data
    E:/BAW/study/doctoral/bgslibrary-master/package_bgs/opencv-3.4.4/build/install/include/opencv2/imgproc/types_c.h(58): error
    C2011: 'CvConnectedComp': 'struct' type redefinition
....
...
....
    C:\Program Files\MATLAB\R2018a\toolbox\vision\builtins\src\ocvcg\opencv\include\opencv2/imgproc/types_c.h(222): note: see
    declaration of 'CV_Luv2LBGR'
    E:/BAW/study/doctoral/bgslibrary-master/package_bgs/opencv-3.4.4/build/install/include/opencv2/imgproc/types_c.h(223): error
    C2365: 'CV_Luv2LRGB': redefinition; previous definition was 'enumerator'
    C:\Program Files\MATLAB\R2018a\toolbox\vision\builtins\src\ocvcg\opencv\include\opencv2/imgproc/types_c.h(223): note: see
    declaration of 'CV_Luv2LRGB'
    E:/BAW/study/doctoral/bgslibrary-master/package_bgs/opencv-3.4.4/build/install/include/opencv2/imgproc/types_c.h(223): fatal
    error C1003: error count exceeds 100; stopping compilation



    Error in compile (line 3)
    mexOpenCV -v -DMEX_COMPILE_FLAG -I"../package_bgs" backgroundSubtractor_wrapper.cpp ...

1 Ответ

0 голосов
/ 14 декабря 2018

Похоже, у вас могут быть заголовки для двух разных версий OpenCV.Это:

C:\Program Files\MATLAB\R2018a\toolbox\vision\builtins\src\ocvcg\opencv\include

и это:

E:/BAW/study/doctoral/bgslibrary-master/package_bgs/opencv-3.4.4/build/install/include

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...