1. 安裝必需的包
我們先清除x264、ffmpeg及其相關的包,然後手動編譯安裝這兩個包。具體參考這篇博文 x264和ffmpeg的安裝。
安裝用於構建debian包的依賴
sudo aptitude install build-essential cmake git pkg-config
安裝圖像處理依賴
sudo aptitude install python-dev libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
視頻處理依賴
sudo aptitude install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev
圖形界面依賴
sudo aptitude install libgtk2.0-dev libgtk-3-dev
高性能計算依賴
sudo aptitude install libatlas-base-dev gfortran pylint
gstreamer依賴
sudo aptitude install libgstreamer1.0-0 libgstreamer1.0-dev gstreamer1.0-tools gstreamer1.0-plugins-base libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-ffmpeg libgstreamer0.10-0 libgstreamer0.10-dev gstreamer0.10-tools gstreamer0.10-plugins-base libgstreamer-plugins-base0.10-dev gstreamer0.10-plugins-good gstreamer0.10-plugins-ugly gstreamer0.10-plugins-bad gstreamer0.10-ffmpeg
python依賴
sudo aptitude install python2.7-dev python3.5-dev python-numpy
2. 下載opencv
opencv下載地址https://opencv.org/releases/
opencv_contrib下載地址https://github.com/opencv/opencv_contrib/tree/3.4 (包含很多有用的算法)
unzip opencv-3.4.5.zip; unzip opencv-3.4.zip
3. 安裝opencv
配置opencv
cmake -DWITHLAPACK=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.4/modules -DOPENCV_ENABLE_NONFREE=True ..
因爲在Ubuntu14 64位 CUDA的環境下,libatlas會造成opencv出錯,因此取消了對libatlas的依賴。把安裝位置設置在/usr/local,外部模塊的位置在../../opencv_contrib-3.4/modules。
編譯安裝opencv,並更新動態鏈接庫配置。
make j 24 && sudo make install && sudo ldconfig
4. 修改動態鏈接庫配置
在/etc/ld.so.config文件中的單獨一行加入/usr/local/lib/x86_64-linux-gnu/。然後
sudo ldconfig
然後新安裝的opencv就可以被其他包編譯使用了。