1安裝OpenCV3.4.0+contrib
1 在終端中敲入以下兩句
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
sudo apt-get update
進入官網 : http://opencv.org/releases.html , 選擇 3.4.0 版本的 sources , 下載 opencv-3.4.0.zip 。
unzip opencv-3.4.0.zip unzip opencv_contrib.3.4.0.zip -d opencv-3.4.0
將opencv_contrib解壓到了opencv-3.4.0目錄下。
安裝依賴庫和cmake ,如果提醒需要apt-get update,那就先sudo su進入root權限,再sudo apt-get update,然后在執行下面命令
sudo apt-get install cmake
sudo apt-get install build-essential 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
1.1正常安裝
命令行進入已解壓的文件夾 opencv-3.4.0 目錄下,執行:
mkdir build # 創建編譯的文件目錄 cd build
配置模塊
sudo apt-get install cmake-gui
配置cmake-gui
cmake-gui ..(./cache是一個在opencv主文件夾里的一個隱藏文件 使用ctrl+h隱藏文件夾)
使用下載好的./cache覆蓋./cache文件
確定路徑沒問題點擊configure -> finish
CMAKE_BUILD_TYPE makmRELEASE
CMAKE_INSTALL_PREFIX /usr/local/(如果重裝記得刪除原來的)
OPENCV_EXTRA_MODULES_PATH ----請填上對應/Opencv3/opencv-3.4.0/opencv_contrib-3.4.0/modules/
WITH CUDA ON
configure ——> Generate
make -j8 #編譯
在98%的時候會等很久很久,屬於正常現象。編譯過程很順利,編譯成功后安裝:
sudo make install #安裝
安裝完成后通過查看 opencv 版本驗證是否安裝成功:
pkg-config --modversion opencv
卸載OpenCV的方法:進入OpenCV解壓文件夾中的buid 文件夾:
cd /home/ccem/opencv-3.4.0/build
運行:
sudo make uninstall
然后把整個opencv-3.4.0文件夾都刪掉。隨后再運行:
sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV /usr/local/bin/opencv* /usr/local/lib/libopencv
把一些殘余的動態鏈接文件和空文件夾刪掉。有些文件夾已經被刪掉了所以會找不到路徑。
1.2cuda版本opencv安裝
這里主要說一下不同的配置,主要是要編譯CUDA版本的OpenCV,所以在cmake的時候要將開關打開。
cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D INSTALL_C_EXAMPLES=ON \ -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib-3.4.0/modules \ -D PYTHON3_EXECUTABLE=/usr/bin/python3 \ -D PYTHON_EXECUTABLE=/usr/bin/python \ -D WITH_TBB=ON \ -D WITH_V4L=ON \ -D WITH_QT=ON \ -D WITH_GTK=ON \ -D WITH_OPENGL=ON \ -D BUILD_EXAMPLES=ON \ -D WITH_CUDA=ON \ -D BUILD_TIFF=ON \ -D INSTALL_PYTHON_EXAMPLES=ON ..
cmake之后,可以看到cuda模塊的都配置成功了。
接下來就執行make
編譯完成。
執行安裝。
sudo make install
安裝完成。
用下面的命令查看一下安裝結果。
pkg-config opencv --cflags --libs
2 配置環境
sudo make install 執行完畢后OpenCV編譯過程就結束了,接下來就需要配置一些OpenCV的編譯環境首先將OpenCV的庫添加到路徑,從而可以讓系統找到
sudo gedit /etc/ld.so.conf.d/opencv.conf
執行此命令后打開的可能是一個空白的文件,不用管,只需要在文件末尾添加
/usr/local/lib
執行如下命令使得剛才的配置路徑生效
sudo ldconfig
這個時候可能會提示錯誤如下圖所示(上部分)
sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 不是符號連接
/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 不是符號連接
出現這個錯誤可能是由於系統BUG所致
只需要分別輸入上面圖下部分的四行命令就可解決
sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1 sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1
配置bash
sudo gedit /etc/bash.bashrc
在最末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH
保存,執行如下命令使得配置生效
source /etc/bash.bashrc
更新
sudo updatedb
找到
cd到opencv-3.4.0/samples/cpp/example_cmake目錄下
我們可以看到這個目錄里官方已經給出了一個cmake的example我們可以拿來測試下
按順序執行
cd ../samples/cpp/example_cmake cmake . make ./opencv_example
即可看到打開了攝像頭,在左上角有一個hello opencv
即表示配置成功