الأسئلة الشائعة حول Ultralytics YOLO (FAQ)#
يتناول قسم الأسئلة الشائعة هذا الاستفسارات والمشكلات الشائعة التي قد يواجهها المستخدمون أثناء العمل مع مستودعات Ultralytics YOLO.
الأسئلة الشائعة#
ما هي شركة Ultralytics وما الذي تقدمه؟#
تُعد Ultralytics شركة متخصصة في الذكاء الاصطناعي في مجال الرؤية الحاسوبية وهي متخصصة في نماذج اكتشاف الكائنات وتقسيم الصور المتطورة، مع التركيز على عائلة YOLO (You Only Look Once). تشمل عروضهم ما يلي:
- إصدارات مفتوحة المصدر من YOLO26 (الأحدث) و YOLO11 (الجيل السابق)
- مجموعة واسعة من النماذج المدربة مسبقًا لمهام رؤية الحاسوب المختلفة
- حزمة Python شاملة لدمج نماذج YOLO بسلاسة في المشاريع
- أدوات متعددة الاستخدامات لتدريب واختبار ونشر النماذج
- وثائق واسعة النطاق ومجتمع داعم
كيف يمكنني تثبيت حزمة Ultralytics؟#
تثبيت حزمة Ultralytics مباشر باستخدام pip:
pip install ultralyticsللحصول على أحدث إصدار تطويري، قم بالتثبيت مباشرة من مستودع GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitيمكن العثور على تعليمات التثبيت التفصيلية في دليل البدء السريع.
ما هي متطلبات النظام لتشغيل نماذج Ultralytics؟#
الحد الأدنى من المتطلبات:
- Python 3.8+
- PyTorch 1.8+
- وحدة معالجة رسومات (GPU) متوافقة مع CUDA (لتسريع الأداء)
الإعداد الموصى به:
- Python 3.8+
- PyTorch 1.10+
- وحدة معالجة رسومات NVIDIA مع CUDA 11.2+
- ذاكرة وصول عشوائي (RAM) بسعة 8 جيجابايت أو أكثر
- مساحة قرص فارغة بسعة 50 جيجابايت أو أكثر (لتخزين مجموعات البيانات وتدريب النماذج)
لاستكشاف الأخطاء وإصلاحها للمشكلات الشائعة، تفضل بزيارة صفحة المشكلات الشائعة في YOLO.
كيف يمكنني تدريب نموذج YOLO مخصص على مجموعة البيانات الخاصة بي؟#
لتدريب نموذج YOLO مخصص:
-
قم بإعداد مجموعة البيانات الخاصة بك بتنسيق YOLO format (صور وملفات نصية مقابلة للتسميات).
-
قم بإنشاء ملف YAML يصف هيكل مجموعة البيانات والفئات (انظر مثال YAML لمجموعة البيانات).
-
استخدم كود Python التالي لبدء التدريب:
from ultralytics import YOLO # Load a model model = YOLO("yolo26n.yaml") # build a new model from scratch model = YOLO("yolo26n.pt") # load a pretrained model (recommended for training) # Train the model results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)
للحصول على دليل أكثر تعمقًا، بما في ذلك إعداد البيانات وخيارات التدريب المتقدمة، راجع دليل التدريب الشامل.
ما هي النماذج المدربة مسبقاً المتاحة في Ultralytics؟#
تقدم Ultralytics مجموعة متنوعة من النماذج المدربة مسبقاً لمهام مختلفة:
- اكتشاف الكائنات: YOLO26n، YOLO26s، YOLO26m، YOLO26l، YOLO26x
- تقسيم المثيلات: YOLO26n-seg، YOLO26s-seg، YOLO26m-seg، YOLO26l-seg، YOLO26x-seg
- التقسيم الدلالي: YOLO26n-sem، YOLO26s-sem، YOLO26m-sem، YOLO26l-sem، YOLO26x-sem
- تقدير العمق: YOLO26n-depth، YOLO26s-depth، YOLO26m-depth، YOLO26l-depth، YOLO26x-depth
- التصنيف: YOLO26n-cls، YOLO26s-cls، YOLO26m-cls، YOLO26l-cls، YOLO26x-cls
- تقدير الوضع: YOLO26n-pose، YOLO26s-pose، YOLO26m-pose، YOLO26l-pose، YOLO26x-pose
- الاكتشاف الموجه (OBB): YOLO26n-obb، YOLO26s-obb، YOLO26m-obb، YOLO26l-obb، YOLO26x-obb
تتفاوت هذه النماذج في الحجم والتعقيد، مما يوفر مقايضات مختلفة بين السرعة والدقة. استكشف المجموعة الكاملة من النماذج المدربة مسبقًا للعثور على الأنسب لمشروعك.
كيف يمكنني إجراء الاستنتاج باستخدام نموذج Ultralytics مدرب؟#
لإجراء الاستنتاج باستخدام نموذج مدرب:
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/your/model.pt")
# Perform inference
results = model("path/to/image.jpg")
# Process results
for r in results:
print(r.boxes) # print bbox predictions
print(r.masks) # print mask predictions
print(r.probs) # print class probabilitiesلخيارات الاستدلال المتقدمة، بما في ذلك المعالجة بالدفعة (batch) واستدلال الفيديو، تحقق من دليل التنبؤ التفصيلي.
هل يمكن نشر نماذج Ultralytics على أجهزة الحافة أو في بيئات الإنتاج؟#
بالتأكيد! تم تصميم نماذج Ultralytics للنشر متعدد الاستخدامات عبر منصات مختلفة:
- أجهزة الحافة: تحسين الاستنتاج على أجهزة مثل NVIDIA Jetson أو Intel Neural Compute Stick باستخدام TensorRT أو ONNX أو OpenVINO.
- الهواتف المحمولة: قم بالنشر على أجهزة Android أو iOS عن طريق تحويل النماذج إلى LiteRT أو CoreML.
- السحابة: الاستفادة من أطر العمل مثل TensorFlow Serving أو PyTorch Serve لعمليات النشر السحابي القابلة للتوسع.
- الويب: نفذ الاستدلال داخل المتصفح باستخدام LiteRT.js أو ONNX.js.
توفر Ultralytics وظائف تصدير لتحويل النماذج إلى تنسيقات مختلفة للنشر. استكشف النطاق الواسع من خيارات النشر للعثور على الحل الأمثل لحالة استخدامك.
ما الفرق بين YOLO11 و YOLO26؟#
تشمل الفروق الرئيسية ما يلي:
- استنتاج شامل بدون NMS: نموذج YOLO26 هو نموذج شامل (end-to-end) بشكل أصلي، حيث ينتج التنبؤات مباشرة دون الحاجة إلى كبت غير الأعظم (NMS)، مما يقلل من وقت الاستجابة ويبسط النشر.
- إزالة DFL: يزيل YOLO26 وحدة Distribution Focal Loss، مما يبسط عملية التصدير ويحسن التوافق مع أجهزة الحافة والأجهزة منخفضة الطاقة.
- محسن MuSGD: مزيج هجين من SGD و Muon (مستوحى من Kimi K2 لشركة Moonshot AI) لتدريب أكثر استقراراً وتقارب أسرع.
- أداء وحدة المعالجة المركزية (CPU): يوفر YOLO26 استنتاجاً أسرع بنسبة تصل إلى 43% على CPU، مما يجعله مثالياً للأجهزة التي لا تحتوي على وحدات GPU.
- تحسينات خاصة بالمهمة: تقسيم معزز مع الخسارة الدلالية (semantic loss) والـ protos متعددة النطاق، و RLE لتقدير الوضع بدقة، وفك تشفير OBB محسن مع خسارة الزاوية (angle loss).
- المهام: يدعم كلا النموذجين اكتشاف الكائنات وتجزئة النماذج، بينما يضيف YOLO26 أيضاً التجزئة الدلالية للتنبؤ المكثف على مستوى البكسل وتقدير العمق أحادي العين للعمق لكل بكسل. كما يدعم كلا النموذجين التصنيف، وتقدير الوضعية، واكتشاف الكائنات الموجهة (OBB) في إطار عمل موحد.
للحصول على مقارنة متعمقة للميزات ومقاييس الأداء، تفضل بزيارة صفحة وثائق YOLO26.
كيف يمكنني المساهمة في مشروع Ultralytics مفتوح المصدر؟#
تعد المساهمة في Ultralytics طريقة رائعة لتحسين المشروع وتوسيع مهاراتك. إليك كيف يمكنك المشاركة:
- قم بعمل Fork لمستودع Ultralytics على GitHub.
- قم بإنشاء فرع جديد لميزتك أو إصلاح الخطأ الخاص بك.
- قم بإجراء تغييراتك وتأكد من اجتياز جميع الاختبارات.
- أرسل طلب سحب (pull request) مع وصف واضح لتغييراتك.
- شارك في عملية مراجعة الكود.
يمكنك أيضًا المساهمة عن طريق الإبلاغ عن الأخطاء، أو اقتراح ميزات، أو تحسين الوثائق. للحصول على إرشادات تفصيلية وأفضل الممارسات، راجع دليل المساهمة.
كيف يمكنني تثبيت حزمة Ultralytics في Python؟#
تثبيت حزمة Ultralytics في Python بسيط. استخدم pip عن طريق تشغيل الأمر التالي في محطتك أو موجه الأوامر:
pip install ultralyticsللحصول على أحدث إصدار تطويري، قم بالتثبيت مباشرة من مستودع GitHub:
pip install git+https://github.com/ultralytics/ultralytics.gitللحصول على تعليمات التثبيت الخاصة بالبيئة ونصائح استكشاف الأخطاء وإصلاحها، راجع دليل البدء السريع الشامل.
ما هي الميزات الرئيسية لـ Ultralytics YOLO؟#
يتميز Ultralytics YOLO بمجموعة غنية من الميزات لمهام الرؤية الحاسوبية المتقدمة:
- الاكتشاف في الوقت الفعلي: اكتشاف وتصنيف الكائنات بكفاءة في سيناريوهات الوقت الفعلي.
- قدرات المهام المتعددة: تنفيذ اكتشاف الكائنات، وتجزئة النماذج، التجزئة الدلالية، تقدير العمق أحادي العين، والتصنيف، وتقدير الوضعية، واكتشاف الكائنات الموجهة (OBB) من خلال إطار عمل موحد.
- النماذج المدربة مسبقًا: الوصول إلى مجموعة متنوعة من النماذج المدربة مسبقًا التي توازن بين السرعة والدقة لحالات الاستخدام المختلفة.
- التدريب المخصص: يمكنك ضبط النماذج بسهولة على مجموعات بيانات مخصصة باستخدام خط أنابيب التدريب المرن.
- واسعة خيارات النشر: تصدير النماذج إلى تنسيقات متنوعة مثل TensorRT و ONNX و CoreML للنشر عبر منصات مختلفة.
- وثائق موسعة: استفد من الوثائق الشاملة ومجتمع داعم لسير عمل رؤية الحاسوب الخاص بك.
كيف يمكنني تحسين أداء نموذج YOLO الخاص بي؟#
يمكن تحقيق تعزيز أداء نموذج YOLO الخاص بك من خلال عدة تقنيات:
- ضبط المعلمات الفائقة: جرب معلمات فائقة مختلفة باستخدام دليل ضبط المعلمات الفائقة لتحسين أداء النموذج.
- زيادة البيانات: نفذ تقنيات مثل التقليب، والتحجيم، والتدوير، وتعديلات الألوان لتعزيز مجموعة بيانات التدريب الخاصة بك وتحسين تعميم النموذج.
- التعلم بالنقل: استفد من النماذج المدربة مسبقاً وقم بضبطها على مجموعة بياناتك المحددة باستخدام دليل التدريب.
- التصدير إلى تنسيقات فعالة: قم بتحويل نموذجك إلى تنسيقات محسنة مثل TensorRT أو ONNX لاستنتاج أسرع باستخدام دليل التصدير.
- قياس الأداء: استخدم وضع قياس الأداء لقياس وتحسين سرعة الاستدلال والدقة بشكل منهجي.
هل يمكنني نشر نماذج Ultralytics YOLO على الأجهزة المحمولة وأجهزة الحافة؟#
نعم، تم تصميم نماذج Ultralytics YOLO للنشر متعدد الاستخدامات، بما في ذلك الأجهزة المحمولة وأجهزة الحافة:
- الهواتف المحمولة: قم بتحويل النماذج إلى LiteRT أو CoreML لدمجها بسلاسة في تطبيقات Android أو iOS. ارجع إلى دليل دمج LiteRT و دليل دمج CoreML للحصول على تعليمات خاصة بكل منصة.
- أجهزة الحافة: تحسين الاستدلال على أجهزة مثل NVIDIA Jetson أو أجهزة الحافة الأخرى باستخدام TensorRT أو ONNX. يوفر دليل تكامل Edge TPU خطوات تفصيلية لنشر الحافة.
للحصول على نظرة عامة شاملة على استراتيجيات النشر عبر منصات مختلفة، راجع دليل خيارات النشر.
كيف يمكنني إجراء الاستنتاج باستخدام نموذج Ultralytics YOLO مدرب؟#
إجراء الاستنتاج باستخدام نموذج Ultralytics YOLO مدرب أمر بسيط:
-
تحميل النموذج:
from ultralytics import YOLO model = YOLO("path/to/your/model.pt") -
تشغيل الاستنتاج:
results = model("path/to/image.jpg") for r in results: print(r.boxes) # print bounding box predictions print(r.masks) # print mask predictions print(r.probs) # print class probabilities
لتقنيات الاستدلال المتقدمة، بما في ذلك المعالجة بالدفعة، واستدلال الفيديو، والمعالجة المسبقة المخصصة، راجع دليل التنبؤ التفصيلي.
أين يمكنني العثور على أمثلة ودروس تعليمية لاستخدام Ultralytics؟#
توفر Ultralytics ثروة من الموارد لمساعدتك على البدء وإتقان أدواتهم:
- 📚 الوثائق الرسمية: أدلة شاملة، ومراجع API، وأفضل الممارسات.
- 💻 مستودع GitHub: كود المصدر، ونصوص برمجية للأمثلة، ومساهمات المجتمع.
- ✍️ مدونة Ultralytics: مقالات متعمقة، وحالات استخدام، ورؤى تقنية.
- 💬 منتديات المجتمع: تواصل مع مستخدمين آخرين، واطرح الأسئلة، وشارك تجاربك.
- 🎥 قناة يوتيوب: دروس فيديو، وعروض توضيحية، وندوات عبر الإنترنت حول مواضيع متنوعة في Ultralytics.
توفر هذه الموارد أمثلة برمجية، وحالات استخدام من العالم الحقيقي، وأدلة خطوة بخطوة لمهام مختلفة باستخدام نماذج Ultralytics.
إذا كنت بحاجة إلى مزيد من المساعدة، راجع وثائق Ultralytics أو تواصل مع المجتمع من خلال GitHub Issues أو منتدى المناقشة الرسمي.