OpenCV入門筆記(一) Linux下的安裝


關於OpenCV,有中文的官方站點。里面翻譯了官網的教程和API等。中文官方Tutorials見這里:【Tutorials


一、Ubuntu下的安裝

能夠選擇直接從庫里安裝,或者手動編譯安裝,請參考這里:【Installation in Linux

1. 從repository(庫)中安裝

sudo apt-get install libopencv-dev python-opencv

2. 手動編譯安裝

首先要解決OpenCV的依賴問題,直接在終端下執行

sudo 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

從【sourceforge】上面下載下來源代碼,只是不知道為啥。我的Ubuntu15.04不能編譯open-2.4.11,僅僅能再下個opencv-2.4.10。進去文件夾。直接用cmake編譯例如以下

mkdir build
cd build
cmake ..
sudo make
sudo make install

3. 樣例

編譯完了就先來跑個樣例吧,見這里:【Linux下的樣例】,事實上就是個尋常的C++樣例,新建cpp和txt文件,編譯執行即可。


DisplayImage.cpp

#include <cv.h>
#include <highgui.h>

using namespace cv;
int main( int argc, char** argv )
{
    Mat image;
    image = imread( argv[1], 1 );

    if( argc != 2 || !image.data )
    {
        printf( "No image data \n" );
        return -1;
    }

    namedWindow( "Display Image", CV_WINDOW_AUTOSIZE );
    imshow( "Display Image", image );
    waitKey(0);

    return 0;
}

CMakeLists.txt

project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )

編譯

cd <DisplayImage_directory>
cmake .
make

執行

./DisplayImage lena.jpg

著名的lena圖能夠給個鏈接:【lena圖


二、用Python開發OpenCV

發現除了C++。Python對OpenCV的支持也特別好。

官方的接口文檔中,一般都會給出C++。C和Python三種接口。

Python支持

首先。安裝python的opencv模塊

sudo apt-get install python-opencv

以下給個樣例

import cv2

img = cv2.imread("lena.jpg") # load image
cv2.imshow("image", img)    # show image
cv2.waitKey(0)  # wait until key pressed

命名為test.py。直接在終端里

python test.py
# or
python ./test.py

直接執行就能夠了。


這個樣例僅僅是簡單的把圖片載入進來,並依照原來的大小顯示出來,這幾個函數也有重載。詳細使用方法就要去查了。
在github上發現一個大牛寫的python-opencv的文檔,太棒了,鏈接在這里:【OpenCV-Python Tutorials】。

有函數不會用的,直接在左邊搜索即可了。

能夠和官方的【Tutorials】結合起來看。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM