VS2019中配置opencv4.3.0(亲测有效)
写在前面:之前一直使用vs2017+opencv的配置,现在体验vs2019+opencv 4.3.0的配置。由于之前的配置相隔很久,忘记很多东西,如今重新配置还是踩了很多坑,记录如下,希望对读者有帮助。
使用说明
PC是Win10家庭版
Visual Studio Community 2019
Opencv用的版本是4.3.0
文章目录
- 第一部分:Opencv部分
- 1.Opencv4.3.0下载
- 2.Opencv的环境变量
- 3.添加dll文件到System32中
- 第二部分:VS中的操作
- 1.新建项目并进入属性页
- 2.包含目录,库目录,附加依赖项的配置
- 1) release模式和平台x64
- 2)debug模式和x64平台
- 3.代码测试
- 4.问题汇总
第一部分:Opencv部分
1.Opencv4.3.0下载
官方下载地址:https://opencv.org/releases/
目前最新版本是4.3.0
这里选择windows
下载完压缩包名:opencv-4.3.0-vc14_vc15.exe
解压完文件名:opencv
2.Opencv的环境变量
【1】找到我的电脑图标(或者是此电脑),右击。选择属性。
【2】选择高级系统设置,找到环境变量。
【3】找到系统变量一栏,双击“path”
【4】点击新建。输入你的安装路径,需要到bin这个文件。
D:\opencv\build\x64\vc15\bin
下面为环境变量的添加。
3.添加dll文件到System32中
这个路径的来源如下图,当你一层层点击,直到bin这个文件打开,呈现的一般是类似于下图的样子。这个时候再复制路径到上面的环境变量的添加中。
在路径下找到3个应用程序扩展文件,分别为
opencv_videoio_ffmpeg430_64.dll
opencv_world430.dll
opencv_world430d.dll
将opencv_world430.dll、opencv_videoio_ffmpeg430_64.dll和opencv_world430d.dll复制到下面的目录
C:\Windows\System32
第二部分:VS中的操作
主要是配置包含目录和库目录,以及附加依赖项的添加。
1.新建项目并进入属性页
【1】新建一个空项目。
简单编辑项目名称(或者默认不变)
【2】进入项目属性页。在右侧解决方案一栏中点击刚才创建好的项目名,然后右击,选择属性。可以得到如下图的界面。
属性页如下图所示
2.包含目录,库目录,附加依赖项的配置
【动手前提醒】下面需要对包含目录和库目录进行设置,尽量不要选择这种所有配置、所有平台,这样在添加附加依赖项的时候会报错。
正确的做法请往下看。
正确的做法
对于debug和release模式进行分别配置
1) release模式和平台x64
包含目录下添加
D:\opencv\build\include
D:\opencv\build\include\opencv2
库目录添加:
需要自己安装的目录
D:\opencv\build\x64\vc15\lib
添加附加依赖项
链接器->输入->附加依赖项,点击右侧的下拉箭头进行编辑,添加:
opencv_world430.lib
可以在如下路径找到
D:\opencv\build\x64\vc15\lib
下图是错误的配置,这样配置会导致release可以正常运行而debug模式总是报错LNK1112 模块计算机类型“x64”与目标计算机类型“x86”冲突或者相反(有一种模式正常,一种模式报错)
正确的配置:
这里需要注意的是debug模式和release分别添加依赖项!!!!
debug模式dll文件中带有字母d
release模式dll文件中不含字母d
对于release模式,只填入一个opencv_world430.lib
对于debug模式只填入一个opencv_world430d.lib
2)debug模式和x64平台
需要选择配置:debug,平台:x64
其他步骤同上。
另外对于右上角配置管理器,需要选择平台X64,有时候报错是这一步没有设置。
3.代码测试
解决方案管理器中,选择源文件,右键添加,新建项
添加代码如下
#include <iostream>
#include<opencv2/opencv.hpp>
#include <opencv2/highgui/highgui.hpp>//Opencv highgui 模块头文件
#include<opencv2/imgproc/imgproc.hpp>//图像处理头文件
using namespace cv;int main(){//功能二:图像模糊Mat srcImage = imread("D:\\user\\下载\\计算机网络.jpg");//需要自己设置路径,注意使用\\imshow("均值滤波原始图",srcImage);Mat dstImage;blur(srcImage,dstImage,Size(7,7));imshow("均值滤波效果图",dstImage);waitKey(0);
}
选择下图所示
debug和x64或者relese和x64,点击本地windows调试器运行项目
测试结果
4.问题汇总
遇到问题【1】
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 LNK1112 模块计算机类型“x64”与目标计算机类型“x86”冲突 forOpenCV D:\user\文档\Visual Studio 2019\repos\forOpenCV\opencv_world430.lib(opencv_world430.dll) 1
这是因为附加依赖项两个dll文件同时添加到一个模式中,上文中提到过。解决办法是需要含有字母d的dll文件配置到dubug模式,不含有字母d的dll文件配置到release模式。
遇到问题【2】
在x64和release下遇到问题opencv_world430.dll
这个问题是由于没有把
opencv_videoio_ffmpeg430_64.dll
opencv_world430.dll
opencv_world430d.dll
三个dll文件复制到C:\Windows\System32目录下。
解决办法是将其复制到该目录下。
参考博客:
VS2017 + OpenCV3 永久配置,同时 解决 debug模式下不报错release模式报错 或 debug模式下不报错release模式报错 的问题
VS2019中配置opencv4.3.0(亲测有效)相关推荐
- 在VS2019中配置 OpenCV4.5.5教程
在VS2019中配置 OpenCV4教程 1 下载安装包 下载地址:Opencv官网 2 设置环境变量 在path中增加两条: 其实就是你opencv的安装路径. 3 新建VS项目 设置为模式为Deb ...
- Qt5.13.2中配置opencv4.5.0踩坑记录
目录 cmake编译opencv时速度过慢或超时 mingw32-make时报错 错误一 [modules\core\CMakeFiles\opencv_core.dir\build.make:1 ...
- VS2019中配置VTK8.2.0
说明 首先下载vtk源码,其次通过cmake编译生成VS中可以打开的.sln文件.再使用VS打开.sln文件,对vtk源码进行编译,生成库文件. 最终把库文件和一些源文件配置到VS中,即可使用VTK ...
- vs2019配置opencv4.6.0
点击链接 https://opencv.org/releases/ 找到 OpenCV4.6.0 Windows 版 下载完后双击打开安装程序(460是我自己创建的文件夹) 接着配置电脑环境变量,在搜 ...
- VScode配置C语言环境 亲测 可用!!!
VScode配置C语言环境 亲测 可用!!! 一.首先下载vscode,地址:https://code.visualstudio.com/ 此时我已经安装好了 二.对VSCode进行汉化安装插件Chi ...
- VM虚拟机Ubuntu配置静态ip,亲测有效
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 VM虚拟机Ubuntu配置静态ip,亲测有效 一.先设置一下本机的VMnet8的ip吧 二.首先设置NAT 三.设置虚拟网络编辑器 四 ...
- Win10+Python3+OpenCV+CUDA——在win中配置OpenCV4.5并与Python环境绑定
Win10+Python3+OpenCV+CUDA--在win中配置OpenCV4.5并与Python环境绑定 前言 安装Anaconda和基本库 下载对应版本的CUDA 配置方案1.通过下载预购建文 ...
- Android Studio 配置OpenCV4.4.0 不用安装OpenCV Manager (泪崩居然用了礼拜天2天的时间居然还没配置成功,今天又看了下配置成功了)
Android Studio 配置OpenCV4.4.0 ,说来惭愧居然用户礼拜天2天的时间呢,期间遇到的问题大致有4个问题 这里我也总结出了最后在列举出来,(可能是新版和之前旧版本不一样的问题按照网 ...
- Windows 10 下 Anaconda3 (Python 3.8) 配置 OpenCV-4.4.0
Anaconda3 配置 OpenCV-4.4.0 我的小站.Github Anaconda指的是一个开源的Python发行版本,其包含了conda.Python等180多个科学包及其依赖项. Ope ...
最新文章
- JAVA代码实现下载单个文件,和下载打包文件
- python多进程打印输出_python 多进程日志 logging
- Activity小技巧
- python mutilprocessing多进程编程
- FineUILearning
- python json序列化对象_Python学习之json序列化
- 图论 —— 网络流 —— 费用流 —— MCMF 算法
- 【Python】Python3.7.3 - 闭包Closure技术
- led投影仪能换大功率灯吗_LED大功率洗墙灯怎么防水
- 文件上传下载——sz和rz
- 安卓自定义Toast的原理及实现
- java 子网掩码 位数_java实现子网掩码转换为网络标识位 | 学步园
- X32汇编AAA,AAS,AAM,AAD,DAS,DAA
- 3.3:如何在Python中创建文件?
- Access to XMLHttpRequest at ‘http://localhost:8082/sockjs-node/info?t=1610442684722‘ from origin ‘ht
- 一个没有任何基础的人,怎样入门计算机,成为程序员?
- Keil软件中没有stc系列的芯片如何解决
- 单片机|自动宠物喂食器方案
- 想做APP 改版练习,这儿有高手的15个经验总结
- 服务器系统u盘如何安装win7系统,教你详细用u盘如何安装win7系统
热门文章
- 在 OpenGL ES 2.0 上实现视差贴图(Parallax Mapping)
- Android app被系统kill的场景
- DateTimePicker——开源的Android日历类库
- CodeForces 392C Yet Another Number Sequence 矩阵快速幂
- 移动前端html5 head 头标签
- PHP工厂模式的研究
- smtplib python教程_python使用smtplib模块发送邮件
- ie8不兼容java项目_[Java教程]ie8以下不兼容document.getElementsByName解决方法
- 1.6 语言模型和序列生成-深度学习第五课《序列模型》-Stanford吴恩达教授
- 第七章 正则化-机器学习老师板书-斯坦福吴恩达教授