C++中opencv4.1.0环境配置的详细过程

下面是C++中opencv4.1.0环境配置的详细过程。

环境准备

在开始配置OpenCV 4.1之前,我们需要安装以下环境:

  • C++ 编译器:GCC 或 Clang
  • CMake 3.10 或更高版本
  • Git(可选)

安装完成后,我们可以开始配置OpenCV环境了。

下载OpenCV源码

首先,在OpenCV官网上下载OpenCV源码:

git clone https://github.com/opencv/opencv.git
cd opencv
git checkout 4.1.0

构建配置

在完成下载源码后,我们可以开始进行构建配置了。创建一个build目录:

mkdir build
cd build

接下来,我们使用CMake创建Makefile并进行构建:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j4
sudo make install

构建完成后,我们可以将编译好的库使用如下命令导入:

#include <opencv2/opencv.hpp>

使用OpenCV

此时,我们已经成功配置好了OpenCV环境,可以使用OpenCV中的API进行开发。下面是两个示例:

示例1:读取并显示一张图片

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

using namespace cv;

int main()
{
    // 读取图片
    Mat img = imread("test.jpg", IMREAD_COLOR);

    // 判断图片是否成功读取
    if (img.empty())
    {
        std::cerr << "Cannot open image!" << std::endl;
        return -1;
    }

    // 显示图片
    namedWindow("Image");
    imshow("Image", img);

    // 等待用户按键
    waitKey(0);

    return 0;
}

示例2:实现简单的图片滤波

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

using namespace cv;

int main()
{
    // 读取图片
    Mat img = imread("test.jpg", IMREAD_COLOR);

    // 均值滤波,ksize决定卷积核大小
    Mat blur_img;
    blur(img, blur_img, Size(5, 5));

    // 显示原始图片和滤波后的图片
    namedWindow("Original Image");
    imshow("Original Image", img);
    namedWindow("Blurred Image");
    imshow("Blurred Image", blur_img);

    // 等待用户按键
    waitKey(0);

    return 0;
}

总之,通过以上步骤,我们就可以配置并使用OpenCV 4.1.0环境。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++中opencv4.1.0环境配置的详细过程 - Python技术站

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

相关文章

  • Google和Facebook不使用Docker的原理解析

    下面是关于“Google和Facebook不使用Docker的原理解析”的完整攻略,内容如下: 什么是Docker Docker是一种轻量级的虚拟化容器技术,它可以快速打包、交付和运行软件应用程序。使用Docker的主要优点是: 方便打包和部署应用程序 快速启动和关闭容器 可以隔离应用程序和依赖项 Google和Facebook为什么不使用Docker 尽管…

    人工智能概论 2023年5月25日
    00
  • zbar解码二维码和条形码示例

    下面我将为你详细讲解“zbar解码二维码和条形码示例”的完整攻略。 1. zbar是什么? zbar是一个优秀的开源条码识别工具,能够扫描并识别多种类型的一维条码和二维码,支持Linux、Windows、MacOS等平台,提供C、C++、Python等多种开发语言的API。 2. 安装zbar库 zbar库的安装需要分平台进行,这里只给出Linux平台下的安…

    人工智能概览 2023年5月25日
    00
  • python如何编写win程序

    如果您想使用Python编写Windows程序,可以按照以下步骤进行: 1. 安装PyQt PyQt是Python编程语言和Qt图形用户界面库的绑定,可以用于创建Python GUI应用程序。可以通过安装pip,使用以下命令来安装PyQt: pip install pyqt5 2. 创建一个空白的窗口 创建一个空白窗口需要以下步骤: 导入所需的GUI模块: …

    人工智能概览 2023年5月25日
    00
  • nodejs实现连接mongodb数据库的方法示例

    当我们使用Node.js来开发应用程序时,使用MongoDB作为数据库是非常常见的选择。在本文中,我们将学习如何使用Node.js与MongoDB集成,并实现数据库的连接。 环境准备 在开始前,要确保你的机器上已经安装了Node.js, MongoDB和npm包管理器。 安装依赖 要在Node.js应用程序中使用MongoDB,我们需要使用npm安装mong…

    人工智能概论 2023年5月25日
    00
  • 使用Python从零开始撸一个区块链

    使用Python从零开始撸一个区块链 简介 本文将介绍如何使用Python从零开始构建一个简单的区块链。区块链是一个去中心化的分布式数据库,其中的数据被存储在一系列的区块中。每个区块包含一些数据和指向前一个区块的指针。由于它们的分布式本质,区块链不容易受到单个点或攻击的影响。这使得它们对于许多不同类型的应用都有价值。 在本文中,我们将使用Python和Fla…

    人工智能概论 2023年5月25日
    00
  • java动态代理(jdk与cglib)详细解析

    Java动态代理(JDK与CGLIB)详细解析 什么是动态代理 代理模式是一种非常常见的设计模式,其核心思想是为其他对象提供一个代理对象来控制对这个对象的访问。静态代理必须手动编写代理类,而动态代理则是在运行期动态生成代理类。 JDK动态代理 JDK动态代理是Java官方提供的动态代理实现方式,它是基于反射机制实现的。JDK动态代理需要实现Invocatio…

    人工智能概览 2023年5月25日
    00
  • 检查mysql是否成功启动的方法(bat+bash)

    使用Windows操作系统,利用bat脚本检查MySQL是否成功启动的方法: 1.1 在文本编辑器中创建一个新文件,将以下代码复制并粘贴到该文件中: @echo off sc query MySQL >nul 2>nul if errorlevel 1060 echo MySQL is not running.& exit /b 1 ec…

    人工智能概览 2023年5月25日
    00
  • Mac OS下PHP环境搭建及PHP操作MySQL常用方法小结

    Mac OS下PHP环境搭建及PHP操作MySQL常用方法小结 环境搭建 由于Mac OS自带了Apache和PHP,我们只需要安装MySQL即可。 安装MySQL步骤: 下载MySQL安装包https://dev.mysql.com/downloads/mysql/; 运行安装包,按照提示进行安装; 安装完成后,启动MySQL服务:打开终端,输入mysql…

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