Ubuntu20.04安装OpenCV和QT配置(18.04)

Ubuntu20.04安装QT

下载方法1安装最新的版本

sudo apt-get update
sudo apt-get install qt5-default qtcreator

下载方法2可以选择安装中文版本(推荐)

下载地址:点击此处 下载后缀名为.run的文件
然后在下载完后的文件运行终端:(例如下载5.12.0版本)

sudo chmod +x qt-opensource-linux-x64-5.12.0.run
sudo ./qt-opensource-linux-x64-5.12.0.run

在这里插入图片描述

有些电脑可能会遇到账号要注册的情况,使用自己的邮箱账号注册即可。没有的话直接点击跳过就行。

至此已经完成了Qtcreator的安装,在显示应用管理界面就可以看到。
在这里插入图片描述


Ubuntu20.04下载OpenCV

在下载OpenCV之前先去安装cmake:

使用命令安装

sudo apt install cmake

然后查看cmake的版本信号

cmake --version

如果你想升级更高的版本:

1卸载原来的版本

sudo apt-get remove cmake

2然后到官网查看cmake源码并下载.tar.gz为后缀名的安装包
3在解压目录运行:()

tar -zxv -f [对应的压缩包文件名]
例如:tar -zxv -f cmake-3.19.1.tar.gz

解压后如图:在这里插入图片描述

4进入解压后的文件夹内打开终端:

./bootstrap

​ 如果出现类似于[log of error://路径的.log]文件这样的错误
运行:

sudo apt-get install g++

​ 如果出现:–Configuring incomplete,error occured!错误
解决依赖库的问题:

sudo apt-get install libssl-dev

5然后构建(过程有点漫长,安静等待即可)

make

在这里插入图片描述

安装

sudo make install

最后再检查一下安装的版本确认无误后安装就完成了
在这里插入图片描述

OpenCV和配置(版本自己选择即可)

经过上述沉重的过程之后就可以去下载,下载总共有两种推荐
1是官网下载 点击此处下载
2去GitHub找资源下载,这里用的是4.5.0的资源GitHub
3也可以到这个链接上clone一份。
推荐可以上OpenCV官网下载
下载完后解压文件到自己指定的位置一般设置成为/home/usr/…等类似的路径下:
然后在解压后的文件夹内打开终端:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..
make -j8
sudo make install
sudo make
sudo make install
sudo gedit /etc/ld.so.conf.d/opencv.conf 
加入       /usr/local/lib
sudo ldconfig

上述配置过程时间比较久,请耐心等待。

加入后的图片:在这里插入图片描述

然后配置环境变量:

sudo gedit /etc/bash.bashrc 

在低端写入:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig 
export PKG_CONFIG_PATH

保存后在终端输入:

sudo ldconfig
sudo cp /usr/local/include/opencv4/opencv2 /usr/local/include -r

到此完成了所有的qt+OpenCV的配置。最后运行qt进行测试:
pro更改为:

TEMPLATE = app

CONFIG += console c++11

CONFIG -= app_bundle

CONFIG -= qt

SOURCES += main.cpp

INCLUDEPATH += /usr/local/include \
                /usr/local/include/opencv
                /usr/local/include/opencv2

LIBS += /usr/local/lib/libopencv_* \

cpp:

#include <iostream>
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>

using namespace std;
using namespace cv;

int main()
{
    VideoCapture capture (0);
    Mat src;
    while(1)
    {

        capture >> src;
        imshow("capture",src);
        waitKey(27);
    }
    return 0;
}

记得点赞和关注!!!

猜你喜欢

转载自blog.csdn.net/Msyusheng/article/details/112724925