准备工作:
下载CMake工具:https://cmake.org/download/
OpenCV源码:https://opencv.org/releases/选择其中的Windows版本,其实这里并不是指的Windows系统而是指的桌面版本,下载后的文件以exe结尾,并不是可执行程序而是压缩文件。
开始编译
打开安装后的CMake
![](https://img.haomeiwen.com/i14273002/eea8290c34618242.png)
第一个输入框选择刚刚下载的源码目录,第二个为接下来配置及编译目录。
操作步骤
- 点击Configure按钮选择编译工具默认选择Unix MakeFiles,如果熟悉XCode可以选择Xcode编译,(一般安装安装了Xcode相关的编译环境如gcc,g++等已经装好了),编译器选择默认的就好了不用特殊配置。
- 配好后点击ok开始检测环境,检测完毕后根据输出判断是否成功。
- 如果成功,点击Generate按钮生成MakeFile文件,
- 然后进入编译目录执行make进行编译,
- 编译成功后执行make install进行安装,
如果成功,会在bin下生成opencv-420.jar,lib下生成libopencv_java420.dylib以及其他.a文件, - 将bin目录配置到PATH环境中,即完成整个编译,
注意,编译后编译目录不可更改因为配置文件中已经写入了配置文件的绝对路径,如果你剪切整个openVC文件至其他地方,使用时将报错,提示文件无法找到,如果用3.x版本编译会在/usr/local/bin下生成制作样本等工具文件,4.x中已经删除了此类工具因此无法看到
测试编译是否成功
使用CLion进行测试,如果能够正常显示图片则说明环境配置成功
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace cv;
int main() {
Mat src = imread("/Users/xxx/Downloads/xxx.png");
imshow("aaa",src);
waitKey();
return 0;
}
CMakeList脚本如下
cmake_minimum_required(VERSION 3.15)
project(OpenVCTest)
set(CMAKE_CXX_STANDARD 11)
add_executable(OpenVCTest main.cpp)
set(OpenCV_DIR /Users/XXX/Downloads/opencv/sources/opencv-build)
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
target_link_libraries(
OpenVCTest
${OpenCV_LIBS}
)
加入人脸识别模块编译
openvc提供人脸识别模块编译,但是在另一个opencv_contrib模块,因此需要下载https://github.com/opencv/opencv_contrib模块源码,与openvc共同编译
- 在Cmake中Search OPENCV_EXTRA_MODULES_PATH 并配置 contrib的解压目录,按照上面的流程编译即可,注意编译后,contrib的源码需要保留应为使用时会连接带里面的头文件等。
网友评论