1. 程式人生 > >Ubuntu16.04 openCV3.1.0 安裝

Ubuntu16.04 openCV3.1.0 安裝

完成後 rect download usr ces family htm 解壓 form

安裝依賴

sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install checkinstall yasm libtiff5-dev libjpeg-dev libjasper-dev libdc1394-22-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev python-dev python-numpy libtbb-dev libqt4-dev libgtk2.0
-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils libeigen3-dev

下載openCV

下載opencv3.1.0 Sources

下載完後解壓。

安裝openCV

cd opencv-3.1.0
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

在此過程中,如果網速不太好的時候很有可能會出現錯誤:ICV: Downloading ippicv_linux_20151201.tgz 超時。

可以提前將該文件下載好,ippicv_linux_20151201.tgz 下載。

下載完後替換opencv-3.1.0/3rdparty/ippicv/downloads/linux-*目錄下的同名文件,重新cmake。

optional(顯示指定一些編譯內容):

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1
-D WITH_CUDA=ON -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 -D CUDA_GENERATION=Auto -D WITH_GSTREAMER_0_10=OFF ..

然後在build目錄下:

make -j4  #-j4表示四核運算,可根據電腦配置選擇。
sudo make install

會有在make -j4遇到G++版本太高的問題,解決方法:

修改opencv-3.1.0目錄下的CMakeList.txt文件,在開頭加入

set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS} -D_FORCE_INLINES”)

然後重新cmake,再make -j4,再make install

如遇到‘NppiGraphcutState’ has not been declared,是opencv與cuda8.0不兼容導致的。解決方法:

在path/to/opencv/modules/cudalegacy/src/graphcuts.cpp中,把

 #if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)

改為

#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION>=8000)

使用cmake-gui來編譯opencv

除了上面命令行的安裝方法,還可以使用cmake-gui來編譯。

執行cmake-gui打開 cmake gui界面,依次選擇source code為opencv源文件,編譯結果保存至~/opencv-3.1.0/release 文件夾下。註意參數列表中CMAKE_BUILD_TYPE 和CMAKE_INSTALL_PREFIFIX的設置。

技術分享圖片

最後點擊configure->generate。

接下來進入目錄:~/opencv3.1.0/release/,執行make和make install 命令即可完成opencv安裝。

配置pkg-config

安裝完成後,配置pkg-config,用於管理opencv安裝庫

sudo vim /etc/ld.so.conf

將下面的目錄 /usr/local/lib 添加到文件中

sudo ldconfig -v
export  PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig 

使用以下命令查看pkg-config配置信息:

pkg-config --libs opencv

測試opencv安裝是否成功

測試程序采用opencv自帶的sample:

cd ~/opencv-3.1.0/samples/    #根據自己的實際目錄進行選擇
cmake .
make 
cd cpp/

裏面就是剛剛make的文件,可以選擇幾個可執行文件進行執行,測試opencv是否安裝成功。

多版本的處理

如果你又裝了opencv2.4.9和opencv3.1.0,並且在你的工程裏指定使用opencv3.1.0,在你的cmakelist.txt中修改:

# 尋找OpenCV庫
find_package( OpenCV REQUIRED )  //修改成:find_package( OpenCV 3.1 REQUIRED ),也就是加上版本號!
# 添加頭文件
include_directories( ${OpenCV_INCLUDE_DIRS} )

# 並將可執行文件鏈接OpenCV庫
target_link_libraries( imageBasics ${OpenCV_LIBS} )

Ubuntu16.04 openCV3.1.0 安裝