Windows和Ubuntu系统下cmake和opencv的安装和使用

以下是在Windows和Ubuntu系统下分别安装CMake并使用C++配置OpenCV实现读取图片并显示功能的详细步骤:

Windows系统

1. 安装CMake
  1. 访问CMake官方网站(https://cmake.org/download/)。
  2. 根据你的Windows系统版本(32位或64位)下载对应的CMake安装程序(通常为.msi文件)。
  3. 双击下载的安装程序,按照安装向导的提示进行安装。在安装过程中,你可以选择默认的安装路径,也可以自定义安装路径。安装完成后,确保将CMake的安装目录添加到系统环境变量的"Path"中,以便在命令行中可以直接使用CMake命令。
2. 安装OpenCV
  1. 同样访问OpenCV官方网站(https://opencv.org/releases/),根据你的需求选择合适的版本下载。这里建议下载预编译好的Windows版本,通常是以.exe结尾的自解压文件。
  2. 下载完成后,双击运行该自解压文件,将其解压到你指定的目录,比如"C:\opencv"。
  3. 解压完成后,需要设置环境变量。在系统环境变量中添加"OPENCV_DIR"变量,其值设置为OpenCV的安装目录,例如"C:\opencv\build"。同时,将"%OPENCV_DIR%\bin"添加到系统环境变量的"Path"中,以便能够在程序中找到OpenCV的动态链接库。
3. 创建项目目录结构并编写代码
  1. 创建一个项目目录,例如"opencv_win_project",在该目录下创建以下子目录和文件:

    opencv_win_project/
    |-- CMakeLists.txt
    |-- main.cpp
    |-- images/
    |-- test.jpg (这里放置你要读取显示的图片,可自行替换文件名和图片内容)

  2. 在"main.cpp"文件中编写以下代码:

cpp 复制代码
#include <iostream>
#include <opencv2/opencv.hpp>

int main() {
    // 图片路径,根据实际情况修改
    std of string image_path = "images/test.jpg";
    cv::Mat image = cv::imread(image_path);

    if (image.empty()) {
        std::cerr << "Could not read the image: " << image_path << std::endl;
        return -1;
    }

    cv::namedWindow("Display Window", cv::WINDOW_NORMAL);
    cv::imshow("Display Window", image);

    cv::waitKey(0);

    return 0;
}
  1. 在"CMakeLists.txt"文件中编写以下内容:
cmake 复制代码
cmake_minimum_required(VERSION 3.10)

project(opencv_win_project)

# 查找OpenCV库
find_package(OpenCV REQUIRED)

# 添加可执行文件
add_executable(opencv_win_project main.cpp)

# 链接OpenCV库
target_link_libraries(opencv_win_project ${OpenCV_LIBS})
4. 构建并运行项目
  1. 打开命令提示符(CMD),进入到项目目录"opencv_win_project"。
  2. 执行以下命令创建一个构建目录并进入其中:
bash 复制代码
mkdir build
cd build
  1. 在构建目录中执行CMake命令来配置项目:
bash 复制代码
cmake..
  1. 执行"make"命令的Windows等效命令"mingw32-make"(前提是你已经安装了MinGW等类似的编译工具链)来编译项目:
bash 复制代码
mingw32-make
  1. 编译完成后,在构建目录下找到生成的可执行文件(这里应该是"opencv_win_project.exe"),双击该文件或者在命令提示符中执行该文件,即可看到弹出一个窗口显示指定的图片内容。

Ubuntu系统

1. 安装CMake
  1. 打开终端,执行以下命令更新软件包列表:
bash 复制代码
sudo apt-get update
  1. 然后执行以下命令安装CMake:
bash 复制代码
sudo apt-get install cmake
2. 安装OpenCV
  1. 执行以下命令更新软件包列表并安装OpenCV开发库:
bash 复制代码
sudo apt-get update
sudo apt-get install libopencv-dev
3. 创建项目目录结构并编写代码
  1. 创建一个项目目录,例如"opencv_ubuntu_project",在该目录下创建以下子目录和文件:

    opencv_ubuntu_project/
    |-- CMakeLists.txt
    |-- main.cpp
    |-- images/
    |-- test.jpg (这里放置你要读取显示的图片,可自行替换文件名和图片内容)

  2. 在"main.cpp"文件中编写以下代码:

cpp 复制代码
#include <iostream>
#include <opencv2/opencv.hpp>

int main() {
    // 图片路径,根据实际情况修改
    std::string image_path = "images/test.jpg";
    cv::Mat image = cv::imread(image_path);

    if (image.empty()) {
        std::cerr << "Could not read the image: " << image_path << std::endl;
        return -1;
    }

    cv::namedWindow("Display Window", cv::WINDOW_NORMAL);
    cv::imshow("Display Window", image);

    cv::waitKey(0);

    return 0;
}
  1. 在"CMakeLists.txt"文件中编写以下内容:
cmake 复制代码
cmake_minimum_required(VERSION 3.10)

project(opencv_ubuntu_project)

# 查找OpenCV库
find_package(OpenCV REQUIRED)

# 添加可执行文件
add_executable(opencv_ubuntu_project main.cpp)

# 链接OpenCV库
target_link_libraries(opencv_ubuntu_project ${OpenCV_LIBS})
4. 构建并运行项目
  1. 打开终端,进入到项目目录"opencv_ubuntu_project"。
  2. 执行以下命令创建一个构建目录并进入其中:
bash 复制代码
mkdir build
cd build
  1. 在构建目录中执行CMake命令来配置项目:
bash 复制代码
cmake..
  1. 执行"make"命令来编译项目:
bash 复制代码
make
  1. 编译完成后,在构建目录下找到生成的可执行文件(这里应该是"opencv_ubuntu_project"),在终端中执行该可执行文件:
bash 复制代码
./opencv_ubuntu_project

即可看到弹出一个窗口显示指定的图片内容。

希望以上步骤能帮助你在Windows和Ubuntu系统下顺利完成相关操作,实现使用C++配置OpenCV读取图片并显示的功能。

相关推荐
HEX9CF35 分钟前
【Anaconda】Anaconda3 下载与安装教程(Ubuntu 22.04)
linux·运维·ubuntu
星辰@Sea40 分钟前
使用OpenCV和卡尔曼滤波器进行实时活体检测
人工智能·opencv·计算机视觉
Tronlongtech42 分钟前
基于OpenCV的拆分和合并图像通道实验案例分享_基于RK3568教学实验箱
人工智能·opencv·计算机视觉
低调函数1 小时前
TypeScript和JavaScript的区别
javascript·ubuntu·typescript
APItesterCris2 小时前
对于大规模的淘宝API接口数据,有什么高效的处理方法?
linux·服务器·前端·数据库·windows
云空2 小时前
《OpenCV:视觉世界的魔法钥匙》
人工智能·opencv·计算机视觉
YRr YRr2 小时前
Ubuntu 20.04中的文件移动操作:详解与实用示例
linux·运维·ubuntu
Heris993 小时前
零基础快速掌握——【c语言基础】数组的操作,冒泡排序,选择排序
c语言·开发语言·ubuntu·vim
YRr YRr3 小时前
如何在Ubuntu 20.04上安装和使用PostgreSQL:一步步指南
linux·ubuntu·postgresql
YRr YRr4 小时前
在Ubuntu 20.04中创建ROS工作空间:catkin_init_workspace与catkin_make的作用、工作流程及其区别
linux·运维·ubuntu