mpatacchiola/DeepGaze のインストールと動作確認(肌色領域の抜き出し,saliency の検出)(TensorFlow 1.15.5,Python 3.7 を使用)(Windows 上)

目次

  1. 前準備
  2. mpatacchiola/DeepGaze のインストール
  3. このページで説明のために使用するビデオ、写真
  4. mpatacchiola/DeepGaze を用いて肌色領域の抜き出し
  5. 付属のサンプルプログラムを動かしてみる
  6. mpatacchiola/DeepGaze を用いて saliency の検出

手順の要点: 前準備として,NVIDIA CUDA 10.0, NVIDIA cuDNN 7.6.5, Python 3.7, TensorFlow 1.15.5 等をインストール.

ソフトウェア等の利用条件等は,利用者で確認すること.

謝辞:ソフトウェアの作者に感謝します

参考Webページ https://www.github.com/mpatacchiola/DeepGaze

前準備

Visual Studio Community 2017 のインストール

NVIDIA CUDA 10.0 は Visual Studio Commnity 2017, 2015, 2013, 2012 と連携して動く機能がある.

NVIDIA CUDA 10.0 のインストールの前に, Visual Studio Commnity 2017 のインストールを行う.

Visual Studio Commnity 2017 のインストールは, https://visualstudio.microsoft.com/ja/vs/older-downloads/ で「2017」を選び,「ダウンロード」をクリック. その後表示されるダウンロードの画面で, 「Visual Studio Commnity 2017」を選ぶ. インストール時には「C++ によるデスクトップ開発」をチェックしてインストールする.

Python 3.7,Git,CMake のインストール(Windows 上)

Pythonは,プログラミング言語の1つ. Gitは,分散型のバージョン管理システム. CMakeは,クロスプラットフォームのビルドシステム生成ツール.

手順

  1. Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)

    次のコマンドを実行

    次のコマンドは,Python ランチャーとPython 3.7GitCMakeをインストールし,Gitパスを通すものである.

    次のコマンドでインストールされるGitは 「git for Windows」と呼ばれるものであり, Git,MinGW などから構成されている.

    winget install --scope machine Python.Launcher
    winget install --scope machine Python.Python.3.7
    winget install --scope machine Git.Git
    powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\Program Files\Git\cmd\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
    winget install --scope machine Kitware.CMake
    powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\Program Files\CMake\bin\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
    

関連する外部ページ

サイト内の関連ページ

関連項目Python, Git バージョン管理システム, Git の利用, CMake ビルドシステム生成ツール, CMake の使用方法

Visual Studio Community 2017 のインストール

NVIDIA CUDA 10.0 は Visual Studio Commnity 2017, 2015, 2013, 2012 と連携して動く機能がある.

NVIDIA CUDA 10.0 のインストールの前に, Visual Studio Commnity 2017 のインストールを行う.

Visual Studio Commnity 2017 のインストールは, https://visualstudio.microsoft.com/ja/vs/older-downloads/ で「2017」を選び,「ダウンロード」をクリック. その後表示されるダウンロードの画面で, 「Visual Studio Commnity 2017」を選ぶ. インストール時には「C++ によるデスクトップ開発」をチェックしてインストールする.

NVIDIA ドライバのインストール(Windows 上)

NVIDIA ドライバとは

NVIDIA ドライバは,NVIDIA製GPUをWindowsシステム上で適切に動作させるための基盤となるソフトウェアです.このドライバをインストールすることにより,GPUの性能を最大限に引き出し,グラフィックス処理はもちろん,CUDAを利用したAI関連アプリケーションなどの計算速度を向上させることが期待できます.

ドライバは通常、NVIDIA公式サイトからダウンロードするか、NVIDIA GeForce Experienceソフトウェアを通じてインストール・更新します。

公式サイト: https://www.nvidia.co.jp/Download/index.aspx?lang=jp

サイト内の関連ページ

  1. (再掲) NVIDIA グラフィックス・ボードの確認

    インストールするドライバを選択するために、まずご使用のPCに搭載されているNVIDIAグラフィックス・ボードの種類を確認します。(確認済みであれば、この手順は不要です。) Windows のコマンドプロンプトで次のコマンドを実行します。

    wmic path win32_VideoController get name
    
  2. NVIDIA ドライバのダウンロード

    確認したグラフィックス・ボードのモデル名と、お使いのWindowsのバージョン(例: Windows 11, Windows 10 64-bit)に対応するドライバを、以下のNVIDIA公式サイトからダウンロードします.

    https://www.nvidia.co.jp/Download/index.aspx?lang=jp

    サイトの指示に従い、製品タイプ、製品シリーズ、製品ファミリー、OS、言語などを選択して検索し、適切なドライバ(通常は最新のGame Ready ドライバまたはStudio ドライバ)をダウンロードします。

  3. ドライバのインストール

    ダウンロードしたインストーラー(.exeファイル)を実行し、画面の指示に従ってインストールを進めます。「カスタムインストール」を選択すると、インストールするコンポーネント(ドライバ本体、GeForce Experience、PhysXなど)を選ぶことができます。通常は「高速(推奨)」で問題ありません。

    インストール完了後、システムの再起動を求められる場合があります。

  4. NVIDIA CUDA ツールキット 10.0 のインストール(Windows 上)

    NVIDIA CUDA ツールキットのインストール時の注意点

    NVIDIAのGPUを使用して並列計算を行うためのツールセット

    主な機能: GPU を利用した並列処理,GPU のメモリ管理,C++をベースとした拡張言語とAPIとライブラリ

    NVIDIA CUDA ツールキットの動作に必要なもの

    • CUDA対応のNVIDIA GPUが必要.

      そのために,NVIDIA グラフィックス・ボードを確認する. Windows で,NVIDIA グラフィックス・ボードの種類を調べたいときは, 次のコマンドを実行することにより調べることができる.

      wmic path win32_VideoController get name
      
    • NVIDIA ドライバのダウンロードとインストール

      NVIDIA ドライバは,以下の NVIDIA 公式サイトからダウンロードできる. ダウンロードの際には,使用しているグラフィックス・ボードの型番とオペレーティングシステムを選択する.

      https://www.nvidia.co.jp/Download/index.aspx?lang=jp

    • Windows では,インストール前に,Build Tools for Visual Studio もしくは Visual Studio をインストールしておくことが必要である.

    Windows でインストールするときの注意点

    関連する外部ページ

    関連項目NVIDIA CUDA ツールキット, NVIDIA CUDA ツールキット 12.5 のインストール(Windows 上), NVIDIA CUDA ツールキット 11.8 のインストール(Windows 上)

    TensorFlow 1.15.5 が必要とする NVIDIA CUDA ツールキットと NVIDIA cuDNN のバージョンの確認

    TensorFlow 1.15.5 を動かすために,NVIDIA CUDA ツールキット 10.0NVIDIA cuDNN 7.6.5 を使う.

    (10.2, 10.1 は不可.実際に試みて検証済み).

    NVIDIA CUDA ツールキット 10.0NVIDIA cuDNN 7.6.5 の根拠: cudart64_100.dll, cudnn64_7.dll が必要

    インストール手順

    1. NVIDIA CUDA ツールキットのアーカイブのページを開く

      https://developer.nvidia.com/cuda-toolkit-archive

    2. NVIDIA CUDA ツールキットのバージョンを選ぶ

      ここでは,NVIDIA CUDA ツールキット10.0を選んでいる

    3. Windows」,「10」,「exe [local]」を選ぶ.
    4. Base Installer」の右横の「Download」をクリックして,.exe ファイルをダウンロード
    5. exe ファイルのダウンロードが始まる
    6. ダウンロードした .exe ファイルを実行する.
    7. 展開(解凍)先ディレクトリ(フォルダ)の指定.

      既定(デフォルト)のままでよい.「OK」をクリック.

    8. 展開(解凍)が自動で行われるので,しばらく待つ.
    9. ライセンス条項の確認
    10. インストールオプションは,「カスタム(詳細)」を選び,「次へ」をクリック.
    11. コンポーネントを確認する.

      CUDA」にチェックする.その他は,必要なものがあればチェックする.「次へ」をクリック.

      複数の版の NVIDIA CUDA ツールキットをインストールする場合には,古い版のNVIDIA CUDA ツールキットをインストールするときに「CUDA」だけを選ぶようにする.

    12. インストール場所の選択は,既定(デフォルト)のままでよい.「次へ」をクリック.
    13. Visual Studio Integration について表示された場合

      表示されなくても問題はない.

      表示された場合には,NVIDIA CUDA のインストールを中止して, Visual Studio Commnity 2017 のインストールを行う.

      Visual Studio Commnity 2017 のインストールは, https://visualstudio.microsoft.com/ja/vs/older-downloads/ で「2017」を選び,「ダウンロード」をクリック. その後表示されるダウンロードの画面で, 「Visual Studio Commnity 2017」を選ぶ. インストール時には「C++ によるデスクトップ開発」をチェックしてインストールする.

    14. このとき,Windows セキュリティの画面が開くことがある.開いた場合には,「インストール」をクリック.
    15. インストールが始まるので,確認する.
    16. このとき,グラフィックス・カードのドライバのインストールについての画面が表示される場合がある.「インストール」をクリックして,インストールを続行する.
    17. Visual Studio がインストール済みのときは,Nsight Visual Studio がインストールされたことが確認できる.確認したら「次へ」をクリック.

      Visual Studio をインストールしていないときは,Nsight for Visual Studio はインストールされない.

    18. インストール終了の確認.「閉じる」をクリック.

      *コンピュータを再起動してください」と表示される場合がある.そのときは,再起動する.

    19. GeForce Experience が自動で開く場合がある
      • 利用条件について表示されたときは、よく確認し、納得できる場合のみ同意・続行する
      • リリースハイライトが表示される場合がある.

        リリースハイライトを確認したら,「x」をクリックして閉じる.

      • このとき,最新版への更新が始まり,起動に時間がかかることがある.

        そして「お使いのGPU向けの新しいドライバーが入手可能です」と表示されることがある.そのときは,新しいドライバをインストールする.

    NVIDIA cuDNN 7.6.5 のインストール

    インストールするNVIDIA cuDNN のバージョンは 7.6.5 for CUDA 10.0

    NVIDIA cuDNN

    NVIDIA cuDNN は,NVIDIA CUDA ツールキット上で動作する、高性能なディープラーニング用ライブラリです.畳み込みニューラルネットワーク (CNN) やリカレントニューラルネットワーク (RNN) など,さまざまなディープラーニングモデルのトレーニングと推論を高速化します.

    cuDNN利用時の注意点: zlibwapi.dll エラー

    Windows環境でcuDNNを利用するアプリケーションを実行した際に、「Could not locate zlibwapi.dll. Please make sure it is in your library path!」というエラーが表示されることがあります。これは、cuDNNの一部の機能が圧縮ライブラリである zlib に依存しているためです。このエラーが発生した場合は、後述する手順で ZLIB DLL をインストールする必要があります。

    関連する外部ページ

    NVIDIA cuDNN のインストール(Windows 上)の概要

    1. NVIDIA Developer Program メンバーシップへの加入: cuDNNのダウンロードには無料のメンバーシップ登録が必要です。

      NVIDIA Developer Program の公式ページ: https://developer.nvidia.com/developer-program

    2. 互換バージョンの選択とダウンロード: インストール済みのCUDAツールキットのバージョン (今回は11.x) に適合するcuDNNのバージョン (今回はv8.9.7) を選択し、Windows用のzipファイルをダウンロードします。
    3. ファイルの展開と配置: ダウンロードしたzipファイルを展開(解凍)し、中のファイル(bin, include, lib フォルダ内)を、CUDAツールキットのインストールディレクトリにコピーします。
    4. (オプション) 環境変数の設定: 必要に応じてシステム環境変数 CUDNN_PATH を設定します。
    5. (必要に応じて) ZLIB DLL のインストール: zlibwapi.dll が見つからないエラーが発生する場合にインストールします。
    6. 動作確認: cuDNNライブラリ (cudnn64_*.dll) にパスが通っているか確認します。

    NVIDIA cuDNN のダウンロードとインストールの手順

    1. NVIDIA cuDNN のウェブページを開く

      https://developer.nvidia.com/cuDNN

    2. ダウンロードしたいので,cuDNNのところにある「Download cuDNN」をクリック.
    3. NVIDIA Developer Program メンバーシップに入る

      NVIDIA cuDNN のダウンロードのため.

      Join now」をクリック.その後,画面の指示に従う. 利用者本人が,電子メールアドレス,表示名,パスワード,生年月日を登録.利用条件等に合意.

    4. ログインする
    5. 調査の画面が出たときは,調査に応じる
    6. ライセンス条項の確認
    7. 「Archived cuDNN Releases」をクリック
    8. ダウンロードしたいバージョンを選ぶ

      ここでは「cuDNN v 7.6.5, for CUDA 10.0」を選んでいる.

      このとき,画面の「for CUDA ...」のところを確認し,使用するNVIDIA CUDA のバージョンに合うものを選ぶこと.

    9. Windows にインストールするので Windows 版を選ぶ
    10. ダウンロードが始まる.
    11. ダウンロードした .zip ファイルを展開(解凍)する.展開の結果 cuda という名前のディレクトリができる.その中のサブディレクトリを確認しておく.

      Windows での展開(解凍)に便利な 7-Zip: 別ページ »で説明

    12. NVIDIA CUDA ツールキットをインストールしたディレクトリは,「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0」 のようになっている.確認する.
    13. 確認したら, さきほど展開してできたディレクトリcuda の下にあるすべてのファイルとディレクトリを,NVIDIA CUDA ツールキットをインストールしたディレクトリにコピーする

    インストール後に行う環境変数の設定

    NVIDIA cuDNN をインストールしたディレクトリ」をもとに環境変数を設定する.

    NVIDIA cuDNN をインストールしたディレクトリ」が C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0 の場合には,次のように設定する.

    パスの確認

    次の操作により,cudnn64_7.dllパスが通っていることを確認する

    Windowsコマンドプロンプトを開き,次のコマンドを実行する.エラーメッセージが出ないことを確認.

    where cudnn64_7.dll
    
    ---------------------------------------

    前準備

    Git のインストール(Windows 上)

    Gitは,分散型のバージョン管理システム.

    手順

    1. Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)

      次のコマンドを実行

      次のコマンドは,Gitをインストールし,Gitパスを通すものである.

      次のコマンドでインストールされるGitは 「git for Windows」と呼ばれるものであり, Git,MinGW などから構成されている.

      winget install --scope machine Git.Git
      powershell -command "$oldpath = [System.Environment]::GetEnvironmentVariable(\"Path\", \"Machine\"); $oldpath += \";c:\Program Files\Git\cmd\"; [System.Environment]::SetEnvironmentVariable(\"Path\", $oldpath, \"Machine\")"
      

    関連する外部ページ

    関連項目Git バージョン管理システム, Git の利用

    CMake のインストール

    CMake の公式ダウンロードページ: https://cmake.org/download/

    Python 3.7 64 ビット版のインストール,pip と setuptools の更新,Python 開発環境のインストール(Windows 上)

    ① Python 3.7 64 ビット版のインストール(Windows 上)

    Python のインストールでの注意点

    • Python 64-bit 版を使用してください.
    • Python をシステム領域にインストールすることを推奨する.

      Windowsでは,Python をユーザ領域(既定の設定)またはシステム領域にインストールできる. しかし,ユーザー名に日本語が含まれている場合,Python をユーザ領域にインストールすると問題が発生する可能性がある.システム領域にインストールすることで,ファイルパスに日本語が含まれることを避けることができ,問題を防ぐことができる.

    Python 3.7 のインストール手順の詳細(別ページ)Windows での Python 3.7 のインストール: 別ページ »で説明

    Python の公式ページhttps://www.python.org/

    インストール手順の概要

    1. Python の URL を開く

      URL: https://www.python.org

    2. Windows 版の Python 3.7 をダウンロード

      ページの上の方にある「Downloads」をクリック,「Downloads」の下にメニューが出るので,その中の「Windows」をクリック.

      そして,Python 3.7.x (x は数字)を探す.

      そして,Windows の 64ビット版のインストーラをダウンロードしたいので,「Windows x86-64 executable installer」を選ぶ

    3. インストール時の設定
      1. いまダウンロードした .exe ファイルを右クリック, 右クリックメニューで「管理者として実行」を選ぶ.
      2. Python ランチャーをインストールするために,「Install launcher for all users (recommended)」をチェック.

        * すでに Python ランチャーをインストール済みのときは, 「Install launcher for all users (recommended)」がチェックできないようになっている場合がある.そのときは,チェックせずに進む.

      3. Add Python 3.7 to PATH」をチェック.
      4. Customize installation」をクリック.
      5. オプションの機能 (Optional Features)は,既定(デフォルト)のままでよい. 「Next」をクリック
      6. Install for all users」を選ぶ.

        Python のインストールディレクトリは,「C:\Program Files\Python37」のように自動設定されることを確認.

        Install」をクリック

      7. Disable path length limit」が表示される場合がある.クリックして,パス長の制限を解除する
      8. インストールが終了したら,「Close」をクリック
    4. インストールのあと,Windows のスタートメニューに「Python 3.7」が増えていることを確認.
    5. システムの環境変数 Path の確認のため,新しくコマンドプロンプトを開き,次のコマンドを実行する.

      pypipパスが通っていることの確認である.

      where py
      where pip
      

      where py では「C:\Windows\py.exe」 が表示され, where pip では「C:\Program Files\Python37\Scripts\pip.exe」 が表示されることを確認.

    ② pip と setuptools の更新(Windows 上)

    1. Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)

      Windowspip を実行するときは,コマンドプロンプト管理者として開き,それを使って pip を実行することにする.

      コマンドプロンプトを管理者として実行: 別ページ »で説明

    2. 次のコマンドを実行する

      Python の使用は「py -3.7」で行う.

      py -3.7 -m pip install -U pip setuptools
      

    ③ Python 開発環境として,Python の隔離された環境に,Python コンソール(Jupyter Qt Console), Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, Nteract をインストール

    1. Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
    2. venv を用いて,Python の仮想環境を作成

      次のコマンドを実行する

      py -3.7 -m pip install -U pip setuptools
      py -3.7 -m venv --system-site-packages C:\venv\py37
      
    3. Python の仮想環境の使用開始と,Python 開発環境のインストール

      次のコマンドを実行する

      Python の使用は「C:\venv\py37\Scripts\activate.bat」の後,「python」で行う.

      C:\venv\py37\Scripts\activate.bat
      python -m pip install -U pip setuptools jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter
      

    Visual Studio Community 2017 のインストール

    NVIDIA CUDA 10.0 は Visual Studio Commnity 2017, 2015, 2013, 2012 と連携して動く機能がある.

    NVIDIA CUDA 10.0 のインストールの前に, Visual Studio Commnity 2017 のインストールを行う.

    Visual Studio Commnity 2017 のインストールは, https://visualstudio.microsoft.com/ja/vs/older-downloads/ で「2017」を選び,「ダウンロード」をクリック. その後表示されるダウンロードの画面で, 「Visual Studio Commnity 2017」を選ぶ. インストール時には「C++ によるデスクトップ開発」をチェックしてインストールする.

    NVIDIA ドライバのインストール(Windows 上)

    NVIDIA ドライバとは

    NVIDIA ドライバは,NVIDIA製GPUをWindowsシステム上で適切に動作させるための基盤となるソフトウェアです.このドライバをインストールすることにより,GPUの性能を最大限に引き出し,グラフィックス処理はもちろん,CUDAを利用したAI関連アプリケーションなどの計算速度を向上させることが期待できます.

    ドライバは通常、NVIDIA公式サイトからダウンロードするか、NVIDIA GeForce Experienceソフトウェアを通じてインストール・更新します。

    公式サイト: https://www.nvidia.co.jp/Download/index.aspx?lang=jp

    サイト内の関連ページ

    1. (再掲) NVIDIA グラフィックス・ボードの確認

      インストールするドライバを選択するために、まずご使用のPCに搭載されているNVIDIAグラフィックス・ボードの種類を確認します。(確認済みであれば、この手順は不要です。) Windows のコマンドプロンプトで次のコマンドを実行します。

      wmic path win32_VideoController get name
      
    2. NVIDIA ドライバのダウンロード

      確認したグラフィックス・ボードのモデル名と、お使いのWindowsのバージョン(例: Windows 11, Windows 10 64-bit)に対応するドライバを、以下のNVIDIA公式サイトからダウンロードします.

      https://www.nvidia.co.jp/Download/index.aspx?lang=jp

      サイトの指示に従い、製品タイプ、製品シリーズ、製品ファミリー、OS、言語などを選択して検索し、適切なドライバ(通常は最新のGame Ready ドライバまたはStudio ドライバ)をダウンロードします。

    3. ドライバのインストール

      ダウンロードしたインストーラー(.exeファイル)を実行し、画面の指示に従ってインストールを進めます。「カスタムインストール」を選択すると、インストールするコンポーネント(ドライバ本体、GeForce Experience、PhysXなど)を選ぶことができます。通常は「高速(推奨)」で問題ありません。

      インストール完了後、システムの再起動を求められる場合があります。

    4. NVIDIA CUDA ツールキット 10.0 のインストール(Windows 上)

      NVIDIA CUDA ツールキットのインストール時の注意点

      NVIDIAのGPUを使用して並列計算を行うためのツールセット

      主な機能: GPU を利用した並列処理,GPU のメモリ管理,C++をベースとした拡張言語とAPIとライブラリ

      NVIDIA CUDA ツールキットの動作に必要なもの

      • CUDA対応のNVIDIA GPUが必要.

        そのために,NVIDIA グラフィックス・ボードを確認する. Windows で,NVIDIA グラフィックス・ボードの種類を調べたいときは, 次のコマンドを実行することにより調べることができる.

        wmic path win32_VideoController get name
        
      • NVIDIA ドライバのダウンロードとインストール

        NVIDIA ドライバは,以下の NVIDIA 公式サイトからダウンロードできる. ダウンロードの際には,使用しているグラフィックス・ボードの型番とオペレーティングシステムを選択する.

        https://www.nvidia.co.jp/Download/index.aspx?lang=jp

      • Windows では,インストール前に,Build Tools for Visual Studio もしくは Visual Studio をインストールしておくことが必要である.

      Windows でインストールするときの注意点

      関連する外部ページ

      関連項目NVIDIA CUDA ツールキット, NVIDIA CUDA ツールキット 12.5 のインストール(Windows 上), NVIDIA CUDA ツールキット 11.8 のインストール(Windows 上)

      TensorFlow 1.15.5 が必要とする NVIDIA CUDA ツールキットと NVIDIA cuDNN のバージョンの確認

      TensorFlow 1.15.5 を動かすために,NVIDIA CUDA ツールキット 10.0NVIDIA cuDNN 7.6.5 を使う.

      (10.2, 10.1 は不可.実際に試みて検証済み).

      NVIDIA CUDA ツールキット 10.0NVIDIA cuDNN 7.6.5 の根拠: cudart64_100.dll, cudnn64_7.dll が必要

      インストール手順

      1. NVIDIA CUDA ツールキットのアーカイブのページを開く

        https://developer.nvidia.com/cuda-toolkit-archive

      2. NVIDIA CUDA ツールキットのバージョンを選ぶ

        ここでは,NVIDIA CUDA ツールキット10.0を選んでいる

      3. Windows」,「10」,「exe [local]」を選ぶ.
      4. Base Installer」の右横の「Download」をクリックして,.exe ファイルをダウンロード
      5. exe ファイルのダウンロードが始まる
      6. ダウンロードした .exe ファイルを実行する.
      7. 展開(解凍)先ディレクトリ(フォルダ)の指定.

        既定(デフォルト)のままでよい.「OK」をクリック.

      8. 展開(解凍)が自動で行われるので,しばらく待つ.
      9. ライセンス条項の確認
      10. インストールオプションは,「カスタム(詳細)」を選び,「次へ」をクリック.
      11. コンポーネントを確認する.

        CUDA」にチェックする.その他は,必要なものがあればチェックする.「次へ」をクリック.

        複数の版の NVIDIA CUDA ツールキットをインストールする場合には,古い版のNVIDIA CUDA ツールキットをインストールするときに「CUDA」だけを選ぶようにする.

      12. インストール場所の選択は,既定(デフォルト)のままでよい.「次へ」をクリック.
      13. Visual Studio Integration について表示された場合

        表示されなくても問題はない.

        表示された場合には,NVIDIA CUDA のインストールを中止して, Visual Studio Commnity 2017 のインストールを行う.

        Visual Studio Commnity 2017 のインストールは, https://visualstudio.microsoft.com/ja/vs/older-downloads/ で「2017」を選び,「ダウンロード」をクリック. その後表示されるダウンロードの画面で, 「Visual Studio Commnity 2017」を選ぶ. インストール時には「C++ によるデスクトップ開発」をチェックしてインストールする.

      14. このとき,Windows セキュリティの画面が開くことがある.開いた場合には,「インストール」をクリック.
      15. インストールが始まるので,確認する.
      16. このとき,グラフィックス・カードのドライバのインストールについての画面が表示される場合がある.「インストール」をクリックして,インストールを続行する.
      17. Visual Studio がインストール済みのときは,Nsight Visual Studio がインストールされたことが確認できる.確認したら「次へ」をクリック.

        Visual Studio をインストールしていないときは,Nsight for Visual Studio はインストールされない.

      18. インストール終了の確認.「閉じる」をクリック.

        *コンピュータを再起動してください」と表示される場合がある.そのときは,再起動する.

      19. GeForce Experience が自動で開く場合がある
        • 利用条件について表示されたときは、よく確認し、納得できる場合のみ同意・続行する
        • リリースハイライトが表示される場合がある.

          リリースハイライトを確認したら,「x」をクリックして閉じる.

        • このとき,最新版への更新が始まり,起動に時間がかかることがある.

          そして「お使いのGPU向けの新しいドライバーが入手可能です」と表示されることがある.そのときは,新しいドライバをインストールする.

      NVIDIA cuDNN 7.6.5 のインストール

      インストールするNVIDIA cuDNN のバージョンは 7.6.5 for CUDA 10.0

      NVIDIA cuDNN

      NVIDIA cuDNN は,NVIDIA CUDA ツールキット上で動作する、高性能なディープラーニング用ライブラリです.畳み込みニューラルネットワーク (CNN) やリカレントニューラルネットワーク (RNN) など,さまざまなディープラーニングモデルのトレーニングと推論を高速化します.

      cuDNN利用時の注意点: zlibwapi.dll エラー

      Windows環境でcuDNNを利用するアプリケーションを実行した際に、「Could not locate zlibwapi.dll. Please make sure it is in your library path!」というエラーが表示されることがあります。これは、cuDNNの一部の機能が圧縮ライブラリである zlib に依存しているためです。このエラーが発生した場合は、後述する手順で ZLIB DLL をインストールする必要があります。

      関連する外部ページ

      NVIDIA cuDNN のインストール(Windows 上)の概要

      1. NVIDIA Developer Program メンバーシップへの加入: cuDNNのダウンロードには無料のメンバーシップ登録が必要です。

        NVIDIA Developer Program の公式ページ: https://developer.nvidia.com/developer-program

      2. 互換バージョンの選択とダウンロード: インストール済みのCUDAツールキットのバージョン (今回は11.x) に適合するcuDNNのバージョン (今回はv8.9.7) を選択し、Windows用のzipファイルをダウンロードします。
      3. ファイルの展開と配置: ダウンロードしたzipファイルを展開(解凍)し、中のファイル(bin, include, lib フォルダ内)を、CUDAツールキットのインストールディレクトリにコピーします。
      4. (オプション) 環境変数の設定: 必要に応じてシステム環境変数 CUDNN_PATH を設定します。
      5. (必要に応じて) ZLIB DLL のインストール: zlibwapi.dll が見つからないエラーが発生する場合にインストールします。
      6. 動作確認: cuDNNライブラリ (cudnn64_*.dll) にパスが通っているか確認します。

      NVIDIA cuDNN のダウンロードとインストールの手順

      1. NVIDIA cuDNN のウェブページを開く

        https://developer.nvidia.com/cuDNN

      2. ダウンロードしたいので,cuDNNのところにある「Download cuDNN」をクリック.
      3. NVIDIA Developer Program メンバーシップに入る

        NVIDIA cuDNN のダウンロードのため.

        Join now」をクリック.その後,画面の指示に従う. 利用者本人が,電子メールアドレス,表示名,パスワード,生年月日を登録.利用条件等に合意.

      4. ログインする
      5. 調査の画面が出たときは,調査に応じる
      6. ライセンス条項の確認
      7. 「Archived cuDNN Releases」をクリック
      8. ダウンロードしたいバージョンを選ぶ

        ここでは「cuDNN v 7.6.5, for CUDA 10.0」を選んでいる.

        このとき,画面の「for CUDA ...」のところを確認し,使用するNVIDIA CUDA のバージョンに合うものを選ぶこと.

      9. Windows にインストールするので Windows 版を選ぶ
      10. ダウンロードが始まる.
      11. ダウンロードした .zip ファイルを展開(解凍)する.展開の結果 cuda という名前のディレクトリができる.その中のサブディレクトリを確認しておく.

        Windows での展開(解凍)に便利な 7-Zip: 別ページ »で説明

      12. NVIDIA CUDA ツールキットをインストールしたディレクトリは,「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0」 のようになっている.確認する.
      13. 確認したら, さきほど展開してできたディレクトリcuda の下にあるすべてのファイルとディレクトリを,NVIDIA CUDA ツールキットをインストールしたディレクトリにコピーする

      インストール後に行う環境変数の設定

      NVIDIA cuDNN をインストールしたディレクトリ」をもとに環境変数を設定する.

      NVIDIA cuDNN をインストールしたディレクトリ」が C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0 の場合には,次のように設定する.

      • すでに,c:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin には,パスが通っている
      • Windowsシステム環境変数 CUDNN_PATH に,c:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0 を設定

        Windows で,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)

        次のコマンドを実行

        powershell -command "[System.Environment]::SetEnvironmentVariable(\"CUDNN_PATH\", \"c:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\", \"Machine\")"
        
      • Windowsシステム環境変数 Pathに,次が含まれていることを確認
        C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
        

      パスの確認

      次の操作により,cudnn64_7.dllパスが通っていることを確認する

      Windowsコマンドプロンプトを開き,次のコマンドを実行する.エラーメッセージが出ないことを確認.

      where cudnn64_7.dll
      

      TensorFlow 1.15.5, Keras 2.3.1 のインストール

      コマンドプロンプト管理者として実行し,次のコマンドを実行

      C:\venv\py37\Scripts\activate.bat
      python -m pip uninstall -y tensorflow tensorflow-cpu tensorflow-gpu tensorflow-intel tensorflow-text tensorflow-estimator tf-models-official tf_slim tensorflow_datasets tensorflow-hub keras keras-tuner keras-visualizer scipy pandas matplotlib
      # TensorFlow 1.15.5 のため numpy, protobuf の古いバージョンを使用.エラーが出にくいと考えられる numpy 1.16.2, protobuf 3.19.4 を使用
      python -m pip install -U numpy==1.16.2 protobuf==3.19.4 tensorflow-gpu==1.15.5 keras==2.3.1 scipy==1.5.4
      

      mpatacchiola/DeepGaze のインストール

      Windows での手順を下に示す.Ubuntu でも同様の手順になる.

      1. Windows で,コマンドプロンプト管理者として実行
      2. DeepGaze のインストールディレクトリを空にしておく
        cd /d c:%HOMEPATH%
        rmdir /s /q deepgaze
        
      3. DeepGaze のインストール
        git clone https://github.com/mpatacchiola/deepgaze
        cd deepgaze
        py -3.7 setup.py build
        py -3.7 setup.py install
        

        (以下省略)
      4. 結果の確認

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

      このページで説明のために使用するビデオ、写真

      必要であればダウンロードして使ってください.

      mpatacchiola/DeepGaze を用いて肌色領域の抜き出し

      動画ファイルで動かしてみる

      1. Windows では,コマンドプロンプトを実行.
      2. 作業用のディレクトリ(フォルダ)として,c:\imageを作り, sample1.mp4 を,c:\image の下にダウンロード
        mkdir c:\image
        cd c:\image
        curl -O https://www.kkaneko.jp/sample/face/sample1.mp4
        
      3. py -3.7 で,Python プログラムを実行する

        Python プログラムの実行: 別ページ »で説明

        Python のまとめ: 別ページ »にまとめ

        Windows でのプログラムを下に示す.Ubuntu でも同様のプログラムになる.

        OpenCV による動画表示を行う.

        「FACEIMAGEROOT + "sample1.mp4"」のところは、実際のファイル名に置き換えること

        import cv2
        import numpy as np
        from deepgaze.color_detection import RangeColorDetector
        
        #Firs image boundaries
        min_range = np.array([0, 48, 70], dtype = "uint8") #lower HSV boundary of skin color
        max_range = np.array([20, 150, 255], dtype = "uint8") #upper HSV boundary of skin color
        my_skin_detector = RangeColorDetector(min_range, max_range) #Define the detector object
        
        FACEIMAGEROOT="c:/image/"
        v = cv2.VideoCapture(FACEIMAGEROOT + "sample1.mp4")
        while(v.isOpened()):
            r, f = v.read()
            if ( r == False ):
                break
            f = f[0:885, 0:773, 0:3]
            image_filtered = my_skin_detector.returnFiltered(f, morph_opening=False, blur=False, kernel_size=3, iterations=1)
            cv2.imshow("", image_filtered)
            # Press Q to exit
            if cv2.waitKey(1) & 0xFF == ord('q'):
                break
        
        v.release()
        cv2.destroyAllWindows()
        

      パソコンの USB カメラで動かしてみる

      Python プログラムを実行する

      v = cv2.VideoCapture(0) 」は、USB カメラを使うためのもの。他の部分は、上のプログラムと同じ。

      import cv2
      import numpy as np
      from deepgaze.color_detection import RangeColorDetector
      
      #Firs image boundaries
      min_range = np.array([0, 48, 70], dtype = "uint8") #lower HSV boundary of skin color
      max_range = np.array([20, 150, 255], dtype = "uint8") #upper HSV boundary of skin color
      my_skin_detector = RangeColorDetector(min_range, max_range) #Define the detector object
      
      v = cv2.VideoCapture(0)
      while(v.isOpened()):
          r, f = v.read()
          if ( r == False ):
              break
          f = f[0:885, 0:773, 0:3]
          image_filtered = my_skin_detector.returnFiltered(f, morph_opening=False, blur=False, kernel_size=3, iterations=1)
          cv2.imshow("", image_filtered)
          # Press Q to exit
          if cv2.waitKey(1) & 0xFF == ord('q'):
              break
      
      v.release()
      cv2.destroyAllWindows()
      

      パソコンの USB カメラで動かし,結果を動画像ファイルに保存

      Python プログラムを実行する

      Windows でのプログラムを下に示す.Ubuntu でも同様のプログラムになる.

      「out = cv2.VideoWriter('C:/image/output.avi', fourcc, 20.0, (640, 480), True) 」の「True」は、カラーという意味

      import cv2
      import numpy as np
      from deepgaze.color_detection import RangeColorDetector
      
      #Firs image boundaries
      min_range = np.array([0, 48, 70], dtype = "uint8") #lower HSV boundary of skin color
      max_range = np.array([20, 150, 255], dtype = "uint8") #upper HSV boundary of skin color
      my_skin_detector = RangeColorDetector(min_range, max_range) #Define the detector object
      
      v = cv2.VideoCapture(0) 
      fourcc = cv2.VideoWriter_fourcc(*'XVID')
      FACEIMAGEROOT="c:/image/"
      out = cv2.VideoWriter(FACEIMAGEROOT + 'output.avi', fourcc, 20.0, (640, 480), True) 
      while(v.isOpened()):
          r, f = v.read()
          if ( r == False ):
              break
          f = f[0:885, 0:773, 0:3]
          image_filtered = my_skin_detector.returnFiltered(f, morph_opening=False, blur=False, kernel_size=3, iterations=1)
          cv2.imshow("", image_filtered)
          out.write(image_filtered)
          # Press Q to exit
          if cv2.waitKey(1) & 0xFF == ord('q'):
              break
      
      v.release()
      out.release()
      cv2.destroyAllWindows()
      

      付属のサンプルプログラムを動かしてみる

      1. C:\face-image のような作業用のディレクトリ(フォルダ)を作る
      2. 顔写真のデータを、先ほど作成した「作業用のディレクトリ(フォルダ)」に入れる

        Webブラウザを使い、次の画像を「名前を付けて画像を保存」。 ファイル名は「126.png」とする。 「作業用のディレクトリ(フォルダ)」に保存する

        次の画像も、「名前を付けて画像を保存」。 ファイル名は「127.png」とする。 「作業用のディレクトリ(フォルダ)」に保存する

        次のようになる

      3. サンプルプログラム

        Web ブラウザで、 https://github.com/mpatacchiola/deepgaze/blob/master/examples/ex_skin_detection_images/ex_skin_detection_images.py を開く

      4. ここに掲載されているプログラムをコピー
      5. Windows のメモ帳を開き, 丸ごと、貼り付け
      6. このファイルの中の画像ファイル名を書き換え(2か所).

        c:/image/126.png, c:/image/126-filtered.png,

      7. 後半部分は削除
      8. メモ帳で、ファイルを「名前を付けて保存」する。

        このとき、ファイル名は、skin.py のようなファイル名で保存(拡張子は「.py」

        作業用のディレクトリ(フォルダ)」である C:\face-image に保存する

      9. メモ帳を閉じる
      10. Windowsコマンドプロンプトを開く
      11. 次のように実行

        先ほど名前を付けて保存したときのファイル名を使う

        cd C:\face-image
        python skin.py
        
      12. 結果の確認

      もう1つの画像で確認

      skin.py の中の画像ファイル名を 126 から 127 に書き換えて、python skin.py をもう一度実行。次のような結果になる

      mpatacchiola/DeepGaze を用いて saliency の検出

      動画ファイルで動かしてみる

      1. Windows では,コマンドプロンプトを実行.
      2. 作業用のディレクトリ(フォルダ)として,c:\imageを作り, sample1.mp4 を,c:\image の下にダウンロード
        mkdir c:\image
        cd c:\image
        curl -O https://www.kkaneko.jp/sample/face/sample1.mp4
        
      3. py -3.7 で,Python プログラムを実行する

        Windows でのプログラムを下に示す.Ubuntu でも同様のプログラムになる.

        OpenCV による動画表示を行う.

        「FACEIMAGEROOT + "sample1.mp4"」のところは、実際のファイル名に置き換えること

        import numpy as np
        import cv2
        from deepgaze.saliency_map import FasaSaliencyMapping
        
        # Using OpenCV the resolution of the webcam is set to these values.
        # You must check which resolution your webcam support and adjust the values in accordance.
        RESOLUTION_WIDTH = 320
        RESOLUTION_HEIGHT = 180
        
        FACEIMAGEROOT="c:/image/"
        v = cv2.VideoCapture(FACEIMAGEROOT + "sample1.mp4")
        
        # Create the main window and move it
        cv2.namedWindow('Video')
        
        # Obtaining the CAM dimension
        w = int(v.get(3))
        h = int(v.get(4))
        
        # Defining the FASA object using the camera resolution
        my_map = FasaSaliencyMapping(h, w)
        
        while True:
            # Capture frame-by-frame
            r, f = v.read()
            if ( r == False ):
                break
            image_salient = my_map.returnMask(f, tot_bins=8, format='BGR2LAB')
            cv2.imshow("", image_salient)
            # Press Q to exit
            if cv2.waitKey(1) & 0xFF == ord('q'):
                break
        
        v.release()
        cv2.destroyAllWindows()
        

      ビデオカメラで動かしてみる

      Windows での手順を下に示す.Ubuntu でも同様の手順になる.

      1. Windows で,コマンドプロンプト管理者として実行
      2. py -3.7 で,Python プログラムを実行する

        OpenCV による動画表示を行う.

        import numpy as np
        import cv2
        from deepgaze.saliency_map import FasaSaliencyMapping
        
        # Using OpenCV the resolution of the webcam is set to these values.
        # You must check which resolution your webcam support and adjust the values in accordance.
        RESOLUTION_WIDTH = 320
        RESOLUTION_HEIGHT = 180
        
        # Open the video stream and set the webcam resolution.
        # It may give problem if your webcam does not support the particular resolution used.
        video_capture = cv2.VideoCapture(0)
        
        # Create the main window and move it
        cv2.namedWindow('Video')
        
        # Obtaining the CAM dimension
        cam_w = int(video_capture.get(3))
        cam_h = int(video_capture.get(4))
        
        # Defining the FASA object using the camera resolution
        my_map = FasaSaliencyMapping(cam_h, cam_w)
        
        while True:
            # Capture frame-by-frame
            r, f = video_capture.read()
            image_salient = my_map.returnMask(f, tot_bins=8, format='BGR2LAB')
            cv2.imshow("", image_salient)
            # Press Q to exit
            if cv2.waitKey(1) & 0xFF == ord('q'):
                break
        
        v.release()
        cv2.destroyAllWindows()