step1 准备必要环境

注意:以下软件的安装路径中不要有中文或空格!(尤其是mingw32)

  1. 安装cmake(不要安装最新的CMake,最好差3个版本以下)
    添加到环境变量:
    添加到系统环境变量
    默认安装环境:
    默认安装路径

  2. 安装mingw32:在mingw32下载处下载x86_64-posix-seh版本;
    将bin文件夹路径添加至环境变量,cmd中输入g++ --version查看是否成功

  3. 安装python3:

    1
    2
    3
    #pip install boost(3.10.5出错)
    pip install cmake
    pip install dlib
  4. 安装visual studio

step2 下载opencv

下载地址:
opencv 下载sources;
contrib

  1. 将contrib文件夹移动到opencv文件夹下
  2. 在opencv文件夹中新建build文件夹

step3 第一次编译

  1. 注意网络问题(只可意会不可言传)
  2. 打开cmake gui
    • where is the sources code:填写opencv路径
    • where to build the binarise:填写自己创建的build的地址
  3. 按钮:configure->在弹出的窗口中选择mingw makefiles->use default native compilers

step4 第二次编译

  1. add entry->name:ENABLE_CXX11; type:BOOL; value:打上对勾
  2. OPENCV_ENABLE_ALLOCATOR_STATS 取消对勾
  3. OPENCV_EXTRA_MODULES_PATH:填写contrib/modules的路径
  4. modules/videoio/src/cap_dshow.cpp中,

    1
    2
    3
    #define NO_DSHOW_STRSAFE
    #if defined _WIN32 && define HAVE_DSHOW
    #include "cap_dshow.hpp"
  5. 按钮:configure + generate

step5 进入build文件夹

1
2
3
4
cmd
>> cd build文件夹路径
>> mingw32-make
>> mingw32-make install

step6 将编译好的opencv添加进环境变量

  1. name:OpenCV_DIR

    value:build文件夹下的install文件夹的路径

  2. path 新建:%OpenCV_DIR%\x64\mingw\bin

step7 在clion中测试

cmake文件

1
2
3
4
5
6
7
cmake_minimum_required(VERSION 3.17)
project(1_demo)
set(CMAKE_CXX_STANDARD 11)
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(main main.cpp)
target_link_libraries(main ${OpenCV_LIBS})

cpp文件

1
2
3
4
5
6
7
#include "opencv2/opencv.hpp"
using namespace cv;
int main() {
Mat img = imread("1.jpg"); //绝对路径
imshow("1", img);
waitKey(0);
}