1. Entorno de instalación
Estas son algunas de las versiones más importantes:
Tarjeta gráfica: 4090 y 2080ti
CUDA=11.1
pitón = 3.8
antorcha=1.9.0+cu111
visión de antorcha=0.10.0+cu111
spconv-cu111=2.1.25
numeroso=1.21.0
número=0.48.0
mmdet=2.25.0
mmdet3d=0.17.1
mmcv-completo=1.3.18
El proceso de instalación básicamente sigue MMDET3D, solo preste atención a algunas versiones del paquete de instalación:
2. Construcción del entorno
1. Configurar el entorno mmdet3d
(1) Cree un entorno virtual (no es necesario instalar paquetes, Anconda instala Python automáticamente):
conda crear -n interacción profunda python=3.8
(2) Activar el entorno
conda activar interacción profunda
(3) Instale la antorcha y torchvision
Instrucciones de instalación: se recomienda la instalación local; de lo contrario, pip instalará accidentalmente la versión de la CPU.
①Descargar archivo
Enlace:
Baidu Cloud : busque la siguiente carpeta, que contiene los paquetes de instalación de torch y torchvision .
②Instalación
Utilice el comando pip para implementar la instalación local :
instalación de pip torch-1.9.0+cu111-cp38-cp38-linux_x86_64.whl torchvision-0.10.0+cu111-cp38-cp38-linux_x86_64.whl
③Prueba
Primero ingrese python para ingresar al entorno e ingrese los siguientes comandos:
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"
La pantalla funciona normalmente:
④Sitio web de descarga oficial
Si no desea utilizar Baidu Cloud, aquí está el sitio web oficial de descarga:
Sitio web de descarga de antorchas: https://download.pytorch.org/whl/torch_stable.html
antorcha 1.9.0+cu111: https://download.pytorch.org/whl/cu111/torch-1.9.0%2Bcu111-cp38-cp38-linux_x86_64.whl
antorchavision 0.10.0+cu111: https://download.pytorch.org/whl/cu111/torchvision-0.10.0%2Bcu111-cp38-cp38-linux_x86_64.whl
(4) Instale mmcv-full 1.3.18
①instalación de tubería
instalación de pip mmcv-full==1.3.18 -f https://download.openmmlab.com/mmcv/dist /cu111/torch1.9.0/ index.html
No puede simplemente usar el comando pip install mmcv-full para instalarlo aquí. Debe agregar su propia información de cuda y de antorcha más adelante.
(5) Instalar la segmentación mm
Instrucciones de instalación: Solo es necesario instalar mmdet3d.
①instalación de tubería
segmentación mm de instalación de pip == 0.14.1
②Instalación local
Vaya a la carpeta /mmsegmentation-master y ejecute:
instalación de pip -r requisitos.txt
python setup.py desarrollar
(6) Instalar mmdet
Instrucciones de instalación: si desea ejecutar mmdet en lugar de mmdet3d, se recomienda instalarlo localmente para facilitar la ejecución de datos más adelante.
①pip instalar mmdet
instalación de pipa mmdet==2.14.0
②Instalar mmdet localmente
Vaya a la carpeta /mmdetection y ejecute:
instalación de pip -r requisitos.txt
python setup.py desarrollar
(7) Instalar mmdet3d
①Instrucciones de instalación oficiales
git clone https://github.com/open-mmlab/mmdetection3d.git
cd mmdetection3d
git checkout v0.17.1
python setup.py instalar
②Instalación local
Ingrese a la carpeta /mmdetection3d-master
implementar:
requisitos de instalación de pip -r
python setup.py desarrollar
(8) Instalar detectron2
Se utiliza el módulo Dynamic Conv en detectron2. Las instrucciones son las siguientes:
python -m pip install detectron2 -f \
https://dl.fbaipublicfiles.com/detectron2/wheels/cu111/torch1.9/index.html
2. Descargue y configure el conjunto de datos.
Método del sitio web oficial:
Preparación del conjunto de datos: documentación de MMDetection3D 1.2.0 https://mmdetection3d.readthedocs.io/en/latest/user_guides/dataset_prepare.html Descomprimiendo el conjunto de datos en una carpeta y luego ejecutando las instrucciones:
herramientas de Python/create_data.py nuscenes --root-path ./data/nuscenes --out-dir ./data/nuscenes --extra-tag nuscenes
Los resultados convertidos son los siguientes:
3. Pesas previas al entrenamiento
Copie los pesos previamente entrenados en la carpeta preentrenada/:
3. Entrena y prueba
# entrenar con 8 GPU
herramientas/dist_train.sh proyectos/configs/nuscenes/Fusion_0075_refactor.py 8
# probar con 8 GPU
herramientas/dist_test.sh proyectos/configs/nuscenes/Fusion_0075_refactor.py ${CHECKPOINT_FILE} 8 --eval=bbox
Cambie la cantidad de GPU según sus necesidades.
4. Encontrar problemas
1、ModuleNotFoundError: ningún módulo llamado 'numba.errors'
Solución: la versión de numba es demasiado alta y debe instalarse en 0.48.0:
instalación de pip numba == 0.48.0
2、RuntimeError: Dirección ya en uso xxx
Descripción del problema: el puerto está ocupado
solución:
En el archivo /home/xd/xyy/DeepInteraction-main/tools/dist_train.sh
Puede especificar el número de puerto del comando de terminal. Agregue --port 12345 después de ejecutar el comando de terminal. El número de puerto se puede especificar arbitrariamente y solo cinco dígitos son suficientes.
3、KeyError: 'SwinTransformer ya está registrado en los modelos'
Solución: simplemente comente desde .swin_transformer importe SwinTransformer en /DeepInteraction-main/projects/mmdet3d_plugin/__init__.py
referencia:
FastBEV reproduce Ubuntu_Un blog de insecto confundido-blog CSDN
4 、 desde numba.errors importa NumbaPerformanceWarning
Solución: instale numba==1.48 según sea necesario
5、AttributeError: el objeto 'ConfigDict' no tiene el atributo 'dispositivo'
Solución:
meta['config'] = cfg.pretty_text
Agregue el siguiente código debajo de tools/train.py :
cfg.device='cuda'
referencia:
6、 mmcv/_ext.cpython-38-x86_64-linux-gnu.so: símbolo indefinido: _Z27points_in_boxes_cpu_forwardN2at6TensorES0_S0_
Solución:
instalación de pip mmcv-full==1.3.18 -f https://download.openmmlab.com/mmcv/dist/cu111/torch1.9.0/index.html
No puede simplemente usar el comando pip install mmcv-full para instalarlo aquí. Debe agregar su propia información de cuda y de antorcha más adelante.