Zum Inhalt springen

MobileSAM Logo

Mobiles Segment Irgendwas (MobileSAM)

Das MobileSAM Papier ist jetzt auf arXiv verf├╝gbar.

Eine Demonstration von MobileSAM , die auf einer CPU l├Ąuft, findest du unter diesem Demo-Link. Die Leistung auf einer Mac i5 CPU betr├Ągt etwa 3 Sekunden. Auf der Hugging Face Demo tragen die Schnittstelle und die leistungsschw├Ącheren CPUs zu einer langsameren Reaktion bei, aber sie funktioniert weiterhin effektiv.

MobileSAM wird in verschiedenen Projekten eingesetzt, darunter Grounding-SAM, AnyLabeling und Segment Anything in 3D.

MobileSAM wurde mit einem 100k-Datensatz (1 % der Originalbilder) in weniger als einem Tag auf einem einzigen Grafikprozessor trainiert. Der Code f├╝r dieses Training wird in Zukunft zur Verf├╝gung gestellt werden.

Verf├╝gbare Modelle, unterst├╝tzte Aufgaben und Betriebsmodi

Diese Tabelle zeigt die verf├╝gbaren Modelle mit ihren spezifischen vortrainierten Gewichten, die Aufgaben, die sie unterst├╝tzen, und ihre Kompatibilit├Ąt mit verschiedenen Betriebsmodi wie Inferenz, Validierung, Training und Export, gekennzeichnet durch Ôťů Emojis f├╝r unterst├╝tzte Modi und ÔŁî Emojis f├╝r nicht unterst├╝tzte Modi.

Modell Typ Vortrainierte Gewichte Unterst├╝tzte Aufgaben Inferenz Validierung Ausbildung exportieren
MobileSAM mobile_sam.pt Instanz-Segmentierung Ôťů ÔŁî ÔŁî ÔŁî

Anpassen von SAM an MobileSAM

Da MobileSAM dieselbe Pipeline wie das Original SAM verwendet, haben wir das Pre-Processing, Post-Processing und alle anderen Schnittstellen des Originals ├╝bernommen. Daher k├Ânnen diejenigen, die derzeit das Original SAM verwenden, mit minimalem Aufwand auf MobileSAM umsteigen.

MobileSAM ist vergleichbar mit dem Original SAM und beh├Ąlt dieselbe Pipeline bei, bis auf eine ├änderung des Bild-Encoders. Genauer gesagt, ersetzen wir den schwergewichtigen ViT-H Encoder (632M) durch einen kleineren Tiny-ViT (5M). Auf einer einzelnen GPU ben├Âtigt MobileSAM etwa 12 ms pro Bild: 8 ms f├╝r den Bildkodierer und 4 ms f├╝r den Maskendekodierer.

Die folgende Tabelle enth├Ąlt einen Vergleich der ViT-basierten Bildkodierer:

Image Encoder Original SAM MobileSAM
Parameter 611M 5M
Geschwindigkeit 452ms 8ms

Sowohl das Original SAM als auch MobileSAM verwenden denselben prompt-guided mask decoder:

Maske Decoder Original SAM MobileSAM
Parameter 3.876M 3.876M
Geschwindigkeit 4ms 4ms

Hier ist der Vergleich der gesamten Pipeline:

Gesamte Pipeline (Enc+Dec) Original SAM MobileSAM
Parameter 615M 9.66M
Geschwindigkeit 456ms 12ms

Die Leistung von MobileSAM und dem Original SAM wird anhand eines Punktes und eines Kastens als Aufforderung demonstriert.

Bild mit Punkt als Aufforderung

Bild mit Box als Aufforderung

Mit seiner ├╝berlegenen Leistung ist MobileSAM etwa 5 Mal kleiner und 7 Mal schneller als das aktuelle FastSAM. Weitere Details findest du auf der ProjektseiteMobileSAM .

Testen MobileSAM in Ultralytics

Genau wie das Original SAM bieten wir auf Ultralytics eine unkomplizierte Testmethode an, die Modi f├╝r Punkt- und Kastenaufforderungen beinhaltet.

Modell Download

Du kannst das Modell hier herunterladen.

Punkt Aufforderung

Beispiel

from ultralytics import SAM

# Load the model
model = SAM('mobile_sam.pt')

# Predict a segment based on a point prompt
model.predict('ultralytics/assets/zidane.jpg', points=[900, 370], labels=[1])

Box Aufforderung

Beispiel

from ultralytics import SAM

# Load the model
model = SAM('mobile_sam.pt')

# Predict a segment based on a box prompt
model.predict('ultralytics/assets/zidane.jpg', bboxes=[439, 437, 524, 709])

Wir haben implementiert MobileSAM und SAM ├╝ber dieselbe API. Weitere Informationen zur Nutzung findest du in der SAM Seite.

Zitate und Danksagungen

Wenn du MobileSAM f├╝r deine Forschungs- oder Entwicklungsarbeit n├╝tzlich findest, solltest du unser Papier zitieren:

@article{mobile_sam,
  title={Faster Segment Anything: Towards Lightweight SAM for Mobile Applications},
  author={Zhang, Chaoning and Han, Dongshen and Qiao, Yu and Kim, Jung Uk and Bae, Sung Ho and Lee, Seungkyu and Hong, Choong Seon},
  journal={arXiv preprint arXiv:2306.14289},
  year={2023}
}


Erstellt am 2023-11-12, Aktualisiert am 2024-01-16
Autoren: glenn-jocher (7), ChaoningZhang (1), Laughing-q (1)

Kommentare