VS2019配置opencv详细图文教程和测试代码的实现

 更新时间:2020年04月16日 10:14:13   作者:木芽笔记  
这篇文章主要介绍了VS2019配置opencv详细图文教程和测试代码的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

摘要:

vs2019新鲜出炉,配置opencv又有哪些不一样呢,这个教程将会一步一步的教你如何配置opencv和跑动opencv一个简单的项目。

环境:

系统:win10系统截至20190523版本

opencv版本:3.4.1版本

IDE:宇宙最强IDEA最新版本2019社区版

教程:

1、下载opencv安装包,由于4.0.1版本会出现不同的错误,我们将使用3.4.1版本。官网下载链接:https://opencv.org/releases.html#。

2、下载完opencv安装包后,双击开始安装,选择安装目录,因为opencv会自己解压一个opencv文件夹,所以我们可以直接选一个合适目录即可,我在选择的是D:\Path(需要记住后面还要使用),选择后点击Extract

3、静待解压结束

4、解压结束后,鼠标右键此电脑,打开属性,打开高级系统设置,选择环境变量,找到系统变量中的path变量,双击它,点击新建,将你解压的opencv文件夹中的D:\Path\Opencv\build\x64\vc15\bin路径添加到当中,然后一路确认即可。

5、找到解压文件夹,我们选择v15->bin文件夹,找到三个文件。

6、将bin目录下面的opencv_world341.dll和opencv_world341d.dll文件复制到C:\Windows\SysWOW64这个文件夹里面即可,将bin目录里面的opencv_ffmpeg341_64.dll复制到C:\Windows\System32这个文件夹里面。

7、我们打开vs2019,然后新建空项目,菜单栏->视图->其他窗口->属性管理器,找到Debug|X64,如图:

8、鼠标右键Debug|X64,然后选择属性,VC++目录->常规->包含目录,添加三个路径:D:\Path\Opencv\build\include\,D:\Path\Opencv\build\include\opencv,和D:\Path\Opencv\build\include\opencv2,如图操作,确认。

9、VC++目录->常规->库目录中加入D:\Path\Opencv\build\x64\vc15\lib(以自己的安装目录为主)

10、链接器->输入->附加依赖项中加入opencv_world341d.lib,opencv_world341.lib,确认。

测试:

新建cpp文件(解决方案管理器,选择源文件,右键新建),贴图代码:

#include "cv.h"
#include "highgui.h"
int main(int argc, char** argv)
{
  IplImage * pImg; //声明IplImage指针 
  if ((pImg = cvLoadImage("img.JPG", 1)) != 0)
  {
    cvNamedWindow("Image", 1); //创建窗口 
    cvShowImage("Image", pImg); //显示图像 
    cvWaitKey(0); //等待按键 
    cvDestroyWindow("Image"); //销毁窗口 
    cvReleaseImage(&pImg); //释放图像,注意pImg前面一定要加& 
    return 0;
  }
  return -1;
}

选择DebugX64运行调试,得出结果。

注意事项

综合几个问题

我使用的是341版本,用其他的不保证能运行,曾经401版本的就配置不了
第十步很多小伙伴都是复制我那两个文件名,没仔细看图片,要以自己的文件名为主。
麻烦看清楚bin和lib文件的区别(后面几步)
配置完系统环境重启电脑一下。
新建cpp文件到右侧的解决方案管理器,选择源文件右键新建

到此这篇关于VS2019配置opencv详细图文教程和测试代码的实现的文章就介绍到这了,更多相关VS2019配置opencv内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C语言对结构体数组按照某项规则进行排序的实现过程探究

    C语言对结构体数组按照某项规则进行排序的实现过程探究

    这篇文章主要介绍了C语言对结构体数组按照某项规则进行排序的实现过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-02-02
  • C++实现LeetCode(22.生成括号)

    C++实现LeetCode(22.生成括号)

    这篇文章主要介绍了C++实现LeetCode(22.生成括号),本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • Python与C++ 遍历文件夹下的所有图片实现代码

    Python与C++ 遍历文件夹下的所有图片实现代码

    这篇文章主要介绍了 Python与C++ 遍历文件夹下的所有图片实现代码的相关资料,需要的朋友可以参考下
    2017-06-06
  • 浅谈c++11线程的互斥量

    浅谈c++11线程的互斥量

    互斥量是个类对象,理解成一把锁(保护共享数据,其他想操作共享数据的线程必须等待解锁),互斥量使用要小心,保护数据不多也不少,少了则没达到保护效果,多了则影响效率。本文将介绍c++11线程的互斥量,感兴趣的同学,可以参考下。
    2021-06-06
  • C++如何采用Daemon进行后台程序的部署

    C++如何采用Daemon进行后台程序的部署

    这篇文章主要介绍了C++采用Daemon进行后台程序的部署,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • C++ 数据结构之对称矩阵及稀疏矩阵的压缩存储

    C++ 数据结构之对称矩阵及稀疏矩阵的压缩存储

    这篇文章主要介绍了C++ 数据结构之对称矩阵及稀疏矩阵的压缩存储的相关资料,这里实现稀疏矩阵和对称矩阵的压缩存储的实例,需要的朋友可以参考下
    2017-08-08
  • 使用C++制作简单的web服务器(续)

    使用C++制作简单的web服务器(续)

    本文承接上文《使用C++制作简单的web服务器》,把web服务器做的功能稍微强大些,主要增加的功能是从文件中读取网页并返回给客户端,而不是把网页代码写死在代码中,有需要的小伙伴来参考下吧。
    2015-03-03
  • C++单一职责原则示例代码浅析

    C++单一职责原则示例代码浅析

    我们在设计一个类时要学会发现职责,并把那些职责相互分离,其实要去判断是否应该分离出一个类来并不难,前面说过,一个类应该只有一个引起它变化的原因,如果你能想到其它的原因也能去改变这个类,那么这个类就具有多于1个的职责,就应该考虑类的职责分离
    2023-02-02
  • C语言求两个正整数的最大公约数示例代码

    C语言求两个正整数的最大公约数示例代码

    在C语言中求两个数的最大公约数是学习循环语句的非常经典的问题,下面这篇文章主要给大家介绍了关于C语言求两个正整数的最大公约数的相关资料,需要的朋友可以参考下
    2021-12-12
  • C语言实现哈夫曼树的方法

    C语言实现哈夫曼树的方法

    这篇文章主要为大家详细介绍了C语言实现哈夫曼树的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05

最新评论