目录

  • 视频教程带你一步一步操作
  • 配置过程
  • Step1:
  • Step2:
  • Step3:
  • Step4:
  • Step5:
  • 最后:
  • 附录:VS与VC对应版本
  • 测试代码
  • 报错大集合
  • 坑1:错误 C1010 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "pch.h"”
  • 解决方法:
  • 坑2:错误 LNK1104 无法打开文件“opencv_world453d.dll”
  • 坑3:0x000007FEFCC0A06D 处(位于 opencv_study.exe 中)有未经处理的异常: Microsoft C++ 异常: std::bad_alloc,位于内存位置 0x00000000002AD1F0 处。


视频教程带你一步一步操作

https://www.bilibili.com/video/BV12M4y1N7D2/

配置过程

Step1:

安装VS,安装openCV

Step2:

新建项目,新建项目属性表,debug|x64新建属性,命好名字

Step3:

VC++目录-包含目录中添加:
安装路径\opencv\build\include
安装路径\opencv\build\include\opencv
安装路径\opencv\build\include\opencv2
VC++目录-库目录添加:
安装路径\opencv\opencv3.4.15\build\x64\vc14\lib

Step4:

连接器-输入-附加依赖项
opencv_world3415d.lib(位于安装路径\opencv\opencv3.4.15\build\x64\vc14\lib)
注意VC版本,注意debug与release的区分。

Step5:

复制文件
安装目录下的\opencv\opencv3.4.15\build\x64\vc14\bin下的所有dll文件到C:\Windows\System32
opencv_world3415.dll、opencv_world3415d.dll、opencv_ffmpeg3415_64.dll等等

最后:

保存debug|x64模式的属性文件,复制出来一份,改名,添加到release|x64模式下,完毕!

附录:VS与VC对应版本

Visual Studio 6 : vc6
Visual Studio 2003 : vc7
Visual Studio 2005 : vc8
Visual Studio 2008 : vc9
Visual Studio 2010 : vc10
Visual Studio 2012 : vc11
Visual Studio 2013 : vc12
Visual Studio 2015 : vc14
Visual Studio 2017 : vc15

测试代码

#include "stdafx.h"
#include <iostream>  
#include <opencv2/core/core.hpp>  
#include <opencv2/highgui/highgui.hpp>  

using namespace cv;

int main()
{
	Mat img = imread("..\\aero1.jpg");
	namedWindow("图片");
	imshow("图片", img);
	waitKey(0);
	return 0;
}

报错大集合

  1. 错误 C1010 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include “pch.h””
  2. 错误 LNK1104 无法打开文件“opencv_world453d.dll”
  3. 0x000007FEFCC0A06D 处(位于 opencv_study.exe 中)有未经处理的异常: Microsoft C++ 异常: std::bad_alloc,位于内存位置 0x00000000002AD1F0 处。

坑1:错误 C1010 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include “pch.h””

所以我便在头文件中加入了#include “pch.h”,像这样

#include <iostream>
#include <opencv2/core/core.hpp>  
#include <opencv2/highgui/highgui.hpp>  
#include "pch.h"

C 怎么使用opencv_#include


C 怎么使用opencv_3d_02

此时运行还是报错,

error C2871: “cv”: 具有该名称的命名空间不存在

解决方法:

最后我手动调整了一下头文件的顺序,
把#include "pch.h"放在
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp> 的上边,运行就不报错了。

#include <iostream>
#include "pch.h"
#include <opencv2/core/core.hpp>  
#include <opencv2/highgui/highgui.hpp>

C 怎么使用opencv_Visual_03

坑2:错误 LNK1104 无法打开文件“opencv_world453d.dll”

附加依赖项中添加的应该是opencv_world453d.lib而不是opencv_world453d.dll

C 怎么使用opencv_#include_04

坑3:0x000007FEFCC0A06D 处(位于 opencv_study.exe 中)有未经处理的异常: Microsoft C++ 异常: std::bad_alloc,位于内存位置 0x00000000002AD1F0 处。

debug x64模式下附加依赖项不要添加release版本的lib,只添加带字母d结尾的dubug模式的lib文件opencv_world453d.lib

同理,release模式就不要添加带字母d结尾的lib文件

C 怎么使用opencv_C 怎么使用opencv_05