參考地址:
http://www.cnblogs.com/arkenstone/p/6490017.html
1.安裝相關環境
$ 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 # 處理圖像所需的包
$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
$ sudo apt-get install libxvidcore-dev libx264-dev # 處理視頻所需的包
$ sudo apt-get install libatlas-base-dev gfortran # 優化opencv功能
$ sudo apt-get install ffmpeg
2.下載opencv(可以用迅雷下載後複製到虛擬機比較快,複製後要解壓出來)
$ wget https://github.com/opencv/opencv/archive/3.2.0.zip # 從github上直接下載或者clone也可
$ wget https://github.com/opencv/opencv_contrib/archive/3.2.0.zip
3.配置編譯opencv
$ cd opencv-3.2.0
$ mkdir build $ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/home/fanzong/anaconda2/envs/tensorflow \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=OFF \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.2.0/modules \
-D PYTHON_EXCUTABLE=/home/fanzong/anaconda2/envs/tensorflow/bin/python \
-D WITH_TBB=ON \ -D WITH_V4L=ON \
-D WITH_QT=ON \ # 如果qt未安裝可以刪去此行;若因爲未正確安裝qt導致的Qt5Gui報錯,可將build內文件全部刪除後重新cmake,具體可以參考[這裏](http://stackoverflow.com/questions/17420739/opencv-2-4-5-and-qt5-error-s)
-D WITH_GTK=ON \
-D WITH_OPENGL=ON \
-D BUILD_EXAMPLES=ON .. # cmake命令的使用方式:cmake [<some optional parameters>] <path to the OpenCV source directory>。如果命令報錯的話可以試着把-D後面的空格去掉在執行一次。
$ make -j4 $ sudo make install
$ sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
$ sudo ldconfig
CMAKE_INSTALL_PREFIX:查看命令 python -c "import sys; print sys.executable"
PYTHON_EXCUTABLE:查看命令 python -c "import sys; print sys.prefix"
OPENCV_EXTRA_MODULES_PATH:下載後解壓的路徑裏面找
Ubuntu下關於安裝opencv3.x時一直downloading protobuf-cpp-3.1的問題:
http://download.csdn.net/download/specialshoot/9753560
4.完成安裝並測試
安裝完成以後,重啓下機器。編譯之後應該會在CMAKE_INSTALL_PREFIX/lib/python2.7/dist-packages/目錄下找到cv2.so。打開python console,檢測opencv版本python -c "import cv2; print cv2.__version__"
。如果正確安裝的話則會輸出3.2.0。