1. 主页 > vs安装问题 > VS2019安装问题 >

VisualStudio2019安装配置OpenCV的C++环境

文章目录

文章目录

    • 文章目录
    • 前言
    • 环境
    • 引用
    • VS2019下载与安装
    • OpenCV下载与安装
      • 下载
      • 安装
    • 创建&配置C++项目
    • 测试

前言

自己近期在学习机器学习,想要动手做一个人脸识别项目,而OpenCV是一个非常不错的开源计算机视觉和机器学习库,里面包含很多人脸检测和识别算法,并且包含很多训练好的模型,实际实践起来相对简单,很适合现阶段的学习。OpenCV支持Python、C++、Java等多种语言,基于Python环境的搭建过程比较简单(Pycharm+Anaconda+OpenCV),本文主要记录VisualStudio下C++环境的搭建以及OpenCV相关的配置

环境

Windows10
Visual Studio 2019
OpenCV-4.3.0

引用

1.官网VS2019安装教程
2.创建C++控制台程序官网教程
3.visual studio 2019安装配置可编写c/c++语言的IDE环境
4.Visual Studio 与Visual C++ 有什么区别
5.VS2017+opencv4.2.0环境搭建详细步骤图解

VS2019下载与安装

  • VS官网免费下载Visual Studio 2019社区版
    Y6YFDx.md.png
  • 在VS2019 installer中勾选C++组件选项,也可以修改安装路径(本机C盘是SSD,使用了默认路径,以便打开速度更快)
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hR71B3dd-1589709451361)(/uploads/allimg/vssoft.net/2007/25/09fc1dc44dfa22a40aa21f496b2c3e94.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
  • 等待安装完毕

OpenCV下载与安装

下载

  • 官网下载OpenCV
    https://opencv.org/releases/

  • 选择当前最新版本的OpenCV-4.3.0,点击Windows
    [图片上传失败…(image-bb29f9-1589629891250)]

  • 页面跳转,自动下载opencv-4.3.0-vc14_vc15.exe程序
    YcSbqK.png

  • 注意:不同版本的OpenCV对应于不同版本的Visual C++,这里的vc14_vc15表示包含VC++14VC++15编译后的两个版本。之所以要注意这一点是因为不同的版本的Visual Studio中包含不同版本的Visual C++。关于这两者之间的关系,可以参考引用[4]

  • 部分Visual StudioVisual C++版本对应关系如下表:

    Visual Studio 版本 Visual C++ 版本
    VS 6.0 VC 6.0
    VS 2013 VC 12
    VS 2015 VC 14
    VS 2017 VC 15
    VS 2019 VC 16

安装

  • 打开下载的opencv-4.3.0-vc14_vc15.exe,选择安装路径,如D:\Program Files\
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5cKk7pc6-1589709451366)(/uploads/allimg/vssoft.net/2007/25/551c3cac41a25bdd8881be5b173000b6.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

  • 配置环境变量,将安装文件下的bin文件添加到系统变量Path中,例如添加D:\Program Files\OpenCV\build\x64\vc15\bin,根据自己的安装路径调整
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-seBBjuWw-1589709451367)(/uploads/allimg/vssoft.net/2007/25/2d8672ec7698579053a76b6cfe8cd9e1.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

  • 注意:选择vc15对应的文件夹

创建&配置C++项目

  • 打开VS2019,选择Create a new project
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UFDT12cL-1589709451369)(/uploads/allimg/vssoft.net/2007/25/67e775e145532f58001855aa82e09c4b.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

  • 选择Empty Project
    YcC5GQ.md.png

  • 填写项目名称和存放路径
    [图片上传失败…(image-643b74-1589629891250)]

  • 项目配置有两种方式:

    • 一种是只配置当前项目的设置
    • 一种是配置当前用户的设置
  • 以配置当前项目为例:

    • 右击Resource FilesAddNew Item创建main.cpp文件
      YcuBin.png

    • 编写简单的C++程序,并将编译平台设置为x64这是因为OpenCV4.3.0只支持x64
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PnvFZyTB-1589709451372)(/uploads/allimg/vssoft.net/2007/25/c0d2cd5bb2a7ca2eb1c5af9f7c546b29.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)],

    • 右击项目名OpenCVPropertiesVC++ Directories
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sEu0uMjG-1589709451372)(/uploads/allimg/vssoft.net/2007/25/49f1bb3826c12e22d84b63f6235c0a72.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

    • 配置头文件包含路径,编辑include Directories,将目录D:\Program Files\OpenCV\build\include和目录D:\Program Files\OpenCV\build\include\opencv2加入其中
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cCDIhIXd-1589709451373)(/uploads/allimg/vssoft.net/2007/25/52a6a1999de6a332c80bfda112298600.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

    • 配置库文件路径,编辑Library Directories,添加目录D:\Program Files\OpenCV\build\x64\vc15\lib
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PomTc4h4-1589709451374)(/uploads/allimg/vssoft.net/2007/25/88a73f3039f53aab39e1ff83e8e27939.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]

    • 配置链接器,回到OpenCV Property Pages页面,点击LinkerInput,选择右侧第一个附加依赖项Additional Dependencies,点击编辑
      [图片上传失败…(image-ed7c6e-1589629891250)]

    • 将文件夹D:\Program Files\OpenCV\build\x64\vc15\lib下的opencv_world430d.lib文件名加入其中(注意:不同OpenCV版本的这个库文件编号不同,具体依据自己实际下载情况
      Yc1h2n.png
      opencv_world430d.lib是Debug版本的文件库,填入即可
      Yc1cVS.png

    • 点击应用确认,重启VS2019

测试

  • 替换main.cpp内容为以下测试代码:
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

int main(int argc, char* argv[]) {
    const char* imagename = "****";//此处为你自己的图片路径

    //从文件中读入图像
    Mat img = imread(imagename, 1);

    //如果读入图像失败
    if (img.empty()) {
        fprintf(stderr, "Can not load image %s\n", imagename);
        return -1; 
    }
    //显示图像
    imshow("image", img);

    //此函数等待按键,按键盘任意键就返回
    waitKey();
    return 0;
}
  • 点击Buildbuild solution或则Ctrl+Shift+S,观察编译输出的信息,没有问题选择DebugStart Debuging或者F5,观察运行结果
    YcYb9g.png

  • 如果出现以上界面,说明配置成功(示例代码没有提供照片路径,需要自己添加)

本文由VS软件圈(vssoft.net)发布,不代表VS软件圈立场,转载联系作者并注明出处:https://vssoft.net/vsazwt/VS2019anzhuangwenti/2020/0725/4634.html

联系我们

在线咨询:点击这里给我发消息

微信号:PREEE8

工作日:9:30-18:30,节假日休息