Démarrer avec YOLOv5 🚀 dans Docker
Ce tutoriel vous guidera dans le processus de configuration et d'exécution de YOLOv5 dans un conteneur Docker, en fournissant des instructions complètes pour les environnements CPU et GPU .
Vous pouvez également explorer d'autres options de démarrage rapide pour YOLOv5, telles que notre Carnet de notes Colab
, GCP Deep Learning VMet Amazon AWS.
Conditions préalables
- Docker: Installez Docker à partir du site officiel de Docker.
- PiloteNVIDIA (pour la prise en charge du GPU ) : Version 455.23 ou supérieure. À télécharger à partir du site Web deNVIDIA.
- NVIDIA Docker Runtime (pour la prise en charge des GPU ) : Permet à Docker d'interagir avec votre GPU local. Suivez les instructions d'installation ci-dessous.
Configuration de NVIDIA Docker Runtime
Vérifiez que les pilotes NVIDIA sont correctement installés :
Installez le runtime NVIDIA Docker :
# Add NVIDIA package repositories
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
distribution=$(lsb_release -cs)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
# Install NVIDIA Docker runtime
sudo apt-get update
sudo apt-get install -y nvidia-docker2
# Restart Docker service
sudo systemctl restart docker
Vérifiez que le moteur d'exécution NVIDIA est disponible :
Étape 1 : Extraire l'image Docker YOLOv5
Le dépôt DockerHub Ultralytics YOLOv5 est disponible à l'adresse suivante https://hub.docker.com/r/ultralytics/yolov5. Docker Autobuild s'assure que le fichier ultralytics/yolov5:latest
est toujours synchronisée avec le commit le plus récent du dépôt.
# Set image name as a variable
t=ultralytics/yolov5:latest
# Pull the latest image
sudo docker pull $t
Étape 2 : Exécuter le conteneur Docker
Utilisation de l'CPU uniquement
Exécutez une instance interactive de l'image Docker YOLOv5 (appelée "conteneur") en utilisant la commande -it
drapeau :
Utilisation du GPU
# Run with all GPUs
sudo docker run -it --ipc=host --gpus all $t
# Run with specific GPUs
sudo docker run -it --ipc=host --gpus '"device=2,3"' $t
Montage des répertoires locaux
Pour accéder aux fichiers de votre machine locale dans le conteneur :
# Mount a local directory into the container
sudo docker run -it --ipc=host --gpus all -v /path/on/host:/path/in/container $t
Conteneur avec accès à GPU :
Pour faire fonctionner un conteneur avec un accès à GPU , utilisez la commande --gpus all
drapeau :
Étape 3 : Utiliser YOLOv5 🚀 dans le conteneur Docker
Vous pouvez désormais former, tester, détecter et exporter les modèles YOLOv5 dans le conteneur Docker en cours d'exécution :
# Train a model on your data
python train.py
# Validate the trained model for Precision, Recall, and mAP
python val.py --weights yolov5s.pt
# Run inference using the trained model on your images or videos
python detect.py --weights yolov5s.pt --source path/to/images
# Export the trained model to other formats for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite