Verificação verde
Link copiado para a área de transferência

Correndo Ultralytics Modelos de detecção e segmentação de objetos em poucas linhas de código

Um guia passo-a-passo sobre como executar modelos de deteção e segmentação de objectos Ultralytics em poucas linhas de código.

Bem-vindo a mais um post do blogue em que vamos mergulhar nas capacidades de Ultralytics' YOLOv5 e YOLOv8 quando se trata de deteção e segmentação de objectos . Vamos explorar a forma de integrar estes modelos fáceis de utilizar nos teus projectos com apenas algumas linhas de código. Quer sejas um principiante ou um programador experiente, verás como o Ultralytics suporta vários modelos e arquitecturas, incluindo diferentes versões do YOLO e modelos baseados em transformadores. 

No seu vídeo, Nicolai Nielsen mostra-nos o processo de configuração e utilização de vários modelos na estrutura Ultralytics . Vamos explicar passo a passo e ver como podes começar a utilizar estas ferramentas incríveis.

Começa a trabalhar com os modelos Ultralytics

Ultralytics oferece uma estrutura abrangente que suporta vários modelos de deteção e segmentação de objectos. Inclui os populares modelos YOLO , desde o YOLOv3 até ao mais recente YOLOv8, bem como os modelos YOLO-NAS e SAM . Estes modelos foram concebidos para lidar com uma variedade de tarefas, como a deteção em tempo real, a segmentação e a estimativa de pose.

Para começar, visita a página de documentaçãoUltralytics . Aqui, podes encontrar informações detalhadas sobre cada modelo, incluindo as suas principais características, arquitecturas e como utilizá-las nos teus scripts Python .

Configurar o teu ambiente

Primeiro, certifica-te de que tens o Ultralytics instalado. Podes fazer isso executando:

bash

Copia o código


pip install ultralytics

Uma vez feito isto, podes começar a utilizar estes modelos nos teus projectos. Vamos começar com o modelo YOLOv8 como exemplo.

Características principais de YOLOv8

YOLOv8 vem com várias melhorias em relação aos seus antecessores. Foi concebido para ser mais rápido e mais preciso, tornando-o perfeito para aplicações em tempo real. Algumas das principais características incluem: 

  • Velocidade e precisão melhoradas
  • Pesos pré-treinados para várias tarefas
  • Suporte para deteção, segmentação e classificação de objectos
  • Arquitetura do modelo melhorada para um melhor desempenho

Executa YOLOv8 em Python

Eis como podes começar a utilizar o YOLOv8 com apenas algumas linhas de código:

Copia o código


# Copy code
import ultralytics
model = ultralytics.YOLO('yolov8')
results = model.predict('path/to/your/image.jpg')
results.show()

Já está! Acabaste de executar um modelo YOLOv8 numa imagem. Esta simplicidade é o que torna os modelos Ultralytics tão poderosos e fáceis de utilizar.

Deteção de câmara Web em direto

Queres ver o YOLOv8 em ação através de uma webcam em direto? Eis como o podes fazer:

python

Copia o código


# Copy code
import ultralytics
model = ultralytics.YOLO('yolov8')
# Open a live webcam feed
cap = cv2.VideoCapture(0)
while True:
	ret, frame = cap.read()
	if not ret:
		break
	results = model.predict(frame)
	results.show()
	if cv2.waitKey(1) & 0xFF == ord('q'):
		break
cap.release()
cv2.destroyAllWindows()

Este script abre a tua webcam e aplica o modelo YOLOv8 para detetar objectos em tempo real.

Fig. 1. Nicolai Nielsen explica como executar os modelos de deteção e segmentação de objectos do Ultralytics .

Explorar outros modelos

Ultralytics não se limita a YOLOv8. Eles também suportam vários outros modelos como YOLOv5, YOLO-NAS e modelos baseados em transformadores para deteção em tempo real. Cada modelo tem os seus próprios pontos fortes e casos de utilização.

Modelos de transformadores e como os utilizar

O modelo RT-DETR , desenvolvido pela Baidu e apoiado por Ultralytics, é um detetor de objectos topo de gama, de ponta a ponta, que oferece desempenho em tempo real e elevada precisão. Utiliza uma espinha dorsal baseada em conv e um codificador híbrido eficiente para velocidade em tempo real, destacando-se em CUDA com TensorRT, e suporta um ajuste flexível da velocidade de inferência.

Eis como podes executar um modelo RT-DETR :

Copia o código


from Ultralytics import YOLO
# Load a pretrained YOLOv8n model
model = YOLO("rtdetr-l.pt")

# Run inference on 'bus.jpg' with arguments
model.predict("bus.jpg", save=True, imgsz=320, conf=0.5)

Modelos "Segment Anything

Ultralytics também oferece modelos para tarefas de segmentação, tais como MobileSAM e FastSAM. Estes modelos foram concebidos para segmentar tudo numa imagem, fornecendo informações detalhadas sobre a cena.

Corre FastSAM

FastSAM está optimizado para a segmentação em tempo real, e eis como podes executá-lo:

Copia o código


import ultralytics
model = ultralytics.SAM("FastSAM-s.pt")
results = model.predict('path/to/your/image.jpg')
results.show()

Este modelo é perfeito para aplicações que requerem uma segmentação rápida e precisa.

Desempenho e comparações

Uma das grandes características da estrutura Ultralytics é a capacidade de comparar diferentes modelos lado a lado. Podes determinar facilmente qual o modelo que funciona melhor para a tua aplicação específica, observando as métricas de desempenho, como a velocidade de inferência e a precisão média (mAP).

Principais conclusões

Ultralytics torna incrivelmente fácil a execução de modelos de deteção e segmentação de objectos com apenas algumas linhas de código. Quer estejas a trabalhar em aplicações em tempo real ou precises de modelos de alta precisão, o Ultralytics tem uma solução para ti. Não te esqueças de ver o tutorial completo de Nicolai Nielsen no canal do YouTube Ultralytics para obteres informações e exemplos mais aprofundados.

Fica atento a mais tutoriais e actualizações dacomunidade Ultralytics !

Logótipo do FacebookLogótipo do TwitterLogótipo do LinkedInSímbolo de ligação de cópia

Ler mais nesta categoria

Vamos construir juntos o futuro
da IA!

Começa a tua viagem com o futuro da aprendizagem automática