Category-Level Manipulation
- Catégorie: Planning & manipulation › Manipulation
- Mots-clés: manipulation, generalization, pose-estimation, 3d-perception, imitation-learning
Manipulation qui se généralise à toutes les instances d'une catégorie d'objets, comme n'importe quelle tasse ou n'importe quel tiroir, y compris des instances jamais vues et sans leurs modèles CAO.
Définition
Manipulation au niveau de la catégorie (category-level manipulation) : approche qui vise à doter un robot de compétences qui fonctionnent sur n'importe quel membre d'une catégorie d'objets plutôt que sur un objet précis. Un robot qui a appris à suspendre une tasse par son anse devrait pouvoir suspendre une tasse de forme, de taille et de couleur différentes qu'il n'a jamais vue, sans qu'on lui en fournisse un modèle 3D. Cela se situe entre la manipulation au niveau de l'instance, où chaque objet a un modèle CAO connu, et la manipulation entièrement générale d'objets quelconques.
La difficulté centrale est que les instances d'une catégorie diffèrent par leur forme, si bien qu'une pose d'objet fixe ne signifie pas la même chose pour chaque instance. Les méthodes au niveau de la catégorie définissent donc une représentation partagée, pertinente pour la tâche, sur l'ensemble de la catégorie. On peut citer la pose au niveau de la catégorie dans un repère canonique normalisé, comme dans NOCS pour l'estimation de la pose 6D et de la taille ; des ensembles de points clés sémantiques, comme le centre du bord et l'anse d'une tasse, comme dans kPAM ; et des descripteurs appris denses qui associent des caractéristiques semblables aux points correspondants de différentes instances, comme dans Neural Descriptor Fields. Une tâche est alors écrite en fonction de cette représentation, par exemple comme une relation cible entre points clés ou comme une pose de pince relative au repère canonique, puis transférée à une nouvelle instance en y estimant la représentation.
Un attrait est l'efficacité en données : une seule démonstration sur une instance peut, en principe, être transférée à toutes les autres par la représentation partagée. Le coût est que les catégories doivent être définies à l'avance, que l'entraînement exige de nombreuses instances par catégorie, généralement issues de jeux de données de formes synthétiques, et que les performances se dégradent sur des membres inhabituels dont la géométrie ou la fonction s'écarte de l'ensemble d'entraînement.
Pourquoi c'est important
Les vrais logements, entrepôts et laboratoires contiennent de nombreuses variantes d'un même type d'objet, et fournir un modèle CAO ou une nouvelle démonstration pour chacune n'est pas réaliste. Les méthodes au niveau de la catégorie permettent qu'une compétence enseignée une fois s'applique à toute une famille d'objets, ce qui est une condition préalable pour des robots qui travaillent hors des environnements industriels figés.
Applications principales
- Tâches ménagères avec des tasses, des bouteilles, des bols et des ustensiles
- Ouverture de tiroirs, de portes et d'autres objets articulés de conceptions variées
- Préparation de kits (kitting) et prise et dépose (pick-and-place) de variantes de produits en entrepôt
- Transfert d'une seule démonstration à de nouvelles instances d'objets
- Saisie orientée tâche d'outils par leurs parties fonctionnelles
En pratique
Une équipe veut qu'un robot pose des tasses à l'endroit sur un égouttoir. Elle entraîne un estimateur de pose et de points clés au niveau de la catégorie sur des modèles de tasses synthétiques rendus avec des textures randomisées, et enregistre une démonstration : la pose de la pince relative au point clé de l'anse au moment de la saisie, et la pose cible du repère canonique de la tasse relative à la tige de l'égouttoir. En fonctionnement, une caméra de profondeur segmente une nouvelle tasse, le réseau prédit sa pose canonique et ses points clés, la saisie et la dépose enregistrées sont réexprimées pour cette instance, et un planificateur de mouvement génère la trajectoire du bras. Les échecs sur des tasses aux anses inhabituelles sont consignés, et ces tasses sont ensuite ajoutées à l'ensemble d'entraînement comme formes supplémentaires.
Idées reçues
- Les méthodes au niveau de la catégorie ont toujours besoin d'un modèle CAO de chaque objet — l'objectif est de traiter des instances inédites en n'utilisant qu'une représentation apprise pour toute la catégorie
- Toute classe large d'objets compte comme une catégorie — les méthodes reposent généralement sur une géométrie et une fonction partagées, comme pour les tasses ou les ordinateurs portables, et peinent avec des classes vaguement définies comme les outils
- Le centre et l'orientation de l'objet suffisent pour transférer une compétence — comme les formes diffèrent, les parties pertinentes pour la tâche, comme les anses ou les bords, ont généralement besoin de leurs propres points clés ou correspondances
Qui devrait le savoir
- Chercheurs en manipulation travaillant sur la généralisation
- Ingénieurs en perception qui construisent des estimateurs de pose d'objets
- Développeurs de robots domestiques et de service
- Praticiens de l'apprentissage par imitation
Technologies associées
- Estimation de pose 6D au niveau de la catégorie (Category-Level 6D Pose Estimation)
- NOCS
- kPAM
- Neural Descriptor Fields
- Points clés sémantiques (Semantic Keypoints)
- ShapeNet
Termes associés
Projets associés
- LeRobot: HuggingFace ML library for real-world robotics in PyTorch
- OpenPI: Physical Intelligence VLA foundation models for general robot control
- 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
- Mobile ALOHA: Bimanual mobile manipulation with 4 robot arms on a wheeled base for teleoperation
Vidéos
- Lecture 14 | MIT 6.881 (Robotic Manipulation), Fall 2020 | Category-level Manipulation: underactuated