window10环境下,Clion 编译 opencv

下载clion,opencv库,mingw编译,cmake。
clion,cmake自行随便下载

1:下载opencv库

opencv官网 https://opencv.org/releases/
选择Sources版本,这个版本可以复制链接地址到迅雷下载,速度很快。
在这里插入图片描述:

2:安装mingw
2.1下载地址 https://sourceforge.net/projects/mingw-w64/files/

下载对应的版本,这里下载错,后面会报各种错,无法编译

2.2 配置环境变量

在这里插入图片描述

3: 使用cmake编译opencv
3.1 开始编译

在这里插入图片描述

3.2 报错解决
配置过程中,可能会因为下载opencv_video_io_ffmpeg.dll和opencv_video_io_ffmpeg_64.dll失败而报错,我们根mingw_build/CMakeDownloadLog.txt 中提示的githubusercontent地址手动下载这两个文件到sources/3rdparty/ffmpeg目录下。

可以用迅雷下载比较快
在这里插入图片描述
理论上 正确下载了mingw和这俩个配置文件,不会出问题。

3.3 报错解决

在cmake-gui中搜索OPENCV_ENABLE_ALLOCATOR_STATS
在这里插入图片描述
去掉,然后重新编译。
配置cv环境,配置完成后,重启
在这里插入图片描述

4:配置clion

在这里插入图片描述

测试代码
// An highlighted block
#include <opencv2/opencv.hpp>
#include <iostream>

int main() {
    // 创建一个 VideoCapture 对象,参数 0 表示打开默认摄像头
    cv::VideoCapture cap(0);

    // 检查摄像头是否成功打开
    if (!cap.isOpened()) {
        std::cerr << "Error: Could not open camera" << std::endl;
        return -1;
    }

    // 创建一个窗口用于显示视频
    cv::namedWindow("Camera", cv::WINDOW_AUTOSIZE);

    while (true) {
        cv::Mat frame;

        // 读取当前帧
        cap >> frame;

        // 检查帧是否为空
        if (frame.empty()) {
            std::cerr << "Error: Could not read frame" << std::endl;
            break;
        }

        // 显示当前帧
        cv::imshow("Camera", frame);

        // 按下 ESC 键退出
        if (cv::waitKey(30) == 27) {
            break;
        }
    }

    // 释放摄像头
    cap.release();

    // 销毁窗口
    cv::destroyAllWindows();

    return 0;
}
// An highlighted block
cmake_minimum_required(VERSION 3.16)
project(OpenCV_Camera_Test)

set(CMAKE_CXX_STANDARD 17)

# 指定 OpenCV 的安装目录
set(OpenCV_DIR D:/code/opencv_build_1/install)
set(OpenCV_LIBS D:\\code\\opencv_build_1\\install\\x64\\mingw\\bin)
# 查找 OpenCV 包
find_package(OpenCV REQUIRED)

# 包含 OpenCV 的头文件
#include_directories(D:\code\opencv_build_1\install\include)
include_directories(${OpenCV_INCLUDE_DIRS})

# 添加可执行文件
add_executable(OpenCV_Camera_Test 2.cpp)

# 链接 OpenCV 库
target_link_libraries(OpenCV_Camera_Test ${OpenCV_LIBS})
参考文献

https://developer.aliyun.com/article/1501767
https://blog.csdn.net/jjxcsdn/article/details/123058745
https://blog.csdn.net/yerongjie/article/details/124350942
https://blog.csdn.net/qq_25232685/article/details/125926743

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值