トップページ -> インストール,設定,利用 -> Windows -> OpenCV 最新版のビルドとインストール,CUDA 対応可能(ソースコードを使用)(Windows 上)
[サイトマップへ], [サイト内検索へ]

OpenCV 最新版のビルドとインストール,CUDA 対応可能(ソースコードを使用)(Windows 上)

ユースケース: OpenCV を Windows で使いたい.CUDA に対応させたい.OpenCV の最新版を追いかけたい.

ここで行うこと: Windows で OpenCV (最新版) をソースコードからビルドする. Python 用の OpenCV パッケージもビルドする.

参考 Web ページ: https://jamesbowley.co.uk/accelerating-opencv-4-build-with-cuda-intel-mkl-tbb-and-python-bindings/

謝辞:OpenCV および関連ソフトウエア類の作者に感謝します


前準備

Python のインストール

git, cmake, wget, 7zip のインストール

以下,Windows に Python, git, cmake, wget, 7zip をインストール済みであるものとして説明を続ける.

MSVC ビルドツール (Build Tools) のインストール

前準備として、MSVC ビルドツールのインストールを終えておくこと

MSVC ビルドツール (Build Tools) のインストールについては、 「別のページ」で説明している

(NVIDIA GPU を使うとき)NVIDIA グラフィックスボード・ドライバ,NVIDIA CUDA ツールキットのインストール

Windows でのインストール手順の詳細は,「別のページ」で説明している

参考Webページ:

(NVIDIA GPU を使うとき)NVIDIA cuDNN のインストール

Windows でのインストール手順の詳細は,別ページで説明している

インストールの要点:https://developer.nvidia.com/cudnn から cuDNN を入手し,C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1 などに展開(解凍)し,パスを通しておくこと

(オプション)OpenBLAS のインストール

OpenBLAS と連携させたいときは、前もって OpenBLAS をインストールしておく

(オプション)VTK のインストール

VTK と連携させたいときは、前もって VTK をインストールしておく

(オプション)Python 2.7 を使いたいとき

Python 2.7 を使うときは、次のような手順で、OpenCVとの連携等に必要になるPythonパッケージをインストールしておく

  1. Windows で,コマンドプロンプトを管理者として実行

    [image]
  2. Python 2 にnumpy パッケージをインストール
    C:\Python27\Scripts\pip install --no-deps -U numpy
    

    [image]
  3. Python の numpy, flake8 パッケージをインストール
    pip install -U numpy
    pip install -U flake8
    

OpenCV のインストール(ソースコードを使用)

OpenCV を C:\opencv, C:\opencv_contrib, にインストールする

  1. VS 2019用 x64 Native Tools コマンドプロンプトを開く

    Windows のメニューで「Visual Studio 2019」の下の「x64 Native Tools コマンドプロンプト (Command Prompt)」(あるいは類似名のもの)を選ぶ

    ※ 「x64 Native Tools コマンドプロンプト (Command Prompt)」がないときは, MSVC ビルドツールのインストールを行う. MSVC ビルドツールのインストール手順は,「別のページ」で説明している.

  2. ディレクトリを削除する
    mkdir C:\tools
    cd C:\tools
    rmdir /s /q opencv
    rmdir /s /q opencv_contrib
    

    [image]
  3. OpenCV と OpenCV contrib のソースコードをダウンロード
    cd C:\tools
    git clone https://github.com/opencv/opencv.git
    git clone https://github.com/opencv/opencv_contrib.git
    

    [image]
  4. Python 3 のバージョンを調べる

    バージョン 3.6 系列なのか、バージョン 3.7 系列なのか、調べる.この情報はあとで使う.

    下の実行例では、Python のバージョンは 3.7 系列(3.7.3) である

    python --version
    

    [image]
  5. Python 3 の場所を調べる

    C:\Users\user\AppData\Local\Programs\Python\Python37\Python.exe」のように表示される.この結果は,あとの設定で使う.

    where python
    

    [image]
  6. cmake の実行

    cmake でのオプションについて

    cmake の実行手順例は次の通り

    cd c:\tools
    cd opencv
    rmdir /s /q build
    mkdir build
    cd build
    del CMakeCache.txt
    "C:\Program Files\Cmake\bin\cmake" -G "Visual Studio 16 2019" -T host=x64 ^
    -DCMAKE_BUILD_TYPE=RELEASE ^
    -DOPENCV_EXTRA_MODULES_PATH=C:\tools\opencv_contrib\modules ^
    -DINSTALL_TESTS=ON ^
    -DINSTALL_C_EXAMPLES=ON ^
    -DWITH_PYTHON=ON ^
    -DINSTALL_PYTHON_EXAMPLES=ON ^
    -DBUILD_opencv_pytbhon2=ON ^
    -DPYTHON_DEFAULT_EXECUTABLE=C:/Users/user/AppData/Local/Programs/Python/Python37/python.exe ^
    -DPYTHON2_EXECUTABLE=C:/Python27/python.exe ^
    -DPYTHON2_INCLUDE_DIR=C:/Python27/include ^
    -DPYTHON2_LIBRARY=C:/Python27/libs/python27.lib ^
    -DPYTHON2_NUMPY_INCLUDE_DIRS=C:/Python27/lib/site-packages/numpy/core/include ^
    -DBUILD_opencv_python3=ON ^
    -DPYTHON3_EXECUTABLE=C:/Users/user/AppData/Local/Programs/Python/Python37/python.exe ^
    -DPYTHON3_INCLUDE_DIR=C:/Users/user/AppData/Local/Programs/Python/Python37/include ^
    -DPYTHON3_LIBRARY=C:/Users/user/AppData/Local/Programs/Python/Python37/libs/python37.lib ^
    -DPYTHON3_NUMPY_INCLUDE_DIRS=C:/Users/user/AppData/Local/Programs/Python/Python37/lib/site-packages/numpy/core/include ^
    -DBUILD_EXAMPLES=ON ^
    -DWITH_OPENGL=ON ^
    -DOPENCV_ENABLE_NONFREE=OFF ^
    ..
    

    cmake でのオプションの調整

  7. cmake の実行結果の確認

    Python 2, Python 3 のところが自動設定されるので確認する.

    ※ 下図のとおりになるとは限らない.

    ※ 最後のコマンドの実行の結果,エラーメッセージが出た場合には,自動設定がうまくいっていない.設定を変えてやり直す

    ※ 但し,Python 2 を使わない場合,Python 3 を使わない場合は,Python の部分がうまく設定されていなくても無視すること.

    [image]
  8. ソースコードからビルドし、インストールする
    cmake --build . --config RELEASE --target INSTALL
    

    [image]
  9. 結果の確認

    エラーメッセージが出ていないことを確認.

    ※ 黄色の警告メッセージは無視しても良い

    [image]

    cmake の設定で,NVIDIA CUDA ツールキット, NVIDIA cuDNN を使うように設定したときは、次のような結果になる

    [image]
  10. Windowsのシステム環境変数Pathの設定

    次を追加する

    C:\Tools\opencv\build\bin\release
    
  11. Python 関係のファイルもインストールされていることを確認

    dir C:\Users\user\AppData\Local\Programs\Python\Python37\lib\site-packages\cv2
    

    [image]

    ※ Python 関係のファイルがインストールされていない場合でも,Python ローダ (python loader) を使用することは推奨しない.(Python ローダの利用では,エラーが出たときに,Python のインストールからやり直す可能性がある.Python ローダをよく知らずに実行するのは避けること)

  12. Python でOpenCV のバージョン確認

    python -c "import cv2; print( cv2.__version__ )"
    

    [image]

    ※ このとき 「Original error was: DLL failed: 指定されたモジュールが見つかりません」 というエラーメッセージが出ることがある.

    [image]
    • Windows のシステム環境変数 Path に「C:\Tools\Anaconda3\Library\bin」、「C:\Tools\opencv\build\bin\release」 を追加してから、 新しいコマンドプロンプトで実行してみる
  13. OpenCV の「cmake でのオプション」に VTK, OpenNI2, OpenBLAS を使うように設定したとき、このメッセージが出ることがあります. システム環境変数 Path の設定で直ると思っていますが、確認できていません。

ここから先は書きかけ
    ANT_DIR
    GSTREAMER_DIR

本サイトのサイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.

問い合わせ先: 金子邦彦(かねこ くにひこ) [image]