天天看點

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

一.下載下傳Qt Creator

上Qt官網上下載下傳(下載下傳位址)

我裝的是最新版的5.13

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

然後再點進去最新的直到這裡,點選選擇倒二個linux的.run檔案下載下傳。

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

下載下傳好之後可以自己在想要的地方建個檔案夾用于存放解壓後的Qt

執行以下指令進行解壓(注意檔案名要根據自己下載下傳的版本而定,我的是5.13.2)

1.先cd到你自己剛剛建立的檔案夾下,比如我的在/home/fan/Qt下

cd /home/fan/Qt
           

2.然後開始解壓

sudo chmod +x qt-opensource-linux-x64-5.13.2.run
           

3.開始安裝

sudo ./qt-opensource-linux-x64-5.13.2.run
           

後面就按提示來安裝

這裡要skip

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

然後後面就基本沒什麼了等待安裝完成。

二.Qt下配置OpenCV4.1.1

先上OpenCV官網下載下傳OpenCV包,我下載下傳的是GitHub版的

下載下傳位址

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

下載下傳好之後在電腦上下載下傳檔案夾下找到輕按兩下打開出現下面畫面然後點選提取然後提取到自己要的檔案夾

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

然後在解壓後的目錄下建立一個build,當然先要cd到自己解壓後的檔案夾下,如何cd前面有講。

mkdir build
cd build
           

安裝需要的包

apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
           

然後開始安裝,這裡可能需要一些時間來安裝

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
sudo make
sudo make install
           

配置OpenCV4.1.1

sudo sh -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
           

打開Qt Creator(第一次用的話是得到當時解壓下的檔案夾裡然後找到Tools檔案夾)

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

打開Tools檔案夾,一直點進去,點選bin檔案夾進去看到一個qtcreator的檔案就是它了(最左下角那個)

輕按兩下打開然後可以把它固定在工作列上。

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

打開Qt後建立檔案然後選擇這個(這裡選擇C++圖上搞錯了)

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

然後按下面的一直點下去

Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1
Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1
Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1
Ubuntu下Qt Creator的安裝和Qt下配置OpenCv4.1.1

完成之後

點選.pro檔案進去後在代碼底下直接添加這幾行代碼

還有opencv編譯的時候預設是用/usr/local/lib底下的.so檔案

我當時配置的時候也是直接把别人的複制過去結果不行因為後來我發現裝的版本不一樣有些包可能不一樣有些可能被官方剔除或者又增加了,是以這些得自己去/usr/local/lib目錄下檢視一共有多少.so檔案然後像下面代碼那樣。

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

LIBS += /usr/local/lib/libopencv_calib3d.so \
/usr/local/lib/libopencv_core.so \
/usr/local/lib/libopencv_features2d.so \
/usr/local/lib/libopencv_dnn.so \
/usr/local/lib/libopencv_flann.so \
/usr/local/lib/libopencv_highgui.so \
/usr/local/lib/libopencv_imgcodecs.so \
/usr/local/lib/libopencv_imgproc.so \
/usr/local/lib/libopencv_ml.so \
/usr/local/lib/libopencv_objdetect.so \
/usr/local/lib/libopencv_photo.so \
/usr/local/lib/libopencv_stitching.so \
/usr/local/lib/libopencv_videoio.so \
/usr/local/lib/libopencv_video.so \
           

然後儲存後進入main檔案測試一下代碼

#include <iostream>
#include <string>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace  cv;

int main()
{
    VideoCapture cap(0);
        while(1)
        {
            Mat img;
            cap >> img;
            imshow("camera",img);
        }
}

           

至此Qt下配置OpenCV就完成了但是就是一點不足的是每次要用OpenCV都要在.pro檔案裡面加入我剛剛說的那些代碼,這是挺不友善的地方,可能有其他一勞永逸的方法但是我還沒有找到。如果有人找到可以私信我哦。

順便附上我覺得幾篇可以借鑒參考安裝的部落格(我安裝的比較順利沒什麼坑)

https://blog.csdn.net/Jeff_zjf/article/details/84328429

https://blog.csdn.net/wanzhen4330/article/details/82622664#1.%20%E5%AE%89%E8%A3%85Qt