Ubuntu下安裝Opencv2.4.9 及實現python介面
本電腦配置為Ubuntu16.04+anaconda2+opencv2.4.9
參考部落格:
一、安裝依賴包
sudo apt-get install build-essential
sudo apt-get install libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev libswscale-dev libjasper-dev
安裝cmake
sudo apt-get install cmake
安裝pkg-config
sudo apt-get install pkg-config
二、編譯安裝過程
1、下載opencv原始碼,百度網盤或者官網,解壓(opencv-2.4.9)。
2、編譯。首先新建release資料夾,使用cmake來檢測編譯環境以及生成makefile以及其他project資訊,然後make編
譯(大概需要十幾分鍾),然後make install安裝。具體命令如下
cd opencv-2.4.9
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
make
sudo make install
上面有的部落格說也可以直接 (cmake .),但是這樣不會生成release資料夾,導致後面設定python的接口出現問題。
3、新增動態連結庫
在 /etc/ld.so.conf 檔案中最後一行新增 /usr/local/lib
上面的ld.so.conf檔案是隻讀檔案,沒有修改許可權,因此需要獲取root許可權後修改,
sudo su
獲取root許可權後使用如下命令開啟ld.so.conf
gedit /etc/ld.so.conf
開啟後在最後一行新增 /usr/local/lib,儲存。
4、使用下面的命令使opencv的相關連結庫被系統共享
sudo ldconfig
5、指定opencv的標頭檔案位置。
sudo gedit /etc/bash.bashrc
使用上述命令開啟bash.bashrc後,在最後一行新增
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
三、測試
1、在解壓的opencv目錄下找到 samples/c/build_all.sh,執行該檔案
cd samples/c/
./build_all.sh
編譯完後試一個人臉檢測的程式
./facedetect --cascade="/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg
執行結果
四、python介面
儘管目前opencv已經安裝成功,但是使用python呼叫opencv還是不行(import cv2)報錯。
我的電腦安裝的是anaconda2,找到/opencv-2.4.9/release/lib/cv2.so 檔案,將其拷貝到python的庫目錄,由於我安裝
的是anaconda2,所以需要拷貝到 ~/anaconda2/lib/python2.7/site-packages ,如果電腦使用的是ubuntu系統的
python,那麼需要拷貝到 /usr/local/lib/python2.7/dist-packages 。(如果提示許可權不夠,則使用sudo su進入root模
式,然後cp ~/opencv-2.4.9/release/lib/cv2.so /usr/local/lib/python2.7/dist-packages)
在終端輸入python , import cv2 即可成功