Link to this sectionSegmentazione delle istanze e tracciamento con Ultralytics YOLO26 🚀#
Link to this sectionCos'è la segmentazione delle istanze?#
La segmentazione delle istanze è un'attività di computer vision che consiste nell'identificare e delineare singoli oggetti in un'immagine a livello di pixel. A differenza della segmentazione semantica, che classifica i pixel solo per categoria, la segmentazione delle istanze etichetta in modo univoco e delinea con precisione ogni istanza di oggetto, rendendola cruciale per applicazioni che richiedono una comprensione spaziale dettagliata come l'imaging medico, la guida autonoma e l'automazione industriale.
Ultralytics YOLO26 offre potenti capacità di segmentazione delle istanze che consentono un rilevamento preciso dei contorni degli oggetti mantenendo la velocità e l'efficienza per cui i modelli YOLO sono noti.
Esistono due tipi di tracciamento con segmentazione delle istanze disponibili nel pacchetto Ultralytics:
-
Segmentazione delle istanze con oggetti di classe: A ogni oggetto di classe viene assegnato un colore univoco per una chiara separazione visiva.
-
Segmentazione delle istanze con tracciamento oggetti: Ogni traccia è rappresentata da un colore distinto, facilitando l'identificazione e il monitoraggio tra i frame video.
Watch: Instance Segmentation with Object Tracking using Ultralytics YOLO26
Link to this sectionCampioni#
| Segmentazione dell'istanza | Segmentazione delle istanze + Tracciamento oggetti |
|---|---|
![]() | |
| Segmentazione delle istanze Ultralytics 😍 | Segmentazione delle istanze Ultralytics con tracciamento oggetti 🔥 |
Link to this sectionSegmentazione e tracciamento con YOLO26#
La soluzione InstanceSegmentation esegue un modello di segmentazione YOLO26 su ogni fotogramma, disegna maschere per ogni oggetto e colora ogni istanza separatamente in modo che tu possa seguire i singoli oggetti attraverso un video. Carica un modello -seg, quindi eseguilo sulla tua sorgente con l'API Python o la 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]"Link to this sectionArgomenti di InstanceSegmentation#
Ecco una tabella con gli argomenti di InstanceSegmentation:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
model | str | None | Percorso verso un file del modello Ultralytics YOLO. |
Puoi anche sfruttare gli argomenti di track all'interno della soluzione InstanceSegmentation:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Specifica l'algoritmo di tracciamento da utilizzare. Opzioni integrate: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.1 | Imposta la soglia di confidenza per i rilevamenti; valori più bassi consentono di tracciare più oggetti ma possono includere falsi positivi. |
iou | float | 0.7 | Imposta la soglia di Intersection over Union (IoU) per filtrare i rilevamenti sovrapposti. |
classes | list | None | Filtra i risultati per indice di classe. Ad esempio, classes=[0, 2, 3] traccia solo le classi specificate. |
verbose | bool | True | Controlla la visualizzazione dei risultati di tracciamento, fornendo un output visivo degli oggetti tracciati. |
device | str | None | Specifica il dispositivo per l'inferenza (ad esempio, cpu, cuda:0 o 0). Consente agli utenti di scegliere tra CPU, una GPU specifica o altri dispositivi di calcolo per l'esecuzione del modello. |
Inoltre, sono disponibili i seguenti argomenti di visualizzazione:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
show | bool | False | Se True, visualizza le immagini o i video annotati in una finestra. Utile per un feedback visivo immediato durante lo sviluppo o il test. |
line_width | int or None | None | Specifica la larghezza della linea dei bounding box. Se None, la larghezza della linea viene regolata automaticamente in base alla dimensione dell'immagine. Fornisce personalizzazione visiva per chiarezza. |
show_conf | bool | True | Mostra il punteggio di confidenza per ogni rilevamento accanto all'etichetta. Fornisce informazioni sulla certezza del modello per ogni rilevamento. |
show_labels | bool | True | Mostra le etichette per ogni rilevamento nell'output visivo. Offre una comprensione immediata degli oggetti rilevati. |
show_boxes | bool | True | Disegna riquadri di delimitazione attorno agli oggetti rilevati. Essenziale per l'identificazione visiva e la posizione degli oggetti in immagini o fotogrammi video. |
Link to this sectionApplicazioni della segmentazione delle istanze#
La segmentazione delle istanze con YOLO26 ha numerose applicazioni nel mondo reale in vari settori:
Link to this sectionGestione dei rifiuti e riciclaggio#
YOLO26 può essere utilizzato negli impianti di gestione dei rifiuti per identificare e smistare diversi tipi di materiali. Il modello può segmentare rifiuti in plastica, cartone, metallo e altri materiali riciclabili con elevata precisione, consentendo ai sistemi di smistamento automatizzato di processare i rifiuti in modo più efficiente. Questo è particolarmente importante se si considera che solo circa il 10% dei 7 miliardi di tonnellate di rifiuti di plastica generati globalmente viene riciclato.
Link to this sectionVeicoli autonomi#
Nelle auto a guida autonoma, la segmentazione delle istanze aiuta a identificare e tracciare pedoni, veicoli, segnali stradali e altri elementi stradali a livello di pixel. Questa precisa comprensione dell'ambiente è cruciale per le decisioni di navigazione e sicurezza. Le prestazioni in tempo reale di YOLO26 lo rendono ideale per queste applicazioni sensibili al fattore tempo.
Link to this sectionImaging medico#
La segmentazione delle istanze può identificare e delineare tumori, organi o strutture cellulari nelle scansioni mediche. La capacità di YOLO26 di delineare con precisione i confini degli oggetti lo rende prezioso per la diagnostica medica e la pianificazione del trattamento.
Link to this sectionMonitoraggio dei cantieri edili#
Nei cantieri, la segmentazione delle istanze può tracciare macchinari pesanti, lavoratori e materiali. Ciò aiuta a garantire la sicurezza monitorando le posizioni delle attrezzature e rilevando quando i lavoratori entrano in aree pericolose, ottimizzando al contempo il flusso di lavoro e l'allocazione delle risorse.
Link to this sectionFAQ#
Link to this sectionCome posso eseguire la segmentazione delle istanze utilizzando Ultralytics YOLO26?#
Per eseguire la segmentazione delle istanze utilizzando Ultralytics YOLO26, inizializza il modello YOLO con una versione di segmentazione di YOLO26 ed elabora i frame video attraverso di esso. Ecco un esempio di codice semplificato:
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()Scopri di più sulla segmentazione delle istanze nella guida Ultralytics YOLO26.
Link to this sectionQual è la differenza tra segmentazione delle istanze e tracciamento oggetti in Ultralytics YOLO26?#
La segmentazione delle istanze identifica e delinea i singoli oggetti all'interno di un'immagine, assegnando a ciascun oggetto un'etichetta e una maschera univoche. Il tracciamento oggetti estende questa funzione assegnando ID coerenti agli oggetti tra i frame video, facilitando il tracciamento continuo degli stessi oggetti nel tempo. Quando combinati, come nell'implementazione di YOLO26, ottieni potenti capacità per analizzare il movimento e il comportamento degli oggetti nei video mantenendo informazioni precise sui contorni.
Link to this sectionPerché dovrei usare Ultralytics YOLO26 per la segmentazione delle istanze e il tracciamento rispetto ad altri modelli come Mask R-CNN o Faster R-CNN?#
Ultralytics YOLO26 offre prestazioni in tempo reale, precisione superiore e facilità d'uso rispetto ad altri modelli come Mask R-CNN o Faster R-CNN. YOLO26 elabora le immagini in un unico passaggio (rilevamento a uno stadio), rendendolo significativamente più veloce pur mantenendo un'elevata precisione. Offre inoltre un'integrazione perfetta con la piattaforma Ultralytics, consentendo agli utenti di gestire modelli, set di dati e pipeline di addestramento in modo efficiente. Per le applicazioni che richiedono sia velocità che precisione, YOLO26 offre un equilibrio ottimale.
Link to this sectionEsistono set di dati forniti da Ultralytics adatti all'addestramento dei modelli YOLO26 per la segmentazione delle istanze e il tracciamento?#
Sì, Ultralytics offre diversi dataset adatti all'addestramento di modelli YOLO26 per la segmentazione delle istanze, tra cui COCO-Seg, COCO8-Seg (un sottoinsieme più piccolo per test rapidi), Package-Seg e Crack-Seg. Questi dataset sono dotati di annotazioni a livello di pixel necessarie per i task di segmentazione delle istanze. Per applicazioni più specializzate, puoi anche creare dataset personalizzati seguendo il formato Ultralytics. Informazioni complete sui dataset e istruzioni per l'uso sono disponibili nella documentazione sui dataset di Ultralytics.
