1. 程式人生 > 實用技巧 >ubuntu18 cuda10.0 opencv4.4 anaconda 編譯python介面

ubuntu18 cuda10.0 opencv4.4 anaconda 編譯python介面

    首先安裝一些依賴
    sudo apt-get install -y build-essential checkinstall cmake pkg-config yasm git gfortran
    # 新增源,防止可能會出現的找不到所需安裝的庫的情況
    sudo add-apt-repository -y "deb http://security.ubuntu.com/ubuntu xenial-security main"
    sudo apt-get update
    sudo apt-get install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
    sudo apt
-get install -y libjpeg8-dev libjasper-dev libpng12-dev libtiff5-dev libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev libxine2-dev libv4l-dev sudo apt-get install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgtk2.0-dev libtbb-dev libatlas-base-dev libfaac-dev libmp3lame-dev libtheora-dev libvorbis-dev libxvidcore-dev libopencore-amrnb-dev libopencore-amrwb-dev x264 v4l-utils
安裝Python3支援需要的庫
sudo apt install python3-dev python3-numpy
安裝一些可選庫
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev
opencv4.4下載:https://github.com/opencv/opencv/releases/tag/4.4.0
解壓後,將opencv_contrib-4.4.0放入opencv-4.4.0的資料夾內。
cd opencv-4.4.0
mkdir build
cd build
cmake 
-DCMAKE_BUILD_TYPE=RELEASE \ -DCMAKE_INSTALL_PREFIX=/usr/local \ -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-4.4.0/modules .. \ -DWITH_CUDA=1 \ -DENABLE_FAST_MATH=1 \ -DCUDA_FAST_MATH=1 \ -DWITH_CUBLAS=1 \ -DOPENCV_GENERATE_PKGCONFIG=1 \ -DCUDA_GENERATION=Pascal .. \ -DPYTHON_DEFAULT_EXECUTABLE=/home/xxx/anaconda3/envs/py3.7/bin/python3 \ #路徑要根據自己的實際情況改變 -DBUILD_opencv_python3=ON \ -DBUILD_opencv_python2=OFF \ -DPYTHON3_EXECUTABLE=/home/xxx/anaconda3/envs/py3.7/bin/python3 \ ##路徑要根據自己的實際情況改變 -DPYTHON3_INCLUDE_DIR=/home/xx/anaconda3/envs/py3.7/include/python3.7m \ #路徑要根據自己的實際情況改變 -DPYTHON3_LIBRARY=/home/xxx/anaconda3/envs/py3.7/lib/libpython3.7m.so.1 \ #路徑要根據自己的實際情況改變 -DPYTHON_NUMPY_PATH=/home/xxx/anaconda3/envs/py3.7/lib/python3.7/site-packages \ #路徑要根據自己的實際情況改變 -DINSTALL_PYTHON_EXAMPLES=ON \ -DPYTHON3_PACKAGESS_PATH=/home/xxx/anaconda3/envs/py3.7/lib/python3.7/site-packages #路徑要根據自己的實際情況改變
注意事項1:
IPPICV下載失敗,檢視CMakeDownloadLog.txt 獲取下載地址https://raw.githubusercontent.com/opencv/opencv_3rdparty/a56b6ac6f030c312b2dce17430eef13aed9af274/ippicv/ippicv_2020_lnx_intel64_20191018_general.tgz 使用迅雷下載,將下好的.tgz檔案放在opencv-4.4.0資料夾內,並修改/3rdparty/ippicv/ippicv.cmake的43行:
  1. "file:///home/xx/opencv-4.4.0/"
  2. #"https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/"
注意事項2:
可能還會出現缺少boostdesc_bgm.i 等等檔案,下面連結百度雲盤下載這個檔案後,放入到"opencv_contrib-4.4.0\modules\xfeatures2d\src"目錄下
注意事項3
避免編譯失敗,找不到對應檔案。 將opencv
-4.4.0/modules/features2d拷貝到build目錄下
sudo make -j4
sudo make install
最後一步
將/opencv/build/lib/python3/cv2.cpython-37m-x86_64-linux-gnu.so復~/anaconda3/lib/python3.7/site-packages/資料夾中  #根據自己的實際情況進行修改

百度雲連結
連結: https://pan.baidu.com/s/1w0oPJEftVjzbNlir6uKyhQ  密碼: fln0