私的AI研究会 > ProjectEnv

画像生成 プロジェクト環境構築(Windows編)

 「画像生成AI Stable-Diffusion」プロジェクトを実行できる環境を新しく作成する手順

※ 最終更新:2023/12/18 

Anaconda のインストールと設定

推奨動作環境

anaconda のダウンロードとインストール

  1. オフィシャルサイト https://www.anaconda.com/products/distribution にアクセス

     ● 画面の「Download」ボタン(赤丸)を押してダウンロード

     ● ダウンロード・ファイル名(2023/02/02 現在)
      Anaconda3-2022.10-Windows-x86_64.exe

  2. インストーラ「Anaconda3-2022.10-Windows-x86_64.exe」を実行し手順に従ってインストールする

Anaconda の起動と Python 環境の構築

  1. Windows のスタートメニューから「Anaconda Powershell Prompt (anaconda3)」を選択する
    ・以降の作業は「Anaconda Powershell Prompt (anaconda3)」内で行う
    ・表示ウインドウのサイズや文字の大きさなどは、ウインドウ上部のタイトルバーを右クリック「プロパティ」で設定する。

  2. Anaconda を最新版に更新
    ※ コマンドプロンプトの最初が (base) になっているのを確認すること
    (base) PS > conda update -n base -c defaults conda
    Collecting package metadata (current_repodata.json): done
    Solving environment: done
        :
    Proceed ([y]/n)? y             ← 'y' を入力する
        :
    Executing transaction: done
    Retrieving notices: ...working... done

環境変数の設定

Windowsのターミナルで ANSI エスケープシーケンスを有効にする設定

ターミナル起動時の環境設定

  1. 「スタートボタン」を押し「Anaconda Powershell Prompt」の上で 右クリック → その他 → ファイルの場所を開く を選択する
  2. 表示されるエクスプローラ上の「Anaconda Powershell Prompt」で 右クリック → プロパティ を選ぶ
  3. リンク先の項目を変更する。
    ・元の記述
    %windir%\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy ByPass -NoExit -Command "& 'C:\ProgramData\Anaconda3\shell\condabin\conda-hook.ps1' ; conda activate 'C:\Users\<User>\anaconda3' "
    ・次のように変更 <User> = ユーザー名 C: = anaconda_winを配置したドライブ
    %windir%\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy ByPass -NoExit -Command "& 'C:\ProgramData\Anaconda3\shell\condabin\conda-hook.ps1' ; conda activate 'C:\Users\<User>\anaconda3' ; Set-Location 'c:\anaconda_win' "
    ※ 長すぎて入力できない場合はスペースをとるか、Set-Location 以下を省略するなどの対応をとる

  4. 「Anaconda (py38)」を再起動して設定を確認する。
    ※ コマンドプロンプトの最初が (base) になっているのを確認すること
    なっていなければ前項「ターミナル起動時の環境設定」を再確認

「Stable-diffusion」プロジェクトの構築

Anaconda 仮想環境の作成

  1. 新しく仮想環境を作成する
    (base) PS > conda create -n py38 python=3.8
  2. できた仮想環境の確認
    (base) PS $ conda info -e
    # conda environments:
    #
    base                  *  C:\Users\XXXXX\anaconda3
    py38                     C:\Users\XXXXX\anaconda3\envs\py38
    
    (base) PS > conda activate py38
    (py38) PS >                ← (py38) に切り替わっていることを確認する

画像生成「Stable-diffusion」パッケージの配置

  1. プロジェクト・ファイルのダウンロード
    AI_project_20230203.zip (55.9MB) <Stable-deffusion プロジェクト一式> をダウンロード
  2. ドライブ直下に「anaconda_win」フォルダを作成する
  3. 「AI_project」フォルダ内をすべて「anaconda_win」直下に配置する
    ドライブ直下のプロジェクト・ディレクトリ
    c:/anaconda_win
    ├─workspace_py37
    │  ├─mylib             ← python 共有ライブラリ (パスが通っていること)
    │  └─openvino
    └─workspace_py38        ← anaconda 環境下のアプリケーション・プロジェクト
        ├─googletrans
        └─stable_diffusion
  4. 「Stable-diffusion」パッケージのインストール
    (py38) PS > cd c:/anaconda_win/workspace_py38\stable_diffusion
    (py38) PS > python -m pip install --upgrade pip
    (py38) PS > pip install openvino==2022.1.0
    (py38) PS > pip install -r requirements.txt

「Stable-diffusion」動作確認

自動翻訳パッケージ「googletrans」インストール

「googletrans」の動作確認

「画像生成AI Stable-Diffusion」の実行

GUI で画像を生成する「stable_diffusion2.py」

  1. Windows のスタートメニューから「Anaconda (py38)」を選択する
    GUI ウインドウが左側に表示されるので重ならないように、表示されたターミナルウインドウをデスクトップの右に寄せる

  2. ターミナルウインドウからコマンド入力
    (py38) PS > cd /anaconda_win/workspace_py38/stable_diffusion
    (py38) PS > python stable_diffusion2.py
    Starting..
    [Errno 2] No such file or directory: 'setting.csv'
     - Program title  : Stable Diffusion2 OpenVINO™  Ver 0.02
     - OpenVINO engine: 2022.1.0-7019-cdb9bec7210-releases/2022/1
     - OpenCV version : 4.5.5
     - Log level      : 3
     - Output dir     : result/
     - Output header  : output_
     - model          : bes-dev/stable-diffusion-v1-4-openvino
     - beta_start     : 0.00085
     - beta_end       : 0.012
     - beta_schedule  : scaled_linear
     - eta            : 0.0
     - tokenizer      : openai/clip-vit-large-patch14
  3. 各パラメータを入力後「Generate」ボタンを押すと現在の設定内容を表示して スタート確認メッセージを表示する
  4. 「OK」を押すと処理開始する ● 処理を開始すると終了するまで入力は受け付けられない
    ● 処理は数分以上かかる、過程はターミナル・ウインドウに表示する
     Prompt: Beautiful green forest where light shines
     (和訳): 光が輝く美しい緑の森
    
    ** start 0 ** 734437651
    32it [19:41, 36.92s/it]
     -Output-: result/output_0734437651.png
    ** end **     00:21:44
  5. 数分~数十分の作成時間経過後に結果画像が表示される
  6. 続けて画像生成をp粉うことができる「Exit」を押すとプログラムを終了する
    Finished.

自動実行で複数画像を生成する「stable_diffusion_make2.py」

  1. Windows のスタートメニューから「Anaconda (py38)」を選択する

  2. ターミナルウインドウからコマンド入力
    CSVファイル(デフォールト・ファイル名「input.csv」)の記述に従って自動的に画像を生成する
    (py38) PS > cd /anaconda_win/workspace_py38/stable_diffusion
    (py38) PS > python stable_diffusion_make2.py
    Starting..
     - Program title  : Stable Diffusion OpenVINO™ auto making 2 Ver 0.01
     - OpenVINO engine: 2022.1.0-7019-cdb9bec7210-releases/2022/1
     - OpenCV version : 4.5.5
     - Input file     : input.csv
     - Seed reset     : y
     - Log level      : 3
     - model          : bes-dev/stable-diffusion-v1-4-openvino
     - beta_start     : 0.00085
     - beta_end       : 0.012
     - beta_schedule  : scaled_linear
     - eta            : 0.0
     - tokenizer      : openai/clip-vit-large-patch14
    
     Prompt: Street-art painting of Tom Cruise in style of Gogh, photorealism
     (和訳): ゴッホのスタイルでのトムクルーズのストリートアートペインティング、フォ トリアリズム
    
    ** start 0 - 0 ** 1259689998
    32it [20:17, 38.05s/it]
    ** end **     00:22:22
    
     Prompt: Street-art painting of Tom Cruise in style of Gogh, photorealism
     (和訳): ゴッホのスタイルでのトムクルーズのストリートアートペインティング、フォ トリアリズム
    
    ** start 1 - 0 ** 84977309
    32it [21:01, 39.42s/it]
    ** end **     00:23:03
    
    Finished.

トラブルシューティング(覚書)

Anaconda の更新で「CondaSSLError」が出る場合

Windows で初回実行の学習済みモデル・ダウンロードで管理権限がないとエラーになるとき

 ■ Windows10の場合

 ■ Windows11の場合

「ModuleNotFoundError: No module named 'XXXXXXXXX'」エラーの出るとき

更新履歴

参考資料

 

Last-modified: 2023-12-18 (月) 05:40:42