win10配置基于c++的opencv环境

一、前期准备:MinGW-w64、CMake

  • 参考博客:https://www.cnblogs.com/kensporger/p/12320622.html#Cmhf5DSa

二、源代码下载+编译+安装

  • 参考博客:https://www.cnblogs.com/kensporger/p/12320622.html#Cmhf5DSa
  • 参考博客:https://zhuanlan.zhihu.com/p/52219962
  • 由于编译很麻烦,可以直接使用别人编译好的版本。缺点是定制性差,不能体会到编译的乐趣,且版本较落后。

三、添加环境变量

  • 把 Mingw-w64和Opencv的bin文件夹添加到环境变量。示例:C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin和C:\OpenCV-MinGW-Build\x64\mingw\bin

四、VSCode编译环境配置

  • 参考资料

  • 这里附上我的配置

    c_cpp_properties.json

    {
        "configurations": [
            {
                "name": "win",
                "includePath": [
                    "${workspaceFolder}/**",
                    "D:\\opencv\\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\\include",
                    "D:\\opencv\\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\\include\\opencv2"
                ],
                "defines": [],
                "compilerPath": "D:/mingw64/bin/g++.exe",
                "cStandard": "c11",
                "cppStandard": "c++17",
                "intelliSenseMode": "clang-x64"
            }
        ],
        "version": 4
    }
    
    

    launch.json

    {
    
        "version": "0.2.0",
        "configurations": [
            {
                "name": "opencv4.1.1 debuge",
                "type": "cppdbg",
                "request": "launch",
                "program": "${workspaceFolder}\\${fileBasenameNoExtension}.exe",
                "args": [],
                "stopAtEntry": true,
                "cwd": "${workspaceFolder}",
                "environment": [],
                "externalConsole": true,
                "MIMode": "gdb",
                "miDebuggerPath": "D:\\mingw64\\bin\\gdb.exe",
                "setupCommands": [
                    {
                        "description": "为 gdb 启用整齐打印",
                        "text": "-enable-pretty-printing",
                        "ignoreFailures": false
                    }
                ],
                "preLaunchTask": "opencv4.1.1 compile task"
            }
        ]
    }
    
    

    tasks.json

    {
        "version": "2.0.0",
        "tasks": [
            {
                "type": "shell",
                "label": "opencv4.1.1 compile task",
                "command": "D:/mingw64/bin/g++.exe",
                "args": [
                    "-g",
                    "${file}",
                    "-o",
                    "${workspaceFolder}\\${fileBasenameNoExtension}.exe",
                    "-I",
                    "D:/opencv/OpenCV-MinGW-Build-OpenCV-4.1.1-x64/include",
                    "-L",
                    "D:/opencv/OpenCV-MinGW-Build-OpenCV-4.1.1-x64/x64/mingw/bin",
                    "-l",
                    "libopencv_calib3d411",
                    "-l",
                    "libopencv_core411",
                    "-l",
                    "libopencv_dnn411",
                    "-l",
                    "libopencv_features2d411",
                    "-l",
                    "libopencv_flann411",
                    "-l",
                    "libopencv_highgui411",
                    "-l",
                    "libopencv_imgcodecs411",
                    "-l",
                    "libopencv_imgproc411",
                    "-l",
                    "libopencv_ml411",
                    "-l",
                    "libopencv_objdetect411",
                    "-l",
                    "libopencv_photo411",
                    "-l",
                    "libopencv_stitching411",
                    "-l",
                    "libopencv_video411",
                    "-l",
                    "libopencv_videoio411",
                ],
                "options": {
                    "cwd": "D:/mingw64/bin"
                },
                "problemMatcher": [
                    "$gcc"
                ],
                "group": {
                    "kind": "build",
                    "isDefault": true
                }
            }
        ]
    }
    
    

五、注意事项

  • anaconda和opencv存在一定的兼容性问题。当激活anaconda虚拟环境时,终端无法运行编译好的基于c++opencv的exe程序,会出现“无法定位程序输入点于动态链接库”。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值