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的更多相关文章

  1. OpenCV3.42+VS2017配置+模块计算机类型“X86”与目标计算机类型“x64”冲突”的问题解决

    目录 OpenCV3.42+VS2017配置 Visual Studio 2017 第三方依赖设置,附加依赖项和附加库目录 "fatal error LNK1112: 模块计算机类型&quo ...

  2. VS2017配置opencv-4.2.0详细步骤

    VS2017配置opencv-4.2.0详细步骤   1.下载opencv的安装包并解压.下载网址https://sourceforge.net/projects/opencvlibrary/ 图1 ...

  3. 配置OpenCV产生flann\logger.h(66): error C4996: 'fopen': This function or variable may be unsafe问题[zz]

    使用vs2012/2013配置opencv编译出现问题: 1>------ 已启动生成: 项目: Win32ForOpenCV245, 配置: Debug Win32 ------ 1> ...

  4. 使用属性表:VS2013上配置OpenCV

    以前,windows下配置OpenCV一直不太方便:总是要手动添加lib,添加include,还要配置PATH使得程序运行时候能找到dll文件. 每次新建一个使用OpenCV的工程都要手动添加,很麻烦 ...

  5. vs配置opencv

    配置OpenCv: 一.新建工程 无论是mfc还是控制台程序都可以. 二.下载opencb,安装在非空格路径下面 解压出来有两个文件夹:build和source,主要用到build,build-x86 ...

  6. 在VS2010下配置OpenCV 2.3

    一.下载OpenCV 2.3:       http://www.opencv.org.cn/download/OpenCV-2.3.0-win-superpack.exe   二.解压 将下载的Op ...

  7. VS2010 配置opencv环境

    大家在使用opencv的时候肯定会面对这样一个问题:根据官网以及大多数教程提供的方法中,似乎每一次新建一个opencv的新项目以后都需要重新再配置"VC++目录"中的"包 ...

  8. OpenCV2学习笔记03:Qt中配置OpenCV环境

    在Qt中开发基于OpenCV的应用时,需要配置对应函数库到环境变量,这时候我们需要使用到qmake能够识别的变量来指定环境变量. INCLUDEPATH: 用于指定搜索头文件到文件夹路径. LIBS: ...

  9. vs2012配置opencv及简单测试

    为visual studio2012搭建openCV平台,实现打开图片. 实现步骤: 1.1.配置环境变量 基于win7操作系统的环境配置步骤: 1.1.1 计算机—>属性—>更改设置—& ...

  10. vs c++配置opencv(1)

    环境: vs2013 opencv2.4.13 准备工作: 1.安装opencv. opencv各版本间存在API差异,opencv提供相应版本的vc文件,在其安装目录 ..opencv\build\ ...

随机推荐

  1. 基于Python的爬虫案例

    案例1:使用爬虫爬取京东华为手机用户评论 本案例借鉴哔哩哔哩博客主视频教程,感谢其教程为我开启了爬虫之旅:https://www.bilibili.com/video/BV1Yt4y1Y7nt?t=3 ...

  2. TEC-6计算机组成原理实验(简图)

    TEC-6计算机组成原理实验

  3. javasec(一)java反射

    这篇文章介绍javasec基础知识--java反射. 0x01 反射是什么? 反射是一种机制,利用反射机制动态的实例化对象.读写属性.调用方法.构造函数. 在程序运行状态中,对于任意一个类或对象,都能 ...

  4. 文件上传漏洞靶场:upload-labs(附在线地址)

    重装系统:CentOS 7.6 密钥对验证,或密码验证,根据自身情况选择,博主这边为了ssh连接方便选用的密码校验. WindTerm登录系统 需提前去云服务器的安全组,开放22端口ssh连接. 更新 ...

  5. 我的第一个项目(十二) :分数和生命值的更新(后端增删查改的"改")

    好家伙,写后端,这多是一件美逝. 关于这个项目的代码前面的博客有写  我的第一个独立项目 - 随笔分类 - 养肥胖虎 - 博客园 (cnblogs.com) 现在,我们登陆进去了,我开始和敌人战斗,诶 ...

  6. Java 网络编程 —— Socket 详解

    构造 Socket 在[客户端/服务端]的通信模式中,客户端需要主动构造与服务器连接的 Socket,构造方法有以下几种重载形式: Socket() Socket(InetAddress addres ...

  7. QUIC在京东直播的应用与实践

    作者:京东零售 周凯 一. 前言与背景 国内的互联网直播技术从2005年前后兴起,彼时最具代表性的直播产品是由PPLive创始人姚欣在华中科技大学就读期间发起的校园直播项目PPLive.当时的直播技术 ...

  8. DevOps|AGI : 智能时代研发效能平台新引擎(上)

    AGI 的出现,给了我们一个新视角去审视我们做过的系统,尤其是研发效能平台.研发效能平台作为一个工具平台,本质就是提高公司整体产研的效率.AGI 的快速进步大家已经有目共睹,本文就是在项目协同,代码管 ...

  9. JavaWeb之day03js

    目录: 1.js的String对象(****) 2.js的Array对象 (****) 3.js的Date对象 (****) * 获取当前的月 0-11,想要得到准确的月 +1 * 获取星期时候,星期 ...

  10. 2023-03-16:给定一个由 0 和 1 组成的数组 arr ,将数组分成 3 个非空的部分, 使得所有这些部分表示相同的二进制值。 如果可以做到,请返回任何 [i, j],其中 i+1 < j

    2023-03-16:给定一个由 0 和 1 组成的数组 arr ,将数组分成 3 个非空的部分, 使得所有这些部分表示相同的二进制值. 如果可以做到,请返回任何 [i, j],其中 i+1 < ...