Linux下opencv的安裝及運行

我的第一篇博文已經講過在Windos下,codeblocks編譯器使用VS2013的VC,並集成opencv。http://blog.csdn.net/canvachen/article/details/52549283
上一篇我也講過,我已經決定加入Linux大軍。這篇就來講講Linux下OpenCV開發環境的搭建。其實在Linux上開發opencv比較簡單。以下以Debian爲例。

1.進CodeBlocks官網下載適合自己系統的安裝包,我的是codeblocks_16.01_amd64_jessie.tar.xz。提取后里面有幾個.deb文件,在終端用dpkg -i name.deb全部安裝這幾個文件,注意先安裝依賴文件。
2.接下來安裝opencv。比較快的方法是直接用apt-get install安裝。
如果想用更新的版本,比如2.4.13或3.1.0,就要去opencv官網下載linux用的源碼,然後用cmake編譯。過程如下:
首先解決依賴問題。
sudo apt-get install build-essential

sudo apt-get install cmake libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev

sudo apt-get install python-dev python-numpy libjpeg-dev libpng-dev libtiff-dev libjasper-dev

接下來將官網下的opencv-2.4.13.zip解壓並進入目錄,繼續執行如下。
mkdir build
cd build
cmake ..
sudo make
sudo make install
sudo make這句至少需要幾個小時才能編譯完,做好心理準備。

3.打開codeblocks新建一個project,選擇console application。新建完成後工程右鍵,選擇build option,配置Debug的Search directories的Compiler和Linker,以及Linker settings。
其中,Compiler添加要引入的頭文件位置/usr/local/include/opencv/usr/local/include/opencv2
Linker添加庫位置/usr/local/lib
Linker settings的Link libraries添加/usr/local/lib下opencv的那些.so文件。

測序程序如下:

#include <opencv2/opencv.hpp>
 using namespace cv;

int main()
{
    VideoCapture cap(0);
    if (!cap.isOpened())
    {
        return -1;
    }
    Mat frame;
    while (1)
    {
        cap >> frame;
        imshow("當前視頻", frame);
        waitKey(10);
    }
    return 0;
}

講完了codeblocks編譯運行,接下來講講用make編譯opencv工程。
Makefile如下:

SRC=$(shell find . -name "*.cpp")
OBJ=$(SRC:.c=.o)
OUT=test `pkg-config --libs opencv`
CC=g++

$(OUT):$(OBJ)  
    $(CC) $(OBJ) -o $(OUT)
clean:
    rm -rf $(OBJ) $(OUT)

新建一個文件夾,加入main.cpp及Makefile,然後在該目錄下運行make,之後就會生成一個test文件。命令行再輸入./test,這樣項目項目就運行完畢了。如果想用樹莓派做opencv的項目可以考慮用make的方法。

發佈了29 篇原創文章 · 獲贊 8 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章