Anchor Boxes
تعلم كيف تعمل صناديق الارتكاز (Anchor Boxes) كقوالب مرجعية لاكتشاف الكائنات. اكتشف كيف تحسن الدقة وكيف تستخدم نماذج مثل Ultralytics YOLO26 التصميمات الخالية من الارتكاز.
صناديق الارتساء هي مستطيلات مرجعية محددة مسبقًا ذات نسب عرض إلى ارتفاع ومقاييس معينة يتم وضعها عبر الصورة لمساعدة نماذج اكتشاف الكائنات في تحديد مواقع الكائنات وتصنيفها. بدلاً من مطالبة الشبكة العصبية بالتنبؤ بالحجم والموقع الدقيقين للكائن من الصفر — وهو أمر قد يكون غير مستقر بسبب التنوع الهائل في أشكال الكائنات — يستخدم النموذج هذه القوالب الثابتة كنقطة بداية. من خلال التعلم للتنبؤ بمقدار التعديل، أو "الانحدار"، لهذه الصناديق الأولية لتناسب الحقيقة الأرضية (ground truth)، يمكن للنظام تحقيق تقارب أسرع ودقة أعلى. لقد غيرت هذه التقنية بشكل أساسي مجال الرؤية الحاسوبية (CV) من خلال تبسيط مهمة التوطين المعقدة إلى مشكلة تحسين أكثر قابلية للإدارة.
Link to this sectionآلية عمل صناديق الارتساء#
في أجهزة الكشف القائمة على الارتساء التقليدية، يتم تقسيم الصورة المدخلة إلى شبكة من الخلايا. عند كل موقع خلية، يقوم النموذج بإنشاء صناديق ارتساء متعددة ذات هندسات مختلفة. على سبيل المثال، لاكتشاف مشاة طويل وسيارة عريضة في نفس الوقت، قد يقترح النموذج صندوقاً طويلاً وضيقاً وصندوقاً قصيراً وعريضاً عند نفس النقطة المركزية.
أثناء تدريب النموذج، تتم مطابقة هذه الصناديق مع الكائنات الفعلية باستخدام مقياس يسمى التقاطع فوق الاتحاد (IoU). يتم تعيين الصناديق التي تتداخل بشكل كبير مع كائن محدد كعينات "إيجابية". ثم تتعلم الشبكة مهمتين متوازيتين:
-
التصنيف: تعيين درجة احتمالية للصندوق، مما يشير إلى احتمالية احتوائه على فئة معينة (على سبيل المثال، "كلب" أو "دراجة"). يستخدم هذا أهداف التعلم الخاضع للإشراف القياسية مثل دالة خسارة الإنتروبيا المتبادلة (cross-entropy loss).
-
انحدار الصندوق (Box Regression): حساب قيم الإزاحة الدقيقة (تحولات الإحداثيات وعوامل القياس) اللازمة لتحويل صندوق الارتساء العام إلى صندوق إحاطة (bounding box) محكم.
يسمح هذا النهج للنموذج بالتعامل مع كائنات متعددة بأحجام مختلفة تقع بالقرب من بعضها البعض، حيث يمكن تعيين كل كائن للصندوق الذي يطابق شكله بشكل أفضل.
Link to this sectionتطبيقات العالم الحقيقي#
على الرغم من أن البنى الأحدث تتجه نحو تصميمات خالية من الارتساء (anchor-free)، تظل صناديق الارتساء حيوية في العديد من أنظمة الإنتاج الراسخة حيث تكون خصائص الكائنات قابلة للتنبؤ.
- إدارة التجزئة والمخزون: في حلول التجزئة المعتمدة على الذكاء الاصطناعي، تراقب الكاميرات مخزون الأرفف. ونظراً لأن منتجات مثل صناديق الحبوب أو علب الصودا لها أبعاد قياسية، يمكن ضبط صناديق الارتساء لتناسب نسب العرض إلى الارتفاع المحددة هذه. تساعد هذه المعرفة المسبقة النموذج في الحفاظ على استدعاء (recall) عالٍ حتى في البيئات المزدحمة.
- القيادة الذاتية: تعتمد مجموعات الإدراك في المركبات ذاتية القيادة على اكتشاف المشاة والمركبات وإشارات المرور. ولأن السيارة التي تُرى من مسافة بعيدة لها شكل ثابت نسبياً مقارنة بالطريق، فإن استخدام صناديق ارتساء مصممة لهذه الأشكال يضمن تتبعاً للكائنات (object tracking) قوياً وتقديراً دقيقاً للمسافة.
Link to this sectionالأنظمة القائمة على الارتساء مقابل الخالية من الارتساء#
من المهم التمييز بين الطرق التقليدية القائمة على الارتساء وأجهزة الكشف الخالية من الارتساء الحديثة.
- القائمة على الارتساء: تستخدم نماذج مثل Faster R-CNN الأصلية أو إصدارات YOLO المبكرة (مثل YOLOv5) هذه القوالب المحددة مسبقاً. إنها قوية ولكنها تتطلب غالباً ضبطاً يدوياً للمعاملات الفائقة (أحجام/نسب الصناديق) أو خوارزميات التجميع مثل تجميع k-means للتكيف مع مجموعات البيانات الجديدة.
- الخالية من الارتساء: غالباً ما تستخدم النماذج المتقدمة، بما في ذلك YOLO26، نهجاً خالية من الارتساء أو نهجاً من طرف إلى طرف (end-to-end). تتنبأ هذه الشبكات بمراكز الكائنات أو النقاط الرئيسية مباشرة، مما يزيل الحاجة إلى تكوين الارتساء اليدوي. هذا يبسط البنية ويسرع الاستدلال (inference) من خلال القضاء على الحسابات المطلوبة لمعالجة آلاف صناديق الخلفية الفارغة.
Link to this sectionمثال: الوصول إلى معلومات صناديق الارتساء#
بينما تقوم واجهات برمجة التطبيقات الحديثة عالية المستوى مثل منصة Ultralytics بتجريد هذه التفاصيل أثناء التدريب، فإن فهم صناديق الارتساء مفيد عند العمل مع بنى نماذج أقدم أو تحليل ملفات تكوين النموذج، حيث يتم عادةً تعريف إعدادات الارتساء (إن وجدت).
from ultralytics import YOLO
# Load a pre-trained YOLO model (YOLO26 is anchor-free, but legacy configs act similarly)
model = YOLO("yolo26n.pt")
# Inspect the model's stride, which relates to grid cell sizing in detection
print(f"Model strides: {model.model.stride}")
# For older anchor-based models, anchors might be stored in the model's attributes
# Modern anchor-free models calculate targets dynamically without fixed boxes
if hasattr(model.model, "anchors"):
print(f"Anchors: {model.model.anchors}")
else:
print("This model architecture is anchor-free.")Link to this sectionالتحديات والاعتبارات#
على الرغم من فعاليتها، تقدم صناديق الارتساء تعقيداً. فالعدد الهائل من صناديق الارتساء التي يتم إنشاؤها - غالباً عشرات الآلاف لكل صورة - يخلق مشكلة عدم توازن الفئات، حيث تغطي معظم الصناديق الخلفية فقط. تُستخدم تقنيات مثل Focal Loss للتخفيف من هذا من خلال تقليل وزن أمثلة الخلفية السهلة. بالإضافة إلى ذلك، يتطلب المخرج النهائي عادةً قمع غير الحد الأقصى (NMS) لتصفية الصناديق المتداخلة الزائدة، مما يضمن بقاء الاكتشاف الأكثر ثقة فقط لكل كائن.






