Pytorch, TensorflowのGPU版とOpneCV環境の構築方法

2020年7月10日時点での情報です。
Pytorch v1.5.1, Tensorflow v2.1.0のGPU版とOpneCV環境の構築方法

GPU: RTX2060Super
OS: Windows10Pro 64bit

Python3.7 Anaconda
CUDA10.2
OpenCV 4.2

CUDAとcuDNNのインストール

まずは、CUDA10.2をインストールします。
正しくインストールできたかどうかはコマンドプロンプト
>nvcc -V
で確認する。
cuDNNをインストールする。cuDNNはTensorflowで要求されるので、必要なバージョンを確認してインストール。
今回は、cuDNN v7.6.5 for CUDA 10.2 を選択。
ダウンロードしたcuDNNパッケージを解凍し、インストールガイドに従って3つのファイルをコピーする。

pytorch 1.5.1のインストール

(1) まずはanaconda 仮想環境を作成する。
"pytorch15GPUCV"という名前で作成。pythonのバージョンは3.7を選択します。
ついでにjupyter notebookもインストールしておきます。

(2) pytorchのページに行くと、バージョン等を選択すると必要なインストールコマンドが表示されるので、
指示通りにインストールする。

(3) OpneCV4のインストール
以下のサイトを参考にしました。
https://qiita.com/mml/items/fb9f6e66746be351fbc3
>pip install opencv-python
>pip install opencv-contrib-python

(4) 他のパッケージのインストール
>conda install matplotlib

tensorflow 2.1.0のインストール

tensorflow公式ページのインストール>GPUサポートを見るとCUDA10.1と書いてありますが、今回はCUDA10.2でtensorflowの環境を構築しています。
CUDA10.2で動作はしているのでまあ大丈夫なのでしょう。

(1) まずはanaconda 仮想環境を作成する。
"tensorflow210CV"という名前で作成。pythonのバージョンは3.7を選択します。
ついでにjupyter notebookもインストールしておきます。

(2) tensorflowのインストール
> pip install tensorflow
とやると自分の環境ではtensorflowがGPU版を認識してくれない。
以下のページを参考にして、
https://medium.com/lsc-psd/tensorflow2-1%E3%81%A7cuda10-1%E3%81%AA%E3%81%AE%E3%81%ABgpu%E3%81%8C%E8%AA%8D%E8%AD%98%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84%E5%95%8F%E9%A1%8C%E3%81%AE%E8%A7%A3%E6%B1%BA%E6%B3%95-6be5137ec216

以下のコマンドでインストールしました。
> conda install tensorflow=2.1.0=gpu_py37h7db9008_0

(参考)2020/7/10現在でpython3.7+GPUで一番新しいものは、
https://repo.anaconda.com/pkgs/main/win-64
を見ると
tensorflow-2.1.0-gpu_py37h7db9008_0.tar.bz2
のようだ。

あとはpytorchの時と同様にopenCVとその他のパッケージをインストールします。

(3) OpneCV4のインストール
以下のサイトを参考にしました。
https://qiita.com/mml/items/fb9f6e66746be351fbc3
>pip install opencv-python
>pip install opencv-contrib-python

(4) 他のパッケージのインストール
>conda install matplotlib

インストールの確認

インストールを確認するための簡単なコードを作成し、pytorch, tensorflowでGPUが認識されていて、OpenCVが動作することも確認しました。