YOLOv10 e YOLOv11: As Últimas Versões do YOLO
Conheça os avanços mais recentes do YOLO com as versões 10 e 11, suas melhorias e suas aplicações.
InSkillCoach
YOLOv10 e YOLOv11: As Últimas Versões do YOLO
As versões 10 e 11 do YOLO trazem melhorias significativas em termos de desempenho, precisão e funcionalidades.
1. YOLOv10
1.1 Principais Características
# Instalação do YOLOv10
pip install ultralytics
# Import
from ultralytics import YOLO
# Carregamento do modelo YOLOv10
model_v10 = YOLO('yolov10n.pt') # Nano
model_v10_s = YOLO('yolov10s.pt') # Small
model_v10_m = YOLO('yolov10m.pt') # Medium
model_v10_l = YOLO('yolov10l.pt') # Large
model_v10_x = YOLO('yolov10x.pt') # XLarge
1.2 Melhorias
-
Arquitetura
- Nova arquitetura de backbone otimizada
- Melhor tratamento de características multiescala
- Redução da latência de inferência
-
Desempenho
- Velocidade de inferência aumentada em 15%
- Precisão melhorada em 5%
- Consumo de memória otimizado
-
Funcionalidades
- Suporte aprimorado à detecção de objetos pequenos
- Melhor tratamento de oclusões
- Detecção em tempo real otimizada
2. YOLOv11
2.1 Principais Características
# Instalação do YOLOv11
pip install ultralytics
# Import
from ultralytics import YOLO
# Carregamento do modelo YOLOv11
model_v11 = YOLO('yolov11n.pt') # Nano
model_v11_s = YOLO('yolov11s.pt') # Small
model_v11_m = YOLO('yolov11m.pt') # Medium
model_v11_l = YOLO('yolov11l.pt') # Large
model_v11_x = YOLO('yolov11x.pt') # XLarge
2.2 Melhorias
-
Arquitetura
- Nova arquitetura de backbone com atenção
- Melhor tratamento de características espaciais
- Otimização para dispositivos móveis
-
Desempenho
- Velocidade de inferência aumentada em 25%
- Precisão melhorada em 8%
- Consumo de memória reduzido em 20%
-
Funcionalidades
- Suporte à detecção 3D
- Melhor tratamento de cenas complexas
- Detecção em tempo real ultraotimizada
3. Comparação das Versões
3.1 Métricas de Desempenho
def compare_versions():
# Configuração
test_image = "path/to/test/image.jpg"
# Teste das diferentes versões
versions = {
'v8': YOLO('yolov8n.pt'),
'v10': YOLO('yolov10n.pt'),
'v11': YOLO('yolov11n.pt')
}
results = {}
for version, model in versions.items():
# Medição do tempo de inferência
start_time = time.time()
results[version] = model(test_image)
inference_time = time.time() - start_time
print(f"YOLO{version}:")
print(f"Temps d'inférence: {inference_time:.2f}s")
print(f"Nombre de détections: {len(results[version][0].boxes)}")
print(f"Précision moyenne: {results[version][0].boxes.conf.mean():.2f}")
3.2 Tabela Comparativa
| Versão | Velocidade | Precisão | Memória | Funcionalidades |
|---|---|---|---|---|
| v8 | Base | Base | Base | Base |
| v10 | +15% | +5% | -10% | +2 novas |
| v11 | +25% | +8% | -20% | +4 novas |
4. Aplicações Práticas
4.1 Detecção em Tempo Real
def real_time_detection():
# Inicialização
cap = cv2.VideoCapture(0)
model = YOLO('yolov11n.pt') # Uso do YOLOv11
while cap.isOpened():
success, frame = cap.read()
if not success:
continue
# Detecção com YOLOv11
results = model(frame)
# Visualização
annotated_frame = results[0].plot()
# Exibição
cv2.imshow('YOLOv11 Detection', annotated_frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
4.2 Detecção 3D (YOLOv11)
def detection_3d():
# Inicialização
model = YOLO('yolov11-3d.pt')
# Detecção 3D
results = model('path/to/3d_scene.pcd')
# Visualização
for result in results:
# Pontos 3D
points = result.points
# Caixas 3D
boxes = result.boxes_3d
# Visualização com Open3D
vis = o3d.visualization.Visualizer()
vis.create_window()
# Adição dos pontos e caixas
vis.add_geometry(points)
for box in boxes:
vis.add_geometry(box)
vis.run()
vis.destroy_window()
5. Boas Práticas
-
Escolha da Versão
- v8 para aplicações básicas
- v10 para aplicações avançadas
- v11 para aplicações inovadoras
-
Otimização
- Usar aceleração por GPU
- Ajustar os limiares de confiança
- Otimizar o tamanho do batch
-
Implantação
- Exportar no formato apropriado
- Usar aceleração de hardware
- Implementar um sistema de cache
Conclusão
Pontos-chave:
- Melhorias significativas de desempenho
- Novas funcionalidades avançadas
- Suporte otimizado a dispositivos móveis
- Detecção 3D com YOLOv11
Recomendações:
- Escolher a versão de acordo com as necessidades
- Otimizar o desempenho
- Usar aceleração de hardware
- Implementar um tratamento de erros robusto
Sobre InSkillCoach
Especialista em treinamento e tecnologias
Coach especializado em tecnologias avançadas e IA, apoiado pela GNeurone Inc.
Certificações:
- AWS Certified Solutions Architect – Professional
- Certificações Google Cloud
- Microsoft Certified: DevOps Engineer Expert
- Certified Kubernetes Administrator (CKA)
- CompTIA Security+
Comentários
Os comentários são alimentados pelo GitHub Discussions
Conecte-se com o GitHub para participar da discussão