在Windows 8.1环境下,编译OpenCV 3.4.1是一个涉及多个步骤的过程,需要使用CMake工具来配置构建环境,并结合OpenCV的contrib模块,以便获得额外的功能。下面将详细介绍这个过程,包括所需的软件、环境设置、配置步骤以及如何生成Debug和Release版本的库文件。
确保你已经安装了以下必要的软件:
1. **Visual Studio**:推荐使用Visual Studio 2015或更新的版本,因为OpenCV 3.4.1支持这个版本的编译器。
2. **CMake**:CMake是一个跨平台的构建系统,用于管理项目构建过程。下载并安装最新版本的CMake。
3. **Git**:用于获取OpenCV和OpenCV_contrib的源代码。你可以从官方网站下载并安装。
接下来,按照以下步骤操作:
1. **获取源代码**:打开命令行(CMD或PowerShell),使用`git clone`命令克隆OpenCV和OpenCV_contrib仓库:
```
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
```
2. **设置源代码目录**:将opencv_contrib的模块添加到opencv的modules文件夹中:
```
cd opencv
mkdir modules_contrib
cp -r ../opencv_contrib/modules/* ./modules_contrib/
```
3. **配置CMake**:启动CMake GUI,设置源代码目录为opencv的根目录,设置构建目录(通常建议与源代码目录分开)。点击“Configure”按钮,选择对应的Visual Studio版本和生成目标(Win32或x64)。
4. **配置选项**:在CMake配置界面,找到以下选项并设置:
- `BUILD_opencv_world`:确保被勾选。
- `WITH_CUDA`:如果你的系统支持CUDA,可以开启以使用GPU加速。
- `OPENCV_EXTRA_MODULES_PATH`:设置为opencv_contrib/modules的路径,以包含额外模块。
- `BUILD_SHARED_LIBS`:如果希望生成动态库(dll),保持勾选;否则,取消勾选以生成静态库(lib)。
- `BUILD_DEBUG` 和 `BUILD_RELEASE`:分别勾选以构建Debug和Release版本。
5. **完成配置**:点击“Generate”生成项目文件,然后关闭CMake。
6. **编译项目**:在生成的项目目录下,打开解决方案文件(如OpenCV.sln),在Visual Studio中选择Debug或Release配置,然后右键点击解决方案并选择“Build Solution”。这将编译所有相关模块并生成所需的库文件。
7. **安装OpenCV**:编译完成后,再次运行CMake,这次在配置阶段取消勾选`BUILD_opencv_world`,然后重新“Generate”和“Configure”。之后,设置`INSTALL`目标,点击“Generate”,然后在Visual Studio中构建“INSTALL”项目,这将把编译好的库文件复制到指定的安装目录。
8. **验证安装**:完成上述步骤后,你可以在安装目录下的bin文件夹中找到OpenCV的库文件(dll或lib),头文件位于include目录下。你可以通过在你的项目中链接这些库,测试OpenCV是否正确安装和工作。
以上就是win8.1下编译OpenCV 3.4.1+cmake+contrib的完整流程。注意,这个过程可能因系统配置和软件版本的不同而略有差异,但基本步骤是相似的。在实际操作中,遇到问题时,查阅官方文档或在线社区的常见问题解答会非常有帮助。
评论0