一、准备工作
- cmake 版本3.19.2
- opencv-4.5.0 https://codeload.github.com/opencv/opencv/zip/4.5.0
- opencv-contrib-4.5.0 https://codeload.github.com/opencv/opencv_contrib/zip/4.5.0 cmake编译
二、解压文件、创建build文件夹
设置环境变量
- OPENCV_DIR=D:\opencv\build\install
- OPENCV_PATH=D:\opencv
- PATH 末尾加入D:\CMake\bin;D:\Dev-Cpp\MinGW64\bin;D:\opencv\build\bin
三、设置opencv
运行cmake-gui - 点击第一次Configure 会出现选择版本界面。
- 选择mingw进行configure。
- 当显示Configure done 会出现红色的界面
- 找到OPENCV_EXTRA_MODULES_PATH,后面添加路径D:/opencv/opencv_contrib-4.5.0/modules,精确到\modules 。勾选上面的OPENCV_ENABLE_NONFREE。
- 上面步骤做好以后,点击Configure,当出现Configure done,还是红色的界面。不要担心,再点击Configure 一次,红色界面就全部消失了。
- 点击Generate ,当出现Generate done,旁边的Open Project便会显示出来。
五:进行编译:
- (-j 是使用 8 个线程进行编译,请根据你的计算机配置合理设置线程数)
- WIN+R cmd;D: ;cd D:\opencv\build
mingw32-make -j 25
mingw32-make install
六测试代码
- 设置环境:设置工具(tools)=》编辑器选项=》库与头文件路径
2、编写测试程序1
#include "core/core.hpp"
#include "highgui.hpp
#include "imgcodecs.hpp"
using namespace cv;
using namespace std;
int main()
{
Mat img;
img = imread("cat.jpg");
imshow("Original Image", img);
waitKey();
}
编写测试程序1
主要是测试SIFT算法,这是基础库没有的。
#include <iostream>
#include<opencv2\opencv.hpp>
#include "opencv2/xfeatures2d.hpp"
using namespace cv;
using namespace std;
using namespace xfeatures2d;
int main()
{
Mat matSrc = imread("D:/flower.png");
Mat draw;
std::vector<KeyPoint> keypoints;
auto sift_detector = SIFT::create();
sift_detector->detect(matSrc, keypoints);
drawKeypoints(matSrc, keypoints, matSrc);
imshow("gray", matSrc);
waitKey(0);
return 0;
}
图像可以用自己的进行测试,至此cmake全部结束了。