SAM 3: Segment Anything with Concepts
SAM 3 ist ab Version 8.3.237 vollständig in das Ultralytics-Paket integriert (PR #22897). Installiere oder aktualisiere es mit pip install -U ultralytics, um auf alle SAM 3-Funktionen zuzugreifen, einschließlich textbasierter Konzept-Segmentierung, Bild-Exemplar-Prompts und Video-Tracking.

SAM 3 (Segment Anything Model 3) ist das von Meta veröffentlichte Basismodell für Promptable Concept Segmentation (PCS). Aufbauend auf SAM 2 führt SAM 3 eine grundlegend neue Fähigkeit ein: das Erkennen, Segmentieren und Verfolgen aller Instanzen eines visuellen Konzepts, das durch Text-Prompts, Bild-Exemplare oder beides spezifiziert wird. Im Gegensatz zu früheren SAM-Versionen, die einzelne Objekte pro Prompt segmentieren, kann SAM 3 jedes Vorkommen eines Konzepts, das irgendwo in Bildern oder Videos erscheint, finden und segmentieren, was den Zielen des offenen Vokabulars in der modernen Instanzsegmentierung entspricht.
Watch: How to Use Meta Segment Anything 3 with Ultralytics | Text-Prompt Segmentation on Images & Videos
SAM 3 ist jetzt vollständig in das ultralytics-Paket integriert und bietet native Unterstützung für Konzept-Segmentierung mit Text-Prompts, Bild-Exemplar-Prompts und Video-Tracking-Funktionen.
Übersicht
SAM 3 erreicht eine 2-fache Leistungssteigerung gegenüber bestehenden Systemen bei der Promptable Concept Segmentation, während es die Funktionen von SAM 2 für interaktive visuelle Segmentierung beibehält und verbessert. Das Modell zeichnet sich durch Open-Vocabulary-Segmentierung aus, die es Benutzern ermöglicht, Konzepte mithilfe einfacher Substantivphrasen (z. B. „gelber Schulbus“, „gestreifte Katze“) oder durch die Bereitstellung von Beispielbildern des Zielobjekts zu spezifizieren. Diese Fähigkeiten ergänzen produktionsreife Pipelines, die auf optimierten predict- und track-Workflows basieren.

Was ist Promptable Concept Segmentation (PCS)?
Die PCS-Aufgabe nimmt einen Konzept-Prompt als Eingabe und gibt Segmentierungsmasken mit eindeutigen Identitäten für alle übereinstimmenden Objektinstanzen zurück. Konzept-Prompts können sein:
- Text: Einfache Substantivphrasen wie „roter Apfel“ oder „Person mit Hut“, ähnlich dem Zero-Shot Learning
- Bild-Exemplare: Bounding Boxes um Beispielobjekte (positiv oder negativ) zur schnellen Verallgemeinerung
- Kombiniert: Sowohl Text- als auch Bild-Exemplare zusammen für eine präzise Steuerung
Dies unterscheidet sich von traditionellen visuellen Prompts (Punkte, Boxen, Masken), die nur eine einzelne spezifische Objektinstanz segmentieren, wie sie durch die ursprüngliche SAM-Familie populär gemacht wurden.
Wichtige Leistungskennzahlen
| Metrik | SAM 3-Ergebnis |
|---|---|
| LVIS Zero-Shot Mask AP | 47.0 (gegenüber bisherigem Bestwert 38.5, +22 % Verbesserung) |
| SA-Co Benchmark | 2x besser als bestehende Systeme |
| Inferenzgeschwindigkeit (H200 GPU) | 30 ms pro Bild mit über 100 erkannten Objekten |
| Video-Leistung | Nahe Echtzeit für ~5 gleichzeitige Objekte |
| MOSEv2 VOS Benchmark | 60.1 J&F (+25.5 % gegenüber SAM 2.1, +17 % gegenüber bisherigem SOTA) |
| Interaktive Verfeinerung | +18.6 CGF1 Verbesserung nach 3 Exemplar-Prompts |
| Lücke zur menschlichen Leistung | Erreicht 88 % der geschätzten Untergrenze auf SA-Co/Gold |
Für den Kontext zu Modellmetriken und Kompromissen in der Produktion siehe Erkenntnisse zur Modellevaluierung und YOLO Leistungskennzahlen.
Architektur
SAM 3 besteht aus einem Detektor und einem Tracker, die sich ein Perception Encoder (PE) Vision-Backbone teilen. Dieses entkoppelte Design vermeidet Aufgabenkonflikte und ermöglicht sowohl bildbasierte Erkennung als auch videobasiertes Tracking, mit einer Schnittstelle, die mit der Ultralytics Python-Nutzung und CLI-Nutzung kompatibel ist.
Kernkomponenten
-
Detektor: DETR-basierte Architektur für bildbasierte Konzepterkennung
- Text-Encoder für Substantivphrasen-Prompts
- Exemplar-Encoder für bildbasierte Prompts
- Fusions-Encoder zur Konditionierung von Bildmerkmalen auf Prompts
- Neuartiger Presence-Head, der Erkennung („was“) von Lokalisierung („wo“) entkoppelt
- Mask-Head zur Generierung von Instanzsegmentierungsmasken
-
Tracker: Speicherbasierte Videosegmentierung, übernommen von SAM 2
- Prompt-Encoder, Mask-Decoder, Memory-Encoder
- Memory-Bank zum Speichern des Objekterscheinungsbildes über Frames hinweg
- Zeitliche Disambiguierung unterstützt durch Techniken wie einen Kalman-Filter in Multi-Objekt-Szenarien
-
Presence-Token: Ein erlerntes globales Token, das vorhersagt, ob das Zielkonzept im Bild/Frame vorhanden ist, was die Erkennung durch die Trennung von Erkennung und Lokalisierung verbessert.

Wichtige Innovationen
- Entkoppelte Erkennung und Lokalisierung: Der Presence-Head sagt das Konzeptvorhandensein global voraus, während sich Vorschlagsabfragen nur auf die Lokalisierung konzentrieren, um widersprüchliche Ziele zu vermeiden.
- Vereinigte Konzept- und visuelle Prompts: Unterstützt sowohl PCS (Konzept-Prompts) als auch PVS (visuelle Prompts wie Klicks/Boxen von SAM 2) in einem einzigen Modell.
- Interaktive Exemplar-Verfeinerung: Benutzer können positive oder negative Bild-Exemplare hinzufügen, um Ergebnisse iterativ zu verfeinern, wobei das Modell auf ähnliche Objekte verallgemeinert, anstatt nur einzelne Instanzen zu korrigieren.
- Zeitliche Disambiguierung: Nutzt Masklet-Erkennungsscores und periodisches Re-Prompting, um Okklusionen, überfüllte Szenen und Tracking-Fehler in Videos zu bewältigen, im Einklang mit Best Practices für Instanzsegmentierung und Tracking.
SA-Co Datensatz
SAM 3 wurde mit Segment Anything with Concepts (SA-Co) trainiert, Metas bisher größtem und vielfältigstem Segmentierungsdatensatz, der über gängige Benchmarks wie COCO und LVIS hinausgeht.
Trainingsdaten
| Datensatz-Komponente | Beschreibung | Skala |
|---|---|---|
| SA-Co/HQ | Hochwertige, von Menschen annotierte Bilddaten aus einer 4-Phasen-Daten-Engine | 5,2 Mio. Bilder, 4 Mio. eindeutige Substantivphrasen |
| SA-Co/SYN | Synthetischer Datensatz, annotiert von KI ohne menschliches Eingreifen | 38 Mio. Substantivphrasen, 1,4 Mrd. Masken |
| SA-Co/EXT | 15 externe Datensätze, angereichert mit schwerwiegenden Negativbeispielen | Variiert je nach Quelle |
| SA-Co/VIDEO | Video-Annotationen mit zeitlichem Tracking | 52,5 Tsd. Videos, 24,8 Tsd. eindeutige Substantivphrasen |
Benchmark-Daten
Der SA-Co-Evaluierungsbenchmark enthält 214 Tsd. eindeutige Phrasen über 126 Tsd. Bilder und Videos hinweg und bietet über 50-mal mehr Konzepte als bestehende Benchmarks. Er umfasst:
- SA-Co/Gold: 7 Domänen, dreifach annotiert zur Messung der menschlichen Leistungsgrenzen
- SA-Co/Silver: 10 Domänen, einfache menschliche Annotation
- SA-Co/Bronze und SA-Co/Bio: 9 bestehende Datensätze, angepasst für Konzeptsegmentierung
- SA-Co/VEval: Video-Benchmark mit 3 Domänen (SA-V, YT-Temporal-1B, SmartGlasses)
Innovationen der Daten-Engine
Die skalierbare Human- und Model-in-the-Loop-Daten-Engine von SAM 3 erreicht den 2-fachen Annotationsdurchsatz durch:
- KI-Annotatoren: Llama-basierte Modelle schlagen vielfältige Substantivphrasen vor, einschließlich schwerer Negativbeispiele
- KI-Verifizierer: Feinabgestimmte multimodale LLMs verifizieren die Maskenqualität und Vollständigkeit bei nahezu menschlicher Leistung
- Aktives Mining: Konzentriert menschlichen Aufwand auf herausfordernde Fehlerfälle, bei denen die KI Schwierigkeiten hat
- Ontologiegesteuert: Nutzt eine große Ontologie, die auf Wikidata basiert, für die Konzeptabdeckung
Installation
SAM 3 ist ab Ultralytics Version 8.3.237 und höher verfügbar. Installiere oder aktualisiere es mit:
pip install -U ultralyticsIm Gegensatz zu anderen Ultralytics-Modellen werden die SAM 3-Gewichte (sam3.pt) nicht automatisch heruntergeladen. Du musst zuerst den Zugriff auf die Modellgewichte auf der SAM 3 Modellseite auf Hugging Face anfordern und nach der Genehmigung die Datei sam3.pt von dieser Seite herunterladen. Platziere die heruntergeladene sam3.pt-Datei in deinem Arbeitsverzeichnis oder gib den vollständigen Pfad beim Laden des Modells an.
Wenn du während der Vorhersage den oben genannten Fehler erhältst, bedeutet dies, dass du das falsche clip-Paket installiert hast. Installiere das korrekte clip-Paket, indem du Folgendes ausführst:
pip uninstall clip -y
pip install git+https://github.com/ultralytics/CLIP.gitSo verwendest du SAM 3: Vielseitigkeit bei der Konzeptsegmentierung
SAM 3 unterstützt sowohl die Aufgaben Promptable Concept Segmentation (PCS) als auch Promptable Visual Segmentation (PVS) über verschiedene Prädiktor-Schnittstellen:
Unterstützte Aufgaben und Modelle
| Aufgabentyp | Prompt-Typen | Ausgabe |
|---|---|---|
| Konzeptsegmentierung (PCS) | Text (Substantivphrasen), Bild-Exemplare | Alle Instanzen, die dem Konzept entsprechen |
| Visuelle Segmentierung (PVS) | Punkte, Boxen, Masken | Einzelne Objektinstanz (SAM 2-Stil) |
| Interaktive Verfeinerung | Exemplare oder Klicks iterativ hinzufügen/entfernen | Verfeinerte Segmentierung mit verbesserter Genauigkeit |
Beispiele zur Konzeptsegmentierung
Segmentierung mit Text-Prompts
Finde und segmentiere alle Instanzen eines Konzepts mithilfe einer Textbeschreibung. Text-Prompts erfordern das SAM3SemanticPredictor-Interface.
from ultralytics.models.sam import SAM3SemanticPredictor
# Initialize predictor with configuration
overrides = dict(
conf=0.25,
task="segment",
mode="predict",
model="sam3.pt",
half=True, # Use FP16 for faster inference
save=True,
)
predictor = SAM3SemanticPredictor(overrides=overrides)
# Set image once for multiple queries
predictor.set_image("path/to/image.jpg")
# Query with multiple text prompts
results = predictor(text=["person", "bus", "glasses"])
# Works with descriptive phrases
results = predictor(text=["person with red cloth", "person with blue cloth"])
# Query with a single concept
results = predictor(text=["a person"])Segmentierung mit Bildbeispielen
Verwende Bounding Boxen als visuelle Prompts, um alle ähnlichen Instanzen zu finden. Dies erfordert ebenfalls SAM3SemanticPredictor für den konzeptbasierten Abgleich.
from ultralytics.models.sam import SAM3SemanticPredictor
# Initialize predictor
overrides = dict(conf=0.25, task="segment", mode="predict", model="sam3.pt", half=True, save=True)
predictor = SAM3SemanticPredictor(overrides=overrides)
# Set image
predictor.set_image("path/to/image.jpg")
# Provide bounding box examples to segment similar objects
results = predictor(bboxes=[[480.0, 290.0, 590.0, 650.0]])
# Multiple bounding boxes for different concepts
results = predictor(bboxes=[[539, 599, 589, 639], [343, 267, 499, 662]])Merkmalsbasierte Inferenz für Effizienz
Extrahiere Bildmerkmale einmal und verwende sie für mehrere Segmentierungsabfragen wieder, um die Effizienz zu steigern.
import cv2
from ultralytics.models.sam import SAM3SemanticPredictor
from ultralytics.utils.plotting import Annotator, colors
# Initialize predictors
overrides = dict(conf=0.50, task="segment", mode="predict", model="sam3.pt", verbose=False)
predictor = SAM3SemanticPredictor(overrides=overrides)
predictor2 = SAM3SemanticPredictor(overrides=overrides)
# Extract features from the first predictor
source = "path/to/image.jpg"
predictor.set_image(source)
src_shape = cv2.imread(source).shape[:2]
# Setup second predictor and reuse features
predictor2.setup_model()
# Perform inference using shared features with text prompt
masks, boxes = predictor2.inference_features(predictor.features, src_shape=src_shape, text=["person"])
# Perform inference using shared features with bounding box prompt
masks, boxes = predictor2.inference_features(predictor.features, src_shape=src_shape, bboxes=[[439, 437, 524, 709]])
# Visualize results
if masks is not None:
masks, boxes = masks.cpu().numpy(), boxes.cpu().numpy()
im = cv2.imread(source)
annotator = Annotator(im, pil=False)
annotator.masks(masks, [colors(x, True) for x in range(len(masks))])
cv2.imshow("result", annotator.result())
cv2.waitKey(0)Videokonzept-Segmentierung
Konzepte über Videos hinweg mit Bounding Boxen verfolgen
Erkenne und verfolge Objektinstanzen über Videobilder hinweg mithilfe von Bounding Box-Prompts.
from ultralytics.models.sam import SAM3VideoPredictor
# Create video predictor
overrides = dict(conf=0.25, task="segment", mode="predict", model="sam3.pt", half=True)
predictor = SAM3VideoPredictor(overrides=overrides)
# Track objects using bounding box prompts
results = predictor(source="path/to/video.mp4", bboxes=[[706.5, 442.5, 905.25, 555], [598, 635, 725, 750]], stream=True)
# Process and display results
for r in results:
r.show() # Display frame with segmentation masksKonzepte mit Text-Prompts verfolgen
Verfolge alle Instanzen von Konzepten, die durch Text spezifiziert sind, über Videobilder hinweg.
from ultralytics.models.sam import SAM3VideoSemanticPredictor
# Initialize semantic video predictor
overrides = dict(conf=0.25, task="segment", mode="predict", imgsz=640, model="sam3.pt", half=True, save=True)
predictor = SAM3VideoSemanticPredictor(overrides=overrides)
# Track concepts using text prompts
results = predictor(source="path/to/video.mp4", text=["person", "bicycle"], stream=True)
# Process results
for r in results:
r.show() # Display frame with tracked objects
# Alternative: Track with bounding box prompts
results = predictor(
source="path/to/video.mp4",
bboxes=[[864, 383, 975, 620], [705, 229, 782, 402]],
labels=[1, 1], # Positive labels
stream=True,
)Visuelle Prompts (SAM 2 Kompatibilität)
SAM 3 behält die volle Abwärtskompatibilität mit der visuellen Prompting-Funktion von SAM 2 für die Segmentierung einzelner Objekte bei:
Das grundlegende SAM-Interface verhält sich exakt wie SAM 2 und segmentiert nur den spezifischen Bereich, der durch visuelle Prompts (Punkte, Boxen oder Masken) angegeben wird.
from ultralytics import SAM
model = SAM("sam3.pt")
# Single point prompt - segments object at specific location
results = model.predict(source="path/to/image.jpg", points=[900, 370], labels=[1])
results[0].show()
# Multiple points - segments single object with multiple point hints
results = model.predict(source="path/to/image.jpg", points=[[400, 370], [900, 370]], labels=[1, 1])
# Box prompt - segments object within bounding box
results = model.predict(source="path/to/image.jpg", bboxes=[100, 150, 300, 400])
results[0].show()Die Verwendung von SAM("sam3.pt") mit visuellen Prompts (Punkten/Boxen/Masken) wird genau wie bei SAM 2 nur das spezifische Objekt an dieser Position segmentieren. Um alle Instanzen eines Konzepts zu segmentieren, verwende SAM3SemanticPredictor mit Text- oder Beispiel-Prompts, wie oben gezeigt.
Leistungs-Benchmarks
Bildsegmentierung
SAM 3 erzielt erstklassige Ergebnisse in mehreren Benchmarks, einschließlich realer Datensätze wie LVIS und COCO für Segmentierung:
| Benchmark | Metrik | SAM 3 | Bisheriges Bestes | Verbesserung |
|---|---|---|---|---|
| LVIS (Zero-Shot) | Mask AP | 47.0 | 38,5 | +22.1% |
| SA-Co/Gold | CGF1 | 65.0 | 34.3 (OWLv2) | +89.5% |
| COCO (Zero-Shot) | Box AP | 53.5 | 52.2 (T-Rex2) | +2.5% |
| ADE-847 (semantische Seg.) | mIoU | 14.7 | 9.2 (APE-D) | +59.8% |
| PascalConcept-59 | mIoU | 59.4 | 58.5 (APE-D) | +1.5% |
| Cityscapes (semantische Seg.) | mIoU | 65.1 | 44.2 (APE-D) | +47.3% |
Entdecke Datensatzoptionen für schnelle Experimente in den Ultralytics Datensätzen.
Leistung bei der Videosegmentierung
SAM 3 zeigt signifikante Verbesserungen gegenüber SAM 2 und dem bisherigen Stand der Technik in Videobenchmarks wie DAVIS 2017 und YouTube-VOS:
| Benchmark | Metrik | SAM 3 | SAM 2.1 L | Verbesserung |
|---|---|---|---|---|
| MOSEv2 | J&F | 60.1 | 47.9 | +25.5% |
| DAVIS 2017 | J&F | 92.0 | 90.7 | +1.4% |
| LVOSv2 | J&F | 88.2 | 79.6 | +10.8% |
| SA-V | J&F | 84.6 | 78.4 | +7.9% |
| YTVOS19 | J&F | 89.6 | 89.3 | +0.3% |
Few-Shot-Adaption
SAM 3 zeichnet sich durch die Anpassung an neue Domänen mit minimalen Beispielen aus, was für datenzentrierte KI-Workflows relevant ist:
| Benchmark | 0-Shot AP | 10-Shot AP | Bisheriges Bestes (10-Shot) |
|---|---|---|---|
| ODinW13 | 59.9 | 71.6 | 67.9 (gDino1.5-Pro) |
| RF100-VL | 14.3 | 35.7 | 33.7 (gDino-T) |
Effektivität interaktiver Verfeinerung
Das konzeptbasierte Prompting von SAM 3 mit Beispielen konvergiert deutlich schneller als visuelles Prompting:
| Hinzugefügte Prompts | CGF1-Score | Gewinn gegenüber nur Text | Gewinn gegenüber PVS-Baseline |
|---|---|---|---|
| Nur Text | 46.4 | Baseline | Baseline |
| +1 Exemplar | 57.6 | +11.2 | +6.7 |
| +2 Exemplare | 62.2 | +15.8 | +9.7 |
| +3 Exemplare | 65.0 | +18.6 | +11.2 |
| +4 Exemplare | 65.7 | +19.3 | +11.5 (Plateau) |
Genauigkeit der Objektzählung
SAM 3 ermöglicht eine präzise Zählung durch Segmentierung aller Instanzen, eine häufige Anforderung bei der Objektzählung:
| Benchmark | Genauigkeit | MAE | vs. bestes MLLM |
|---|---|---|---|
| CountBench | 95,6 % | 0,11 | 92,4 % (Gemini 2.5) |
| PixMo-Count | 87,3 % | 0,22 | 88,8 % (Molmo-72B) |
Vergleich: SAM 3 vs. SAM 2 vs. YOLO
Hier vergleichen wir die Fähigkeiten von SAM 3 mit SAM 2 und YOLO26 Modellen:
| Fähigkeit | SAM 3 | SAM 2 | YOLO26n-seg |
|---|---|---|---|
| Konzept-Segmentierung | ✅ Alle Instanzen aus Text/Exemplaren | ❌ Nicht unterstützt | ❌ Nicht unterstützt |
| Visuelle Segmentierung | ✅ Einzelne Instanz (SAM 2 kompatibel) | ✅ Einzelne Instanz | ✅ Alle Instanzen |
| Zero-Shot-Fähigkeit | ✅ Offenes Vokabular | ✅ Geometrische Prompts | ❌ Geschlossene Menge |
| Interaktive Verfeinerung | ✅ Exemplare + Klicks | ✅ Nur Klicks | ❌ Nicht unterstützt |
| Video-Tracking | ✅ Multi-Objekt mit Identitäten | ✅ Multi-Objekt | ✅ Multi-Objekt |
| LVIS Mask AP (Zero-Shot) | 47.0 | N/A | N/A |
| MOSEv2 J&F | 60.1 | 47.9 | N/A |
| Geschwindigkeit (GPU, ms/im) | 2921 | 857 | 8,4 |
| Modellgröße | 3,45 GB | 162 MB (Basis) | 6,4 MB |
Geschwindigkeit gemessen auf NVIDIA RTX PRO 6000 mit torch==2.9.1 und ultralytics==8.4.19.
Wichtige Erkenntnisse:
- SAM 3: Am besten geeignet für Zero-Shot-Konzept-Segmentierung; findet alle Instanzen eines Konzepts mithilfe von Text- oder Exemplar-Prompts.
- SAM 2: Am besten für interaktive Einzelobjekt-Segmentierung in Bildern und Videos mit geometrischen Prompts.
- YOLO26: Am besten für Echtzeit-Segmentierung mit hoher Geschwindigkeit durch NMS-freie End-to-End-Inferenz, exportierbar in viele Formate für den Einsatz auf GPUs, CPUs und Edge-Geräten.
SAM-Vergleich vs. YOLO
Vergleich von SAM 3, SAM 2, SAM, MobileSAM und FastSAM mit Ultralytics YOLO-Segmentierungsmodellen (YOLOv8, YOLO11, YOLO26) hinsichtlich Größe, Parametern und GPU-Inferenzgeschwindigkeit:
| Modell | Größe (MB) | Parameter (M) | Geschwindigkeit (GPU) (ms/im) |
|---|---|---|---|
| Meta SAM-b | 375 | 93.7 | 1306 |
| Meta SAM2-b | 162 | 80,8 | 857 |
| Meta SAM2-t | 78.1 | 38.9 | 668 |
| Meta SAM3 | 3450 | 473,6 | 2921 |
| MobileSAM | 40.7 | 10.1 | 605 |
| FastSAM-s mit YOLOv8 Backbone | 23,7 | 11.8 | 55,9 |
| Ultralytics YOLOv8n-seg | 6,7 (515-mal kleiner) | 3,4 (139,1-mal weniger) | 17,4 (167-mal schneller) |
| Ultralytics YOLO11n-seg | 6,4 (585-mal kleiner) | 2,9 (163,1-mal weniger) | 12,6 (231-mal schneller) |
| Ultralytics YOLO26n-seg | 6,4 (539-mal kleiner) | 2,7 (175,2-mal weniger) | 8,4 (347-mal schneller) |
Dieser Vergleich demonstriert die erheblichen Unterschiede in Modellgröße und Geschwindigkeit zwischen SAM-Varianten und YOLO-Segmentierungsmodellen. Während SAM einzigartige automatische Segmentierungsfunktionen bietet, sind YOLO-Modelle, insbesondere YOLOv8n-seg, YOLO11n-seg und YOLO26n-seg, deutlich kleiner, schneller und recheneffizienter.
Tests durchgeführt auf einer NVIDIA RTX PRO 6000 mit 96 GB VRAM unter Verwendung von torch==2.9.1 und ultralytics==8.4.19. So reproduzierst du diesen Test:
from ultralytics import ASSETS, SAM, YOLO, FastSAM
# Profile SAM3, SAM2-t, SAM2-b, SAM-b, MobileSAM
for file in ["sam_b.pt", "sam2_b.pt", "sam2_t.pt", "mobile_sam.pt", "sam3.pt"]:
model = SAM(file)
model.info()
model(ASSETS)
# Profile FastSAM-s
model = FastSAM("FastSAM-s.pt")
model.info()
model(ASSETS)
# Profile YOLO models
for file_name in ["yolov8n-seg.pt", "yolo11n-seg.pt", "yolo26n-seg.pt"]:
model = YOLO(file_name)
model.info()
model(ASSETS)Evaluierungsmetriken
SAM 3 führt neue Metriken ein, die speziell für die PCS-Aufgabe entwickelt wurden und bekannte Maße wie F1-Score, Precision und Recall ergänzen.
Classification-Gated F1 (CGF1)
Die primäre Metrik zur Kombination von Lokalisierung und Klassifizierung:
CGF1 = 100 × pmF1 × IL_MCC
Wobei:
- pmF1 (Positive Macro F1): Misst die Lokalisierungsqualität anhand positiver Beispiele.
- IL_MCC (Image-Level Matthews Correlation Coefficient): Misst die Genauigkeit der binären Klassifizierung („Ist das Konzept vorhanden?“).
Warum diese Metriken?
Traditionelle AP-Metriken berücksichtigen die Kalibrierung nicht, was die praktische Anwendung von Modellen erschwert. Durch die Evaluierung von Vorhersagen mit einer Konfidenz von über 0,5 erzwingen die Metriken von SAM 3 eine gute Kalibrierung und bilden reale Anwendungsmuster in interaktiven Predict- und Track-Schleifen nach.
Wichtige Ablationen und Einblicke
Auswirkung des Presence-Head
Der Presence-Head entkoppelt die Erkennung von der Lokalisierung und bietet signifikante Verbesserungen:
| Konfiguration | CGF1 | IL_MCC | pmF1 |
|---|---|---|---|
| Ohne Presence | 57.6 | 0.77 | 74.7 |
| Mit Presence | 63.3 | 0.82 | 77.1 |
Der Presence-Head bietet einen +5.7 CGF1-Schub (+9,9%) und verbessert primär die Erkennungsfähigkeit (IL_MCC +6,5%).
Auswirkung von Hard Negatives
| Hard Negatives/Bild | CGF1 | IL_MCC | pmF1 |
|---|---|---|---|
| 0 | 31.8 | 0.44 | 70.2 |
| 5 | 44.8 | 0.62 | 71.9 |
| 30 | 49.2 | 0.68 | 72.3 |
Hard Negatives sind entscheidend für die Open-Vocabulary-Erkennung und verbessern den IL_MCC um 54,5% (0,44 → 0,68).
Skalierung der Trainingsdaten
| Datenquellen | CGF1 | IL_MCC | pmF1 |
|---|---|---|---|
| Nur extern | 30.9 | 0.46 | 66.3 |
| Extern + Synthetisch | 39.7 | 0.57 | 70.6 |
| Extern + HQ | 51.8 | 0.71 | 73.2 |
| Alle drei | 54.3 | 0.74 | 73.5 |
Hochwertige menschliche Annotationen bieten große Vorteile gegenüber rein synthetischen oder externen Daten. Hintergrundinformationen zu Datenqualitätspraktiken findest du unter Datenerfassung und Annotation.
Anwendungen
Die Konzept-Segmentierungsfähigkeit von SAM 3 ermöglicht neue Anwendungsfälle:
- Inhaltsmoderation: Finde alle Instanzen spezifischer Inhaltstypen in Medienbibliotheken
- E-Commerce: Segmentiere alle Produkte eines bestimmten Typs in Katalogbildern, was die Auto-Annotation unterstützt
- Medizinische Bildgebung: Identifiziere alle Vorkommen spezifischer Gewebetypen oder Anomalien
- Autonome Systeme: Verfolge alle Instanzen von Verkehrsschildern, Fußgängern oder Fahrzeugen nach Kategorie
- Videoanalyse: Zähle und verfolge alle Personen, die bestimmte Kleidung tragen oder Aktionen ausführen
- Datensatz-Annotation: Annotiere schnell alle Instanzen seltener Objektkategorien
- Wissenschaftliche Forschung: Quantifiziere und analysiere alle Proben, die bestimmten Kriterien entsprechen
SAM 3 Agent: Erweiterte Sprachbegründung
SAM 3 kann mit multimodalen großen Sprachmodellen (MLLMs) kombiniert werden, um komplexe Anfragen zu bearbeiten, die logisches Denken erfordern, ähnlich wie Open-Vocabulary-Systeme wie OWLv2 und T-Rex.
Leistung bei Reasoning-Aufgaben
| Benchmark | Metrik | SAM 3 Agent (Gemini 2.5 Pro) | Bisheriges Bestes |
|---|---|---|---|
| ReasonSeg (Validierung) | gIoU | 76.0 | 65.0 (SoTA) |
| ReasonSeg (Test) | gIoU | 73.8 | 61.3 (SoTA) |
| OmniLabel (Validierung) | AP | 46.7 | 36.5 (REAL) |
| RefCOCO+ | Acc | 91.2 | 89.3 (LISA) |
Beispiele für komplexe Abfragen
Der SAM 3 Agent kann Abfragen verarbeiten, die logisches Denken erfordern:
- "Personen, die sitzen, aber kein Geschenk in den Händen halten"
- "Der Hund, der am nächsten zur Kamera ist und kein Halsband trägt"
- "Rote Objekte, die größer als die Hand einer Person sind"
Das MLLM schlägt SAM 3 einfache Substantivgruppen-Abfragen vor, analysiert die zurückgegebenen Masken und iteriert, bis es zufrieden ist.
Einschränkungen
Obwohl SAM 3 einen bedeutenden Fortschritt darstellt, hat es bestimmte Einschränkungen:
- Phrasenkomplexität: Am besten geeignet für einfache Substantivgruppen; lange referenzierende Ausdrücke oder komplexes Denken erfordern möglicherweise eine MLLM-Integration
- Umgang mit Mehrdeutigkeiten: Manche Konzepte bleiben von Natur aus mehrdeutig (z. B. "kleines Fenster", "gemütliches Zimmer")
- Rechenanforderungen: Größer und langsamer als spezialisierte Erkennungsmodelle wie YOLO
- Vokabularbereich: Konzentriert sich auf atomare visuelle Konzepte; kompositionales Denken ist ohne MLLM-Unterstützung begrenzt
- Seltene Konzepte: Die Leistung kann bei extrem seltenen oder fein abgestimmten Konzepten, die in den Trainingsdaten nicht gut vertreten sind, nachlassen
Zitierung
@inproceedings{sam3_2025,
title = {SAM 3: Segment Anything with Concepts},
author = {Anonymous authors},
booktitle = {Submitted to ICLR 2026},
year = {2025},
url = {https://openreview.net/forum?id=r35clVtGzw},
note = {Paper ID: 4183, under double-blind review}
}FAQ
Wann wurde SAM 3 veröffentlicht?
SAM 3 wurde am 20. November 2025 von Meta veröffentlicht und ist ab Version 8.3.237 vollständig in Ultralytics integriert (PR #22897). Volle Unterstützung ist für den Predict-Modus und den Track-Modus verfügbar.
Ist SAM 3 in Ultralytics integriert?
Ja! SAM 3 ist vollständig in das Ultralytics Python-Paket integriert, einschließlich Konzept-Segmentierung, visueller Prompts im SAM 2-Stil und Multi-Objekt-Video-Tracking. SAM 3 unterstützt außerdem die Funktion Smart Annotation auf der Ultralytics Platform, mit der du Bilder mit nur wenigen Klicks annotieren kannst.
Was ist Promptable Concept Segmentation (PCS)?
PCS ist eine neue Aufgabe, die mit SAM 3 eingeführt wurde und alle Instanzen eines visuellen Konzepts in einem Bild oder Video segmentiert. Im Gegensatz zur traditionellen Segmentierung, die auf eine bestimmte Objektinstanz abzielt, findet PCS jedes Vorkommen einer Kategorie. Zum Beispiel:
- Text-Prompt: "gelber Schulbus" → segmentiert alle gelben Schulbusse in der Szene
- Bild-Exemplar: Rahmen um einen Hund → segmentiert alle Hunde im Bild
- Kombiniert: "gestreifte Katze" + Exemplar-Rahmen → segmentiert alle gestreiften Katzen, die dem Beispiel entsprechen
Siehe verwandte Hintergründe zu Objekterkennung und Instanzsegmentierung.
Wie unterscheidet sich SAM 3 von SAM 2?
| Funktion | SAM 2 | SAM 3 |
|---|---|---|
| Aufgabe | Einzelnes Objekt pro Prompt | Alle Instanzen eines Konzepts |
| Prompt-Typen | Punkte, Boxen, Masken | Textphrasen, Bildbeispiele |
| Erkennungsfähigkeit | Erfordert externen Detektor | Integrierter Open-Vocabulary-Detektor |
| Erkennung | Nur geometriebasiert | Text- und visuelle Erkennung |
| Architektur | Nur Tracker | Detektor + Tracker mit Präsenz-Head |
| Zero-Shot-Leistung | Nicht zutreffend (erfordert visuelle Prompts) | 47.0 AP auf LVIS, 2× besser auf SA-Co |
| Interaktive Verfeinerung | Nur Klicks | Klicks + Beispiel-Generalisierung |
SAM 3 behält die Abwärtskompatibilität mit SAM 2 visuellen Prompts bei und fügt konzeptbasierte Funktionen hinzu.
Welche Datensätze werden zum Training von SAM 3 verwendet?
SAM 3 wird auf dem Segment Anything with Concepts (SA-Co) Datensatz trainiert:
Trainingsdaten:
- 5.2M Bilder mit 4M einzigartigen Substantivphrasen (SA-Co/HQ) – hochwertige menschliche Annotationen
- 52.5K Videos mit 24.8K einzigartigen Substantivphrasen (SA-Co/VIDEO)
- 1.4B synthetische Masken über 38M Substantivphrasen (SA-Co/SYN)
- 15 externe Datensätze, angereichert mit harten Negativbeispielen (SA-Co/EXT)
Benchmark-Daten:
- 214K einzigartige Konzepte über 126K Bilder/Videos
- 50× mehr Konzepte als existierende Benchmarks (z. B. hat LVIS ~4K Konzepte)
- Dreifache Annotation auf SA-Co/Gold zur Messung der menschlichen Leistungsgrenzen
Dieser massive Umfang und die Vielfalt ermöglichen die überlegene Zero-Shot-Generalisierung von SAM 3 über Open-Vocabulary-Konzepte hinweg.
Wie schneidet SAM 3 im Vergleich zu YOLO26 bei der Segmentierung ab?
SAM 3 und YOLO26 decken unterschiedliche Anwendungsfälle ab:
Vorteile von SAM 3:
- Open-Vocabulary: Segmentiert jedes Konzept per Text-Prompts ohne Training
- Zero-shot: Funktioniert sofort bei neuen Kategorien
- Interaktiv: Beispielbasierte Verfeinerung generalisiert auf ähnliche Objekte
- Konzeptbasiert: Findet automatisch alle Instanzen einer Kategorie
- Genauigkeit: 47.0 AP bei LVIS Zero-Shot-Instanzsegmentierung
Vorteile von YOLO26:
- Geschwindigkeit: Um Größenordnungen schnellere Inferenz durch NMS-freies End-to-End-Design
- Effizienz: 539× kleinere Modelle (6.4MB vs 3.45GB)
- Ressourcenschonend: Läuft auf Edge-Geräten und Mobiltelefonen
- Echtzeit: Optimiert für Produktionseinsätze
Empfehlung:
- Verwende SAM 3 für flexible Open-Vocabulary-Segmentierung, wenn du alle Instanzen von Konzepten finden musst, die durch Text oder Beispiele beschrieben werden
- Verwende YOLO26 für High-Speed-Produktionseinsätze, bei denen die Kategorien vorab bekannt sind
- Verwende SAM 2 für interaktive Einzelobjektsegmentierung mit geometrischen Prompts
Kann SAM 3 komplexe Sprachabfragen verarbeiten?
SAM 3 ist für einfache Substantivphrasen konzipiert (z. B. "roter Apfel", "Person mit Hut"). Für komplexe Abfragen, die Schlussfolgerungen erfordern, kombiniere SAM 3 mit einem MLLM als SAM 3 Agent:
Einfache Abfragen (natives SAM 3):
- "gelber Schulbus"
- "gestreifte Katze"
- "Person mit rotem Hut"
Komplexe Abfragen (SAM 3 Agent mit MLLM):
- "Menschen, die sitzen, aber keine Geschenkbox halten"
- "Der Hund, der der Kamera am nächsten ist, ohne Halsband"
- "Rote Objekte, die größer als die Hand einer Person sind"
SAM 3 Agent erreicht 76.0 gIoU bei der ReasonSeg-Validierung (vs 65.0 bisheriger Bestwert, +16.9% Verbesserung) durch die Kombination der Segmentierung von SAM 3 mit der Schlussfolgerungsfähigkeit von MLLMs.
Wie genau ist SAM 3 im Vergleich zur menschlichen Leistung?
Auf dem SA-Co/Gold-Benchmark mit dreifacher menschlicher Annotation:
- Menschliche Untergrenze: 74.2 CGF1 (konservativster Annotator)
- SAM 3-Leistung: 65.0 CGF1
- Ergebnis: 88% der geschätzten menschlichen Untergrenze
- Menschliche Obergrenze: 81.4 CGF1 (liberalster Annotator)
SAM 3 erreicht eine starke Leistung, die der menschlichen Genauigkeit bei der Segmentierung von Open-Vocabulary-Konzepten nahekommt, wobei die Lücke primär bei mehrdeutigen oder subjektiven Konzepten auftritt (z. B. "kleines Fenster", "gemütlicher Raum").