Cmake+OpenCV 2

来源:互联网 发布:冷枪冷炮运动 知乎 编辑:程序博客网 时间:2024/04/30 02:26

接着上面,在CMake之后,进行程序的编译:


结果出现了14个错误:


其中的错误为:

34>d:\program files\opencv_3.0\sources\modules\opencv_contrib-master\modules\line_descriptor\src\bitops.hpp(104): error C2059: syntax error : 'bad suffix on number'34>d:\program files\opencv_3.0\sources\modules\opencv_contrib-master\modules\line_descriptor\src\bitops.hpp(104): error C2146: syntax error : missing ',' before identifier 'U'34>d:\program files\opencv_3.0\sources\modules\opencv_contrib-master\modules\line_descriptor\src\bitops.hpp(104): error C2065: 'U' : undeclared identifier44>..\..\..\sources\modules\opencv_contrib-master\modules\line_descriptor\test\test_matcher_regression.cpp(126): error C2668: 'pow' : ambiguous call to overloaded function44>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(583): could be 'long double pow(long double,int)'44>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(535): or       'float pow(float,int)'44>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(497): or       'double pow(double,int)'55>..\..\..\sources\modules\opencv_contrib-master\modules\saliency\src\motionSaliencyBinWangApr2014.cpp(84): error C2065: 'NAN' : undeclared identifier55>..\..\..\sources\modules\opencv_contrib-master\modules\saliency\src\motionSaliencyBinWangApr2014.cpp(92): error C2065: 'NAN' : undeclared identifier55>..\..\..\sources\modules\opencv_contrib-master\modules\saliency\src\motionSaliencyBinWangApr2014.cpp(421): error C2668: 'floor' : ambiguous call to overloaded function55>..\..\..\sources\modules\opencv_contrib-master\modules\saliency\src\motionSaliencyBinWangApr2014.cpp(421): error C2668: 'floor' : ambiguous call to overloaded function55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(567): could be 'long double floor(long double)'55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(519): or       'float floor(float)'55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(136): or       'double floor(double)'55>..\..\..\sources\modules\opencv_contrib-master\modules\saliency\src\motionSaliencyBinWangApr2014.cpp(426): error C2668: 'ceil' : ambiguous call to overloaded function55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(557): could be 'long double ceil(long double)'55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(509): or       'float ceil(float)'55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(135): or       'double ceil(double)'55>..\..\..\sources\modules\opencv_contrib-master\modules\saliency\src\motionSaliencyBinWangApr2014.cpp(426): error C2668: 'ceil' : ambiguous call to overloaded function55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(557): could be 'long double ceil(long double)'55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(509): or       'float ceil(float)'55>          d:\Program Files\Microsoft Visual Studio 10.0\VC\include\math.h(135): or       'double ceil(double)'55>          while trying to match the argument list '(int)'55>..\..\..\sources\modules\opencv_contrib-master\modules\saliency\src\motionSaliencyBinWangApr2014.cpp(482): error C2065: 'NAN' : undeclared identifier55>..\..\..\sources\modules\opencv_contrib-master\modules\saliency\src\motionSaliencyBinWangApr2014.cpp(492): error C2065: 'NAN' : undeclared identifier69>..\..\..\sources\modules\opencv_contrib-master\modules\line_descriptor\perf\perf_matching.cpp(104): error C2668: 'pow' : ambiguous call to overloaded function76>..\..\..\sources\modules\opencv_contrib-master\modules\xfeatures2d\src\daisy.cpp(1270): error C3861: 'round': identifier not found78>LINK : fatal error LNK1181: cannot open input file '..\..\lib\Release\opencv_xfeatures2d300.lib'

从中可以看出大部分错误都是opencv_contrib-master的代码产生的,果然还是不太成熟。

自己然后使用INSTALL编译:


结果Matlab文件夹下面只产生了71个文件:


大部分函数都没有,故对Open3.0探索到此为止,等它将opencv_contrib稳定了,然后再试。


后记,后来采用VS2013编译,就只产生了一个错误,这个错误是因为Program Files中间的空格产生的,去掉就全部编译正确了。

cvmex.py : error : unrecognized arguments: Files/opencv_3.0/sources/modules/opencv_contrib-master/modules/matlab/include -ID:/Program Files/opencv_3.0/sources/modules/hal/include -ID:/Program Files/opencv_3.0/sources/modules/core/include -ID:/Program Files/opencv_3.0/sources/modules/imgproc/include -ID:/Program Files/opencv_3.0/sources/modules/ml/include -ID:/Program Files/opencv_3.0/sources/modules/imgcodecs/include -ID:/Program Files/opencv_3.0/sources/modules/videoio/include -ID:/Program Files/opencv_3.0/sources/modules/highgui/include -ID:/Program Files/opencv_3.0/sources/modules/objdetect/include -ID:/Program Files/opencv_3.0/sources/modules/flann/include -ID:/Program Files/opencv_3.0/sources/modules/features2d/include -ID:/Program Files/opencv_3.0/sources/modules/photo/include -ID:/Program Files/opencv_3.0/sources/modules/video/include -ID:/Program Files/opencv_3.0/sources/modules/videostab/include -ID:/Program Files/opencv_3.0/sources/modules/calib3d/include -ID:/Program Files/opencv_3.0/sources/modules/stitching/include -ID:/Program Files/opencv_3.0/sources/modules/superres/include -ID:/Program Files/opencv_3.0/sources/modules/opencv_contrib-master/modules/xfeatures2d/include




1 0
原创粉丝点击