Segmentazione di istanza
Scopri come la segmentazione delle istanze perfeziona il rilevamento degli oggetti con una precisione a livello di pixel, consentendo maschere di oggetti dettagliate per le applicazioni di IA.
La segmentazione di istanza è un'avanzata attività di computer vision (CV) che identifica e delinea singoli oggetti all'interno di un'immagine a livello di pixel. A differenza di altre attività di visione, non si limita a classificare un'immagine o a disegnare un bounding box attorno agli oggetti; invece, genera una maschera precisa a livello di pixel per ogni singola istanza dell'oggetto. Questa tecnica fornisce una comprensione molto più approfondita di una scena, poiché può distinguere tra oggetti sovrapposti della stessa classe.
Istanza vs. Semantica e Rilevamento di Oggetti
È importante distinguere la segmentazione delle istanze da altre attività di computer vision correlate.
- Object Detection: Questo task identifica la presenza e la posizione degli oggetti, in genere disegnando dei rettangoli di delimitazione attorno ad essi e assegnando un'etichetta di classe. Risponde alla domanda "Cosa c'è nell'immagine e dove si trova?", ma non fornisce informazioni sulla forma.
- Segmentazione semantica: Questa attività classifica ogni pixel in un'immagine in una categoria specifica. Ad esempio, etichetterebbe tutti i pixel appartenenti alle auto come "auto", ma non distinguerebbe tra due auto diverse nell'immagine. Risponde a "A quale categoria appartiene ogni pixel?"
- Segmentazione di istanza: Questa combina le capacità del rilevamento oggetti e della segmentazione semantica. Rileva ogni istanza dell'oggetto e genera una maschera di segmentazione univoca per essa. In un'immagine con tre auto, la segmentazione di istanza produrrebbe tre maschere separate, ciascuna corrispondente a un'auto specifica.
- Panoptic Segmentation: Questo è il più completo dei task di segmentazione, che unisce la semantic e la instance segmentation. Assegna a ogni pixel un'etichetta di classe e un ID istanza univoco, fornendo una comprensione completa e unificata della scena.
Come funziona la segmentazione di istanza
I modelli di segmentazione di istanza in genere svolgono due funzioni principali: in primo luogo, rilevano tutte le istanze di oggetti in un'immagine e, in secondo luogo, generano una maschera di segmentazione per ciascuna istanza rilevata. Questo processo è stato notoriamente reso popolare da architetture come Mask R-CNN, che estende i rilevatori di oggetti come Faster R-CNN aggiungendo un ramo parallelo che prevede una maschera binaria per ogni regione di interesse. I modelli moderni hanno ulteriormente perfezionato questo processo per una maggiore velocità e precisione, consentendo l'inferenza in tempo reale in molte applicazioni. Lo sviluppo si basa spesso su potenti framework di deep learning come PyTorch e TensorFlow.
Applicazioni nel mondo reale
Le precise delineazioni degli oggetti fornite dalla segmentazione delle istanze sono preziose in numerosi campi.
- Veicoli autonomi: Le auto a guida autonoma si affidano alla segmentazione delle istanze per identificare con precisione la forma e la posizione di singoli pedoni, veicoli e ciclisti. Questo dettaglio granulare è fondamentale per una navigazione e una pianificazione del percorso sicure, soprattutto in ambienti urbani complessi con molti oggetti sovrapposti. Dataset come Cityscapes sono stati fondamentali per far progredire quest'area.
- Analisi di immagini mediche: In radiologia, la segmentazione di istanza viene utilizzata per delineare tumori, lesioni e organi da scansioni TC o RM con elevata precisione. Questo aiuta i medici a misurare le dimensioni di un tumore, pianificare interventi chirurgici e monitorare l'efficacia del trattamento. Puoi saperne di più nel nostro articolo del blog sull'utilizzo di YOLO11 per il rilevamento di tumori.
- Robotica: I robot utilizzano la segmentazione di istanza per comprendere il loro ambiente, identificare oggetti specifici da afferrare ed evitare ostacoli con maggiore precisione. Questo è fondamentale per le attività di produzione e logistica.
- Analisi di immagini satellitari: Questa tecnica viene utilizzata per contare singoli alberi in una foresta, mappare edifici in una città o monitorare i cambiamenti nell'uso del suolo nel tempo con dati provenienti da organizzazioni come la NASA.
- Agricoltura: Può essere utilizzato per identificare e contare singoli frutti per la stima della resa o per rilevare erbacce specifiche per l'applicazione mirata di erbicidi, una parte fondamentale dell'agricoltura di precisione.
Segmentazione di istanza con Ultralytics YOLO
Ultralytics fornisce modelli all'avanguardia in grado di eseguire una segmentazione efficiente delle istanze. Modelli come YOLOv8 e l'ultimo YOLO11 sono progettati per offrire prestazioni elevate su varie attività di visione, inclusa la segmentazione delle istanze. Puoi trovare maggiori dettagli nella nostra documentazione per l'attività di segmentazione. Gli utenti possono sfruttare modelli pre-addestrati o eseguire il fine-tuning su dataset personalizzati come COCO utilizzando strumenti come la piattaforma Ultralytics HUB, che semplifica il flusso di lavoro di machine learning (ML) dalla gestione dei dati al deployment del modello. Per l'implementazione pratica, sono disponibili risorse come il nostro tutorial sulla segmentazione con modelli Ultralytics YOLOv8 pre-addestrati o la nostra guida sull'isolamento degli oggetti di segmentazione. Puoi anche imparare come utilizzare Ultralytics YOLO11 per la segmentazione delle istanze.