مربع الإحاطة
تعرّف على كيفية تمكين المربعات المحيطة لأنظمة الكشف عن الأجسام والذكاء الاصطناعي والتعلم الآلي. اكتشف دورها في تطبيقات رؤية الحاسوب!
المربع المحيط هو منطقة مستطيلة محددة بالإحداثيات تعزل ميزة أو كائنًا معينًا داخل إطار
صورة أو إطار فيديو. في مجال
الرؤية الحاسوبية، يعمل هذا الشرح كوحدة أساسية
الوحدة الأساسية لتوطين الكيانات المميزة، مما يسمح
لأنظمة الذكاء الاصطناعي
"رؤية" مكان وجود عنصر ما بدلاً من مجرد معرفة وجوده في المشهد. يُستخدم بشكل أساسي في
مهام الكشف عن الأشياء، يحدد المربع المحيط
المدى المكاني لهدف ما - مثل سيارة أو شخص أو منتج - وعادةً ما يرتبط عادةً بتسمية فئة ودرجة ثقة
ودرجة ثقة تشير إلى يقين النموذج.
أنظمة الإحداثيات والتنسيقات
لتمكين نماذج التعلم الآلي (ML) من
بمعالجة البيانات المرئية رياضيًا، يتم تمثيل المربعات المحدودة باستخدام أنظمة إحداثيات محددة. يعتمد اختيار
التنسيق غالبًا ما يعتمد على مجموعات البيانات المستخدمة للتدريب أو
أو المتطلبات المحددة لبنية الكشف.
-
XYXY (إحداثيات الزاوية): يستخدم هذا التنسيق قيم البكسل المطلقة للركن العلوي الأيسر ($x1,
y1$) والركن السفلي الأيمن ($x2، y2$). إنه بديهي للغاية ويستخدم بشكل متكرر في مكتبات التصور
مثل Matplotlib لرسم المستطيلات على الصور.
-
XYWH (حجم الوسط): شاع في مجموعة بيانات
مجموعة بياناتCOCO يحدد هذا التمثيل النقطة المركزية للكائن
النقطة المركزية للكائن ($x_center، y_center$) متبوعةً بعرض المربع وارتفاعه. هذا التنسيق
ضروري لحساب دوال الخسارة أثناء
تدريب النموذج.
-
الإحداثيات المعيارية: لضمان
قابلية التوسع عبر دقة الصور المختلفة,
غالبًا ما يتم تطبيع الإحداثيات إلى نطاق بين 0 و1 بالنسبة لأبعاد الصورة. هذا يسمح للنماذج
بالتعميم بشكل أفضل عند معالجة مدخلات ذات أحجام مختلفة.
أنواع الصناديق المحيطة
في حين أن الصندوق المستطيل القياسي يناسب العديد من السيناريوهات، إلا أن البيئات الواقعية المعقدة تتطلب أحيانًا أشكالًا أكثر
أكثر تخصصًا.
-
الصندوق المحيط المحاذي للمحور (AABB): هذه هي المربعات القياسية التي تكون فيها الحواف موازية لمحاور الصورة
محاور الصورة (رأسيًا وأفقيًا). وهي فعالة من الناحية الحسابية وهي المخرجات الافتراضية للنماذج عالية السرعة
عالية السرعة مثل YOLO11.
-
الصندوق المحيط الموجه (OBB): عندما تكون الأجسام مستديرة أو رفيعة أو متراصة مع بعضها البعض - مثل
سفن في ميناء أو نص في مستند - قد يتضمن مربع قياسي الكثير من الضوضاء في الخلفية. يتضمن
يتضمن الصندوق المحدد الموجه معلمة زاوية إضافية,
مما يسمح للمستطيل بالتدوير وملاءمة الكائن بإحكام. هذا أمر حيوي للمهام الدقيقة مثل
تحليل صور الأقمار الصناعية.
تطبيقات واقعية
تعمل المربعات المحدودة بمثابة اللبنات الأساسية لأنظمة اتخاذ القرار المتطورة في مختلف الصناعات.
-
المركبات ذاتية القيادة: تعتمد تقنية القيادة الذاتية بشكل كبير على المربعات المحدودة للحفاظ على
الوعي المكاني. من خلال رسم
المربعات حول المشاة وإشارات المرور والسيارات الأخرى، يقدّر النظام المسافات والمسارات لمنع
الاصطدامات. يمكنك استكشاف هذا الأمر بشكل أكبر في نظرتنا العامة عن
الذكاء الاصطناعي في السيارات.
-
البيع بالتجزئة وإدارة المخزون: تستخدم المتاجر الذكية المربعات المحدودة track المنتجات على الرفوف.
يمكن للأنظمة تحديد العناصر غير المتوفرة في المخزون أو أتمتة عمليات الدفع عن طريق تحديد موقع المنتجات في عربة التسوق. هذا يحسن
تحسين الكفاءة وهو عنصر أساسي في حلول
الذكاء الاصطناعي في حلول البيع بالتجزئة.
الصندوق المحيط مقابل التجزئة
من المهم التمييز بين المربعات المحدودة و
عن تجزئة الصورة، حيث أنهما يحلان
مستويات مختلفة من التفصيل.
-
الصندوق المحيط: يوفر تحديد موقع خشن. يخبرك تقريبًا بمكان الكائن عن طريق
بحصره في صندوق. إنه أسرع في التعليق التوضيحي وأرخص من الناحية الحسابية ل
للاستدلال في الوقت الحقيقي.
-
تجزئة المثيل: ينشئ قناعًا مثاليًا بالبكسل يحدد الشكل الدقيق للكائن.
على الرغم من أن التجزئة أكثر دقة، إلا أن التجزئة أكثر كثافة من الناحية الحسابية. لتطبيقات مثل
تحليل الصور الطبية حيث تكون الحدود الدقيقة للورم
الدقيقة، يُفضَّل التجزئة غالبًا على المربعات المحددة البسيطة.
مثال عملي مع Python
يوضِّح المقتطف التالي كيفية استخدام الأداة ultralytics لتوليد المربعات المحدودة. نقوم بتحميل
مربعات مُدرَّبة مسبقًا YOLO11 نموذج وطباعة بيانات الإحداثيات ل
الأجسام المكتشفة.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Run inference on an online image
results = model("https://ultralytics.com/images/bus.jpg")
# Access the bounding box coordinates (xyxy format) for the first detection
box = results[0].boxes[0]
print(f"Object Class: {box.cls}")
print(f"Coordinates: {box.xyxy}")
عادةً ما يتم تقييم دقة هذه التنبؤات باستخدام مقياس يسمى
التقاطع على الاتحاد (IoU)، والذي يقيس
يقيس التداخل بين المربع المتوقع و
والشرح التوضيحي للحقيقة الأرضية الذي يقدمه واضعو التسميات البشرية. تشير درجات IoU
إلى أن النموذج قد حدد موقع الكائن بشكل صحيح.