金子邦彦研究室人工知能Windows で動く人工知能関係 Pythonアプリケーション,オープンソースソフトウエア)PixelLib のインストールと動作確認(Mask R-CNN,特定クラスのインスタンス・セグメンテーション)(TensorFlow 2.0.4, Python 3.7 を使用)

PixelLib のインストールと動作確認(Mask R-CNN,特定クラスのインスタンス・セグメンテーション)(TensorFlow 2.0.4, Python 3.7 を使用)

事前学習済みの Mask R-CNN で,特定クラスのオブジェクトのセグメンテーションを行う.

[image]

[image]

[image]

目次

  1. 前準備
  2. 画像のインスタンスセグメンテーション(PixelLib, Mask RCNN モデル)

サイト内の関連ページ

関連する外部ページ

前準備

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

Gitは,バージョン管理システム.ソースコードの管理や複数人での共同に役立つ.

サイト内の関連ページ

Windows での Git のインストール: 別ページ »で説明している.

関連する外部ページ

Git の公式ページ: https://git-scm.com/

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

CMake はビルドツールである.

サイト内の関連ページ

Windows での cmake のインストール: 別ページ »で説明している.

関連する外部ページ

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

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

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

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」を選ぶ

    [image]
  3. インストール時の設定
    1. いまダウンロードした .exe ファイルを右クリック, 右クリックメニューで「管理者として実行」を選ぶ.

      [image]
    2. Python ランチャーをインストールするために,「Install launcher for all users (recommended)」をチェック.

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

    3. Add Python 3.7 to PATH」をチェック.

      [image]
    4. Customize installation」をクリック.

      [image]
    5. オプションの機能 (Optional Features)は,既定(デフォルト)のままでよい. 「Next」をクリック

      [image]
    6. Install for all users」を選ぶ.

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

      Install」をクリック

      [image]
    7. Disable path length limit」が表示される場合がある.クリックして,パス長の制限を解除する

      [image]
    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」 が表示されることを確認.

    [image]

② pip と setuptools の更新(Windows 上)

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

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

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

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

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

    py -3.7 -m pip install -U pip setuptools
    

    [image]

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

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

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

  2. venv を用いて,Python の仮想環境を作成

    次のコマンドを実行する

    py -3.7 -m pip install -U pip setuptools
    py -3.7 -m venv 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 ドライバ,NVIDIA CUDA ツールキット 10.0,NVIDIA cuDNN 7.6.5 のインストール(Windows 上)

Windows での Visual Studio Community 2017,NVIDIA ドライバNVIDIA CUDA ツールキット 10.0NVIDIA cuDNN 7.6.5 のインストール: 別ページ »で説明している.

画像のインスタンスセグメンテーション(PixelLib, Mask RCNN モデル)

次のページの手順に従う.

https://pixellib.readthedocs.io/en/latest/video_instance.html

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

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

    2. pycocotools のインストール
      python -m pip install -U cython
      python -m pip install "git+https://github.com/philferriere/cocoapi.git#egg=pycocotools&subdirectory=PythonAPI"
      

      [image]
    3. TensorFlow 2.0.4 その他のインストール

      C:\venv\py37\scripts\activate.bat
      python -m pip uninstall -y tensorflow tensorflow-gpu tensorflow-intel keras tensorboard tensorflow-estimator
      python -m pip install tensorflow==2.0.4 keras numpy
      
    4. pixellib のインストール
      C:\venv\py37\Scripts\activate.bat
      python -m pip install pixellib
      

      [image]
    5. coco を用いて学習済みの Mask RCNN モデルをダウンロード
      mkdir %HOMEPATH%
      cd %HOMEPATH%
      curl -LO https://github.com/ayoolaolafenwa/PixelLib/releases/download/1.2/mask_rcnn_coco.h5
      

      [image]
    6. 画像ファイルの準備

      画像ファイルは,%HOMEPATH%に置くことにする.

      ここでは, https://pixellib.readthedocs.io/en/latest/Image_instance.html で公開されている Sample2.jpg を使用

    7. インスタンスセグメンテーションの実行

      Python プログラムを実行する.Matplotlib を使うので,Jupyter QtConsoleJupyter ノートブック (Jupyter Notebook) の利用が便利である.

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

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

      import pixellib
      from pixellib.instance import instance_segmentation
      
      segment_image = instance_segmentation()
      segment_image.load_model("c:/data/mask_rcnn_coco.h5")
      target_classes = segment_image.select_target_classes(person=True)
      segment_image.segmentImage("c:/data/Sample2.jpg", segment_target_classes=target_classes, extract_segmented_objects=True, save_extracted_objects=True, output_image_name= "c:/data/Sample2_iseg_target1.jpg")
      

      [image]
    8. 画像ファイルの表示

      Python プログラムを実行する.Matplotlib を使うので,Jupyter QtConsoleJupyter ノートブック (Jupyter Notebook) の利用が便利である.

      import matplotlib.pyplot as plt
      a = plt.imread("c:/data/Sample2.jpg")
      plt.imshow(a)
      plt.show()
      b = plt.imread("c:/data/Sample2_iseg_target1.jpg")
      plt.imshow(b)
      plt.show()
      

      [image]
    9. インスタンスセグメンテーションの実行

      Python プログラムを実行する.Matplotlib を使うので,Jupyter QtConsoleJupyter ノートブック (Jupyter Notebook) の利用が便利である.

      import pixellib
      from pixellib.instance import instance_segmentation
      
      segment_image = instance_segmentation()
      segment_image.load_model("c:/data/mask_rcnn_coco.h5")
      target_classes = segment_image.select_target_classes(car=True)
      segment_image.segmentImage("c:/data/Sample2.jpg", segment_target_classes=target_classes, extract_segmented_objects=True, save_extracted_objects=True, output_image_name= "c:/data/Sample2_iseg_target2.jpg")
      

      [image]
    10. 画像ファイルの表示

      Python プログラムを実行する.Matplotlib を使うので,Jupyter QtConsoleJupyter ノートブック (Jupyter Notebook) の利用が便利である.

      import matplotlib.pyplot as plt
      a = plt.imread("c:/data/Sample2.jpg")
      plt.imshow(a)
      plt.show()
      b = plt.imread("c:/data/Sample2_iseg_target2.jpg")
      plt.imshow(b)
      plt.show()
      

      [image]