SAM 3: Segment Anything with Concepts

Jetzt verfügbar in Ultralytics

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.

Übersicht der prompt-basierten Konzept-Segmentierung mit SAM 3

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.

Beispiele für SAM 3 Text-Prompt-Segmentierung

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

MetrikSAM 3-Ergebnis
LVIS Zero-Shot Mask AP47.0 (gegenüber bisherigem Bestwert 38.5, +22 % Verbesserung)
SA-Co Benchmark2x besser als bestehende Systeme
Inferenzgeschwindigkeit (H200 GPU)30 ms pro Bild mit über 100 erkannten Objekten
Video-LeistungNahe Echtzeit für ~5 gleichzeitige Objekte
MOSEv2 VOS Benchmark60.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 LeistungErreicht 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.

SAM 3 Modellarchitektur-Diagramm

Wichtige Innovationen

  1. 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.
  2. 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.
  3. 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.
  4. 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-KomponenteBeschreibungSkala
SA-Co/HQHochwertige, von Menschen annotierte Bilddaten aus einer 4-Phasen-Daten-Engine5,2 Mio. Bilder, 4 Mio. eindeutige Substantivphrasen
SA-Co/SYNSynthetischer Datensatz, annotiert von KI ohne menschliches Eingreifen38 Mio. Substantivphrasen, 1,4 Mrd. Masken
SA-Co/EXT15 externe Datensätze, angereichert mit schwerwiegenden NegativbeispielenVariiert je nach Quelle
SA-Co/VIDEOVideo-Annotationen mit zeitlichem Tracking52,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:

  1. KI-Annotatoren: Llama-basierte Modelle schlagen vielfältige Substantivphrasen vor, einschließlich schwerer Negativbeispiele
  2. KI-Verifizierer: Feinabgestimmte multimodale LLMs verifizieren die Maskenqualität und Vollständigkeit bei nahezu menschlicher Leistung
  3. Aktives Mining: Konzentriert menschlichen Aufwand auf herausfordernde Fehlerfälle, bei denen die KI Schwierigkeiten hat
  4. 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 ultralytics
SAM 3 Modellgewichte erforderlich

Im 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.

`TypeError: 'SimpleTokenizer' object is not callable`

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.git

So 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

AufgabentypPrompt-TypenAusgabe
Konzeptsegmentierung (PCS)Text (Substantivphrasen), Bild-ExemplareAlle Instanzen, die dem Konzept entsprechen
Visuelle Segmentierung (PVS)Punkte, Boxen, MaskenEinzelne Objektinstanz (SAM 2-Stil)
Interaktive VerfeinerungExemplare oder Klicks iterativ hinzufügen/entfernenVerfeinerte Segmentierung mit verbesserter Genauigkeit

Beispiele zur Konzeptsegmentierung

Segmentierung mit Text-Prompts

Textbasierte Konzeptsegmentierung

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

Segmentierung auf Basis von 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

Wiederverwendung von Bildmerkmalen für mehrere Abfragen

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

Videoverfolgung mit visuellen Prompts

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 masks

Konzepte mit Text-Prompts verfolgen

Videoverfolgung mit semantischen Abfragen

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:

Visuelle Prompts im SAM 2-Stil

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()
Visuelle Prompts vs. Konzeptsegmentierung

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:

BenchmarkMetrikSAM 3Bisheriges BestesVerbesserung
LVIS (Zero-Shot)Mask AP47.038,5+22.1%
SA-Co/GoldCGF165.034.3 (OWLv2)+89.5%
COCO (Zero-Shot)Box AP53.552.2 (T-Rex2)+2.5%
ADE-847 (semantische Seg.)mIoU14.79.2 (APE-D)+59.8%
PascalConcept-59mIoU59.458.5 (APE-D)+1.5%
Cityscapes (semantische Seg.)mIoU65.144.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:

BenchmarkMetrikSAM 3SAM 2.1 LVerbesserung
MOSEv2J&F60.147.9+25.5%
DAVIS 2017J&F92.090.7+1.4%
LVOSv2J&F88.279.6+10.8%
SA-VJ&F84.678.4+7.9%
YTVOS19J&F89.689.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:

Benchmark0-Shot AP10-Shot APBisheriges Bestes (10-Shot)
ODinW1359.971.667.9 (gDino1.5-Pro)
RF100-VL14.335.733.7 (gDino-T)

Effektivität interaktiver Verfeinerung

Das konzeptbasierte Prompting von SAM 3 mit Beispielen konvergiert deutlich schneller als visuelles Prompting:

Hinzugefügte PromptsCGF1-ScoreGewinn gegenüber nur TextGewinn gegenüber PVS-Baseline
Nur Text46.4BaselineBaseline
+1 Exemplar57.6+11.2+6.7
+2 Exemplare62.2+15.8+9.7
+3 Exemplare65.0+18.6+11.2
+4 Exemplare65.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:

BenchmarkGenauigkeitMAEvs. bestes MLLM
CountBench95,6 %0,1192,4 % (Gemini 2.5)
PixMo-Count87,3 %0,2288,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ähigkeitSAM 3SAM 2YOLO26n-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.0N/AN/A
MOSEv2 J&F60.147.9N/A
Geschwindigkeit (GPU, ms/im)29218578,4
Modellgröße3,45 GB162 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:

ModellGröße
(MB)
Parameter
(M)
Geschwindigkeit (GPU)
(ms/im)
Meta SAM-b37593.71306
Meta SAM2-b16280,8857
Meta SAM2-t78.138.9668
Meta SAM33450473,62921
MobileSAM40.710.1605
FastSAM-s mit YOLOv8 Backbone23,711.855,9
Ultralytics YOLOv8n-seg6,7 (515-mal kleiner)3,4 (139,1-mal weniger)17,4 (167-mal schneller)
Ultralytics YOLO11n-seg6,4 (585-mal kleiner)2,9 (163,1-mal weniger)12,6 (231-mal schneller)
Ultralytics YOLO26n-seg6,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:

Beispiel
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:

KonfigurationCGF1IL_MCCpmF1
Ohne Presence57.60.7774.7
Mit Presence63.30.8277.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/BildCGF1IL_MCCpmF1
031.80.4470.2
544.80.6271.9
3049.20.6872.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

DatenquellenCGF1IL_MCCpmF1
Nur extern30.90.4666.3
Extern + Synthetisch39.70.5770.6
Extern + HQ51.80.7173.2
Alle drei54.30.7473.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

BenchmarkMetrikSAM 3 Agent (Gemini 2.5 Pro)Bisheriges Bestes
ReasonSeg (Validierung)gIoU76.065.0 (SoTA)
ReasonSeg (Test)gIoU73.861.3 (SoTA)
OmniLabel (Validierung)AP46.736.5 (REAL)
RefCOCO+Acc91.289.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

Zitat
@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?

FunktionSAM 2SAM 3
AufgabeEinzelnes Objekt pro PromptAlle Instanzen eines Konzepts
Prompt-TypenPunkte, Boxen, MaskenTextphrasen, Bildbeispiele
ErkennungsfähigkeitErfordert externen DetektorIntegrierter Open-Vocabulary-Detektor
ErkennungNur geometriebasiertText- und visuelle Erkennung
ArchitekturNur TrackerDetektor + Tracker mit Präsenz-Head
Zero-Shot-LeistungNicht zutreffend (erfordert visuelle Prompts)47.0 AP auf LVIS, 2× besser auf SA-Co
Interaktive VerfeinerungNur KlicksKlicks + 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").

Kommentare