VS2019下opencv4.1.2配置图文教程(永久配置)

yizhihongxing

下面我将为您详细讲解“VS2019下opencv4.1.2配置图文教程(永久配置)”。

简介

OpenCV是一个计算机视觉库,可以用于图像处理和计算机视觉任务。在Visual Studio环境下安装和配置OpenCV是一个常见的任务,由于环境的不同,存在很多种方法进行配置。本文将介绍使用VS2019在Windows操作系统下,利用最新版本的OpenCV(4.1.2)进行配置的详细过程。同时,为确保配置的结果是永久的,我们将介绍如何配置系统环境变量,并给出两个OpenCV的示例程序以供参考。

步骤

1. 下载OpenCV

首先需要下载OpenCV。建议直接到官方网站(https://opencv.org/releases/)下载。本教程基于OpenCV版本4.1.2,因此需要下载4.1.2版的OpenCV。

下载完成后,解压缩到某个目录下,例如"D:/OpenCV"。

2. 配置Visual Studio

使用VS2019新建项目(Win32 Console Application),并配置项目属性:

  1. 选择“项目”->“属性”;
  2. 在左侧菜单中选择“VC++目录”,然后选择“包含目录”;
  3. 添加“D:\OpenCV\build\include”(注:这里需要根据实际情况修改路径);
  4. 选择“库目录”项,添加“D:\OpenCV\build\x64\vc15\lib”(注:VC15是指VS2017和2019共享同一的C++编译器,因此需要选择vc15目录下的lib库);
  5. 在“链接器”->“输入”中,添加“opencv_world412d.lib;opencv_world412.lib;”(注:添加链接库时需要注意区分debug和release版本)。

3. 配置系统环境变量

为了确保OpenCV的配置结果是永久的,需要将OpenCV的dll文件路径添加到系统环境变量中。

在Windows搜索框中,搜索“环境变量”->“编辑系统环境变量”,选择“环境变量”。在下面的对话框中,进入系统变量,并找到名为“Path”的变量,将OpenCV的dll文件所在路径添加到该变量的最后面,多个路径之间使用分号隔开(例如:“D:\OpenCV\build\x64\vc15\bin;”)。添加完成后,需要重启VS2019以使配置生效。

4. 验证OpenCV的配置结果

建立一个用于测试OpenCV的简单程序:

#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main() 
{
    Mat testimage = imread("lena.jpg");
    if(testimage.empty())
    {
        cout << "Could not read lena.jpg" << endl;
        return -1;
    }
    imshow("lena.jpg", testimage);
    waitKey();
    return 0;
}

此处使用OpenCV来读取并显示lena.jpg文件。

5. 编译并运行程序

将代码保存为“test.cpp”,并编译。如果没有意外,应该会成功编译。在运行程序时,应该会弹出一个名为“lena.jpg”的窗口并显示lena的图像。

6. 验证OpenCV的配置结果(2)

再建立一个用于测试OpenCV的程序:

#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;
using namespace std;

int main() 
{
    VideoCapture cap(0);
    if(!cap.isOpened())
        return -1;

    Mat frame;
    while(true)
    {
        cap >> frame;
        if(frame.empty()) break;
        imshow("Webcam", frame);
        if(waitKey(30) >=0) break;
    }
    return 0;
}

此程序使用OpenCV来通过计算机摄像头读取并显示图像。

7. 编译并运行程序

将代码保存为“webcam.cpp”,并编译。如果没有意外,应该会成功编译。在运行程序时,应该会弹出一个预览计算机摄像机图像的窗口。如果没有连上摄像头,则会出现一条错误信息,并退出程序。

至此,在Windows下利用VS2019搭建OpenCV环境的过程就完成了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:VS2019下opencv4.1.2配置图文教程(永久配置) - Python技术站

(0)
上一篇 2023年5月24日
下一篇 2023年5月24日

相关文章

  • Dubbo 系列JDK SPI 原理解析

    Dubbo 系列JDK SPI 原理解析 什么是SPI SPI,全称为 Service Provider Interface,是Java提供的一套用来被第三方实现或者扩展的接口集合。简单来说,SPI就是一种动态加载机制。在SPI中,我们定义了一个接口,这个接口可以有多种实现方式,而这些实现方式,都是以文件的形式存在。当我们需要某一个接口的实现时,我们只要定义…

    人工智能概览 2023年5月25日
    00
  • Bootstrap框架建立树形菜单(Tree)的实例代码

    Bootstrap框架提供了用于创建平台可用的用户界面组件的组合工具。其中之一就是树形菜单(Tree)。通过使用Bootstrap,我们可以从头开始创建一个完整的树形菜单,并将其集成到我们的网站或应用程序中。 以下是建立树形菜单的步骤: 1. 引入Bootstrap库和jQuery库 在标签中引入Bootstrap库和jQuery库。 <head&gt…

    人工智能概论 2023年5月25日
    00
  • SpringCloud整合分布式服务跟踪zipkin的实现

    下面我将详细讲解一下SpringCloud整合分布式服务跟踪Zipkin的实现。 什么是分布式服务跟踪 分布式服务架构中的各个服务之间相互调用,如果一个服务出现了问题,需要排查问题,就需要知道服务之间的调用情况,了解数据流转的过程,这时候就需要用到分布式服务跟踪。分布式服务跟踪可以记录服务调用的起始和结束时间,统计调用时间、请求成功率、失败率、调用异常等指标…

    人工智能概览 2023年5月25日
    00
  • Django实现自定义404,500页面教程

    关于Django实现自定义404,500页面的攻略,包含以下几个步骤: 第一步:创建自定义404、500模板文件 在Django项目中,可以自定义404和500的提示页面。首先需要在项目的templates目录下创建404.html和500.html两个文件,用于自定义提示页面的内容。 <!– templates/404.html –> &l…

    人工智能概论 2023年5月25日
    00
  • python生成指定尺寸缩略图的示例

    首先我们需要明确缩略图是指缩小的图片,常用于网页中加载速度的优化。那么在Python中如何生成指定尺寸的缩略图呢? 在Python中,可以使用PIL(Python Imaging Library)库来进行图片处理。我们可以通过安装Pillow来安装PIL,Pillow是PIL的fork版本,功能更加强大且开发活跃。 安装Pillow可以使用pip insta…

    人工智能概论 2023年5月25日
    00
  • python Pandas库read_excel()参数实例详解

    Python Pandas库read_excel()参数实例详解 1. read_excel()介绍 read_excel()是 pandas 库中读取 Excel 文件的函数。使用该函数,我们可以将 Excel 文件中的数据读取到 Pandas DataFrame 中。在使用 read_excel() 函数时,可以设置多个参数以满足不同的需求。 2. re…

    人工智能概论 2023年5月25日
    00
  • Node.js连接MongoDB数据库产生的问题

    连接MongoDB数据库是Node.js开发的重要环节之一。下面我们将详细讲解在连接MongoDB数据库时可能会出现的问题及其解决办法,供开发者参考。 问题一:安装MongoDB驱动 在使用Node.js连接MongoDB数据库前,需要先安装MongoDB的驱动模块。可以使用npm install mongodb命令进行安装。同时,还需注意模块版本与Mong…

    人工智能概论 2023年5月25日
    00
  • django中的*args 与 **kwargs使用介绍

    下面就是关于“django中的args 与 *kwargs使用介绍”的详细攻略: 1. args与*kwargs的用途 在Python中,args与kwargs都是用于接收可变数量的参数。args用于接收任意数量的非关键字参数,而**kwargs用于接收任意数量的关键字参数。在Django中,这两个参数常用于编写视图函数。 2. *args的使用 下面是一个…

    人工智能概论 2023年5月25日
    00
合作推广
合作推广
分享本页
返回顶部