Esplora i suggerimenti visivi per guidare i modelli di IA con punti e riquadri. Scopri come Ultralytics YOLO SAM una segmentazione precisa e un'annotazione dei dati più rapida.
Il prompting visivo è una tecnica emergente nella visione artificiale in cui gli utenti forniscono indicazioni spaziali o visive, come punti, riquadri di delimitazione o scarabocchi, per guidare l'attenzione di un modello di IA verso oggetti o regioni specifici all'interno di un'immagine. A differenza della tradizionale ingegneria dei prompt, che si basa principalmente su descrizioni testuali, il prompting visivo consente un'interazione più precisa e intuitiva con i sistemi di intelligenza artificiale (IA). Questo metodo sfrutta le capacità dei moderni modelli di base per eseguire attività come la segmentazione e il rilevamento senza richiedere un addestramento approfondito o grandi set di dati etichettati. "Indicando" efficacemente ciò che è importante, gli utenti possono adattare istantaneamente i modelli generici a compiti nuovi, colmando il divario tra l'intenzione umana e la percezione della macchina.
Fondamentalmente, il prompting visivo funziona inserendo informazioni spaziali direttamente nella pipeline di elaborazione del modello. Quando un utente clicca su un oggetto o disegna un riquadro, questi input vengono convertiti in incorporamenti basati su coordinate che la rete neurale integra con le caratteristiche dell'immagine. Questo processo è fondamentale per architetture interattive come il Segment Anything Model (SAM), in cui il modello prevede maschere basate su prompt geometrici.
La flessibilità dei suggerimenti visivi consente vari tipi di interazione:
Una recente ricerca presentata al CVPR 2024 evidenzia come i suggerimenti visivi riducano significativamente il tempo necessario per l' annotazione dei dati, poiché gli annotatori umani possono correggere le previsioni del modello in tempo reale con semplici clic invece di tracciare manualmente i poligoni.
Sebbene entrambe le tecniche mirino a guidare il comportamento del modello, è importante distinguere i prompt visivi dai metodi bas ati sul testo . La generazione di immagini da testo o il rilevamento zero-shot si basano sull' elaborazione del linguaggio naturale (NLP) per interpretare le descrizioni semantiche (ad esempio, "trova l'auto rossa"). Tuttavia, il linguaggio può essere ambiguo o insufficiente per descrivere posizioni spaziali precise o forme astratte.
Il prompt visivo risolve questa ambiguità basando l'istruzione nello spazio pixel stesso. Ad esempio, nell' analisi delle immagini mediche, è molto più accurato per un radiologo cliccare su un nodulo sospetto piuttosto che tentare di descriverne le coordinate esatte e la forma irregolare tramite testo. Spesso, i flussi di lavoro più efficaci combinano entrambi gli approcci, utilizzando il testo per il filtraggio semantico e i prompt visivi per la precisione spaziale, un concetto noto come apprendimento multimodale.
L'adattabilità dei suggerimenti visivi ha portato alla sua rapida adozione in diversi settori:
Ultralytics supporta flussi di lavoro di prompting visivo, in particolare attraverso modelli come FastSAM SAM. Questi modelli consentono agli sviluppatori di passare le coordinate di punti o riquadri in modo programmatico per recuperare le maschere di segmentazione.
L'esempio seguente mostra come utilizzare l'opzione ultralytics pacchetto per applicare un prompt puntiforme a un'
immagine, istruendo il modello a segment situato in coordinate specifiche.
from ultralytics import SAM
# Load the Segment Anything Model (SAM)
model = SAM("sam2.1_b.pt")
# Apply a visual point prompt to the image
# The 'points' argument accepts [x, y] coordinates
# labels: 1 indicates a foreground point (include), 0 indicates background
results = model("https://ultralytics.com/images/bus.jpg", points=[[300, 350]], labels=[1])
# Display the segmented result
results[0].show()
Il prompting visivo rappresenta un passaggio verso una visione artificiale "promptabile", in cui i modelli non sono più "scatole nere" statiche ma strumenti interattivi. Questa capacità è essenziale per i cicli di apprendimento attivo, in cui i modelli migliorano rapidamente incorporando il feedback degli utenti.
Per gli sviluppatori che desiderano integrare queste funzionalità nella produzione, Ultralytics offre strumenti per gestire set di dati e implementare modelli in grado di gestire input dinamici. Con il progredire della ricerca, ci aspettiamo di vedere un'integrazione ancora più stretta tra prompt visivi e modelli linguistici di grandi dimensioni (LLM), consentendo ai sistemi di ragionare sugli input visivi con la stessa fluidità con cui attualmente gestiscono il testo.