虽说网上有不少的教程,但按照步骤一步步执行到了最后,还是出现了问题。 对原理一窍不通,因此在此耗费了太多太多时间,所以决定把整个过程写下来,希望对你有所帮助。
后补: 才发现OpenCV官网上已经有详细的doc介绍。😦 这里附上doc文档。(更新于2020-07-02) 这是国内的网站,内容应该是机翻。 如何使用OpenCV在“Microsoft Visual Studio”中构建应用程序
官网地址:https://opencv.org/releases/ 随意选择版本,我选择的是此时最新的430版本。 (官网被墙,下载速度很慢。上有,但需要较高积分。有需要的可以滴滴我。) 后补: 我已经上传了资源,里面对应有Windows、iOS、Android、以及sources四个版本的,零积分下载。 OpenCV - 4.3.0 合集.zip
双击程序运行即可。 不过
一定要记住安装的位置! 一定要记住安装的位置! 一定要记住安装的位置!
选择好目录之后单击Extract(提取),等待完成,完成后自动关闭。
进入到文件夹是这样的。
环境变量:在操作系统中用来指定操作系统运行环境的参数。
这里用到的环境变量是PATH。 当要求操作系统运行一个程序,而没有告诉系统,程序所在位置的完整路径时,系统除了在当前目录下面寻找此程序外,还会到PATH中指定的路径去找。
简单点就是系统会在PATH的路径中,寻找需要执行的可执行文件(.exe)。
环境变量中包含两大类,一类是用户变量,另一类是系统变量。 用户变量设置的环境变量只针对当前用户,更换用户时设置会失效。 系统变量设置应用于整个操作系统中。 这里我们需要设置OpenCV库的路径到环境变量中。 路径如下 opencv\build\x64\vc15\bin
根据以上路径,进入到bin目录下。随后复制上方导航栏的地址。
接下来的操作
右击 – 文件资源管理器左侧此电脑单击 – 属性单击 – 高级系统设置单击 – 环境变量双击 – 下方系统变量中PATH一栏单击 – 右侧新建复制 – 刚刚的bin目录地址随后,一直点击确认即可。
库文件包含两种,一种是静态库,另一种是动态库即DLL(Dynamic Link Library)。
静态库在程序的链接阶段被复制到了程序中,即相当于把静态库中代码复制到程序中。 动态库在程序的链接阶段没有被复制到程序中,而是程序在运行时由系统动态加载到内存中供程序调用。
使用动态库的优点是系统只需载入一次动态库,不同的程序可以得到内存中相同的动态库的副本,节省内存。
根据路径opencv\build\x64\vc15\bin找到以下动态库文件。
opencv_world430.dll opencv_world430d.dll
其中最后三个数字是版本编号,430代表OpenCV – 4.3.0。不同版本编号略微不同。 带有d的动态库是debug版本。
将以上动态库复制到以下路径中 C:\Windows\SysWOW64
根据路径opencv\build\x64\vc15\bin找到以下动态库文件。 opencv_videoio_ffmpeg430_64.dll
将以上动态库复制到以下路径中 C:\Windows\System32
以下配置均是导入OpenCV库,与环境变量类似。
视图 -> 其他窗口 -> 属性管理器 选中属性管理器中 Debug | x64
右击 – Debug | x64选择 – 属性
添加以下路径 opencv\build\include\ opencv\build\include\opencv2
添加以下路径 opencv\build\x64\vc15\lib
附加依赖项 要看你自己的版本 debug模式 和 realse模式 debug 模式 对应 opencv_world430d.lib realse模式 对应 opencv_world430.lib
我选用的是debug模式 因此第一项就选着 opencv_world430d.lib
添加以下路径 opencv_world430d.lib opencv_world430.lib
到此所有配置完成,接下来就是新建项目进行测试。
测试时,请将上方Debug | x86 改为 Debug | x64。
测试结果正常。