SAM 3: تجزئة أي شيء بالمفاهيم
تم دمج SAM 3 بالكامل في حزمة Ultralytics بدءًا من الإصدار 8.3.237 (PR #22897). قم بالتثبيت أو الترقية باستخدام pip install -U ultralytics للوصول إلى جميع ميزات SAM 3 بما في ذلك التجزئة القائمة على مفاهيم نصية، ونماذج الصور التوضيحية، وتتبع الفيديو.

SAM 3 (نموذج تجزئة أي شيء 3) هو نموذج أساسي أصدرته Meta لـ تجزئة المفهوم القابلة للتوجيه (PCS). بناءً على SAM 2، يقدم SAM 3 قدرة جديدة جوهرياً: اكتشاف وتجزئة وتتبع جميع مثيلات المفهوم البصري المحدد بواسطة مطالبات نصية، أو أمثلة صور، أو كليهما. على عكس إصدارات SAM السابقة التي تجزئ كائنات مفردة لكل مطالبة، يمكن لـ SAM 3 العثور على وتجزئة كل ظهور لمفهوم يظهر في أي مكان في الصور أو مقاطع الفيديو، مما يتماشى مع أهداف المفردات المفتوحة في تجزئة المثيلات الحديثة.
Watch: How to Use Meta Segment Anything 3 with Ultralytics | Text-Prompt Segmentation on Images & Videos
تم دمج SAM 3 الآن بالكامل في حزمة ultralytics، مما يوفر دعماً أصلياً لتجزئة المفاهيم باستخدام مطالبات نصية، ومطالبات أمثلة الصور، وقدرات تتبع الفيديو.
نظرة عامة
يحقق SAM 3 مكسباً في الأداء بمقدار ضعفين مقارنة بالأنظمة الحالية في تجزئة المفهوم القابلة للتوجيه مع الحفاظ على قدرات SAM 2 وتحسينها لـ التجزئة البصرية التفاعلية. يتفوق النموذج في التجزئة ذات المفردات المفتوحة، مما يسمح للمستخدمين بتحديد المفاهيم باستخدام عبارات اسمية بسيطة (مثل "حافلة مدرسية صفراء"، "قطة مخططة") أو من خلال توفير صور أمثلة للكائن المستهدف. تكمل هذه القدرات خطوط أنابيب جاهزة للإنتاج تعتمد على سير عمل مبسط لـ التنبؤ و التتبع.

ما هي تجزئة المفهوم القابلة للتوجيه (PCS)؟
تأخذ مهمة PCS مطالبة مفهوم كمدخل وتُرجع أقنعة تجزئة بهويات فريدة لـ جميع مثيلات الكائنات المطابقة. يمكن أن تكون مطالبات المفهوم:
- نص: عبارات اسمية بسيطة مثل "تفاحة حمراء" أو "شخص يرتدي قبعة"، تشبه التعلم بدون أمثلة
- أمثلة صور: مربعات إحاطة حول كائنات أمثلة (إيجابية أو سلبية) للتعميم السريع
- مدمجة: كل من النص وأمثلة الصور معاً للتحكم الدقيق
يختلف هذا عن المطالبات البصرية التقليدية (النقاط، المربعات، الأقنعة) التي تجزئ مثيل كائن محدد واحد فقط، كما اشتهرت في عائلة SAM الأصلية.
مقاييس الأداء الرئيسية
| المقياس | إنجاز SAM 3 |
|---|---|
| LVIS Zero-Shot Mask AP | 47.0 (مقابل أفضل سابق 38.5، تحسن بنسبة +22%) |
| معيار SA-Co | أفضل بضعفين من الأنظمة الحالية |
| سرعة الاستدلال (H200 GPU) | 30 مللي ثانية لكل صورة مع اكتشاف أكثر من 100 كائن |
| أداء الفيديو | شبه لحظي لـ ~5 كائنات متزامنة |
| معيار MOSEv2 VOS | 60.1 J&F (+25.5% أكثر من SAM 2.1، +17% أكثر من SOTA السابق) |
| التنقيح التفاعلي | +18.6 CGF1 تحسن بعد 3 مطالبات أمثلة |
| فجوة الأداء البشري | يحقق 88% من الحد الأدنى المقدر على SA-Co/Gold |
للحصول على سياق حول مقاييس النموذج والمفاضلات في الإنتاج، راجع رؤى تقييم النموذج و مقاييس أداء YOLO.
البنية
يتكون SAM 3 من كاشف ومتتبع يشتركان في عمود فقري بصري بترميز الإدراك (PE). يتجنب هذا التصميم المنفصل تضارب المهام مع تمكين كل من الاكتشاف على مستوى الصورة والتتبع على مستوى الفيديو، مع واجهة متوافقة مع استخدام Python و استخدام CLI في Ultralytics.
المكونات الأساسية
-
الكاشف: بنية تعتمد على DETR لاكتشاف المفهوم على مستوى الصورة
- ترميز نصي لمطالبات العبارات الاسمية
- ترميز أمثلة لمطالبات تعتمد على الصور
- ترميز دمج لتكييف ميزات الصورة مع المطالبات
- رأس حضور مبتكر يفصل التعرف ("ماذا") عن التوطين ("أين")
- رأس قناع لتوليد أقنعة تجزئة المثيلات
-
المتتبع: تجزئة فيديو قائمة على الذاكرة موروثة من SAM 2
- ترميز المطالبة، وفك تشفير القناع، وترميز الذاكرة
- بنك ذاكرة لتخزين مظهر الكائن عبر الإطارات
- إزالة الغموض الزمني المدعوم بتقنيات مثل مرشح كالمان في إعدادات متعددة الكائنات
-
رمز الحضور: رمز عالمي متعلم يتنبأ بما إذا كان المفهوم المستهدف موجوداً في الصورة/الإطار، مما يحسن الاكتشاف عن طريق فصل التعرف عن التوطين.

الابتكارات الرئيسية
- فصل التعرف والتوطين: يتنبأ رأس الحضور بحضور المفهوم عالمياً، بينما تركز استعلامات الاقتراح فقط على التوطين، مما يتجنب الأهداف المتضاربة.
- مطالبات المفهوم والبصرية الموحدة: يدعم كلاً من PCS (مطالبات المفهوم) و PVS (المطالبات البصرية مثل نقرات/مربعات SAM 2) في نموذج واحد.
- تنقيح الأمثلة التفاعلي: يمكن للمستخدمين إضافة أمثلة صور إيجابية أو سلبية لتنقيح النتائج تكرارياً، حيث يعمم النموذج على كائنات مماثلة بدلاً من مجرد تصحيح المثيلات الفردية.
- إزالة الغموض الزمني: يستخدم درجات اكتشاف قناع الفيديو وإعادة المطالبة الدورية للتعامل مع الانسدادات، والمشاهد المزدحمة، وإخفاقات التتبع في الفيديو، بما يتماشى مع أفضل ممارسات تجزئة وتتبع المثيلات.
مجموعة بيانات SA-Co
تم تدريب SAM 3 على تجزئة أي شيء بالمفاهيم (SA-Co)، وهي أكبر وأكثر مجموعات بيانات التجزئة تنوعاً من Meta حتى الآن، وتتوسع إلى ما هو أبعد من المعايير الشائعة مثل COCO و LVIS.
بيانات التدريب
| مكون مجموعة البيانات | الوصف | النطاق |
|---|---|---|
| SA-Co/HQ | بيانات صور عالية الجودة مشروحة بشرياً من محرك بيانات ذو 4 مراحل | 5.2 مليون صورة، 4 ملايين عبارة اسمية فريدة |
| SA-Co/SYN | مجموعة بيانات اصطناعية مصنفة بواسطة الذكاء الاصطناعي بدون تدخل بشري | 38 مليون عبارة اسمية، 1.4 مليار قناع |
| SA-Co/EXT | 15 مجموعة بيانات خارجية غنية بالسلبيات الصعبة | تختلف حسب المصدر |
| SA-Co/VIDEO | تعليقات توضيحية للفيديو مع تتبع زمني | 52.5 ألف مقطع فيديو، 24.8 ألف عبارة اسمية فريدة |
بيانات المعيار
يحتوي معيار تقييم SA-Co على 214 ألف عبارة فريدة عبر 126 ألف صورة ومقطع فيديو، مما يوفر أكثر من 50 ضعفاً من المفاهيم مقارنة بالمعايير الحالية. ويشمل:
- SA-Co/Gold: 7 مجالات، مشروحة ثلاثياً لقياس حدود الأداء البشري
- SA-Co/Silver: 10 مجالات، تعليق بشري واحد
- SA-Co/Bronze و SA-Co/Bio: 9 مجموعات بيانات موجودة تم تكييفها لتجزئة المفهوم
- SA-Co/VEval: معيار فيديو مع 3 مجالات (SA-V, YT-Temporal-1B, SmartGlasses)
ابتكارات محرك البيانات
يحقق محرك بيانات SAM 3 القابل للتطوير، والذي يتضمن عنصراً بشرياً ونموذجياً، ضعف إنتاجية التعليق من خلال:
- معلقو الذكاء الاصطناعي: تقترح النماذج القائمة على Llama عبارات اسمية متنوعة بما في ذلك السلبيات الصعبة
- متحققو الذكاء الاصطناعي: تتحقق LLMs متعددة الوسائط التي تم ضبطها بدقة من جودة القناع وشموليته بأداء يقارب الأداء البشري
- التنقيب النشط: يركز الجهد البشري على حالات الفشل الصعبة التي يكافح فيها الذكاء الاصطناعي
- مدفوع بالأنطولوجيا: يستفيد من أنطولوجيا كبيرة قائمة على Wikidata لتغطية المفهوم
التثبيت
SAM 3 متاح في Ultralytics الإصدار 8.3.237 وما بعده. قم بالتثبيت أو الترقية باستخدام:
pip install -U ultralyticsعلى عكس نماذج Ultralytics الأخرى، لا يتم تنزيل أوزان SAM 3 (sam3.pt) تلقائياً. يجب عليك أولاً طلب الوصول لأوزان النموذج على صفحة نموذج SAM 3 على Hugging Face ثم، بعد الموافقة، تنزيل sam3.pt من تلك الصفحة. ضع ملف sam3.pt الذي تم تنزيله في دليل العمل الخاص بك أو حدد المسار الكامل عند تحميل النموذج.
إذا حصلت على الخطأ أعلاه أثناء التنبؤ، فهذا يعني أن لديك حزمة clip غير صحيحة مثبتة. قم بتثبيت حزمة clip الصحيحة عن طريق تشغيل ما يلي:
pip uninstall clip -y
pip install git+https://github.com/ultralytics/CLIP.gitكيفية استخدام SAM 3: تعدد الاستخدامات في تجزئة المفهوم
يدعم SAM 3 كلاً من مهام تجزئة المفهوم القابلة للتوجيه (PCS) والتجزئة البصرية القابلة للتوجيه (PVS) من خلال واجهات تنبؤ مختلفة:
المهام والنماذج المدعومة
| نوع المهمة | أنواع المطالبات | المخرجات |
|---|---|---|
| تجزئة المفهوم (PCS) | نص (عبارات اسمية)، أمثلة صور | جميع المثيلات المطابقة للمفهوم |
| التجزئة البصرية (PVS) | نقاط، مربعات، أقنعة | مثيل كائن واحد (نمط SAM 2) |
| التنقيح التفاعلي | إضافة/إزالة الأمثلة أو النقرات تكرارياً | تجزئة منقحة بدقة محسنة |
أمثلة على تجزئة المفهوم
التجزئة باستخدام مطالبات نصية
ابحث عن جميع حالات مفهوم ما وقم بتجزئتها باستخدام وصف نصي. تتطلب المطالبات النصية واجهة SAM3SemanticPredictor.
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"])التجزئة باستخدام أمثلة الصور
استخدم مربعات الإحاطة (bounding boxes) كمطالبات مرئية للعثور على جميع الحالات المشابهة. يتطلب هذا أيضاً SAM3SemanticPredictor للمطابقة القائمة على المفهوم.
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]])الاستدلال القائم على الميزات لتحسين الكفاءة
استخرج ميزات الصورة مرة واحدة وأعد استخدامها في استعلامات تجزئة متعددة لتحسين الكفاءة.
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)تجزئة مفهوم الفيديو
تتبع المفاهيم عبر الفيديو باستخدام مربعات الإحاطة
اكتشف وتتبع حالات الكائنات عبر إطارات الفيديو باستخدام مطالبات مربعات الإحاطة.
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تتبع المفاهيم باستخدام المطالبات النصية
تتبع جميع حالات المفاهيم المحددة نصياً عبر إطارات الفيديو.
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,
)المطالبات المرئية (توافق SAM 2)
يحافظ SAM 3 على توافق كامل مع الإصدارات السابقة مع المطالبات المرئية الخاصة بـ SAM 2 لتجزئة كائن واحد:
تتصرف واجهة SAM الأساسية تماماً مثل SAM 2، حيث تقوم بتجزئة المنطقة المحددة فقط التي تشير إليها المطالبات المرئية (نقاط، مربعات، أو أقنعة).
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()سيؤدي استخدام SAM("sam3.pt") مع المطالبات المرئية (نقاط/مربعات/أقنعة) إلى تجزئة الكائن المحدد فقط في ذلك الموقع، تماماً كما في SAM 2. لتجزئة جميع حالات مفهوم ما، استخدم SAM3SemanticPredictor مع مطالبات نصية أو أمثلة كما هو موضح أعلاه.
معايير الأداء
تجزئة الصور
يحقق SAM 3 نتائج متطورة عبر معايير متعددة، بما في ذلك مجموعات البيانات الواقعية مثل LVIS و COCO للتجزئة:
| قياس الأداء | المقياس | SAM 3 | الأفضل سابقاً | التحسن |
|---|---|---|---|---|
| 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 (تجزئة دلالية) | mIoU | 14.7 | 9.2 (APE-D) | +59.8% |
| PascalConcept-59 | mIoU | 59.4 | 58.5 (APE-D) | +1.5% |
| Cityscapes (تجزئة دلالية) | mIoU | 65.1 | 44.2 (APE-D) | +47.3% |
استكشف خيارات مجموعات البيانات لإجراء تجارب سريعة في مجموعات بيانات Ultralytics.
أداء تجزئة الفيديو
يُظهر SAM 3 تحسينات كبيرة مقارنة بـ SAM 2 والأداء المتطور السابق عبر معايير الفيديو مثل DAVIS 2017 و YouTube-VOS:
| قياس الأداء | المقياس | SAM 3 | SAM 2.1 L | التحسن |
|---|---|---|---|---|
| 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)
يتفوق SAM 3 في التكيف مع مجالات جديدة بأقل قدر من الأمثلة، وهو أمر ذو صلة بسير عمل الذكاء الاصطناعي المرتكز على البيانات:
| قياس الأداء | 0-shot AP | 10-shot AP | الأفضل سابقاً (10-shot) |
|---|---|---|---|
| ODinW13 | 59.9 | 71.6 | 67.9 (gDino1.5-Pro) |
| RF100-VL | 14.3 | 35.7 | 33.7 (gDino-T) |
فعالية التنقيح التفاعلي
تتقارب مطالبات SAM 3 القائمة على المفهوم باستخدام الأمثلة بشكل أسرع بكثير من المطالبات المرئية:
| المطالبات المضافة | درجة CGF1 | المكسب مقابل النص فقط | المكسب مقابل خط أساس PVS |
|---|---|---|---|
| نص فقط | 46.4 | خط الأساس | خط الأساس |
| +1 نموذج مثالي | 57.6 | +11.2 | +6.7 |
| +2 نموذج مثالي | 62.2 | +15.8 | +9.7 |
| +3 نماذج مثالية | 65.0 | +18.6 | +11.2 |
| +4 نماذج مثالية | 65.7 | +19.3 | +11.5 (استقرار) |
دقة عد الكائنات
يوفر SAM 3 عداً دقيقاً من خلال تجزئة جميع الحالات، وهو مطلب شائع في عد الكائنات:
| قياس الأداء | الدقة | MAE | مقابل أفضل MLLM |
|---|---|---|---|
| CountBench | 95.6% | 0.11 | 92.4% (Gemini 2.5) |
| PixMo-Count | 87.3% | 0.22 | 88.8% (Molmo-72B) |
مقارنة بين SAM 3 و SAM 2 و YOLO
هنا نقارن قدرات SAM 3 مع نماذج SAM 2 و YOLO26:
| القدرة | SAM 3 | SAM 2 | YOLO26n-seg |
|---|---|---|---|
| تجزئة المفهوم | ✅ جميع الحالات من النص/النماذج المثالية | ❌ غير مدعوم | ❌ غير مدعوم |
| التجزئة المرئية | ✅ حالة واحدة (متوافق مع SAM 2) | ✅ حالة واحدة | ✅ جميع الحالات |
| قدرة Zero-shot | ✅ مفردات مفتوحة | ✅ مطالبات هندسية | ❌ مجموعة مغلقة |
| التنقيح التفاعلي | ✅ نماذج مثالية + نقرات | ✅ نقرات فقط | ❌ غير مدعوم |
| تتبع الفيديو | ✅ كائنات متعددة مع هويات | ✅ كائنات متعددة | ✅ كائنات متعددة |
| LVIS Mask AP (بدون تدريب مسبق) | 47.0 | غير متاح | غير متاح |
| MOSEv2 J&F | 60.1 | 47.9 | غير متاح |
| السرعة (GPU، مللي ثانية/صورة) | 2921 | 857 | 8.4 |
| حجم النموذج | 3.45 غيغابايت | 162 ميغابايت (أساسي) | 6.4 ميغابايت |
تم قياس السرعة على NVIDIA RTX PRO 6000 باستخدام torch==2.9.1 و ultralytics==8.4.19.
النتائج الرئيسية:
- SAM 3: الأفضل لتجزئة المفاهيم ذات المفردات المفتوحة، للعثور على جميع حالات مفهوم ما باستخدام النص أو مطالبات النماذج المثالية
- SAM 2: الأفضل للتجزئة التفاعلية لكائن واحد في الصور ومقاطع الفيديو باستخدام مطالبات هندسية
- YOLO26: الأفضل للتجزئة عالية السرعة في الوقت الفعلي مع استنتاج شامل بدون NMS، قابل للتصدير إلى العديد من التنسيقات للنشر على وحدات GPU و CPU وأجهزة الحافة
مقارنة SAM مقابل YOLO
مقارنة SAM 3 و SAM 2 و SAM و MobileSAM و FastSAM مع نماذج تجزئة Ultralytics YOLO (YOLOv8 و YOLO11 و YOLO26) من حيث الحجم والمعلمات وسرعة الاستنتاج على GPU:
| النموذج | الحجم (MB) | المعلمات (M) | السرعة (GPU) (مللي ثانية/صورة) |
|---|---|---|---|
| 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 مع backbone YOLOv8 | 23.7 | 11.8 | 55.9 |
| Ultralytics YOLOv8n-seg | 6.7 (أصغر بـ 515 مرة) | 3.4 (أقل بـ 139.1 مرة) | 17.4 (أسرع بـ 167 مرة) |
| Ultralytics YOLO11n-seg | 5.9 (أصغر بـ 585 مرة) | 2.9 (أقل بـ 163.1 مرة) | 12.6 (أسرع بـ 231 مرة) |
| Ultralytics YOLO26n-seg | 6.4 (أصغر بـ 539 مرة) | 2.7 (أقل بـ 175.2 مرة) | 8.4 (أسرع بـ 347 مرة) |
توضح هذه المقارنة الاختلافات الجوهرية في أحجام وسرعات النماذج بين متغيرات SAM ونماذج تقطيع YOLO. بينما يوفر SAM قدرات تقطيع تلقائية فريدة، فإن نماذج YOLO، وخاصة YOLOv8n-seg وYOLO11n-seg وYOLO26n-seg، أصغر بكثير وأسرع وأكثر كفاءة من الناحية الحسابية.
تم إجراء الاختبارات على NVIDIA RTX PRO 6000 مع 96 غيغابايت من VRAM باستخدام torch==2.9.1 و ultralytics==8.4.19. لإعادة إنتاج هذا الاختبار:
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)مقاييس التقييم
يقدم SAM 3 مقاييس جديدة مصممة لمهمة PCS، مكملة للمقاييس المألوفة مثل درجة F1، والدقة، والاسترجاع.
F1 المعتمد على التصنيف (CGF1)
المقياس الأساسي الذي يجمع بين التوطين والتصنيف:
CGF1 = 100 × pmF1 × IL_MCC
حيث:
- pmF1 (Macro F1 الإيجابي): يقيس جودة التوطين على الأمثلة الإيجابية
- IL_MCC (معامل ارتباط ماثيوز على مستوى الصورة): يقيس دقة التصنيف الثنائي ("هل المفهوم موجود؟")
لماذا هذه المقاييس؟
لا تأخذ مقاييس AP التقليدية في الاعتبار المعايرة، مما يجعل النماذج صعبة الاستخدام في الواقع. من خلال تقييم التوقعات التي تزيد ثقتها عن 0.5 فقط، تفرض مقاييس SAM 3 معايرة جيدة وتحاكي أنماط الاستخدام الواقعية في دورات التنبؤ والتتبع التفاعلية.
أهم عمليات الاستئصال والرؤى
تأثير رأس الوجود
يعمل رأس الحضور (presence head) على فصل التعرف عن التحديد الموضعي، مما يوفر تحسينات كبيرة:
| الإعدادات | CGF1 | IL_MCC | pmF1 |
|---|---|---|---|
| بدون الحضور | 57.6 | 0.77 | 74.7 |
| مع الحضور | 63.3 | 0.82 | 77.1 |
يوفر رأس الحضور زيادة +5.7 CGF1 (+9.9%)، مما يحسن بشكل أساسي من قدرة التعرف (IL_MCC +6.5%).
تأثير الأمثلة السلبية الصعبة
| أمثلة سلبية صعبة/صورة | 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 |
تعد الأمثلة السلبية الصعبة حاسمة للتعرف على المفردات المفتوحة، حيث تحسن IL_MCC بنسبة 54.5% (0.44 ← 0.68).
توسيع نطاق بيانات التدريب
| مصادر البيانات | CGF1 | IL_MCC | pmF1 |
|---|---|---|---|
| خارجية فقط | 30.9 | 0.46 | 66.3 |
| خارجية + اصطناعية | 39.7 | 0.57 | 70.6 |
| خارجية + HQ | 51.8 | 0.71 | 73.2 |
| الثلاثة جميعاً | 54.3 | 0.74 | 73.5 |
توفر التعليقات التوضيحية البشرية عالية الجودة مكاسب كبيرة مقارنة بالبيانات الاصطناعية أو الخارجية وحدها. للحصول على خلفية عن ممارسات جودة البيانات، راجع جمع البيانات والتعليقات التوضيحية.
التطبيقات
تمكّن قدرة تجزئة المفاهيم في SAM 3 من استخدامات جديدة:
- الإشراف على المحتوى: العثور على جميع حالات أنواع معينة من المحتوى عبر مكتبات الوسائط
- التجارة الإلكترونية: تجزئة جميع المنتجات من نوع معين في صور الكتالوج، مع دعم التعليق التوضيحي التلقائي
- التصوير الطبي: تحديد جميع حالات أنواع معينة من الأنسجة أو التشوهات
- الأنظمة الذاتية: تتبع جميع حالات إشارات المرور أو المشاة أو المركبات حسب الفئة
- تحليلات الفيديو: عد وتتبع جميع الأشخاص الذين يرتدون ملابس معينة أو يؤدون أفعالاً محددة
- تعليق توضيحي لمجموعة البيانات: التعليق التوضيحي السريع لجميع حالات فئات الكائنات النادرة
- البحث العلمي: تحديد وتحليل جميع العينات التي تطابق معايير محددة
وكيل SAM 3: الاستدلال اللغوي الموسع
يمكن دمج SAM 3 مع النماذج اللغوية الكبيرة متعددة الوسائط (MLLMs) للتعامل مع الاستعلامات المعقدة التي تتطلب الاستدلال، على غرار أنظمة المفردات المفتوحة مثل OWLv2 و T-Rex.
الأداء في مهام الاستدلال
| قياس الأداء | المقياس | وكيل SAM 3 (Gemini 2.5 Pro) | الأفضل سابقاً |
|---|---|---|---|
| ReasonSeg (التحقق) | gIoU | 76.0 | 65.0 (SoTA) |
| ReasonSeg (اختبار) | gIoU | 73.8 | 61.3 (SoTA) |
| OmniLabel (التحقق) | AP | 46.7 | 36.5 (REAL) |
| RefCOCO+ | Acc | 91.2 | 89.3 (LISA) |
أمثلة على استعلامات معقدة
يمكن لوكيل SAM 3 التعامل مع الاستعلامات التي تتطلب استدلالاً:
- "أشخاص يجلسون ولكن لا يحملون صندوق هدايا في أيديهم"
- "الكلب الأقرب إلى الكاميرا الذي لا يرتدي طوقاً"
- "أشياء حمراء أكبر من يد الشخص"
يقترح MLLM استعلامات عبارات اسمية بسيطة لـ SAM 3، ويحلل الأقنعة التي تم إرجاعها، ويكرر العملية حتى الوصول للنتيجة المطلوبة.
القيود
على الرغم من أن SAM 3 يمثل تقدماً كبيراً، إلا أن له قيوداً معينة:
- تعقيد العبارات: الأنسب للعبارات الاسمية البسيطة؛ قد تتطلب تعبيرات الإشارة الطويلة أو الاستدلال المعقد تكاملاً مع MLLM
- التعامل مع الغموض: تظل بعض المفاهيم غامضة بطبيعتها (مثل "نافذة صغيرة"، "غرفة مريحة")
- المتطلبات الحسابية: أكبر وأبطأ من نماذج الكشف المتخصصة مثل YOLO
- نطاق المفردات: يركز على المفاهيم المرئية الذرية؛ الاستدلال التركيبي محدود بدون مساعدة MLLM
- المفاهيم النادرة: قد ينخفض الأداء على المفاهيم النادرة جداً أو الدقيقة التي لا يتم تمثيلها بشكل جيد في بيانات التدريب
الاقتباس
@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}
}الأسئلة الشائعة
متى تم إصدار SAM 3؟
تم إصدار SAM 3 بواسطة Meta في 20 نوفمبر 2025 وهو مدمج بالكامل في Ultralytics بدءاً من الإصدار 8.3.237 (PR #22897). يتوفر الدعم الكامل لـ وضع التنبؤ و وضع التتبع.
هل SAM 3 مدمج في Ultralytics؟
نعم! تم دمج SAM 3 بالكامل في حزمة Python الخاصة بـ Ultralytics، بما في ذلك تجزئة المفاهيم، ومطالبات بصرية على طراز SAM 2، وتتبع الفيديو متعدد الكائنات. يدعم SAM 3 أيضاً ميزة التعليق الذكي على منصة Ultralytics، حيث يمكنك التعليق على الصور ببضع نقرات فقط.
ما هي تجزئة المفاهيم القابلة للمطالبة (PCS)؟
PCS هي مهمة جديدة تم تقديمها في SAM 3 تقوم بتجزئة جميع حالات مفهوم بصري في صورة أو فيديو. على عكس التجزئة التقليدية التي تستهدف مثيل كائن معين، تجد PCS كل ظهور لفئة ما. على سبيل المثال:
- مطالبة نصية: "حافلة مدرسية صفراء" ← تجزئة جميع الحافلات المدرسية الصفراء في المشهد
- مثال صورة: مربع حول كلب واحد ← تجزئة جميع الكلاب في الصورة
- مدمج: "قطة مخططة" + مربع مثال ← تجزئة جميع القطط المخططة التي تطابق المثال
راجع الخلفية ذات الصلة حول اكتشاف الكائنات و تجزئة المثيلات.
كيف يختلف SAM 3 عن SAM 2؟
| الميزة | SAM 2 | SAM 3 |
|---|---|---|
| المهمة | كائن واحد لكل مطالبة | جميع حالات مفهوم ما |
| أنواع المطالبات | نقاط، مربعات، أقنعة | عبارات نصية، أمثلة صورية |
| قدرة الكشف | يتطلب كاشفاً خارجياً | كاشف مدمج مفتوح المفردات |
| التعرف | قائم على الهندسة فقط | التعرف النصي والبصري |
| البنية | متعقب فقط | كاشف + متعقب مع رأس وجود |
| أداء التعميم الصفري (Zero-Shot) | غير متاح (يتطلب توجيهات بصرية) | 47.0 AP على LVIS، أفضل بمرتين على SA-Co |
| التنقيح التفاعلي | نقرات فقط | نقرات + تعميم الأمثلة |
تحافظ SAM 3 على التوافق مع SAM 2 عبر التوجيه البصري مع إضافة قدرات قائمة على المفاهيم.
ما هي مجموعات البيانات المستخدمة لتدريب SAM 3؟
تم تدريب SAM 3 على مجموعة بيانات Segment Anything with Concepts (SA-Co):
بيانات التدريب:
- 5.2 مليون صورة مع 4 مليون عبارة اسمية فريدة (SA-Co/HQ) - تعليقات بشرية عالية الجودة
- 52.5 ألف مقطع فيديو مع 24.8 ألف عبارة اسمية فريدة (SA-Co/VIDEO)
- 1.4 مليار قناع اصطناعي عبر 38 مليون عبارة اسمية (SA-Co/SYN)
- 15 مجموعة بيانات خارجية مثرية بأمثلة سلبية صعبة (SA-Co/EXT)
بيانات المعيار (Benchmark):
- 214 ألف مفهوم فريد عبر 126 ألف صورة/فيديو
- 50 ضعف عدد المفاهيم مقارنة بالمعايير الحالية (على سبيل المثال، LVIS لديها حوالي 4 آلاف مفهوم)
- تعليق ثلاثي على SA-Co/Gold لقياس حدود الأداء البشري
هذا النطاق والتنوع الهائل يتيح لـ SAM 3 تعميماً فائقاً في التعميم الصفري عبر مفاهيم مفتوحة المفردات.
كيف تقارن SAM 3 مع YOLO26 من حيث التجزئة؟
تخدم SAM 3 و YOLO26 حالات استخدام مختلفة:
مزايا SAM 3:
- مفتوحة المفردات: تجزئ أي مفهوم عبر توجيهات نصية دون تدريب
- تعميم صفري: تعمل على فئات جديدة فوراً
- تفاعلية: التحسين القائم على الأمثلة يعمم على كائنات مشابهة
- قائمة على المفاهيم: تجد تلقائياً جميع مثيلات فئة ما
- الدقة: 47.0 AP على تجزئة المثيلات بالتعميم الصفري LVIS
مزايا YOLO26:
- السرعة: استنتاج أسرع بأوامر من الحجم مع تصميم شامل (End-to-End) خالٍ من NMS
- الكفاءة: نماذج أصغر بـ 539 ضعفاً (6.4 ميجابايت مقابل 3.45 جيجابايت)
- صديقة للموارد: تعمل على أجهزة الحافة والهواتف المحمولة
- الوقت الفعلي: محسنة لنشر الإنتاج
التوصية:
- استخدم SAM 3 للتجزئة المرنة مفتوحة المفردات حيث تحتاج إلى العثور على جميع مثيلات المفاهيم الموصوفة بالنصوص أو الأمثلة
- استخدم YOLO26 لنشر الإنتاج عالي السرعة حيث تكون الفئات معروفة مسبقاً
- استخدم SAM 2 للتجزئة التفاعلية لكائن واحد مع توجيهات هندسية
هل يمكن لـ SAM 3 التعامل مع استعلامات لغوية معقدة؟
صممت SAM 3 للعبارات الاسمية البسيطة (مثل "تفاحة حمراء"، "شخص يرتدي قبعة"). للاستعلامات المعقدة التي تتطلب استنتاجاً، ادمج SAM 3 مع نموذج لغوي بصري متعدد الوسائط (MLLM) كـ SAM 3 Agent:
استعلامات بسيطة (SAM 3 الأصلية):
- "حافلة مدرسية صفراء"
- "قطة مخططة"
- "شخص يرتدي قبعة حمراء"
استعلامات معقدة (SAM 3 Agent مع MLLM):
- "أشخاص يجلسون ولكن لا يحملون صندوق هدايا"
- "الكلب الأقرب إلى الكاميرا بدون طوق"
- "أشياء حمراء أكبر من يد الشخص"
يحقق SAM 3 Agent 76.0 gIoU في تقييم ReasonSeg (مقابل 65.0 كأفضل أداء سابق، تحسن بنسبة +16.9%) من خلال الجمع بين تجزئة SAM 3 وقدرات الاستنتاج لدى MLLM.
ما مدى دقة SAM 3 مقارنة بالأداء البشري؟
على معيار SA-Co/Gold مع تعليق بشري ثلاثي:
- الحد الأدنى البشري: 74.2 CGF1 (أكثر المعلقين تحفظاً)
- أداء SAM 3: 65.0 CGF1
- الإنجاز: 88% من الحد الأدنى البشري المقدر
- الحد الأعلى البشري: 81.4 CGF1 (أكثر المعلقين تحرراً)
تحقق SAM 3 أداءً قوياً يقترب من دقة المستوى البشري في تجزئة المفاهيم مفتوحة المفردات، مع وجود فجوة في الغالب في المفاهيم الغامضة أو الذاتية (مثل "نافذة صغيرة"، "غرفة مريحة").