Ubuntu18.04: OpenCV3.4.9 (CUDA10.2)のインストール

Ubuntu18.04にOpenCV3.4.9をGPU搭載のラップトップ用にソースからビルドしインストールしたときのメモ。GPUを使いたいのでソースからビルドした。インストール方法は以下のリンクの手順を参考にした。

環境

  • Laptop
    • Razer Blade 15
      (CPU: Intel i7-8750H, Memory:16GB, GPU: Nvidia 1070 Max-Q Design, Memory: 8GB)
  • Linux
    • Voyager 18.04.3 (xubuntu18.04.3)
    • Kernel 5.0.0.-37-generic
    • gcc/g++ 7.4.0
    • CUDA 10.2
    • python3.6

準備

  • $ sudo apt install build-essential ccache
  • $ sudo apt install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev tesseract-ocr libtesseract-dev
  • $sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev 
  • $ sudo apt-get install libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev libgtk2.0-dev libgtk-3-dev libpng-dev libjpeg-dev libopenexr-dev libtiff-dev libwebp-dev
  •  python3関連のインストール
    • $ sudo apt install python3-dev python3-numpy
    • $ sudo apt install python3-pip
  • python2関連のインストール
    • $ sudo apt install python-dev python-numpy

ソースコードのダウンロード

  • $ cd
  • $ mkdir src
  • $ cd src
  • 以下をクリックしてopencv-3.4.9を~/srcにダウンロードする。
  • $ unzip opencv-3.4.9.zip
  • $ ln -s opencv-3.4.9  opencv
  •  以下をクリックしてopencv_contrib-3.4.9をダウンロードする。
  • $ unzip opencv_contrib-3.4.9.zip
  • $ ln -s opencv_contrib-3.4.9 opencv_contrib

ソースのビルド

  • $ cd ~/src/opencv
  • $ mkdir build
  • $ cd build
  • $ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=~/src/opencv_contrib/modules -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_VTK=ON -D INSTALL_C_EXAMPLES=ON -D PYTHON3_EXECUTABLE=/usr/bin/python3.6  -D PYTHON_INCLUDE_DIR=/usr/include/python3.6 -D PYTHON_INCLUDE_DIR2=/usr/include/x86_64-linux-gnu/python3.6m -D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/include/python3.6m/numpy -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 -D WITH_OPENGL=ON -D WITH_CUDA=ON -D CUDA_ARCH_BIN="6.1" -D CUDA_ARCH_PTX="6.1"  -DBUILD_opencv_cudacodec=OFF ..
  • $ make -j$(nproc)
    • 私の環境では、コンパイルが終わるまで20分ぐらいかかった。

インストール

  • $ sudo make install
  • $ sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
  • $ sudo  ldconfig

テスト

  • CUDAを有効にしてソースからビルドしたので、gpuを使うexample_gpu_opticalflowを試す。
  • $ cd ~/src/opencv/build
  • $ cp -aur ~/src/opencv/samples/data  .
  • $ cd ~/src/opencv/build/bin
  • $ ./example_gpu_opticalflow
  • 端末に下のような結果とウインドウが表示されれば成功。私の環境ではウインドウが重なっていたので、移動して並べた結果。お疲れ様!
    • Usage : ./example_gpu_optical_flow <frame0> <frame1>
      Brox : 0.146902 sec
      LK : 0.0252506 sec
      Farn : 0.0109897 sec
      TVL1 : 0.205551 sec

 

コメント

タイトルとURLをコピーしました