Distilled Feature Fields Enable Few-Shot Language-Guided Manipulation
Autores: William Shen, Ge Yang, Alan Yu, Jansen Wong, Leslie Pack Kaelbling, Phillip Isola · CoRL 2023
Licenças
- Acesso aberto
- Artigo: CC BY 4.0
Tudo o que segue se baseia no artigo completo sob a licença CC BY 4.0; sua figura é mostrada com crédito aos autores.
Em resumo
O F3RM destila características 2D do CLIP ou do DINO em um campo de características NeRF 3D, de modo que um robô consegue inferir preensões e posicionamentos de 6-DOF a partir de duas demonstrações por tarefa e pegar objetos nomeados em texto livre.
Por que importa
O método não precisa de ajuste fino dos modelos de visão, nem de máscaras de segmentação ou suposições sobre a pose dos objetos, porque opera sobre todo o campo de características. Os autores relatam que conectar um modelo de visão e linguagem mais recente ao pipeline exige poucos minutos de engenharia, sem retreinamento e sem novas demonstrações.
Problema
Modelos de imagem 2D pré-treinados carregam rico conhecimento semântico, mas pegar e posicionar objetos exige geometria 3D precisa, que falta às características 2D. O artigo pergunta como um robô pode pegar objetos que nunca viu, a partir de poucas demonstrações ou de uma descrição em texto, em cenas desordenadas onde os objetos diferem dos demonstrados em forma, tamanho, pose e material.
Solução proposta
O robô escaneia a mesa com uma câmera RGB em um pau de selfie (50 imagens) e treina um NeRF que também renderiza características densas do DINO ViT ou do CLIP; as características por patch do CLIP são extraídas com a reparametrização do MaskCLIP para que continuem alinhadas com a linguagem. Uma pose de garra de 6-DOF é codificada amostrando o campo de características ponderado pela ocupação em 100 pontos de consulta no referencial da garra, e as poses são encontradas por pré-filtragem de voxels mais otimização com Adam em relação ao embedding médio de duas demonstrações. Para comandos em texto, o embedding de texto do CLIP recupera as demonstrações mais próximas e pondera o custo da pose em direção às regiões que correspondem à consulta.
Principais ideias
- Os campos de características do DINO e do CLIP são complementares: o DINO oferece boa geometria no nível das partes, mas se confunde com distratores parecidos e tende a sobreajustar à cor, enquanto o CLIP privilegia a semântica em detrimento da geometria: 21 de 27 falhas do CLIP contra 7 de 19 falhas do DINO vieram de erros de rotação ou translação da preensão.
- Características densas do CLIP extraídas da penúltima camada com o MaskCLIP mantêm o alinhamento com o codificador de texto, então consultas em linguagem funcionam sobre o campo de características 3D sem ajuste fino do CLIP.
- Ponderar as características pela ocupação do NeRF (alfa) permite que uma única representação de pontos de consulta codifique tanto a geometria local quanto a semântica, sem segmentação nem poses de objetos.
- Demonstrações com canecas e chaves de fenda foram transferidas para novas categorias, como tigelas, béqueres de medição, rolos de fita, marcadores de quadro branco e utensílios, quando o alvo era nomeado em texto.
- A maioria das falhas guiadas por linguagem (13 de 19) veio do CLIP se comportar como um saco de palavras e ignorar relações, atributos e informações ordinais da consulta.
Principais resultados
- Preensão e posicionamento a partir de duas demonstrações por tarefa, cinco tarefas com dez cenas de teste cada: características CLIP ResNet 39/50, CLIP ViT 34/50, DINO ViT 31/50.
- Baselines nas mesmas tarefas: densidade do NeRF 27/50, RGB 21/50, características intermediárias do NeRF 9/50 e MIRA 15/50.
- Manipulação guiada por linguagem em 13 cenas sobre mesa: 31 de 50 consultas tiveram sucesso; por categoria, cor 7/10, material 7/10, relacionais 4/10, gerais 4/10 e categorias de objetos fora da distribuição 9/10.
- Ajustar o NeRF e o campo de características leva no máximo 90 s (80 s em média) em uma NVIDIA RTX 3090, e cada cena precisa de 60 a 120 MB, contra de 50 a várias centenas de GB por cena no ConceptFusion, baseado em surfels.
- A otimização da pose de preensão leva 15 s em média; em uma ablação do número de vistas, a qualidade cai drasticamente abaixo de cerca de 20 das 50 imagens escaneadas.
Limitações
- Segundo os autores: o pipeline automatizado de escaneamento e modelagem leva alguns minutos por cena e é o principal gargalo do sistema.
- Os autores observam que a taxa de sucesso de 31/50 na manipulação guiada por linguagem está longe de ser prática para uso industrial.
- O comportamento de saco de palavras do CLIP causou falhas em consultas como "black screwdriver" e "mug on a can of spam", e recuperar demonstrações por texto às vezes exigiu engenharia de prompts.
- As distribuições de pontos de consulta são ajustadas à mão para cada tarefa, e o melhor de cinco conjuntos de pontos de consulta amostrados é escolhido em cenas de desenvolvimento.
- Seis das 19 falhas guiadas por linguagem vieram de erros de rotação ou translação na preensão prevista.
Impacto na área
Vencedor do CoRL 2023 Best Paper Award. A página oficial do projeto traz o link para o repositório de código do F3RM.
Resumo
Modelos de imagem autossupervisionados e supervisionados por linguagem contêm um rico conhecimento do mundo que é importante para a generalização. Muitas tarefas robóticas, porém, exigem uma compreensão detalhada da geometria 3D, que muitas vezes falta nas características de imagem 2D. Este trabalho preenche essa lacuna entre 2D e 3D para a manipulação robótica, usando campos de características destilados para combinar geometria 3D precisa com a rica semântica de modelos de fundação 2D. Apresentamos um método de aprendizado few-shot para preensão e posicionamento em 6-DOF que aproveita esses fortes priors espaciais e semânticos para obter generalização em condições reais para objetos não vistos. Usando características destiladas de um modelo de visão e linguagem, o CLIP, apresentamos uma forma de designar novos objetos para manipulação por meio de linguagem natural em texto livre e demonstramos sua capacidade de generalizar para expressões não vistas e novas categorias de objetos.
Links
- arXiv 2308.07931: https://arxiv.org/abs/2308.07931
- PDF: https://arxiv.org/pdf/2308.07931v1
- Código: https://github.com/f3rm/f3rm
- Página do projeto: https://f3rm.csail.mit.edu/