1. 設置環境
より重要なバージョンのいくつかを次に示します。
グラフィックカード: 4090&2080ti
CUDA=11.1
Python=3.8
トーチ=1.9.0+cu111
トーチビジョン=0.10.0+cu111
spconv-cu111=2.1.25
numpy=1.21.0
数値=0.48.0
mmdet=2.25.0
mmdet3d=0.17.1
mmcv-full=1.3.18
インストール プロセスは基本的に MMDET3D に従いますが、いくつかのインストール パッケージのバージョンに注意してください。
2. 環境構築
1.mmdet3d環境の設定
(1) 仮想環境を作成します (パッケージをインストールする必要はありません。Anconda が自動的に Python をインストールします)。
conda create -n deepinteraction python=3.8
(2) 環境を活性化する
conda はディープインタラクションをアクティブ化します
(3) トーチとトーチビジョンの取り付け
インストール手順: ローカル インストールをお勧めします。ローカル インストールしないと、pip が誤って CPU バージョンをインストールしてしまいます。
①ファイルをダウンロードする
リンク:
Baidu Cloud : torch および torchvision インストール パッケージが含まれている次のフォルダーを見つけます。
②設置
pip コマンドを使用してローカル インストールを実装します。
pip インストール torch-1.9.0+cu111-cp38-cp38-linux_x86_64.whl torchvision-0.10.0+cu111-cp38-cp38-linux_x86_64.whl
③テスト
まず Python と入力して環境に入り、次のコマンドを入力します。
import torch # 如正常则静默
torch.__version__ #查看torch版本
import torchvision
torchvision.__version__ #查看torchvision版本
torch.cuda.is_available() #正常的话返回“True”
a = torch.Tensor([1.]) # 如正常则静默
a.cuda() # 如正常则返回"tensor([ 1.], device='cuda:0')"
from torch.backends import cudnn # 如正常则静默
cudnn.is_acceptable(a.cuda()) # 如正常则返回 "True"
ディスプレイは正常に動作します。
④公式ダウンロードサイト
Baidu Cloud を使用したくない場合は、次の公式ダウンロード Web サイトを参照してください。
トーチのダウンロード Web サイト: https://download.pytorch.org/whl/torch_stable.html
トーチ 1.9.0+cu111: https://download.pytorch.org/whl/cu111/torch-1.9.0%2Bcu111-cp38-cp38-linux_x86_64.whl
トーチビジョン 0.10.0+cu111: https://download.pytorch.org/whl/cu111/torchvision-0.10.0%2Bcu111-cp38-cp38-linux_x86_64.whl
(4) mmcv-full 1.3.18をインストールする
①pipの取り付け
pip install mmcv-full==1.3.18 -f https://download.openmmlab.com/mmcv/dist /cu111/torch1.9.0/index.html
ここで pip install mmcv-full コマンドを使用してインストールすることはできず、後で独自の cuda 情報と torch 情報を追加する必要があります。
(5) mmsegmentationのインストール
インストール手順: mmdet3d のみをインストールする必要があります。
①pipの取り付け
pip install mmsegmentation==0.14.1
②現地設置
/mmsegmentation-master フォルダーに移動し、次を実行します。
pip install -r 要件.txt
Python setup.py 開発
(6) mmdetのインストール
インストール手順: mmdet3d の代わりに mmdet を実行する場合は、後でデータを実行しやすくするためにローカルにインストールすることをお勧めします。
①pipでmmdetをインストール
pip インストール mmdet==2.14.0
②mmdetをローカルにインストールする
/mmdetection フォルダーに移動して、次を実行します。
pip install -r 要件.txt
Python setup.py 開発
(7) mmdet3dをインストールする
①公式のインストール手順
git clone https://github.com/open-mmlab/mmdetection3d.git
cd mmdetection3d
git checkout v0.17.1
python setup.py install
②現地設置
/mmdetection3d-master フォルダーに入ります
埋め込む:
pip install -r の要件
Python setup.py 開発
(8) detectron2のインストール
detectron2 の Dynamic Conv モジュールが使用され、手順は次のとおりです。
python -m pip install detectron2 -f \
https://dl.fbaipublicfiles.com/detectron2/wheels/cu111/torch1.9/index.html
2. データセットをダウンロードして構成する
公式サイトでの方法:
データセットの準備 — MMDetection3D 1.2.0 ドキュメントhttps://mmdetection3d.readthedocs.io/en/latest/user_guides/dataset_prepare.htmlデータセットをフォルダーに解凍し、次の手順を実行します。
python tools/create_data.py nuscenes --root-path ./data/nuscenes --out-dir ./data/nuscenes --extra-tag nuscenes
変換された結果は次のとおりです。
3. トレーニング前のウェイト
事前トレーニングされた重みを pretrained/ フォルダーにコピーします。
3. トレーニングとテスト
# 8 つの GPU でトレーニング
tools/dist_train.sh project/configs/nuscenes/Fusion_0075_refactor.py 8
# 8 つの GPU でテスト
tools/dist_test.sh project/configs/nuscenes/Fusion_0075_refactor.py ${CHECKPOINT_FILE} 8 --eval=bbox
必要に応じて GPU の数を変更します。
4. 問題に遭遇する
1、ModuleNotFoundError: 'numba.errors' という名前のモジュールがありません
解決策: numba のバージョンが高すぎるため、0.48.0 にインストールする必要があります。
pip インストール番号==0.48.0
2、RuntimeError: アドレスはすでに使用されています xxx
問題の説明:ポートが占有されています
解決:
ファイル /home/xd/xyy/DeepInteraction-main/tools/dist_train.sh 内
ターミナルコマンドのポート番号を指定します。ターミナルコマンド実行後に --port 12345 を追加します。ポート番号は任意に指定でき、5 桁だけで十分です。
3、KeyError: 'SwinTransformer はすでにモデルに登録されています'
解決策: /DeepInteraction-main/projects/mmdet3d_plugin/__init__.py の .swin_transformer import SwinTransformer をコメントアウトするだけです。
参考:
FastBEV が Ubuntu_A 混乱した昆虫のブログを再現 - CSDN ブログ
4、numba.errorsからNumbaPerformanceWarningをインポート
解決策:必要に応じて numba==1.48 をインストールします。
5、AttributeError: 'ConfigDict' オブジェクトには属性 'device' がありません
解決:
tools/train.pymeta['config'] = cfg.pretty_text
の下に次のコードを追加します。
cfg.device='cuda'
参考:
6、 mmcv/_ext.cpython-38-x86_64-linux-gnu.so: 未定義シンボル: _Z27points_in_boxes_cpu_forwardN2at6TensorES0_S0_
解決:
pip install mmcv-full==1.3.18 -f https://download.openmmlab.com/mmcv/dist/cu111/torch1.9.0/index.html
ここで pip install mmcv-full コマンドを使用してインストールすることはできず、後で独自の cuda 情報と torch 情報を追加する必要があります。