VS配置OpenCV教程(超详细)

                                                          

目录

安装环境说明 

下载OpenCV

配置OpenCV开发环境 

属性表 

测试

可能存在的问题


安装环境说明 

操作系统:Windows10

OpenCV版本:OpenCV2和OpenCV3

VS版本:VS2015或者VS2017

 
下载OpenCV

OpenCV下载地址:http://opencv.org/或者直接搜OpenCV下载,找到对应的版本下载,应该是个压缩包,解压,可以看到两个文件夹:

 
配置OpenCV开发环境

1、添加环境变量:

电脑左上角找到“我的电脑”,点击鼠标右键,依次选择“属性”、“高级系统设置”、“环境变量”、“Path”。

 

双击“Path”进入到“编辑环境变量”页面,通过新建或者浏览的方式将opencv的“bin文件夹路径”添加到环境变量中,看看自己的电脑是64位还是32位,如果不知道vc14还是vc15可以看下面的VS版本和OpenCV中vc的对应关系表。

注意:添加完环境变量之后最好重启一下电脑,使环境变量生效,不重启的话有可能会出现环境变量未生效这种情况。如果环境变量未生效,那么就找不到OpenCV的dll文件,会报计算机丢失xxx.dll。

VS版本和OpenCV中vc的对应关系
VS2003VC7
VS2005VC8
VS2008VC9
VS2010VC10
VS2012VC11
VS2013VC12
VS2015VC14
VS2017VC15

 

 

2、添加OpenCV包含目录和库目录:

打开Visual Studio,新建一个C++项目,在Visual Studio左上角菜单栏,依次选择“视图”、“其他窗口”、“属性管理器”。找到自己对应的Debug和Release模式,比如说我目前想使用x64的Debug,我就选择第二项下的“Microsoft.Cpp.x64.user”。

右键选择“属性”,进入“Microsoft.Cpp.x64.user的属性页”,依次选择“通用属性”、“VC++目录”,开始添加“包含目录”、“库目录”。 

选择“包含目录”,进入“包含目录”页面,添加OpenCV包含目录路径:


     
     
  1. D:\OpenCV 342\opencv\build\include
  2. D:\OpenCV 342\opencv\build\include\opencv
  3. D:\OpenCV 342\opencv\build\include\opencv 2

 

选择“库目录”,进入“库目录”页面,添加库目录(lib文件夹)路径:

D:\OpenCV342\opencv\build\x64\vc14\lib
     
     

3、添加附加依赖项

添加附加依赖项就是添加所有的lib文件路径,这些lib文件都是在前面那个库目录里面保存的。由于OpenCV2和OpenCV3之间的不同,相应的附加依赖项也就不同。

依次选择“链接器”、“输入”、“附加依赖项”,进入“附加依赖项”页面,开始添加lib文件路径。

注意有两种lib文件,一种带d的是Debug模式,不带d的是Release模式,OpenCV版本不同,前面的序号也不同,需要做相应的修改,两种模式的lib最好不要放一起,否则有可能会导致其中一个模式出问题,Debug模式下使用namewindow函数创建窗口,运行代码会出现两幅图片。

OpenCV3:


     
     
  1. opencv_world342. lib
  2. opencv_world342d. lib

OpenCV2413的Debug版:


     
     
  1. opencv_contrib2413d.lib
  2. opencv_core2413d.lib
  3. opencv_features2d2413d.lib
  4. opencv_flann2413d.lib
  5. opencv_gpu2413d.lib
  6. opencv_highgui2413d.lib
  7. opencv_imgproc2413d.lib
  8. opencv_legacy2413d.lib
  9. opencv_ml2413d.lib
  10. opencv_nonfree2413d.lib
  11. opencv_objdetect2413d.lib
  12. opencv_ocl2413d.lib
  13. opencv_photo2413d.lib
  14. opencv_stitching2413d.lib
  15. opencv_superres2413d.lib
  16. opencv_ts2413d.lib
  17. opencv_video2413d.lib
  18. opencv_videostab2413d.lib

 OpenCV2413的Release版:


     
     
  1. opencv_contrib 2413.lib
  2. opencv_core 2413.lib
  3. opencv_features 2d 2413.lib
  4. opencv_flann 2413.lib
  5. opencv_gpu 2413.lib
  6. opencv_highgui 2413.lib
  7. opencv_imgproc 2413.lib
  8. opencv_legacy 2413.lib
  9. opencv_ml 2413.lib
  10. opencv_nonfree 2413.lib
  11. opencv_objdetect 2413.lib
  12. opencv_ocl 2413.lib
  13. opencv_photo 2413.lib
  14. opencv_stitching 2413.lib
  15. opencv_superres 2413.lib
  16. opencv_ts 2413.lib
  17. opencv_video 2413.lib
  18. opencv_videostab 2413.lib

到此,OpenCV就算是配置完了。

 

属性表 

为了方便使用,我们还可以通过添加属性表的方式,配置OpenCV的属性,属性表就是props文件。每次新建项目之后,只需要将属性表放到项目路径下,并添加到项目中就可以使用了,而不需要重复去配置OpenCV的属性。避免了重复去配置OpenCV的属性和切换编译模式得到麻烦,自行选择。

找到自己对应的Debug和Release模式,比如说我目前想使用x64的Debug,我就选择第二项,单击右键选择“添加新项目属性表”。

进入“添加新项”页面 ,修改属性表名称,我这里使用的是“vs2015_opencv342_x64_debug”,表明了当前使用的vs版本、OpenCV版本、系统位数、以及编译模式,修改完之后,点击“添加”按钮,vs2015_opencv342_x64_debug属性表就添加到属性管理器中了,。

属性表文件是保存在项目文件夹中的,下次要用的时候,直接复制、粘贴到新建的项目文件夹中去,并添加到项目属性管理器中就可以了,很方便。 

此时,双击“vs2015_opencv342_x64_debug” ,进入到“vs2015_opencv342_x64_debug属性页”,然后就跟前面配置过OpenCV属性的操作一模一样了,自己去看前面的教程,就不重复了。

配置完OpenCV属性之后,就可以开始使用OpenCV了。最好是把属性表保存在一个固定的路径中,方便复制、粘贴,使用在下一个项目中。添加属性表也很简单,先把属性表复制、粘贴到当前项目的项目文件夹中,然后打开“属性管理器”,找到对应的“模式”和“位数”,这里是“Debug|x64”,然后点击鼠标右键选择“添加现有属性表”,把复制、粘贴好的属性表文件添加进来就可以了。

 

测试

下面的代码是OpenCV最基础的,只用来显示图片,如果能显示,则安装成功,祝贺你从此开始成为OpenCV的一员。

注意:图片应和.cpp文件放在一块,或者使用路径名,路径要使用双斜杠//。

 

【测试代码】


    
    
  1. #include<opencv2/opencv.hpp>
  2. using namespace cv;
  3. int main()
  4. {
  5. Mat girl = imread( "girl.jpg"); //载入图像到Mat
  6. imshow( "【1】动漫图", girl); //显示名为 "【1】动漫图"的窗口  
  7. waitKey( 0);
  8. return 0;
  9. }

【显示结果】

 

可能存在的问题

问题1:计算机中丢失msvcp120.dll

出现这个问题,重新下载一下msvcp120.dll,然后添加到对应bin文件夹中,也就是上面添加的环境变量,这两个dll已上传到百度云,请自行下载。

百度网盘链接:https://pan.baidu.com/s/1CLnom87fShhl7wF4yAKggw 
提取码:28a7 

 

问题2:计算机中丢失opencv_highgui2413d.dll

出现这个问题,一般就是环境变量没有添加对(路径问题)或者添加完环境变量之后没有重启电脑使环境变量生效。

 

问题3:应用程序无法正常启动,如下图所示:

没有将bin文件路径添加到环境变量中,还需要重启。 

 

问题4:出现以下错误不支持接口,主要情况为:摄像头打不开或者等到“不支持接口”完了之后才能打开

这个问题,打开摄像头时,一直返回false,有时还提醒选择视频格式FFMPEG,可能是OpenCV被破坏了,可以使用另外一个版本的OpenCV来进行测试,我目前使用的opencv342,有可能坏了,我就用好的opencv2410来测试,发现摄像头可以打开,重新下一个opencv就好了,同时也可以使用DirectX来修复一下dll。


    
    
  1. VideoCapture cap(0);
  2. while (cap. isOpened())

 

问题5:“CAP_PROP_FRAME_COUNT”: 未声明的标识符 或者“CAP_PROP_FRAME_COUNT”: 不是“cv”的成员 

出现这种情况,可能是由于OpenCV版本导致的,OpenCV3可以这样写,但是OpenCV2就需要写成CV_CAP_PROP_FRAME_COUNT

 

问题6:弹出错误提示框“找不到mfc100”

去360下载微软常用运行库合集,一般360会自动弹出。

文章知识点与官方知识档案匹配,可进一步学习相关知识
OpenCV技能树首页概览 22801 人正在系统学习中
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
配置OpenCV在Visual Studio中,你可以按照以下步骤进行操作: 1. 首先,确保你已经下载了Visual Studio 2022和OpenCV 4.6.0,并且你的操作系统是64位的Windows 10。 2. 打开Visual Studio 2022,并创建一个新的项目。 3. 将OpenCV的属性表(props文件)添加到项目路径下,并将其添加到项目中。这样可以避免重复配置OpenCV的属性和切换编译模式的麻烦。\[2\] 4. 添加OpenCV的环境变量。你可以在系统环境变量中添加OpenCV的安装路径,确保环境变量生效。最好在添加完环境变量后重启电脑,以确保环境变量的生效。如果环境变量未生效,可能会导致找不到OpenCV的dll文件,从而报错计算机丢失xxx.dll的错误。\[3\] 这样,你就成功配置OpenCV在Visual Studio中。你可以开始使用OpenCV进行图像处理和计算机视觉的开发了。 #### 引用[.reference_title] - *1* [vs怎么配置OpenCV?2022vs配置OpenCV详解(多图)](https://blog.csdn.net/gu1857035894/article/details/125473159)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [VS配置OpenCV教程详细)](https://blog.csdn.net/mars_xiaolei/article/details/78759041)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值