OpenCV 2.3.1安装,VS 2010,MEX

OpenCV 2.3.1安装,VS 2010,MEX

问题描述:

这是另一个OpenCV安装问题,但我无法通过阅读现有答案找到答案。我试图在VS 2010中设置OpenCV 2.3.1目录,并将几个项目从OpenCV 2.2迁移到这个新版本。我遵循这个Setup OpenCV-2.3 for Visual Studio 2010后,这是2.3(2.3和2.3.1显然有相同的文件夹结构),但它似乎并不准确。OpenCV 2.3.1安装,VS 2010,MEX

首先,如果我下载并解压OpenCV-2.3.0-win-superpack.exe(版本从2011-07-04开始在sourceforge上),那里没有buildopencv目录。另外,没有任何预编译的库,我必须使用CMake,创建VS2010解决方案并从头编译。

第二,三include目录

C:\OpenCV2.3\build\include\opencv 
C:\OpenCV2.3\build\include\opencv2 
C:\OpenCV2.3\include 

不包含所有必要的模块头。如果我有

#include <opencv/cv.h> 

#include <opencv2/opencv.hpp> 

,并尝试建立这个项目,我得到C1083的每一个模块(内核,imgproc,...),因为opencv.hpp有这些线路

#include "opencv2/core/core_c.h" 
#include "opencv2/core/core.hpp" 
#include "opencv2/flann/miniflann.hpp" 
#include "opencv2/imgproc/imgproc_c.h" 
... 

的确,每个模块的头文件都不在上面三个include目录中的任何一个,它们都在modules文件夹中,深度嵌套在复杂的目录结构中,如modules\{module}\include\opencv2\{module}\{module}.hpp,所以我必须手动添加每个包含目录。这看起来很有效,但是它非常耗时,尤其是在更改某些内容时,编译Matlab MEX程序时变得非常复杂,因为在Matlab中不存在属性表或包含目录的简单管理。我不明白为什么它与每个新版本越来越难以正确配置OpenCV ...

所以,我的问题是:我做错了什么?也许CMake配置(我使用了所有的默认值,编译器VS10 x64)?较新版本的OpenCV的文档丢失,Setup OpenCV-2.3 for Visual Studio 2010等帖子描述了更为简单的过程和目录结构...

听起来好像您并未在Visual Studio中构建INSTALL目标。你只建立ALL_BUILD

+0

这工作,谢谢。是的,我只建立了'ALL_BUILD'目标。构建'INSTALL'目标解决了这个问题,然而'include','bin'和'lib'目录现在在'OpenCV \ build \ install'文件夹中(我在VS中使用了默认配置)。 – buchtak

+0

如果你想改变它,你需要在使用CMake配置构建时更改安装前缀。 – mevatron