clion + opencv环境搭建

这篇具有很好参考价值的文章主要介绍了clion + opencv环境搭建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

    clion是一个jetbrains提供的c++开发环境,和idea,pycharm等开发工具类似,界面有很多相似的地方。

    clion内置了一个mingw的编译环境,自带了gcc,g++等命令,安装完clion之后,我们新建项目,它会使用内置的mingw环境。

    clion opencv,c++,opencv,人工智能,计算机视觉,clion,mingw

    这样,我们就不用额外安装mingw环境了。

    后面为了使用opencv, 我们需要通过源码编译符合自己本机的opencv库。

    需要安装cmake,这个带gui。我本机的版本是:3.14。

    另一个就是需要下载windows下的opencv-4.5.5-vc14_vc15.exe,这个可执行程序解压之后,有源码和自带的opencv依赖库,依赖库,通过visual studio来搭建opencv的环境没有任何问题,但是通过clion来搭建,就各种报错。所以还是需要通过它的源码来编译安装一次。

    本机可能还需要python环境,我这里安装的python3.10是可以的,没有必要使用python2版本。

    前面的准备工作做好了,就可以进行编译了。

    我们运行opencv-4.5.5-vc14_vc15.exe ,它可以加压出源码sources和build版本的opencv。

   clion opencv,c++,opencv,人工智能,计算机视觉,clion,mingw 

     我们需要使用sources源码。mingw_build目录是我们新建的,用来存放opencv编译后的结果。打开cmake-gui,选择源码,构建目录,点击Configure按钮,设置生成器类型MinGW Makefiles,点击Finish开始配置:

clion opencv,c++,opencv,人工智能,计算机视觉,clion,mingw

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

clion opencv,c++,opencv,人工智能,计算机视觉,clion,mingw

    configure没有报错,提示done之后,就可以generate。

    前面安装了clion,自带了mingw编译环境,这里为了后续执行命令方便,可以把mingw可执行程序目录加入环境变量Path中:

D:\Program Files\JetBrains\CLion 2023.1.2\bin\mingw\bin

    最后还需要在命令行下执行编译命令。命令行下进入mingw_build目录,然后执行mingw32-make -j4编译,后面执行mingw32-make install安装。

    mingw32-make install之后,mingw_build目录下会生成一个install目录,这里就是编译好的opencv库。

clion opencv,c++,opencv,人工智能,计算机视觉,clion,mingw 

    为了避免opencv程序运行是缺少动态链接库,我们把install\x64\mingw\bin目录也加入环境变量的Path中。

E:\opencv\mingw_build\install\x64\mingw\bin

    在clion中新建项目,指定存储目录,会生成一个CMakeList.txt,我们根据自己编译的opencv环境来进行如下设置:

cmake_minimum_required(VERSION 3.25)
project(opencvtutorial)

set(CMAKE_CXX_STANDARD 17)




set(OpenCV_DIR E:/opencv/mingw_build/install)
find_package(OpenCV 4 REQUIRED)
include_directories(E:/opencv/mingw_build/install/include)
add_executable(opencvtutorial main.cpp)
target_link_libraries(opencvtutorial ${OpenCV_LIBS})

     这里OpenCV_LIBS设置的环境变量为:

E:\opencv\mingw_build\install\x64\mingw\lib

    就是编译安装之后的install\x64\mingw\lib目录。 

    CMakeList.txt主要添加包含目录,就是程序中引入的opencv相关头文件,不会报找不到问题,设置库目录,就是把opencv相关的lib依赖加入项目中,避免编译报错。 

    编写代码:

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

using namespace std;
using namespace cv;

dnn::Net net;

int main() {
    cout << CV_VERSION << endl;
    string onnxfile = "E:\\workspace\\python\\aitutorial\\test.onnx";
    net = dnn::readNetFromONNX(onnxfile);
    if (!net.empty()) {
        float value = 1024;
        Mat inputBlob = Mat(1, 1, CV_32F, Scalar(value));
        net.setInput(inputBlob, "input");
        Mat output = net.forward("output");
        cout << "input value : " << value << endl;
        cout << "output : " << output.at<float>(0, 0) << endl;
    }
    waitKey(0);
    return 0;
}

     运行打印结果如下:

clion opencv,c++,opencv,人工智能,计算机视觉,clion,mingw 

   我通过直接下载的opencv-4.5.5-vc14_vc15.exe运行生成的opencv/build结果,可以通过visual studio配置并成功运行opencv示例,但是在clion这里怎么都不行,所以就通过mingw环境编译了一次opencv,很幸运,最后成功了,看来不同的工具对应的环境还是差别很大的。文章来源地址https://www.toymoban.com/news/detail-650222.html

到了这里,关于clion + opencv环境搭建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【人工智能课程】计算机科学博士作业三

    来源:李宏毅2022课程第10课的作业 图片攻击是指故意对数字图像进行修改,以使机器学习模型产生错误的输出或者产生预期之外的结果。这种攻击是通过将微小的、通常对人类难以察觉的扰动应用于输入图像来实现的。图片攻击是对深度学习系统中的鲁棒性和安全性的一种测

    2024年03月16日
    浏览(56)
  • 【人工智能课程】计算机科学博士作业一

    模型拟合:用深度神经网络拟合一个回归模型。从各种角度对其改进,评价指标为MSE。 掌握技巧: 熟悉并掌握深度学习模型训练的基本技巧。 提高PyTorch的使用熟练度。 掌握改进深度学习的方法。 数据集下载: Kaggle下载数据: https://www.kaggle.com/competitions/ml2022spring-hw1 百度云

    2024年01月23日
    浏览(40)
  • hnu计算机与人工智能概论5.6

    最近有点忙,好久没更新了,大家见谅!最后一关howell也做不出来  第1关:数据分析基础 1.将scores.xls文件读到名为df的dataframe中 2.添加平均分列:考勤、实验操作、实验报告的平均 3.输出前3行学生的平均分列表,控制小数点后两位 4.输出学生人数和班级数 5.分别输出实验报

    2024年02月04日
    浏览(37)
  • 人工智能与计算机辅助决策的技术融合

    人工智能(Artificial Intelligence, AI)和计算机辅助决策(Computer-Aided Decision, CAD)是两个不同的领域,但它们之间存在密切的联系和相互作用。人工智能主要关注于模拟和创造人类智能的机器,包括学习、理解自然语言、视觉识别、推理和决策等方面。而计算机辅助决策则关注于利用

    2024年02月22日
    浏览(45)
  • hnu计算机与人工智能概论答案3.8

    连夜更新,求求关注!! 写在前面:这一课难度较低,报错时多看看冒号和缩进有无错误,祝大家做题顺利!!! 第1关:python分支入门基础 根据提示,在右侧编辑器补充代码,完成分支程序设计(用函数调用的方式来实现)。 第1题: 闰年的判断:判断某一年是否是闰年,

    2024年02月08日
    浏览(32)
  • hnu计算机与人工智能概论答案3.15

     终于肝完了!有一说一,这一次难度肉眼可见的提升,终于明白程序员为什么会秃顶了(头发真的禁不住薅啊),祝大家好运! 第1关:循环结构-while与for循环 第1题 编程计算如下公式的值1^2+3^2+5^2+...+995^2+997^2+999^2并输出结果 第2题 用 while 语句完成程序逻辑,求如下算法可

    2024年02月08日
    浏览(38)
  • 人工智能在计算机视觉中的应用与挑战

    引言 计算机视觉是人工智能领域的一个重要分支,旨在让计算机能够像人一样理解和解释视觉信息,实现图像和视频的自动识别、理解和分析。计算机视觉技术已经在许多领域产生了深远的影响,如人脸识别、自动驾驶、医学影像分析等。本篇博客将深入探讨人工智能在计算

    2024年02月14日
    浏览(42)
  • hnu计算机与人工智能概论答案2.20

    补一下第一次作业 第1关:数据输入与输出 第一题 在屏幕上输出字符串:hi, \\\"how are you\\\" ,I\\\'m fine and you 第二题 从键盘输入两个整数,计算两个数相除的商与余数 假设输入12,5 输出为 2 2 第三题 在屏幕上 输入一个三位数输出该数的个位、十位和百位数字 假设输入125 输出为 5 2

    2024年02月08日
    浏览(46)
  • 探索人工智能 | 计算机视觉 让计算机打开新灵之窗

    计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。 计算机视觉既是工程领域,也是科学领域中的一个富

    2024年02月14日
    浏览(38)
  • hnu计算机与人工智能概论5.26(方程求根)

    第1关:用暴力搜索法求方程的近似根  本关任务:用暴力搜索法求 f(x)=x3−x−1 在[-10,10]之间的近似根。已知f(-10)0,f(10)0,画图可知函数在[-10,10]区间有且仅有一个根。要求近似根带入函数f(x)之后,函数值与0之间的误差在 10−6 之内,请保留4位小数输出该根值,并输出搜寻次

    2024年02月03日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包