DeepLabCut2.3以降の導入(Windows版, Anaconda不要)

DeepLabCut2.3以降の導入(Windows版, Anaconda不要)

美しくスタイリッシュに深層学習環境を整備したい皆さまへ

※ 最終更新日: 2024.01.06
※ 2023年10月27日現在の導入方法です
※ English is also available from the above switcher.
※ 個人的なページです、自己責任で

環境

ハードウェア(GPUはNvidia指定)

GPU: Nvidia Geforce RTX 3060 (12GB)
OS: Windows 11 64bit
CPU: Intel Core i7 第10世代
メモリ: 64GB DDR4(32GB以上が必要)

パッケージ・ドライバ関係

DeepLabCut == 2.3.7
Python == 3.10.11
CUDA == 11.7
cuDNN == 8.5
Geforce Experience Studio Driver == 537.58(GPUに合った最新バージョン)
Tensorflow == 2.10.0(以下の手順で自動で入る。2.11以降はWindowsでGPU非対応。WSLなら可。)

導入

Pythonのインストール

以下のサイトから冒頭のバージョンを探す
https://www.python.org/downloads/windows/
64bitシステムなら「Download Windows installer (64-bit)」をダウンロード&インストール

※Pathを追加するオプションにチャックを入れると楽です
※私はAll Userで入れました

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

DeepLabCutのパラメータをいじるのに便利です
https://code.visualstudio.com/

「Download for Windows」からダウンロード&インストール
※Python用拡張ライブラリをインストール
※試しにpythonファイルを作成して、右下にpythonのバージョンが正しく表示されているか確認

2023.11.10 現在、Pythonが利用できないバグが生じています。Pre-installみたいなのを実行すれば解消されます。

CUDA・cuDNNのインストール

冒頭のCUDAバージョンを検索してダウンロード&インストール
※PATHが通っていることを確認(ヒント:システム環境変数, CUDA_PATH)

CUDAのインストール場所を探す
※「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7」など
※PATHから見つけることもできます

冒頭のcuDNNバージョンを検索してダウンロード&解凍
※無料のアカウント作成とデベロッパープログラムへの加入後にダウンロード可能

「bin」などの”フォルダ”をすべてCUDA\v~~~のフォルダ内(「bin」などが見える状態)にコピペ

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

「あのファイルどこいった?」を解決

高速でファイル&フォルダ検索してくれます

以下からダウンロード&インストール

https://www.voidtools.com/

zlibwapi.dllの追加

Everythingなどを使ってPC内のどこかにある「zlibwapi.dll」というファイルを見つける
※見つからない場合はstable diffusionか何かインストールすれば付いてくる
※なぜこのようなことをやっているかと言うと、nvidiaの公式から落とせなくなったから

「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\bin」などPATHの通っているフォルダにコピペ

仮想環境の作成

以下は一例。

Cドライブ直下に「C:\Deeplabcut\venv」というフォルダ構成(空で良い)を作成

コマンドプロンプト(cmd)を開いて、

cd C:\Deeplabcut\venv
python -m venv DEEPLABCUT
.\DEEPLABCUT\Scripts\activate

上記のコマンドを実行するとDEEPLABCUTという名前の仮想環境に入る
なお、以降絶対Pathを指定するとcdをする必要はない

C:\Deeplabcut\venv\DEEPLABCUT\Scripts\activate
DeepLabCutのインストール
C:\Deeplabcut\venv\DEEPLABCUT\Scripts\activate
python.exe -m pip install --upgrade pip
pip install deeplabcut[gui,tf]

を実行

Numpyのダウングレード(一時的な対処)

当環境ではnumpy==1.24において、

AttributeError: module 'numpy' has no attribute 'int'.

というエラーに遭遇しました

一時的な対処として、numpyのダウングレードを行いました

C:\Deeplabcut\venv\DEEPLABCUT\Scripts\activate
pip install numpy==1.23
DeepLabCutの起動
C:\Deeplabcut\venv\DEEPLABCUT\Scripts\activate
python -m deeplabcut

で起動します

起動バッチファイルの作成(オプション)

デスクトップ上に「DeepLabCut」という空のtxtファイルを作成

以下をコピペ

call C:\Deeplabcut\venv\DEEPLABCUT\Scripts\activate
call python -m deeplabcut
cmd /k

保存後、名前を変更から「DeepLabCut.txt」→「DeepLabCut.bat」にする
※「拡張子を変更すると~」という通知は無視
※ファイルの拡張子を表示する設定にしていない場合はエクスプローラーから変更
※最後の一文はDeepLabCutを終了させたときにプロンプトを残すため

管理者として実行する場合

whoami /priv | find "SeDebugPrivilege" > nul
if %errorlevel% neq 0 (
@powershell start-process %~0 -verb runas
exit
)
call C:\Deeplabcut\venv\DEEPLABCUT\Scripts\activate
call python -m deeplabcut
cmd /k

https://qiita.com/kokosan60/items/a135f0e59e2790db36a3を参照

起動ファイルにアイコンを設定したい場合

C:\Deeplabcut\venv\DEEPLABCUT\deeplabcut

などにあるlogo.pngをlogo.icoに変換した後(ツールは適当なものを使用してください)、batファイルのショートカットに対してアイコンの変更する

さらにこのショートカットのプロパティからリンク先の先頭に “cmd.exe /c “(半角スペースを省略しないこと)を追加することでタスクバーに設置できるようになる
(自動的に”C:\Windows\System32\cmd.exe /c C:\Deeplabcut\venv\DeepLabCut.bat”などに変換される)

nvidia-smiによるGPU使用率のモニタリング(オプション)

上記と同様に「nvidia-smi.bat」というバッチファイルを作成

以下をコピペ

cd C:\Windows
call nvidia-smi -l 2

起動すると2秒おきにGPU使用率(電力量、VRAM、使用率など)を表示
※異なるCUDAバージョンが表示されいるが無視(利用可能な最新のものが出てるだけ)
※タスクマネージャーでは見えない部分があるのでこれを推奨します

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

動画の切り出しやら何やらで使います

以下のリンクから「ffmpeg-master-latest-win64-gpl.zip」をダウンロード&解凍

https://github.com/BtbN/FFmpeg-Builds/releases

フォルダ名をffmpegにして「C:\ffmpeg」に移動した場合、

PATHに「C:\ffmpeg\bin」を追加

トラブルシューティング

“MLIR V1 optimization pass is not enabled”というメッセージは無視して良いらしいです

使い方編に続く……。(準備中)