Início rápido do YOLOv5 🚀#
Embarca na tua jornada pelo reino dinâmico da detecção de objetos em tempo real com o Ultralytics YOLOv5! Este guia foi criado para servir como um ponto de partida abrangente para entusiastas e profissionais de IA que pretendem dominar o YOLOv5. Desde a configuração inicial até técnicas de treino avançadas, nós tratamos de tudo. Até ao final deste guia, terás o conhecimento necessário para implementar o YOLOv5 nos teus projetos com confiança, utilizando métodos de aprendizagem profunda de última geração. Vamos acender os motores e voar rumo ao YOLOv5!
Instalar#
Prepara-te para o lançamento clonando o repositório YOLOv5 e configurando o ambiente. Isto garante que todos os requisitos necessários estão instalados. Verifica se tens o Python>=3.8.0 e o PyTorch>=1.8 prontos para a descolagem. Estas ferramentas fundamentais são cruciais para executar o YOLOv5 de forma eficaz.
git clone https://github.com/ultralytics/yolov5 # clone repository
cd yolov5
pip install -r requirements.txt # install dependenciesInferência com PyTorch Hub#
Experimenta a simplicidade da inferência do PyTorch Hub no YOLOv5, onde os modelos são descarregados de forma integrada a partir da versão mais recente do YOLOv5. Este método tira partido do poder do PyTorch para carregar e executar modelos facilmente, tornando a obtenção de previsões simples e direta.
import torch
# Model loading
model = torch.hub.load("ultralytics/yolov5", "yolov5s") # Can be 'yolov5n' - 'yolov5x6', or 'custom'
# Inference on images
img = "https://ultralytics.com/images/zidane.jpg" # Can be a file, Path, PIL, OpenCV, numpy, or list of images
# Run inference
results = model(img)
# Display results
results.print() # Other options: .show(), .save(), .crop(), .pandas(), etc. Explore these in the Predict mode documentation.Inferência com detect.py#
Aproveita o detect.py para inferência versátil em várias fontes. Este obtém automaticamente modelos da versão mais recente do YOLOv5 e guarda os resultados com facilidade. Este script é ideal para utilização na linha de comandos e para integrar o YOLOv5 em sistemas maiores, suportando entradas como imagens, vídeos, diretórios, webcams e até transmissões em direto.
python detect.py --weights yolov5s.pt --source 0 # webcam
python detect.py --weights yolov5s.pt --source image.jpg # image
python detect.py --weights yolov5s.pt --source video.mp4 # video
python detect.py --weights yolov5s.pt --source screen # screenshot
python detect.py --weights yolov5s.pt --source path/ # directory
python detect.py --weights yolov5s.pt --source list.txt # list of images
python detect.py --weights yolov5s.pt --source list.streams # list of streams
python detect.py --weights yolov5s.pt --source 'path/*.jpg' # glob pattern
python detect.py --weights yolov5s.pt --source 'https://youtu.be/LNwODJXcvt4' # YouTube video
python detect.py --weights yolov5s.pt --source 'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP streamTreinamento#
Replica os benchmarks do conjunto de dados COCO do YOLOv5 seguindo as instruções de treino abaixo. Os modelos e conjuntos de dados necessários (como o coco128.yaml ou o coco.yaml completo) são obtidos diretamente da versão mais recente do YOLOv5. O treino de YOLOv5n/s/m/l/x numa GPU V100 deve demorar tipicamente 1/2/4/6/8 dias respetivamente (nota que as configurações de treino com Múltiplas GPU funcionam mais rapidamente). Maximiza o desempenho utilizando o --batch-size mais alto possível ou usa o --batch-size -1 para a funcionalidade AutoBatch do YOLOv5, que encontra automaticamente o tamanho do lote ideal. Os seguintes tamanhos de lote são ideais para GPUs V100-16GB. Consulta o nosso guia de configuração para obter detalhes sobre os ficheiros de configuração do modelo (*.yaml).
# Train YOLOv5n on COCO128 for 3 epochs
python train.py --data coco128.yaml --epochs 3 --weights yolov5n.pt --batch-size 128
# Train YOLOv5s on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5s.yaml --batch-size 64
# Train YOLOv5m on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5m.yaml --batch-size 40
# Train YOLOv5l on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5l.yaml --batch-size 24
# Train YOLOv5x on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5x.yaml --batch-size 16
Para concluir, o YOLOv5 não é apenas uma ferramenta de última geração para deteção de objetos, mas também um testemunho do poder da aprendizagem automática na transformação da forma como interagimos com o mundo através da compreensão visual. À medida que avanças neste guia e começas a aplicar o YOLOv5 aos teus projetos, lembra-te de que estás na vanguarda de uma revolução tecnológica, capaz de alcançar proezas notáveis em visão computacional. Caso precises de mais esclarecimentos ou de apoio de outros visionários, estás convidado a visitar o nosso repositório do GitHub, que alberga uma comunidade próspera de programadores e investigadores. Explora recursos adicionais como a Ultralytics Platform para gestão de conjuntos de dados e treino de modelos sem código, ou consulta a nossa página de Soluções para aplicações do mundo real e inspiração. Continua a explorar, continua a inovar e desfruta das maravilhas do YOLOv5. Boas deteções! 🌠🔍