DeepLabCutの特長
DeepLabCutは、動物行動解析を簡単かつ高精度に行うことのできるソフトウェアです。
特に、ディープラーニング技術を利用して、動画からのキーポイント抽出や行動追跡が可能です。マーカーレスで高精度の解析を行うことのできる点が特長で、対象となる動物にも負荷や違和感がないため、自然に近い状態で解析を行うことができます。その高い柔軟性と精度により、行動科学、神経科学、生物医学などの分野で広く利用されています。
DeepLabCutの利点
マーカーレスモーションキャプチャー
マーカーなしで対象となる動物の行動を追跡することができる。そのため、従来の方法と比較して動物に対する負担が少なく、自然な行動を観察することが可能。
精度の高い行動トラッキング
Deep Learning技術や転移学習の採用により、学習時間を短縮しつつ精度の高い姿勢推定が可能。
環境に依存しないキャリブレーション
事前のキャリブレーションが不要で、ビデオデータから直接の姿勢推定が可能であるため、特定の環境設定に依存せず使用できる。
必要スペック
推奨情報
項目 | 推奨情報/注意点 |
ハードウェア | NVIDIA GPU (8GB以上のメモリ) を推奨。GPUなしでも動作可能だが、処理速度は大幅に低下。 クラウドサービス (Google Cloud、AWS、Google Colab) を利用する選択もある。 |
カメラ | 様々なカメラに対応(スマートフォンカメラ、赤外線、異なるメーカーなど) |
ソフトウェア | OS: Ubuntu 16.04~22.04 LTS (最推奨) 、MacOS (CPU利用のみ) 、Windows 10。 Python/Anaconda: Python 3対応、Anaconda使用推奨。 TensorFlow: TF 2.10推奨。CPUでの動作も可能だが非常に遅い。GPU利用にはGoogle Colabなどのクラウドも推奨。 Docker: 上級者にはDockerコンテナの使用を推奨。 |
参考:How To Install DeepLabCut — DeepLabCut
推奨情報
処理内容 | 最低スペック | 推奨スペック |
---|---|---|
動画のキーポイント抽出 | GPU: NVIDIA RTX4060 Ti RAM: 8GB SSD: 500GB |
GPU: NVIDIA RTX 4070 Ti RAM: 32GB SSD: 1TB |
モデルのトレーニング | GPU: NVIDIA RTX4060 Ti RAM: 8GB SSD: 1TB |
GPU: NVIDIA RTX4090 RAM: 24GB SSD: 2TB |
DeepLabCutの導入方法
DeepLabCutは比較的簡単に導入することができます。具体的なインストールの流れは以下のとおりです。
環境の準備
Pythonの最新版をインストールします。
GPU使用時はCUDA・cuDNNをインストールします。(GPU使用時は、NVIDIA driver、CUDA、tensorflow-gpuのバージョンの互換性にご注意ください)
Anacondaを使用する場合は、環境を新規作成します。コマンドプロンプトまたはターミナルを開き、以下のように仮想環境を作成します。
conda create -n deeplabcut_env conda activate deeplabcut_env
DeepLabCutのインストール
コマンドプロンプトまたはターミナルを開き、以下のコマンドを入力します。
pip install deeplabcut
DeepLabCutの起動
新しい環境でDeepLabCutを起動する場合は、以下を入力・実行します。
python -m deeplabcut
新規プロジェクトの作成
新しいプロジェクトを作成し、解析に使用する動画をインポートします。
import deeplabcut config_path = deeplabcut.create_new_project('プロジェクト名', '作成者名', ['トレーニング用動画のパス'], working_directory='作業ディレクトリ', copy_videos=False)
キーポイントを手動でラベル付けします。
deeplabcut.extract_frames(config_path, 'automatic', 'kmeans') deeplabcut.label_frames(config_path)
モデルのトレーニング
ラベル付けしたデータを用いて、モデルをトレーニングします。
トレーニングデータセットの作成は、以下のコマンドを入力します。
deeplabcut.create_training_dataset(config_path)
トレーニングされたネットワークの評価は以下で行います。
deeplabcut.train_network(config_path)
推論と結果の可視化
コマンドプロンプトまたはターミナルを開き、以下のコマンドを入力します。
deeplabcut.analyze_videos(config_path, ['推論用動画ファイルパス'], save_as_csv=True) deeplabcut.plot_trajectories(config_path, ['推論用動画ファイルパス'])