Yolo فيجن شنتشن
شنتشن
انضم الآن
مسرد المصطلحات

بنى اكتشاف الأجسام

اكتشف قوة معماريات الكشف عن الكائنات، العمود الفقري للذكاء الاصطناعي لفهم الصور. تعرف على الأنواع والأدوات والتطبيقات الواقعية اليوم!

بنى الكشف عن الكائنات هي المخططات الهيكلية للشبكات العصبية المستخدمة لتحديد وتحديد موقع العناصر داخل البيانات المرئية. في المجال الأوسع للرؤية الحاسوبية (CV)، تحدد هذه البنى كيف "ترى" الآلة من خلال معالجة بيانات البكسل الخام وتحويلها إلى رؤى ذات مغزى. على عكس نماذج التصنيف الأساسية التي تكتفي بوضع علامة على الصورة، تم تصميم بنية الكشف عن الكائنات لإخراج مربع حدودي إلى جانب علامة الفئة و درجة الثقة لكل كائن مميز تجده. يحدد هذا التصميم الهيكلي سرعة النموذج ودقته وكفاءته الحسابية، مما يجعله العامل الحاسم عند اختيار نموذج للاستدلال في الوقت الفعلي أو التحليل عالي الدقة.

المكونات الأساسية للهندسة المعمارية

على الرغم من اختلاف التصميمات المحددة، إلا أن معظم البنى الحديثة تشترك في ثلاثة مكونات أساسية: العمود الفقري والرقبة والرأس. يعمل العمود الفقري كأداة استخراج الميزات الأساسية. وهو عادةً ما يكون شبكة عصبية تلافيفية (CNN) مدربة مسبقًا على مجموعة بيانات كبيرة مثل ImageNet، وهي مسؤولة عن تحديد الأشكال الأساسية والحواف والأنسجة. تشمل الخيارات الشائعة للعمود الفقري ResNet و CSPDarknet.

يربط العنق العمود الفقري بطبقات الإخراج النهائية. ويتمثل دوره في مزج ودمج الميزات من مراحل مختلفة من العمود الفقري لضمان قدرة النموذج detect بأحجام مختلفة — وهو مفهوم يُعرف باسم دمج الميزات متعدد المقاييس. غالبًا ما تستخدم البنى شبكة هرم الميزات (FPN) أو شبكة تجميع المسارات (PANet) هنا لإثراء المعلومات الدلالية التي يتم تمريرها إلى طبقات التنبؤ. أخيرًا، يعالج رأس الكشف هذه الميزات المدمجة لتنبؤ الفئة المحددة وموقع إحداثيات كل كائن.

التطور: مرحلتان مقابل مرحلة واحدة

تاريخياً، كانت البنى المعمارية مقسمة إلى فئتين رئيسيتين. أجهزة الكشف ذات المرحلتين، مثل عائلة R-CNN، تقترح أولاً مناطق الاهتمام (RoIs) حيث قد توجد كائنات ثم classify المناطق في خطوة ثانية. على الرغم من دقتها بشكل عام، فهي غالباً ما تكون ثقيلة للغاية من الناحية الحسابية بالنسبة للأجهزة الطرفية.

في المقابل، تعامل أجهزة الكشف أحادية المرحلة الكشف على أنه مشكلة انحدار بسيطة، حيث تقوم بتعيين بكسلات الصورة مباشرة إلى إحداثيات المربع المحيط واحتمالات الفئة في مسار واحد. وقد أحدثت هذه الطريقة، التي ابتكرتها عائلة Y YOLO (You Only Look Once)، ثورة في الصناعة من خلال تمكين الأداء في الوقت الفعلي. وقد توجت التطورات الحديثة بنماذج مثل YOLO26، التي لا توفر سرعة فائقة فحسب، بل اعتمدت أيضًا هياكل شاملة NMS. من خلال إزالة الحاجة إلى معالجة لاحقة لـ Non-Maximum Suppression (NMS) ، تقلل هذه الهياكل الأحدث من تقلب زمن الاستجابة، وهو أمر بالغ الأهمية للأنظمة الحساسة من حيث السلامة.

تطبيقات واقعية

يؤثر اختيار البنية بشكل مباشر على نجاح حلول الذكاء الاصطناعي في مختلف القطاعات.

  • أتمتة البيع بالتجزئة: في السوبر ماركت الذكية، تسمح البنى الفعالة ذات المرحلة الواحدة بأنظمة دفع آلية تتعرف على الفور على المنتجات الموجودة على الحزام الناقل أو في عربة التسوق، مما يقلل من أوقات الانتظار والأخطاء البشرية.
  • التشخيص الطبي: تُستخدم البنى عالية الدقة في تحليل الصور الطبية detect الشاذة مثل الأورام في الأشعة السينية أو التصوير بالرنين المغناطيسي. هنا، تكون قدرة البنية على الاحتفاظ بالتفاصيل الدقيقة أكثر أهمية من سرعة المعالجة الأولية.

التمييز بين المصطلحات ذات الصلة

من المهم التمييز بين هياكل الكشف ومهام الرؤية الحاسوبية المماثلة:

  • مقابل تصنيف الصور: تقوم بنية تصنيف الصور (مثل VGG أو EfficientNet) بتعيين تسمية واحدة للصورة بأكملها (على سبيل المثال، "قطة"). وهي لا تخبرك بمكان وجود القطة أو ما إذا كان هناك عدة قطط، وهي الوظيفة الأساسية لبنى الكشف.
  • مقابل تقسيم الحالات: بينما يضع الكشف مربعًا حول الكائن، يحدد تقسيم الحالات المخطط الدقيق للبكسل (القناع) لكل كائن. غالبًا ما تكون بنى التقسيم امتدادًا لبنى الكشف (على سبيل المثال، إضافة فرع قناع إلى رأس الكشف).

التنفيذ باستخدام Ultralytics

لقد استخلصت الأطر الحديثة تعقيدات هذه البنى، مما سمح للمطورين بالاستفادة من أحدث التصاميم بأقل قدر من الكود. باستخدام ultralytics الحزمة، يمكنك تحميل يولو26 النموذج وتشغيل الاستدلال على الفور. بالنسبة للفرق التي تسعى إلى إدارة مجموعات البيانات الخاصة بها وتدريب البنى المخصصة في السحابة، فإن منصة Ultralytics يبسط كامل مسار MLOps.

from ultralytics import YOLO

# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")

# Run inference on an image source
# This uses the model's architecture to detect objects
results = model("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

انضم إلى مجتمع Ultralytics

انضم إلى مستقبل الذكاء الاصطناعي. تواصل وتعاون وانمو مع المبتكرين العالميين

انضم الآن