SAM 2: segmentação com generalização zero-shot
A Meta lançou recentemente o SAM 2 (Segment Anything Model 2), um modelo avançado para segmentação de objetos em imagens e vídeos.
A segmentação de objetos consiste na tarefa de identificar os píxeis em uma imagem que correspondem a um objeto de interesse. Ela é uma tarefa fundamental no campo da visão computacional.
SAM 2 é o primeiro modelo unificado capaz de realizar segmentação de objetos em tempo real e solicitável em imagens estáticas e vídeos. Podemos usar prompts para solicitar ao SAM 2 usar um ponto, uma caixa ou até mesmo uma máscara para localizar qualquer objeto em qualquer quadro de um vídeo, e o modelo prevê os objetos nos quadros subsequentes.
Exemplos de segmentação de imagens com SAM 2 (fonte).
SAM 2 pode segmentar qualquer objeto em qualquer vídeo ou imagem. Essa segmentação é possível mesmo para objetos e domínios visuais que o modelo não tenha visto anteriormente. Ou seja, o novo modelo possui generalização zero-shot. Com essa capacidade, o SAM 2 abre uma gama diversificada de casos de uso sem a necessidade de ajustes personalizados.
Avanços em relação à arquitetura anterior
O novo modelo estende a arquitetura do SAM (Segment Anything Model) original. SAM foi lançado no ano passado e introduziu um modelo básico para segmentação de imagens. O modelo novo adiciona à arquitetura original um módulo de memória que captura informações sobre objetos em vídeos. Isso permite rastrear objetos selecionados em todos os quadros de um vídeo, mesmo quando eles desaparecem temporariamente da visualização. A nova arquitetura também inclui um codificador de imagem, atenção de memória para dados espaço-temporais, codificador de prompts, decodificação de máscara, codificador de memória e um banco de memória. Veja o esquema da arquitetura do modelo abaixo:
A arquitetura do SAM 2. Para um determinado quadro, a previsão de segmentação é condicionada por um prompt atual e/ou por memórias observadas anteriormente. Os vídeos são processados de forma streaming com quadros consumidos um de cada vez pelo codificador de imagem. O processamento considera as memórias do objeto-alvo de quadros anteriores. A máscara decodificadora, que opcionalmente também recebe prompts de entrada, prevê a máscara de segmentação para o quadro atual. Finalmente, uma memória transforma as incorporações do codificador de previsão e imagem para uso em quadros futuros (fonte).
O novo modelo foi treinado em um conjunto de dados grande e diversificado chamado SA-V (Segment Anything Video). Ele inclui aproximadamente 51.000 vídeos do mundo real e mais de 600.000 masklets (máscaras espaço-temporais).
Segmentação em vídeos com rastreamento em tempo real
O SAM 2 oferece recursos aprimorados para tarefas de segmentação de imagens e vídeos. Isso representa um avanço significativo em relação ao modelo SAM original, que era limitado apenas à segmentação de imagens.
Para obter bons resultados na segmentação de vídeos, o modelo novo utiliza uma memória para recuperar informações processadas anteriormente. Assim, ele segmenta com precisão um objeto na etapa de tempo atual de um vídeo.
Outra vantagem do SAM 2 é o processamento em tempo real. Ele pode processar aproximadamente 44 quadros de vídeo por segundo.
O novo modelo excede as capacidades anteriores em precisão de segmentação de imagens. Ele também alcança desempenho excelente para segmentação de vídeos. Adicionalmente, SAM 2 requer três vezes menos tempo de inferência.
Licença Permissiva
Seguindo a tendência vista com outras IA lançadas recentemente (aqui e aqui), A Meta lançou o SAM 2 como um modelo de código aberto sob a licença Apache 2.0. Isso permite que pesquisadores e desenvolvedores usem e modifiquem a nova tecnologia, inclusive para fins comerciais. O lançamento inclui a liberação do modelo e do conjunto de dados SA-V (sob licença CC BY 4.0).
O novo modelo pode ser encontrado no GitHub e na plataforma Hugging Face.