Semantic keypoint
- Detto anche: category-level keypoint, object keypoint
- Categoria: Sensing › Perception outputs
- Tag: manipulation, perception, object-representation, category-level, keypoints
Un punto di un oggetto definito in modo coerente su un'intera categoria di oggetti, come il manico o il centro del fondo di una tazza, che un robot rileva in 3D per specificare e pianificare la manipolazione.
Definizione
Un punto chiave semantico (semantic keypoint) è un punto di un oggetto che ha lo stesso significato su ogni istanza di una categoria: il centro del fondo di una tazza, la punta di un cacciavite, l'estremità di un perno, la punta di una scarpa. A differenza di una feature generica dell'immagine, scelta perché facile da rilevare e tracciare, un punto chiave semantico è scelto per ciò che significa per un compito. Un modello di percezione, di solito una rete neurale addestrata su immagini etichettate, predice la posizione di ogni punto chiave nell'immagine, e i dati di profondità o le viste multiple la trasformano in posizioni 3D.
Nella manipolazione i punti chiave semantici sono un'alternativa alla stima di una posa completa a 6-DOF dell'oggetto. Una posa è ben definita solo rispetto a un modello di riferimento fisso, cosa che non funziona più quando le istanze di una categoria differiscono per dimensioni e forma: due tazze possono differire in altezza, larghezza e posizione del manico, per cui nessuna singola trasformazione rigida allinea l'una con l'altra. Un piccolo insieme di punti chiave conserva invece senso su entrambe. L'approccio kPAM (Manuelli, Gao, Florence e Tedrake, 2019) sfrutta questo fatto per specificare i compiti come costi e vincoli sui punti chiave, per esempio che il centro del fondo di una tazza poggi su uno scaffale con il centro della parte superiore esattamente sopra, e risolve il moto rigido dell'oggetto che li soddisfa; una presa porta poi l'oggetto lungo quel moto. kPAM 2.0 estende l'approccio al controllo in retroazione ad anello chiuso, il che consente compiti ricchi di contatti come l'inserimento di perno in foro.
La rappresentazione è compatta e interpretabile, e i costi sui punti chiave si possono scrivere direttamente in un problema di ottimizzazione insieme ai vincoli di collisione e cinematici. I suoi limiti derivano dalla stessa origine. Qualcuno deve scegliere quali punti chiave servono a una categoria per un dato compito, e pochi punti dicono poco sulla geometria completa, per cui il controllo delle collisioni richiede di solito una nuvola di punti o una mesh separata. Occlusioni, simmetrie, quando più punti appaiono equivalenti, e oggetti diversi da quelli dei dati di addestramento degradano tutti il rilevamento. Tra le rappresentazioni correlate ci sono i descrittori visivi densi, che assegnano una feature appresa a ogni pixel, e le mappe di coordinate normalizzate dell'oggetto, che predicono per ogni pixel un sistema di riferimento canonico della forma.
Perché è importante
I robot in case, laboratori e magazzini incontrano molte istanze di oggetti che hanno lo stesso scopo ma non esattamente la stessa forma. I punti chiave semantici permettono di scrivere un'unica specifica del compito per un'intera categoria e di collocare comunque gli oggetti con precisione, senza un modello CAD di ciascun oggetto.
Applicazioni principali
- Pick-and-place a livello di categoria per oggetti con variazioni di forma
- Specifica di compiti di posizionamento, appendimento e impilamento
- Assemblaggio ricco di contatti, come l'inserimento di perno in foro
- Uso di utensili, dove i punti rilevanti per il compito definiscono come un utensile incontra un pezzo
- Tracciamento di oggetti articolati o deformabili attraverso pochi punti significativi
In pratica
Un team vuole che un robot appenda a una rastrelliera una qualsiasi tra qualche decina di tazze diverse. Annota tre punti chiave su alcune centinaia di immagini di profondità: il centro del fondo, il centro della parte superiore e un punto all'interno del manico. Una rete addestrata su queste immagini predice i punti chiave su tazze nuove, e le loro posizioni 3D vengono lette dall'immagine di profondità. Il compito è scritto come vincoli: il punto del manico deve finire sul gancio della rastrelliera, e l'asse dal fondo alla parte superiore deve essere vicino all'orizzontale. Un ottimizzatore trova la trasformazione rigida della tazza che li soddisfa, il robot afferra il bordo e il moto pianificato della tazza viene trasformato in una traiettoria dell'end effector. La maggior parte dei fallimenti avviene quando il manico è nascosto alla telecamera, per cui il team fa spostare al robot la telecamera o ruotare la tazza e rilevare di nuovo prima di pianificare.
Idee sbagliate comuni
- I punti chiave semantici sono la stessa cosa dei punti feature dell'immagine come gli angoli SIFT o ORB — questi sono scelti perché distintivi e tracciabili, mentre i punti chiave semantici sono scelti per il loro significato per il compito e si corrispondono tra le istanze
- I punti chiave sostituiscono tutta la geometria dell'oggetto — descrivono solo i punti rilevanti per il compito, per cui l'evitamento delle collisioni e la scelta della presa richiedono comunque una nuvola di punti o una mesh
- I punti chiave eliminano la posa dal problema — evitano una posa dell'oggetto a 6-DOF basata su un modello di riferimento, ma il robot calcola comunque una trasformazione rigida per l'oggetto e una posa completa per la propria pinza
Chi dovrebbe saperlo
- Ingegneri della manipolazione che lavorano con oggetti quotidiani di vario tipo
- Ingegneri della percezione che addestrano rilevatori di punti chiave
- Ricercatori di apprendimento robotico che progettano rappresentazioni degli oggetti
- Integratori che costruiscono celle flessibili di pick-and-place e di assemblaggio
Tecnologie correlate
- kPAM
- Regressione di heatmap dei punti chiave (Keypoint Heatmap Regression)
- Descrittori densi degli oggetti (Dense Object Descriptors)
- Normalized Object Coordinate Space (NOCS)
- Perspective-n-Point
Termini correlati
- Category-Level Manipulation
- Affordance
- Point Cloud
- Perspective-n-Point
- Task-Oriented Grasping
- Peg-in-hole insertion
Progetti correlati
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- 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
- Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim
- NVIDIA Isaac GR00T: NVIDIA open foundation model for humanoid robot reasoning and skills
- OpenVLA: 7B-parameter Vision-Language-Action model for robotic manipulation