(23)Linux下Clion中搭建opencv环境
Posted 早川橙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(23)Linux下Clion中搭建opencv环境相关的知识,希望对你有一定的参考价值。
manjaroLinux:5.10.70-1-MANJARO
Clion:2021.2.2
1、问题描述
目的:在ManjaroLinux中的Clion搭建opencv环境。
在网上搜了很多教程来搭建,但都没解决。我的问题一直是在CMakeList文件的最后一句将cpp文件链接到opencv中出问题,然后把opencv卸载了(起初直接是在terminal中安装的),在github中把源码拿过来直接装就好了。我也是莫名其妙弄好了,不一定适合所有人,可以拿来参考。
2、安装步骤
2.1 下载opencv与opencv-contrib源码
opencv下载链接与opencv_contrib下载链接两个版本要选择一致。我这里选的都是4.5.4版本。新建一个文件夹(位置没关系)放这两个压缩包,并且解压。效果如下。
2.2 整理文件框架
把opencv-contrib放到opencv中。效果如下
在opencv-4.5.4文件中新建文件夹“build”(名字无所谓)。并且进入build。
sudo mkdir build
cd build
2.3 生成makefile文件
在build文件目录下执行以下命令(注意,不能完全和我一样,里面的路径要按照你opencv-4.5.4文件夹的目录而定)。
这里我的opencv-4.5.4路径为/home/barry/opencv-work/opencv-4.5.4
你可以进入到你的opencv-4.5.4文件夹中使用pwd
查看当前路径,替换下面命令里面的路径就行了。
sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH= /home/barry/opencv-work/opencv-4.5.4/opencv_contrib-4.5.4/modules/ ..
2.4 进行make编译
当前仍然是在build文件夹中。
执行以下命令。
这里的4是因为我的计算机是4核的。
sudo make -j4
2.5 编辑CMakeList.txt文件
我的CMakeList.txt文件如下
cmake_minimum_required(VERSION 3.20)
project(opencvtest)
set(CMAKE_CXX_STANDARD 14)
find_package(OpenCV REQUIRED)
set(SOURCE_FILES main.cpp)
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(opencvtest main.cpp)
target_link_libraries(opencvtest ${OpenCV_LIBS})
3、代码测试
测试一下
这里读者需要下载一个图片取代我的代码中的44.png。
获取图片的绝对路径。
#include <iostream>
#include <opencv4/opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main() {
string path = "/home/barry/CLionProjects/opencvtest/44.png";
Mat src = imread(path);
namedWindow("img");
imshow("img",src);
waitKey(0);
return 0;
}
4、参考资料
https://zhuanlan.zhihu.com/p/118222087
https://stackoverflow.com/questions/36590912/using-opencv-with-clion
以上是关于(23)Linux下Clion中搭建opencv环境的主要内容,如果未能解决你的问题,请参考以下文章
OpenCV & Tensorflow学习 -------------------》环境搭建
C/C++开发,linux下OpenCV+gcc+cmake编译环境搭建