windows系统安装opencv2.4.12及bug解决
创始人
2024-03-27 08:35:44
0

目录

    • 前言
    • 一、opencv2.4.12安装
    • 二、BUG修复
    • 1、问题解决:找不到MSVCR100.dll,无法继续执行代码
    • 2、问题解决:无法定位程序输入点******于动态链接库opencv_highgui2412.lib上

前言

最近在学习CUDA,对照cuda by example一书的例子对照实验,后面的代码基本都需要opencv,所以这里记录安装方法以及相关的一些错误解决。

一、opencv2.4.12安装

1、下载opencv2
下载地址
下载后找一个安装软件的位置解压,解压后内部文件应该是这样,注意查看build文件夹内是否有文件,如果没有那就是个破损的包,需要重新下载。
在这里插入图片描述
2、配置环境变量
在path中加入解压的opencv路径D:\software\opencv-2.4.12\opencv\build\x64\vc12\bin,这是我的路径,根据自己的安装目录找到bin文件夹加进去即可。
在这里插入图片描述
3、配置visual stdio环境下相关库目录
打开Visual Studio,新建一个项目。(下面的目录都是根据自己的路径找到加入)
右键项目—>属性—>VC++目录—>包含目录—>编辑
分别加入路径:

D:\software\opencv-2.4.12\opencv\build\include
D:\software\opencv-2.4.12\opencv\build\include\opencv
D:\software\opencv-2.4.12\opencv\build\include\opencv2

在这里插入图片描述
继续在,VC++目录—>库目录—>编辑,加入路径:

D:\software\opencv-2.4.12\opencv\build\x64\vc11\lib

在这里插入图片描述
继续在链接器—>输入—>附加依赖项—>编辑——>添加你的库文件名
关于opencv的lib文件名在下面给出,可能有出入,在执行程序遇到缺少的再加进去就好:

opencv_calib3d2412d.lib
opencv_contrib2412d.lib
opencv_core2412d.lib
opencv_features2d2412d.lib
opencv_flann2412d.lib
opencv_gpu2412d.lib
opencv_imgproc2412d.lib
opencv_legacy2412d.lib
opencv_ml2412d.lib
opencv_nonfree2412d.lib
opencv_objdetect2412d.lib
opencv_ocl2412d.lib
opencv_photo2412d.lib
opencv_stitching2412d.lib
opencv_superres2412d.lib
opencv_ts2412d.lib
opencv_video2412d.lib
opencv_videostab2412d.lib
opencv_highgui2412d.lib

文件名中的2412是你的opencv的版本,假如我下载的的opencv2.4.12,所以加入的文件名中就是2412,对照自己的版本改好就行。
到这里所有的配置就都结束了,可以找个程序试验一下了,随便什么用到opencv的程序都可以。我这边用的是cuda by example书中chapter7 传热模型的例子。

二、BUG修复

1、问题解决:找不到MSVCR100.dll,无法继续执行代码

执行程序后,报错:
由于找不到MSVCR100.dll,无法继续执行代码。重新安装程序可能会解决此问题。
在这里插入图片描述
在电脑中搜索了一下,确实没有这个文件,于是网上搜了一个下载,在这里一个可以搜大部分缺少的dll文件的网页,打开后的网页金山毒霸,不要害怕,在搜索框中找到自己要的文件,选择手动安装就可以了,选择自动安装就会掉进安装金山毒霸的陷阱。
PS:里边的文件名都是小写,这个无所谓,是那个文件就行。
在这里插入图片描述
把下载后的文件放进C:\Windows\System32中即可。
紧接着继续执行程序,发现又缺少MSVCP100.dll这个文件,同样的方法,下载添加进去就好了。
再次执行程序就不会报错了。

2、问题解决:无法定位程序输入点******于动态链接库opencv_highgui2412.lib上

我还遇到了另一个问题,在添加完上面两个dll文件后,再次执行程序,发现报错:
无法定位程序输入点******于动态链接库opencv_highgui2412.lib上,
很奇怪,查到这个文件存在,而且导入目录都对,就是一直显示无法定位,网上搜索有一些解决办法也不管用,把我尝试过的办法都贴在这里:
方法1
方法2
最后发现是我下载的那两个dll文件可能不对或是破损的,总之,重新在我上面给出的那个链接里新下载了两个文件就成功了。
关于这个问题我在博客中发起了提问,有一位老师给出了一种比较好的解决思路,后面遇到问题如果其他办法都不管用了,可以试试:
链接
另外配置环境过多时,可以考虑重启软件或者电脑,以保证配置生效。

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...