Visual Prompting
Esplora il prompting visivo per guidare i modelli IA con punti e riquadri. Scopri come Ultralytics YOLO e SAM consentono una segmentazione precisa e un'annotazione dei dati più rapida.
Il visual prompting è una tecnica emergente nella visione artificiale in cui gli utenti forniscono segnali spaziali o visivi, come punti, bounding box o scarabocchi, per guidare l'attenzione di un modello AI verso oggetti o regioni specifici all'interno di un'immagine. A differenza del prompt engineering tradizionale, che si basa principalmente su descrizioni testuali, il visual prompting consente un'interazione più precisa e intuitiva con i sistemi di Intelligenza Artificiale (AI). Questo metodo sfrutta le capacità dei moderni modelli di base per eseguire attività come la segmentazione e il rilevamento senza richiedere un ampio riaddestramento o grandi dataset etichettati.
Link to this sectionMeccanismi del Visual Prompting#
Nella sua essenza, il visual prompting funziona iniettando 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 embedding 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à del visual prompting consente vari tipi di interazione:
- Point Prompts: Un utente clicca su un pixel specifico per indicare l'oggetto di interesse. Il modello espande quindi questa selezione agli interi confini dell'oggetto.
- Box Prompts: Disegnare un bounding box fornisce una localizzazione approssimativa, segnalando al modello di segmentare o classificare tutto ciò che è contenuto all'interno di quell'area.
- Scribble Prompts: Linee a mano libera tracciate sopra un oggetto possono aiutare a disambiguare scene complesse in cui gli oggetti si sovrappongono o hanno texture simili.
La ricerca recente presentata a CVPR 2024 evidenzia come il visual prompting riduca significativamente il tempo richiesto 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.
Link to this sectionVisual Prompting vs. Text Prompting#
Sebbene entrambe le tecniche mirino a guidare il comportamento del modello, è importante distinguere il visual prompting dai metodi basati sul testo. La generazione Text-to-image o il rilevamento zero-shot si basano sulla elaborazione del linguaggio naturale (NLP) per interpretare 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 visual prompting risolve questa ambiguità ancorando l'istruzione allo spazio dei pixel stesso. Ad esempio, nell'analisi di immagini mediche, è molto più accurato per un radiologo cliccare su un nodulo sospetto che tentare di descriverne le coordinate esatte e la forma irregolare tramite testo. Spesso, i flussi di lavoro più potenti 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.
Link to this sectionApplicazioni nel mondo reale#
L'adattabilità del visual prompting ha portato alla sua rapida adozione in diversi settori:
- Diagnostica medica interattiva: I medici utilizzano strumenti di visual prompting per isolare tumori o organi nelle scansioni MRI. Cliccando semplicemente su una regione di interesse, possono generare istantaneamente misurazioni volumetriche 3D, aiutando nel rilevamento dei tumori e nella pianificazione chirurgica.
- Editing fotografico intelligente: Nel software consumer come Adobe Photoshop o nelle app mobili, il visual prompting alimenta strumenti di "selezione magica". Gli utenti possono toccare una persona o un oggetto per rimuovere lo sfondo o applicare filtri mirati, utilizzando tecnologie sottostanti di segmentazione delle istanze senza bisogno di competenze di mascheramento manuale.
- Manipolazione robotica: Nell'AI nella robotica, i robot possono essere istruiti a raccogliere oggetti specifici tramite un'interfaccia visiva. Un operatore clicca su un oggetto nel feed della telecamera del robot, fornendo un prompt visivo che il robot traduce in coordinate di presa, facilitando l'automazione human-in-the-loop nei magazzini.
Link to this sectionImplementazione con Ultralytics#
L'ecosistema Ultralytics supporta i flussi di lavoro di visual prompting, in particolare attraverso modelli come FastSAM e SAM. Questi modelli consentono agli sviluppatori di passare programmaticamente coordinate di punti o riquadri per recuperare maschere di segmentazione.
Il seguente esempio dimostra come utilizzare il pacchetto ultralytics per applicare un prompt di punto a un'immagine, istruendo il modello a segmentare l'oggetto 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()Link to this sectionAvanzare nell'agilità del modello#
Il visual prompting rappresenta uno spostamento 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 active learning, in cui i modelli migliorano rapidamente incorporando il feedback dell'utente.
Per gli sviluppatori che desiderano integrare queste funzionalità nella produzione, la Piattaforma Ultralytics offre strumenti per gestire dataset e distribuire modelli in grado di gestire input dinamici. Con il progredire della ricerca, prevediamo di vedere un'integrazione ancora più stretta tra i prompt visivi e i modelli linguistici di grandi dimensioni (LLM), consentendo sistemi in grado di ragionare sugli input visivi con la stessa fluidità con cui attualmente gestiscono il testo.






