Segment Anything Más Rápido: Hacia un SAM Ligero para Aplicaciones Móviles
Faster Segment Anything: Towards Lightweight SAM for Mobile Applications
June 25, 2023
Autores: Chaoning Zhang, Dongshen Han, Yu Qiao, Jung Uk Kim, Sung-Ho Bae, Seungkyu Lee, Choong Seon Hong
cs.AI
Resumen
El modelo Segment Anything (SAM) es un modelo base de visión guiado por instrucciones para extraer el objeto de interés de su fondo. Desde que el equipo de investigación de Meta lanzó el proyecto SA, SAM ha atraído una atención significativa debido a su impresionante rendimiento en transferencia zero-shot y su alta versatilidad al ser compatible con otros modelos para aplicaciones avanzadas de visión, como la edición de imágenes con control detallado. Muchos de estos casos de uso deben ejecutarse en dispositivos de borde con recursos limitados, como aplicaciones móviles. En este trabajo, nuestro objetivo es hacer que SAM sea apto para móviles reemplazando el codificador de imágenes pesado por uno ligero. Una forma ingenua de entrenar un nuevo SAM, como se describe en el artículo original, conduce a un rendimiento insatisfactorio, especialmente cuando los recursos de entrenamiento son limitados. Descubrimos que esto se debe principalmente a la optimización acoplada del codificador de imágenes y el decodificador de máscaras, lo que nos motiva a proponer la destilación desacoplada. Concretamente, destilamos el conocimiento del codificador de imágenes ViT-H en el SAM original hacia un codificador de imágenes ligero, que puede ser automáticamente compatible con el decodificador de máscaras del SAM original. El entrenamiento puede completarse en una sola GPU en menos de un día, y el SAM ligero resultante se denomina MobileSAM, que es más de 60 veces más pequeño pero tiene un rendimiento similar al SAM original. En cuanto a la velocidad de inferencia, MobileSAM procesa una imagen en aproximadamente 10 ms: 8 ms en el codificador de imágenes y 2 ms en el decodificador de máscaras. Con un rendimiento superior y una mayor versatilidad, nuestro MobileSAM es 7 veces más pequeño y 4 veces más rápido que el concurrente FastSAM, lo que lo hace más adecuado para aplicaciones móviles. El código del proyecto MobileSAM está disponible en https://github.com/ChaoningZhang/MobileSAM.
English
Segment anything model (SAM) is a prompt-guided vision foundation model for
cutting out the object of interest from its background. Since Meta research
team released the SA project, SAM has attracted significant attention due to
its impressive zero-shot transfer performance and high versatility of being
compatible with other models for advanced vision applications like image
editing with fine-grained control. Many of such use cases need to be run on
resource-constraint edge devices, like mobile Apps. In this work, we aim to
make SAM mobile-friendly by replacing the heavyweight image encoder with a
lightweight one. A naive way to train such a new SAM as in the original SAM
paper leads to unsatisfactory performance, especially when limited training
sources are available. We find that this is mainly caused by the coupled
optimization of the image encoder and mask decoder, motivated by which we
propose decoupled distillation. Concretely, we distill the knowledge from the
image encoder ViT-H in the original SAM to a lightweight image encoder, which
can be automatically compatible with the mask decoder in the original SAM. The
training can be completed on a single GPU within less than one day, and the
resulting lightweight SAM is termed MobileSAM which is more than 60 times
smaller yet performs on par with the original SAM. For inference speed,
MobileSAM runs around 10ms per image: 8ms on the image encoder and 2ms on the
mask decoder. With superior performance and a higher versatility, our MobileSAM
is 7 times smaller and 4 times faster than the concurrent FastSAM, making it
more suitable for mobile applications. The code for MobileSAM project is
provided at https://github.com/ChaoningZhang/MobileSAM