Ubuntu下编译OpenCV
Posted lpcarl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu下编译OpenCV相关的知识,希望对你有一定的参考价值。
一、准备
下载opencv源码
1、git clone https://github.com/opencv/opencv.git
2、可以通过下载zip包的方式、
安装cmake g++等编译工具
切换到root用户下,并安装编译工具链
apt install cmake3 cmake3-qt-gui g++ libgtk2.0-dev
解压源码
unzip opencv-master.zip
二、配置并编译
首先,在opencv目录下配置两个文件夹,build和install
build用来保存中间编译生成的临时文件
install用来保存最终安装的文件
打开终端切换到bulid目录下,
然后执行配置命令
cmake ..
对应的结果如下所示
接下来,修改安装路径
cmake-gui ..
重新configure 并generate
在终端里编译
make -j8
编译完成后进行安装,如果没有错误能跑到100%
sudo make install
执行完后,可在安装目录看到4个文件夹
三、测试
写一个图片显示的程序
从opencv中文网下载测试图片
把图片和源码放在同一个文件夹下
编写代码
#include <iostream>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat img=imread("Lean.jpg");
if(img.empty())
{
cout<<"read error"<<endl;
return 0;
}
nameWindow("image",1);
imshow("image",img);
waitKey(10000);
return 0;
}
接下来,进行编译
g++ main.cpp -std=c++11 -I /home/lpc/Desktop/opencv-master/install/include/opencv4/ -L /home/lpc/Desktop/opencv-master/install/lib/ -lopencv_stitching -lopencv_objdetect -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_video -lopencv_photo -lopencv_ml -lopencv_imgproc -lopencv_flann -lopencv_core
编译完成后会生成一个a.out可执行文件
接下来,终端编辑
sudo gedit /etc/ld.so.conf.d/opencv.conf
将opencv动态库所在的路径加到文件里,保存退出
在终端内运行ldconfig 重新加载动态库
sudo ldconfig
最后再运行./a.out即可看到效果
以上是关于Ubuntu下编译OpenCV的主要内容,如果未能解决你的问题,请参考以下文章
opencv系列之ubuntu系统下编译python版本的opencv(指定特定的ffmpeg)
opencv系列之ubuntu系统下编译python版本的opencv(指定特定的ffmpeg)
ubuntu18下编译opencv4.2.0 CUDA版本,集成到Anconda中
在release模式下编译opencv写的人脸检测代码,提示:无法打开输入文件“opencv_calib3d244.lib”