详解VS2019+OpenCV-4-1-0+OpenCV-contrib-4-1-0

详解VS2019+OpenCV-4-1-0+OpenCV-contrib-4-1-0的完整攻略

本文章将详细讲解如何在VS2019中安装配置OpenCV-4-1-0以及OpenCV-contrib-4-1-0库,以及如何使用这两个库。

安装配置OpenCV-4-1-0和OpenCV-contrib-4-1-0

下载OpenCV-4-1-0和OpenCV-contrib-4-1-0

可以在OpenCV的官方网站上下载两个库的最新版本压缩包,下载链接: https://opencv.org/releases/

安装Visual Studio 2019

下载并安装Visual Studio 2019(Community, Professional或Enterprise皆可),记得勾选C++相关组件。

安装CMake

下载并安装CMake:https://cmake.org/download/

解压缩OpenCV-4-1-0和OpenCV-contrib-4-1-0

使用压缩软件解压下载的OpenCV-4-1-0和OpenCV-contrib-4-1-0的压缩包。

用CMake生成Visual Studio工程文件

选择解压缩后的OpenCV-4-1-0的文件夹作为source code地址,新建一个build文件夹作为编译结果的文件夹,使用CMake生成Visual Studio工程文件。在CMake-GUI界面中可以设置输入和输出地址。同时在编译选项中勾选OpenCV的contrib模块,这样就可以编译生成带有OpenCV-contrib-4-1-0的库了。

编译并设置环境变量

用Visual Studio打开刚刚生成的工程文件,选择"Release"模式进行编译,成功编译出OpenCV库文件后,需要设置环境变量。打开计算机属性 - 高级系统设置 - 环境变量,找到系统变量的Path,添加OpenCV.dll所在的文件夹路径。这样,就可以在VS中使用OpenCV了。

使用OpenCV-4-1-0和OpenCV-contrib-4-1-0

示例一

以下是一个简单的OpenCV程序,用于打开并显示一张图片。


#include <iostream>
#include <opencv2/opencv.hpp>

int main()
{
    cv::Mat img = cv::imread("test.jpg");
    cv::imshow("test", img);
    cv::waitKey(0);

    return 0;
}

以上代码使用了OpenCV的imread函数读取图片,imshow函数显示图片,waitKey函数等待程序接收到键盘事件,这样就可以看到图片窗口一直保持打开状态,直到按下键盘上任意键。

示例二

以下是一个使用OpenCV-contrib-4-1-0里的saliency模块程序,用于自动选取一张图片中最显著的区域。


#include <iostream>
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/saliency.hpp>

int main(int argc, char** argv)
{
    cv::Mat image = cv::imread("test2.jpg");
    cv::Ptr<cv::saliency::StaticSaliency> saliency_algorithm = cv::saliency::StaticSaliencySpectralResidual::create();

    cv::Mat binary_map;
    saliency_algorithm->computeSaliency(image, binary_map);

    cv::imshow("input", image);
    cv::imshow("binaryMap", binary_map);
    cv::waitKey();

    return 0;
}

以上代码使用了OpenCV-contrib-4-1-0里saliency模块的StaticSaliencySpectralResidual类函数,对输入的图像进行显著性检测,最终输出检测结果二值化图像。通过修改test2.jpg图片,在图片中加入显著区域,可以看到输出结果的显著区域更亮,表示是检测到了显著性区域。

总结

本文详细介绍了如何在VS2019中安装OpenCV-4-1-0和OpenCV-contrib-4-1-0库,并介绍了OpenCV常用函数的使用方法,同时还提供了两个示例程序作为参考。希望本文可以帮助读者更深入地了解OpenCV,对使用OpenCV的开发者具有指导意义。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解VS2019+OpenCV-4-1-0+OpenCV-contrib-4-1-0 - Python技术站

(0)
上一篇 2023年5月25日
下一篇 2023年5月25日

相关文章

  • Python中zipfile压缩文件模块的基本使用教程

    下面是关于“Python中zipfile压缩文件模块的基本使用教程”的完整攻略。 简介 zipfile是Python标准库中的压缩文件模块,可以进行ZIP文件的创建、读取和解压缩等操作。使用zipfile模块可以方便地处理ZIP压缩包。 基本使用方法 创建ZIP文件 创建ZIP文件的方法是调用zipfile.ZipFile()类,并传入要创建的ZIP文件名和…

    人工智能概览 2023年5月25日
    00
  • Openstack安装过程中遇到的问题汇总

    Openstack安装过程中遇到的问题汇总 在安装Openstack时,常常会遇到各种各样的问题。本文总结了常见的问题及解决方法,希望对使用Openstack的用户有所帮助。 环境准备 在安装Openstack之前,需要进行环境准备,包括安装操作系统、安装数据库、安装消息队列等。以下是环境准备的详细步骤: 安装操作系统 安装操作系统时,需要选择支持Opens…

    人工智能概览 2023年5月25日
    00
  • Spring Boot之搞定mongoTemplate的知识小结

    Spring Boot之搞定mongoTemplate的知识小结 什么是mongoTemplate mongoTemplate是Spring Data Mongo中的核心类之一,它提供了基本的CRUD操作,以及聚合等数据操作方式。mongoTemplate可以看作是对mongoDB进行操作的代理人,我们可以通过它进行数据的增删改查。 如何在Spring Bo…

    人工智能概论 2023年5月24日
    00
  • Java使用Tessdata做OCR图片文字识别的详细思路

    我来为你详细讲解Java使用Tessdata进行OCR图片文字识别的思路。 1. 安装Tesseract OCR引擎 首先要安装Tesseract OCR引擎。可以前往github上下载对应系统的安装包,也可以使用一些已经打包好的二进制版本。 安装完成后,可以在命令行中输入tesseract -v检查是否安装成功。 2. 下载Tessdata字库 Tessd…

    人工智能概览 2023年5月25日
    00
  • C++ OpenCV裁剪图片时发生报错的解决方式

    C++ OpenCV 是图像处理领域常用的开发框架。在使用 OpenCV 裁剪图片时,可能会遇到各种异常报错,例如像下面这条错误信息: OpenCV Error: Assertion failed (0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.…

    人工智能概论 2023年5月25日
    00
  • 十大 Node.js 的 Web 框架(快速提升工作效率)

    下面是详细讲解“十大 Node.js 的 Web 框架(快速提升工作效率)”的完整攻略。 标题:十大 Node.js 的 Web 框架 什么是 Node.js 的 Web 框架? Node.js 是一个 Javascript 运行环境,提供了基于事件驱动的异步 IO 模型,可用于开发高效的、可扩展的网络应用程序,但仅提供底层 API,需要使用 Web 框架来…

    人工智能概览 2023年5月25日
    00
  • 如何用nginx配置wordpress的方法示例

    下面是使用nginx配置WordPress的步骤和示例说明: 步骤一:安装nginx和PHP 首先在服务器上安装nginx和PHP。nginx是一个轻量级的HTTP服务器,可以作为Web服务器使用。PHP是一种流行的服务器端脚本语言,用于动态生成Web页面。 在Ubuntu上,可以使用以下命令安装nginx和PHP: sudo apt-get install…

    人工智能概览 2023年5月25日
    00
  • MongoDB多条件模糊查询示例代码

    下面是关于MongoDB多条件模糊查询的详细攻略。 1. 简介 MongoDB是开源NoSQL数据库的一种,它存储数据的方式不同于传统的关系型数据库,而是采用了文档嵌套的方式存储数据。MongoDB的模糊查询与关系型数据库的模糊查询类似,但是它支持更多的查询方式。 2. 多条件模糊查询示例 MongoDB的多条件查询可以使用$and、$or、$nor三个操作…

    人工智能概论 2023年5月25日
    00
合作推广
合作推广
分享本页
返回顶部