使用CMake编译OpenCV非自由模块以实现人脸识别和图像拼接
版权申诉
38 浏览量
更新于2024-08-21
收藏 70KB DOCX 举报
OpenCV 模块 cmake 编译指南
OpenCV 是一个功能强大的计算机视觉库,提供了许多有用的模块和算法,例如特征点提取、人脸识别、图像配准和拼接等。然而,在使用这些模块之前,需要进行 cmake 编译来生成相应的 dll 和 lib 文件。本文将指导如何使用 cmake 对 OpenCV 的 nofree 模块进行编译,并生成可用于 VS2019 的 dll 和 lib 文件。
**OpenCV 模块简介**
OpenCV 是一个开源的计算机视觉库,提供了许多有用的模块和算法,例如特征点提取、人脸识别、图像配准和拼接等。这些模块可以帮助开发者快速实现计算机视觉相关的项目。然而,在使用这些模块之前,需要进行 cmake 编译来生成相应的 dll 和 lib 文件。
**cmake 简介**
cmake 是一个开源的构建自动化工具,用于生成项目的 build 文件。它可以根据不同的编译器和平台生成相应的 build 文件,从而实现跨平台的编译。
**下载和安装 OpenCV**
要使用 OpenCV,需要首先下载和安装 OpenCV。OpenCV 的下载地址是 http://sourceforge.net/projects/opencvlibrary/files/opencv-win/3.0.0/。在下载完成后,需要将其安装到指定的目录下。
**下载和安装 OpenCV Contrib**
OpenCV Contrib 是 OpenCV 的一个扩展库,提供了许多有用的模块和算法,例如非自由模块(nonfree 模块)。OpenCV Contrib 的下载地址是 https://github.com/Itseez/opencvcontrib。
**下载和安装 cmake**
cmake 是一个开源的构建自动化工具,用于生成项目的 build 文件。cmake 的下载地址是 http://www.cmake.org/cmake/resources/software.html。
**使用 cmake 编译 OpenCV**
要使用 cmake 编译 OpenCV,需要按照以下步骤进行:
1. 打开 cmake-gui。
2. 在 where is the source code 中选择 OpenCV 的安装目录。
3. 在 where to build the binaries 中选择要将 OpenCV 编译到的目录下面。
4. 点击 configure,在弹出的对话框内选择 Visual Studio 2013 和 default 参数,点击 finish。
5. 在弹出的对话框内找到 Name 为 OPENCVEXTRAMODULESPATH 的参数,然后把它的 Value 设置为 OpenCV Contrib 的路径。
6. 点击 Generate,等待中间报了两次错,可以去掉一些无用的参数,然后就完成了。
**注意**
在进行第五步的时候,路径一定要填写对,不要有反斜杠。另外,opencv-nofree那个一定要勾选上不然 OpenCV.sln 在编译之后没有效果。
**使用 VS 编译生成 dll 和 lib**
在使用 cmake 生成 OpenCV.sln 后,需要使用 VS2019 编译生成 dll 和 lib 文件。打开 OpenCV.sln,并选择 Release 模式,点击编译按钮,等待编译完成。
**总结**
本文指导了如何使用 cmake 对 OpenCV 的 nofree 模块进行编译,并生成可用于 VS2019 的 dll 和 lib 文件。这种方法可以帮助开发者快速实现计算机视觉相关的项目。
2022-07-14 上传
2021-09-06 上传
2020-05-14 上传
2020-08-29 上传
2021-08-13 上传
看轻风淡云
- 粉丝: 4
- 资源: 4
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析