Linux 下編譯安裝OpenCV


Cmake的安裝

OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安裝cmake。

ubuntu下安裝cmake比較簡單,

apt-get install cmake

如果覺得自帶的版本不符合要求,可以下載安裝包。

下載最新版的安裝包:

http://www.cmake.org/cmake/resources/software.html

這里下載已經編譯好的,這樣只需要解壓至需要的目錄下即可使用:

tar zxvf cmake-2.8.10.2-Linux-i386.tar.gz –C /usr/local/

設置環境變量:

sudo gedit /home/emouse/.bashrc

在打開的文件后添加:

export PATH=$PATH:/usr/local/cmake-2.8.10.2-Linux-i386/bin

查看版本,測試是否安裝成功:

root@emouse:/home# cmake --version
cmake version 2.8.10.2

Ubuntu 下安裝 OpenCV

軟件環境:

Ubuntu 12.04

OpenCV 2.4.3

Cmake 2.8.10.1

gcc 4.6.3 (系統默認)

 

1、先安裝 libgtk2.0-dev 和 pkg-config,,否則后期編譯運行程序會出現類似如下的問題:

OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvNamedWindow, file /usr/local/opencv/OpenCV-2.0.0/src/highgui/window.cpp, line 100
terminate called after throwing an instance of 'cv::Exception'

通過網絡獲取安裝:

# apt-get install libgtk2.0-dev
# apt-get install pkg-config

 

2、下載OpenCV ,文件名:OpenCV-2.4.3.tar.bz2,下載地址:

http://www.opencv.org.cn/index.php/Download

解壓:

#tar jxvf OpenCV-2.4.3.tar.bz2

得到文件夾 OpenCV-2.4.3

這里新建一個文件夾OpenCV-x86作為PC編譯目錄。

 

3、#cmake-gui 打開cmake的gui界面,開始進行配置。

cmake主要用於進行一些配置設定,從而生成用於編譯安裝的makefile文件,通過界面進行參數的配置和設定,非常直觀、方便。在配置中指定源碼和編譯目錄以及生成方式。

按照下圖的步驟進行配置:

image


點擊Finish后cmake即載入默認配置,如下圖所示:

image

如圖所示,窗口的中間部分即配置列表,這里和使用cmake命令直接生成makefile文件一致的,如

$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/home/OpenCV

只是這里通過圖形界面的方式來進行配置,更加直觀方便。

這里指對一個地方進行修改,CMAKE_BUILD_TYPE 值輸入RELEASE,其他保持不變,圖中藍色虛線部分顯示了默認的安裝目錄,生成makefile文件最后執行 make install時就會安裝到這個目錄,這里可以根據個人需求更改。在這里的配置中我勾選了WITH_QT 去掉了WITH_TIFF,其他更多的配置也不清楚,OpenCV中文網站也沒找到系統的說明,這里暫時不深究,點擊Generate生成配置文件。

進入OpenCV-x86目錄可以查看Makefile文件,可以留意文件的生成時間是否和剛才的生成時間一致。

4、接下來在OpenCV-x86 分別執行make和make install即可完成編譯安裝。

5、安裝完成后需要對系統相關環境變量進行配置:

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
保存退出,在運行下面的例程之前,需要重新開啟終端來使配置生效。

例程測試

拷貝步驟2中解壓的的/OpenCV-2.4.3/samples/c 將c文件夾拷貝出來,下面運行一下這里面的一個例程,初步體驗下OpenCV。拷貝完成后進入這個文件夾:

chmod +x build_all.sh

./build_all.sh

這樣就對例程目錄下的源文件進行了編譯,這里運行一個人臉檢測的程序,下面摘錄自本文參考資料3。

Some of the training data for object detection is stored in /usr/local/share/opencv/haarcascades. You need to tell OpenCV which training data to use. I will use one of the frontal face detectors available. Let’s find a face:

終端中運行:

./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg

得到的結果如下圖:

imageimage

到這里基本的就寫完了,OpenCV我之前也沒有任何基礎,這里只是把平台配置起來跑通,后續的工作還有很多,歡迎各位參考。轉載請注明http://emouse.cnblogs.com/

本文相關及推薦參考:

【1】http://www.samontab.com/web/2010/04/installing-opencv-2-1-in-ubuntu/

【2】http://blog.csdn.net/jasonque/article/details/8267983

【3】http://www.rosoo.net/a/201203/15774.html


免責聲明!

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



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