【机器学习】C++与OpenCV实战:创建你的第一个图片显示程序


🎬 鸽芷咕个人主页
🔥 个人专栏 : 《C++干货基地》《粉丝福利》

⛺️生活的理想,就是为了理想的生活!


前言

在计算机视觉领域,OpenCV是一个非常强大的开源库,它提供了大量的图像处理和计算机视觉功能。C++与OpenCV的结合可以让你开发出高性能的图像处理程序。本文将带你一步步使用C++和OpenCV库来创建一个简单的图片显示程序,让你体验OpenCV的强大功能。

文章目录

  • 前言
  • 一、准备工作
    • [1.1 OpenCV的安装与配置](#1.1 OpenCV的安装与配置)
    • [1.2 OpenCV在Windows系统下的安装](#1.2 OpenCV在Windows系统下的安装)
    • [1.3 OpenCV在Linux系统下的安装](#1.3 OpenCV在Linux系统下的安装)
    • [1.4 OpenCV在Mac OS系统下的安装](#1.4 OpenCV在Mac OS系统下的安装)
    • [1.5 配置Python环境使用OpenCV](#1.5 配置Python环境使用OpenCV)
  • 二、创建项目
    • [2.1 创建项目文件夹](#2.1 创建项目文件夹)
    • [2.2 编写源代码](#2.2 编写源代码)
    • [2.3 编译项目](#2.3 编译项目)
  • 三、运行程序
  • 四、总结

一、准备工作

在开始之前,你需要确保已经安装了C++编译器和OpenCV库。以下是在Windows和Linux系统上安装OpenCV的一般步骤:

  • Windows :
    • 下载OpenCV的预编译库或者源代码。
    • 将OpenCV库文件添加到系统的PATH环境变量中。
    • 配置Visual Studio或MinGW等编译器以包含OpenCV的库文件和头文件。
  • Linux :
    • 使用包管理器安装OpenCV(例如,在Ubuntu上使用sudo apt-get install opencv-python)。
    • 如果你需要从源代码编译,可以克隆OpenCV的GitHub仓库并按照编译指南进行编译。

1.1 OpenCV的安装与配置

OpenCV的安装方式根据不同的操作系统和使用环境有所不同。以下我们将分别介绍在Windows、Linux和Mac OS下的安装方式,以及如何配置Python环境使用OpenCV。

1.2 OpenCV在Windows系统下的安装

在Windows系统下,推荐使用Python的包管理工具pip来安装OpenCV。你可以在命令行中运行以下命令来安装:

python 复制代码
pip install opencv-python

如果你需要使用到OpenCV的额外模块(如xfeatures2d等),可以安装opencv-contrib-python包:

python 复制代码
pip install opencv-contrib-python

1.3 OpenCV在Linux系统下的安装

在Linux系统下,我们同样可以使用pip来安装OpenCV。打开终端,运行以下命令:

复制代码
pip install opencv-python

同样,如果你需要使用到OpenCV的额外模块,可以安装opencv-contrib-python包:

复制代码
pip install opencv-contrib-python

1.4 OpenCV在Mac OS系统下的安装

在Mac OS下,我们同样可以使用pip来安装OpenCV。打开终端,运行以下命令:

python 复制代码
pip install opencv-python

如果你需要使用到OpenCV的额外模块,可以安装opencv-contrib-python包:

python 复制代码
pip install opencv-contrib-python

1.5 配置Python环境使用OpenCV

安装完成OpenCV后,我们可以在Python环境中导入cv2模块来使用OpenCV的功能。你可以创建一个新的Python脚本,然后在其中输入以下代码来测试OpenCV是否安装成功:

python 复制代码
import cv2

# 打印OpenCV版本
print(cv2.__version__)

如果输出了你所安装的OpenCV版本号,那么恭喜你,你已经成功安装并配置好了OpenCV!

总的来说,无论是在Windows、Linux还是Mac OS系统下,安装和使用OpenCV都是相对简单的。只需要几个简单的命令,就可以开始你的OpenCV之旅了。

二、创建项目

2.1 创建项目文件夹

  1. 创建新文件夹 :为你的项目创建一个新的文件夹,并在其中创建一个新的C++源文件(例如,main.cpp)。

2.2 编写源代码

  1. 编写源代码 :打开main.cpp并添加以下代码:
cpp 复制代码
#include <opencv2/opencv.hpp> // 包含OpenCV库的头文件
int main() {
    // 加载图片
    cv::Mat image = cv::imread("path_to_your_image.jpg"); // 替换为你的图片路径
    // 检查图片是否成功加载
    if (image.empty()) {
        std::cerr << "Error: Image not found." << std::endl;
        return -1;
    }
    // 创建窗口
    cv::namedWindow("Display window", cv::WINDOW_AUTOSIZE);
    // 显示图片
    cv::imshow("Display window", image);
    // 等待用户按键,然后关闭窗口
    cv::waitKey(0);
    return 0;
}

2.3 编译项目

  1. 编译项目:使用C++编译器编译你的程序。以下是一个使用g++编译器的示例命令:
bash 复制代码
g++ -std=c++11 main.cpp -o display_image -lopencv_core -lopencv_imgcodecs -lopencv_highgui

确保替换main.cpp为你源文件的正确路径,并且-lopencv_*标志对应于你安装的OpenCV版本和组件。

三、运行程序

编译成功后,你将得到一个可执行文件(例如,display_image)。运行这个程序,你应该会看到一个窗口显示你指定的图片。

bash 复制代码
./display_image

四、总结

本文通过一个简单的示例,向你展示了如何使用C++和OpenCV来加载和显示图片。这是OpenCV基础中的基础,但也是进一步学习图像处理和计算机视觉功能的重要起点。掌握了这个基础,你就可以继续探索OpenCV提供的更多高级功能,如图像滤波、边缘检测、对象识别等。祝你学习愉快!

相关推荐
时空无限8 分钟前
说说transformer 中的掩码矩阵以及为什么能掩盖住词语
人工智能·矩阵·transformer
YaoYuan93239 分钟前
C++ 类型推导(第一部分)
c++
查里王13 分钟前
AI 3D 生成工具知识库:当前产品格局与测评总结
人工智能·3d
武子康36 分钟前
AI-调查研究-76-具身智能 当机器人走进生活:具身智能对就业与社会结构的深远影响
人工智能·程序人生·ai·职场和发展·机器人·生活·具身智能
小鹿清扫日记40 分钟前
从蛮力清扫到 “会看路”:室外清洁机器人的文明进阶
人工智能·ai·机器人·扫地机器人·具身智能·连合直租·有鹿巡扫机器人
夜猫逐梦1 小时前
【VC】 error MSB8041: 此项目需要 MFC 库
c++·mfc
fanstuck1 小时前
Prompt提示工程上手指南(六):AI避免“幻觉”(Hallucination)策略下的Prompt
人工智能·语言模型·自然语言处理·nlp·prompt
zhangfeng11332 小时前
win7 R 4.4.0和RStudio1.25的版本兼容性以及系统区域设置有关 导致Plots绘图面板被禁用,但是单独页面显示
开发语言·人工智能·r语言·生物信息
姓刘的哦2 小时前
Qt中的QWebEngineView
数据库·c++·qt
C_player_0012 小时前
——贪心算法——
c++·算法·贪心算法