Open-Vocabulary Detection
- Detto anche: open-vocabulary object detection, OVD
- Categoria: Sensing › Perception outputs
- Tag: object-detection, vision-language, computer-vision, perception, zero-shot
Rilevamento di oggetti che trova oggetti descritti da query testuali arbitrarie, comprese categorie mai etichettate durante l'addestramento, confrontando regioni dell'immagine con embedding linguistici.
Definizione
Un rilevatore convenzionale addestrato su un insieme fisso di etichette può produrre solo quelle etichette. Il rilevamento a vocabolario aperto (open-vocabulary detection) sostituisce il classificatore fisso con un confronto tra le feature delle regioni e gli embedding testuali: al momento della query l'utente fornisce nomi di classi o frasi, un encoder testuale li trasforma in vettori e ogni regione candidata riceve un punteggio in base alla sua somiglianza con ciascuna query. Poiché lo spazio delle etichette è definito dal testo e non da un insieme fisso di unità di uscita, si possono interrogare nuove categorie senza riaddestrare, e le etichette usate in fase di test possono differire da quelle viste in addestramento.
La capacità di riconoscere categorie prive di annotazioni con bounding box viene dal preaddestramento immagine-testo su larga scala. Modelli come CLIP apprendono embedding di immagini e testo allineati da coppie immagine–didascalia, e i rilevatori a vocabolario aperto portano questo allineamento fino alle regioni: distillando le feature di CLIP in un rilevatore (ViLD), collegando teste di rilevamento a un Transformer visione-linguaggio preaddestrato (OWL-ViT) o addestrando su dati di grounding che collegano frasi a box (GLIP, Grounding DINO). Il termine in questo senso risale al lavoro di Zareian e colleghi del 2021. La stessa idea si estende alla segmentazione e al 3D: il rilevamento di affordance a vocabolario aperto etichetta i punti di una nuvola di punti con nomi di affordance in forma libera, confrontando le feature di ogni punto con embedding testuali.
Il rilevamento a vocabolario aperto è distinto da due contesti affini. Il rilevamento zero-shot di solito addestra su un insieme di classi viste e valuta su un insieme disgiunto di classi non viste, spesso senza un grande preaddestramento immagine-testo. Il rilevamento open-set mira a segnalare come sconosciuti gli oggetti che non rientrano nelle classi note, senza nominarli. In robotica, i rilevatori a vocabolario aperto permettono a un sistema di agire su istruzioni che nominano oggetti arbitrari; VoxPoser, per esempio, ne usa uno per localizzare gli oggetti a cui fa riferimento il codice generato da un modello linguistico prima di costruire le sue mappe di valore 3D.
Perché è importante
I robot ricevono istruzioni in linguaggio naturale che nominano oggetti non previsti da alcun insieme fisso di etichette. Il rilevamento a vocabolario aperto permette a un robot di trovare questi oggetti senza raccogliere e annotare nuovi dati di addestramento per ciascuno, ed è ciò che rende praticabile la manipolazione guidata dal linguaggio al di fuori di un insieme fisso di oggetti.
Applicazioni principali
- Manipolazione condizionata dal linguaggio a partire da istruzioni in linguaggio naturale
- Ricerca di oggetti per robot mobili in spazi non strutturati
- Costruzione di mappe semantiche interrogabili con il testo
- Etichettatura di affordance su nuvole di punti 3D
- Etichettatura automatica di dataset robotici
In pratica
A un manipolatore mobile viene detto di mettere la spugna blu nel lavello. Un parser estrae le frasi «spugna blu» e «lavello», e un rilevatore a vocabolario aperto viene eseguito sull'immagine RGB attuale con quelle query. I box restituiti passano a un modello di segmentazione, e le maschere vengono proiettate in 3D con l'immagine di profondità per ottenere nuvole di punti per la pianificazione della presa e del posizionamento. Il team imposta soglie di punteggio per ciascuna query invece di un'unica soglia globale, perché i punteggi di somiglianza variano con la formulazione, e conferma i rilevamenti su più fotogrammi prima di agire.
Idee sbagliate comuni
- Vocabolario aperto significa che qualsiasi oggetto viene rilevato in modo affidabile — l'accuratezza cala comunque per categorie rare, piccole o formulate in modo insolito, e i risultati dipendono dalla formulazione della query
- Il rilevamento a vocabolario aperto è la stessa cosa del rilevamento open-set — i metodi open-set segnalano gli oggetti non familiari come sconosciuti, mentre i metodi a vocabolario aperto li nominano a partire da query testuali
- I punteggi sono confrontabili tra query diverse — i punteggi di somiglianza non sono calibrati tra frasi, quindi un'unica soglia per tutte le query spesso funziona male
Chi dovrebbe saperlo
- Ingegneri della percezione che costruiscono pipeline di rilevamento per robot
- Ricercatori di robot learning che lavorano su policy condizionate dal linguaggio
- Sviluppatori di manipolazione mobile
- Ricercatori che costruiscono mappe semantiche
Tecnologie correlate
- CLIP
- OWL-ViT
- Grounding DINO
- GLIP
- ViLD
- Segment Anything (SAM)
Termini correlati
Progetti correlati
- Open3D: Modern library for 3D point cloud processing, mesh operations, and 3D machine learning
- PCL: Industry-standard C++ library for point cloud processing in robotics perception
- pySLAM: Hybrid Python/C++ visual SLAM pipeline with classic and deep-learning front-ends
- OpenMind OM1: AI-native operating system for robots with modular perception, cognition, and action
- DreamZero: NVIDIA World Action Model that jointly predicts future video and robot actions
- AprilTag: The standard visual fiducial marker system for robot localization and pose estimation