Segmentação e Rastreamento de Instâncias usando o Ultralytics YOLO26#
O que é a segmentação de instâncias?#
A segmentação de instâncias é uma tarefa de visão computacional que envolve identificar e delinear objetos individuais numa imagem ao nível dos píxeis. Ao contrário da segmentação semântica, que apenas classifica os píxeis por categoria, a segmentação de instâncias atribui rótulos exclusivos e delimita com precisão cada instância de objeto, tornando-a essencial para aplicações que exigem uma compreensão espacial detalhada, como imagiologia médica, condução autónoma e automação industrial.
O Ultralytics YOLO26 oferece capacidades avançadas de segmentação de instâncias que permitem detetar com precisão os limites dos objetos, mantendo a velocidade e a eficiência pelas quais os modelos YOLO são conhecidos.
Existem dois tipos de rastreamento de segmentação de instâncias disponíveis no pacote Ultralytics:
-
Segmentação de instâncias com objetos de classe: a cada objeto de classe é atribuída uma cor exclusiva para uma separação visual clara.
-
Segmentação de instâncias com rastreamentos de objetos: cada rastreamento é representado por uma cor distinta, facilitando a identificação e o rastreamento entre fotogramas de vídeo.
Watch: Instance Segmentation with Object Tracking using Ultralytics YOLO26
Amostras#
| Segmentação de instâncias | Segmentação de instâncias + rastreamento de objetos |
|---|---|
![]() | ![]() |
| Segmentação de instâncias da Ultralytics 😍 | Segmentação de instâncias da Ultralytics com rastreamento de objetos 🔥 |
Segmentar e rastrear com YOLO26#
A solução InstanceSegmentation executa um modelo de segmentação YOLO26 em cada fotograma, desenha máscaras por objeto e atribui uma cor diferente a cada instância, para que possas acompanhar objetos individuais ao longo de um vídeo. Carrega um modelo -seg e, em seguida, executa-o na tua fonte com a API Python ou a CLI.
# Instance segmentation using Ultralytics YOLO26
yolo solutions isegment show=True
# Pass a source video
yolo solutions isegment source="path/to/video.mp4"
# Monitor the specific classes
yolo solutions isegment classes="[0, 5]"Argumentos de InstanceSegmentation#
Eis uma tabela com os argumentos de InstanceSegmentation:
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
model | str | None | Caminho para um ficheiro de modelo YOLO da Ultralytics. |
line_width | int | 2 | Espessura das linhas das caixas, dos pontos-chave e das contagens desenhados pela solução. |
verbose | bool | True | Ativa o registo por fotograma da solução, incluindo a forma da entrada, as contagens por classe e a velocidade de processamento. A chamada de rastreamento permanece sempre silenciosa. |
Também podes tirar partido dos argumentos de track na solução InstanceSegmentation:
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Especifica o algoritmo de rastreamento a utilizar. Opções integradas: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.25 | Define o limiar de confiança para as deteções; valores mais baixos permitem rastrear mais objetos, mas podem incluir falsos positivos. |
iou | float | 0.7 | Define o limiar de Interseção sobre a União (IoU) para filtrar deteções sobrepostas. |
classes | list | None | Filtra os resultados pelo índice da classe. Por exemplo, classes=[0, 2, 3] rastreia apenas as classes especificadas. |
device | str | None | Especifica o dispositivo para a inferência (por exemplo, cpu, cuda:0 ou 0). Permite selecionar entre CPU, uma GPU específica ou outros dispositivos de computação para executar o modelo. |
imgsz | int or tuple | 640 | Tamanho da imagem de inferência alvo: um inteiro para um quadrado ou um par (height, width). As formas são ajustadas para o passo do modelo. |
max_det | int | 300 | Número máximo de detecções mantidas por quadro antes do rastreamento, limitando os objetos que uma solução processa em cenas densas. |
quantize | int or str | None | Precisão de inferência: 16 (FP16) ou 32/não definido (FP32) para modelos PyTorch e TorchScript; outros formatos computam na precisão que o artefato e o tempo de execução selecionam. Substitui a flag obsoleta half. |
Além disso, estão disponíveis os seguintes argumentos de visualização:
| Argumento | Tipo | Predefinição | Descrição |
|---|---|---|---|
show | bool | False | Se True, apresenta as imagens ou vídeos anotados numa janela. É útil para obter feedback visual imediato durante o desenvolvimento ou os testes. |
show_conf | bool | True | Apresenta a pontuação de confiança de cada deteção junto à etiqueta. Permite compreender o grau de certeza do modelo em cada deteção. |
show_labels | bool | True | Apresenta etiquetas para cada deteção no resultado visual. Permite compreender imediatamente os objetos detetados. |
show_boxes | bool | True | Desenha caixas delimitadoras à volta dos objetos detetados. É essencial para a identificação visual e a localização de objetos em imagens ou fotogramas de vídeo. |
Aplicações da segmentação de instâncias#
A segmentação de instâncias com YOLO26 tem inúmeras aplicações no mundo real em vários setores:
Gestão e reciclagem de resíduos#
O YOLO26 pode ser utilizado em instalações de gestão de resíduos para identificar e separar diferentes tipos de materiais. O modelo pode segmentar resíduos de plástico, cartão, metal e outros materiais recicláveis com elevada precisão, permitindo que os sistemas de separação automatizados processem os resíduos de forma mais eficiente. Isto é particularmente valioso considerando que apenas cerca de 10% dos 7 mil milhões de toneladas de resíduos de plástico gerados globalmente são reciclados.
Veículos autónomos#
Em carros autónomos, a segmentação de instâncias ajuda a identificar e rastrear peões, veículos, sinais de trânsito e outros elementos da estrada ao nível dos píxeis. Esta compreensão precisa do ambiente é crucial para as decisões de navegação e segurança. O desempenho em tempo real do YOLO26 torna-o ideal para estas aplicações sensíveis ao tempo.
Imagiologia médica#
A segmentação de instâncias pode identificar e delinear tumores, órgãos ou estruturas celulares em exames médicos. A capacidade do YOLO26 de delimitar com precisão os limites dos objetos torna-o valioso para o diagnóstico médico e o planeamento de tratamentos.
Monitorização de estaleiros de construção#
Em estaleiros de construção, a segmentação de instâncias pode rastrear maquinaria pesada, trabalhadores e materiais. Isto ajuda a garantir a segurança através da monitorização das posições dos equipamentos e da deteção da entrada de trabalhadores em áreas perigosas, ao mesmo tempo que otimiza o fluxo de trabalho e a alocação de recursos.
Perguntas frequentes#
Para realizar a segmentação de instâncias com o Ultralytics YOLO26, inicializa o modelo YOLO com uma versão de segmentação do YOLO26 e processa os fotogramas de vídeo através dele. Eis um exemplo de código simplificado:
import cv2 from ultralytics import solutions cap = cv2.VideoCapture("path/to/video.mp4") assert cap.isOpened(), "Error reading video file" # Video writer w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS)) video_writer = cv2.VideoWriter("instance-segmentation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h)) # Init InstanceSegmentation isegment = solutions.InstanceSegmentation( show=True, # display the output model="yolo26n-seg.pt", # model="yolo26n-seg.pt" for object segmentation using YOLO26. ) # Process video while cap.isOpened(): success, im0 = cap.read() if not success: print("Video frame is empty or processing is complete.") break results = isegment(im0) video_writer.write(results.plot_im) cap.release() video_writer.release() cv2.destroyAllWindows()Sabe mais sobre segmentação de instâncias no guia do Ultralytics YOLO26.
A segmentação de instâncias identifica e delimita objetos individuais numa imagem, atribuindo a cada objeto um rótulo e uma máscara exclusivos. O rastreamento de objetos vai mais longe, atribuindo IDs consistentes aos objetos entre fotogramas de vídeo, o que facilita o rastreamento contínuo dos mesmos objetos ao longo do tempo. Quando combinados, como na implementação do YOLO26, estes recursos permitem analisar eficazmente o movimento e o comportamento dos objetos em vídeos, mantendo informações precisas sobre os limites.
O Ultralytics YOLO26 oferece desempenho em tempo real, precisão superior e facilidade de utilização em comparação com outros modelos, como Mask R-CNN ou Faster R-CNN. O YOLO26 processa as imagens numa única passagem (deteção numa só etapa), tornando-se significativamente mais rápido e mantendo uma elevada precisão. Também proporciona uma integração perfeita com a Ultralytics Platform, permitindo gerir modelos, conjuntos de dados e pipelines de treino de forma eficiente. Para aplicações que exigem velocidade e precisão, o YOLO26 oferece um equilíbrio ideal.
Sim, a Ultralytics disponibiliza vários conjuntos de dados adequados para treinar modelos YOLO26 para segmentação de instâncias, incluindo COCO-Seg, COCO8-Seg (um subconjunto mais pequeno para testes rápidos), Package-Seg e Crack-Seg. Estes conjuntos de dados incluem as anotações ao nível dos píxeis necessárias para tarefas de segmentação de instâncias. Para aplicações mais especializadas, também podes criar conjuntos de dados personalizados seguindo o formato da Ultralytics. Podes encontrar informações completas sobre os conjuntos de dados e instruções de utilização na documentação de conjuntos de dados da Ultralytics.

