VS2017配置OpenCV
VS2017配置OpenCV
0 OpenCV介绍
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它提供了丰富的图像处理和计算机视觉算法,可用于处理图像和视频数据。OpenCV 提供了C语言版本,使开发者可以使用C语言来调用OpenCV提供的功能。
OpenCV 可以用来进行多种图像处理和计算机视觉任务,包括但不限于以下方面:
图像处理:OpenCV 支持图像的读取、保存、复制、剪裁、缩放、旋转、反转等基本操作。
图像滤波:可以应用各种滤波器对图像进行平滑处理、边缘增强、锐化等。
特征检测与描述:可以检测图像中的关键点,计算特征描述子,用于图像匹配和物体识别。
目标检测:可以进行目标检测和目标跟踪,如人脸检测、物体检测等。
视觉特效:可以实现各种视觉特效,如色彩转换、图像融合、图像修复等。
摄像头与视频处理:可以获取摄像头数据,进行实时图像处理和视频处理。
机器学习:OpenCV 提供了一些基本的机器学习算法,如支持向量机(SVM)、k近邻(k-NN)等。
1 下载OpenCV
OpenCV Release版本下载地址为https://opencv.org/releases/,提供了如下环境可选

本次安装以OpenCV3.4.2版本为例,下载地址为Download opencv-3.4.2-vc14_vc15.exe (OpenCV) (sourceforge.net)。在下载完成后,开始安装。
2 安装OpenCV
安装过程没什么需要注意的,选择路径,下一步即可。

3 配置OpenCV
打开VS2017,新建工程,在属性中修改配置,
(1)修改包含目录
为如下三个:
D:\Software\opencv\build\include
D:\Software\opencv\build\include\opencv
D:\Software\opencv\build\include\opencv2

(2)修改库目录
库目录中加入
D:\Software\opencv\build\x64\vc14\lib

(3)添加附加依赖项
附加依赖项中加入opencv_world341d.lib和opencv_world341.lib。带d为debug,不带d为release。

(4)将动态链接库拷贝至工程文件
D:\Software\opencv\build\x64\vc14\bin路径下有两个dll文件,将其copy至VS工程文件夹中,否则会报错缺少dll文件。

(5)测试代码
测试代码是利用OpenCV实现了对一个随机的8×8二维数组,利用3×3的卷积核进行滤波的操作。
#include <iostream>
#include <opencv2/opencv.hpp>
int main() {
// 生成随机的8x8二值图
cv::Mat img(8, 8, CV_8UC1);
cv::randu(img, 0, 2); // 随机生成0或1的值
// 定义3x3全1的卷积核
cv::Mat kernel(3, 3, CV_32FC1, cv::Scalar(1.0));
// 执行卷积操作
cv::Mat result;
cv::filter2D(img, result, CV_8UC1, kernel);
// 将结果转换为二维数组并打印
int rows = result.rows;
int cols = result.cols;
std::vector<std::vector<int>> resultArray(rows, std::vector<int>(cols));
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
resultArray[i][j] = result.at<uchar>(i, j);
std::cout << resultArray[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}
运行后打印结果,则表示配置成功!

VS2017配置OpenCV的更多相关文章
- OpenCV3.42+VS2017配置+模块计算机类型“X86”与目标计算机类型“x64”冲突”的问题解决
目录 OpenCV3.42+VS2017配置 Visual Studio 2017 第三方依赖设置,附加依赖项和附加库目录 "fatal error LNK1112: 模块计算机类型&quo ...
- VS2017配置opencv-4.2.0详细步骤
VS2017配置opencv-4.2.0详细步骤 1.下载opencv的安装包并解压.下载网址https://sourceforge.net/projects/opencvlibrary/ 图1 ...
- 配置OpenCV产生flann\logger.h(66): error C4996: 'fopen': This function or variable may be unsafe问题[zz]
使用vs2012/2013配置opencv编译出现问题: 1>------ 已启动生成: 项目: Win32ForOpenCV245, 配置: Debug Win32 ------ 1> ...
- 使用属性表:VS2013上配置OpenCV
以前,windows下配置OpenCV一直不太方便:总是要手动添加lib,添加include,还要配置PATH使得程序运行时候能找到dll文件. 每次新建一个使用OpenCV的工程都要手动添加,很麻烦 ...
- vs配置opencv
配置OpenCv: 一.新建工程 无论是mfc还是控制台程序都可以. 二.下载opencb,安装在非空格路径下面 解压出来有两个文件夹:build和source,主要用到build,build-x86 ...
- 在VS2010下配置OpenCV 2.3
一.下载OpenCV 2.3: http://www.opencv.org.cn/download/OpenCV-2.3.0-win-superpack.exe 二.解压 将下载的Op ...
- VS2010 配置opencv环境
大家在使用opencv的时候肯定会面对这样一个问题:根据官网以及大多数教程提供的方法中,似乎每一次新建一个opencv的新项目以后都需要重新再配置"VC++目录"中的"包 ...
- OpenCV2学习笔记03:Qt中配置OpenCV环境
在Qt中开发基于OpenCV的应用时,需要配置对应函数库到环境变量,这时候我们需要使用到qmake能够识别的变量来指定环境变量. INCLUDEPATH: 用于指定搜索头文件到文件夹路径. LIBS: ...
- vs2012配置opencv及简单测试
为visual studio2012搭建openCV平台,实现打开图片. 实现步骤: 1.1.配置环境变量 基于win7操作系统的环境配置步骤: 1.1.1 计算机—>属性—>更改设置—& ...
- vs c++配置opencv(1)
环境: vs2013 opencv2.4.13 准备工作: 1.安装opencv. opencv各版本间存在API差异,opencv提供相应版本的vc文件,在其安装目录 ..opencv\build\ ...
随机推荐
- Docker 配置阿里云或腾讯云镜像加速
1.新建 /etc/docker/daemon.json 文件,并写入以下内容: 阿里云按下面配置 sudo tee /etc/docker/daemon.json <<-'EOF' { ...
- 龙芯(Loongarch64),在Linux虚拟一个龙芯OS体验下
前言 想体验下龙芯OS,但是又没有龙芯开发板或者龙芯实体机.手头上只有一个X64环境的Linux发行版,应该怎么做呢? 概括 其实非常简单,可以通过Chroot命令和Qemu在X64的指令集系统上模拟 ...
- 【介绍】C++五种迭代器
目录 1. 输入迭代器(Input Iterator): 2. 输出迭代器(Output Iterator): 3. 前向迭代器(Forward Iterator): 4. 双向迭代器(Bidirec ...
- C# 禁用窗口激活
如果界面点击时,不想让窗口激活,可以按如下操作: 1 public MainWindow() 2 { 3 InitializeComponent(); 4 SourceInitialized += O ...
- Python网络爬虫原理及实践
作者:京东物流 田禹 1 网络爬虫 网络爬虫:是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本. 网络爬虫相关技术和框架繁多,针对场景的不同可以选择不同的网络爬虫技术. 2 Scrapy框架( ...
- MySQL对时间戳的格式化
时间转时间戳 select unix_timestamp('2022-02-22 22:22:22'); 时间戳转时间 select from_unixtime(1645539742); 格式化 SE ...
- 音视频八股文(6)-- ffmpeg大体介绍和内存模型
播放器框架 常用音视频术语 • 容器/文件(Conainer/File):即特定格式的多媒体文件, 比如mp4.flv.mkv等. • 媒体流(Stream):表示时间轴上的一段连续数据,如一 段声音 ...
- 2023-02-12:给定正数N,表示用户数量,用户编号从0~N-1, 给定正数M,表示实验数量,实验编号从0~M-1, 给定长度为N的二维数组A, A[i] = { a, b, c }表示,用户i报
2023-02-12:给定正数N,表示用户数量,用户编号从0~N-1, 给定正数M,表示实验数量,实验编号从0~M-1, 给定长度为N的二维数组A, A[i] = { a, b, c }表示,用户i报 ...
- 2021-05-07:给定一个数组arr,你可以在每个数字之前决定+或者-,但是必须所有数字都参与 ,再给定一个数target,请问最后算出target的方法数是多少?
2021-05-07:给定一个数组arr,你可以在每个数字之前决定+或者-,但是必须所有数字都参与 ,再给定一个数target,请问最后算出target的方法数是多少? 福大大 答案2021-05-0 ...
- 2021-10-03:合并两个有序数组。非递减数组nums1和nums2。合并这两个数组并放在nums1中。力扣88。
2021-10-03:合并两个有序数组.非递减数组nums1和nums2.合并这两个数组并放在nums1中.力扣88. 福大大 答案2021-10-03: 从右往左遍历nums1和nums2,谁大拷贝 ...