windows 用vs创建cmake工程并编译opencv应用项目生成exe流程简述

前言

在计算机视觉和图像处理领域,OpenCV是一个非常流行的开源库,它提供了许多强大的功能和算法,可以帮助开发人员快速构建高效的应用程序。然而,对于初学者来说,OpenCV的配置和编译可能会是一个挑战。为了帮助大家更好地理解和掌握OpenCV的编译过程,本文将介绍如何在Windows上使用Visual Studio创建CMake工程并编译OpenCV应用程序,最终生成可执行文件。本文将详细介绍每个步骤,并提供一些实用的技巧和注意事项,以帮助读者更好地理解和掌握OpenCV的编译过程。无论您是初学者还是有经验的开发人员,本文都将为您提供有价值的信息和知识。

一、安装opencv

(1)下载

直接从官网下载安装包就行:
在这里插入图片描述

(2)双击安装

这个是二进制文件,直接按照到相应的目录下。
在这里插入图片描述
在这里插入图片描述

(3)环境变量和system文件夹设置

将opencv的\build\x64\vc16\bin文件夹路径写入系统环境变量(path)里面:
在这里插入图片描述
同时,需要把bin下面的所有dll文件都放到system32里面:
在这里插入图片描述
在这里插入图片描述

二、打开vs创建项目

文件》----新建》-----项目》------CMake项目:
在这里插入图片描述

三、编辑cpp,.h,cmakelist.txt文件

(1)h文件

如下:
在这里插入图片描述

// CMakeIbot.h: 标准系统包含文件的包含文件
// 或项目特定的包含文件。

#pragma once

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

// TODO: 在此处引用程序需要的其他标头。

(2)cpp文件

如下:
在这里插入图片描述
代码:

// CMakeIbot.cpp: 定义应用程序的入口点。
//

#include "CMakeIbot.h"

using namespace std;
using namespace cv;


int main() {
    Mat frame;
    int key;

    // 创建窗口
    namedWindow("Camera", WINDOW_AUTOSIZE);

    // 获取视频设备
    VideoCapture cap(0);

    // 检查是否成功打开摄像头
    if (!cap.isOpened()) {
        cerr << "ERROR: Unable to open the camera" << endl;
        return 1;
    }

    // 循环读取视频帧并显示
    while (true) {
        cap >> frame;
        imshow("Camera", frame);

        // 等待按键事件
        key = waitKey(30);

        // 按下ESC键退出循环
        if (key == 27) {
            break;
        }
    }

    // 释放摄像头并关闭窗口
    cap.release();
    destroyAllWindows();

    return 0;
}

(3)makefile文件

如下:

# CMakeList.txt: CMakeIbot 的 CMake 项目,在此处包括源代码并定义
# 项目特定的逻辑。
#
cmake_minimum_required (VERSION 3.20)
# 工程名称
project ("CMakeIbot")
# 设置OpenCV lib路径
set(OpenCV_DIR "D:\\opencv4\\opencv\\build\\x64\\vc16\\lib")

# 引入 OpenCV 库
find_package(OpenCV REQUIRED)
#打印调试信息,输出说明正常
MESSAGE(STATUS "Project: ${PROJECT_NAME}")
MESSAGE(STATUS "OpenCV library status:")
MESSAGE(STATUS "    version: ${OpenCV_VERSION}")
MESSAGE(STATUS "    libraries: ${OpenCV_LIBS}")
MESSAGE(STATUS "    include path: ${OpenCV_INCLUDE_DIRS}")

# 添加 OpenCV 库头文件搜索路径
include_directories(${OpenCV_INCLUDE_DIRS})
# 添加 OpenCV 相关所有库文件
file(GLOB LIBS "D:/opencv4/opencv/build/x64/vc16/lib/*.lib")
# 将源代码添加到此项目的可执行文件。
add_executable (CMakeIbot "CMakeIbot.cpp" "CMakeIbot.h")
# 将 OpenCV 库链接到工程中
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${OpenCV_LIBS} ${LIBS})

if (CMAKE_VERSION VERSION_GREATER 3.12)
  set_property(TARGET CMakeIbot PROPERTY CXX_STANDARD 20)
endif()

(4)点击生成编译

弹出摄像头运行ok
在这里插入图片描述
已经生成了exe文件:
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JAMES费

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值