تجربة عملية مع YOLO-World
تعرف على YOLO-World، وهو نموذج مبتكر لاكتشاف الكائنات يمكنه تحديد الكائنات من خلال المطالبات النصية. استكشف كيف يعمل YOLO-World وتطبيقاته، واحصل على خبرة عملية من خلال مثال برمجي سريع.

غالبًا ما تتضمن مشاريع الرؤية الحاسوبية إضاءة وقت طويل في تعليقات البيانات وتدريب نماذج object detection. ولكن، قد يصبح ذلك شيئًا من الماضي قريباً. أصدر مختبر الذكاء الاصطناعي التابع لشرك تينسنت نموذج YOLO-World، وهو نموذج لاكتشاف الكائنات في الوقت الفعلي وبمفردات مفتوحة، في 31 يناير 2024. يعتبر YOLO-World نموذجاً صفرياً (zero-shot)، مما يعني أنه يمكنك تشغيل استدلالات اكتشاف الكائنات على الصور دون الحاجة إلى تدريبه.
تمتلك النماذج بدون تدريب مسبق القدرة على تغيير الطريقة التي نتعامل بها مع تطبيقات الرؤية الحاسوبية. في هذه المدونة، سنستكشف كيفية عمل YOLO-World واستخداماته المحتملة، وسنشارك مثالًا برمجياً عملياً للبدء.
نظرة على YOLO-World#
يمكنك تمرير صورة ومطالبة نصية تصف الكائنات التي تبحث عنها عبر نموذج YOLO-World. على سبيل المثال، إذا كنت مهتمًا بالعثور على "شخص يرتدي قميصًا أحمر" داخل صورة، فإن YOLO-World يأخذ هذا المدخل ويبدأ العمل.
تجمع البنية الفريدة للنموذج بين ثلاثة عناصر رئيسية:
- كاشف يعتمد على نموذج كشف الكائنات Ultralytics YOLOv8، لتحليل المحتوى البصري للصورة.
- مشفر نصي مدرب مسبقًا بواسطة CLIP من OpenAI، مصمم خصيصًا لفهم مطالبتك النصية.
- شبكة، وهي شبكة تجميع مسار الرؤية واللغة (RepVL-PAN)، التي تدمج بيانات الصورة المعالجة مع البيانات النصية.
يقوم كاشف YOLO بمسح صورتك المدخلة لتحديد الكائنات المحتملة. يقوم مشفر النص بتحويل وصفك إلى تنسيق يمكن للنموذج فهمه. ثم يتم دمج تدفقي المعلومات هذين من خلال RepVL-PAN باستخدام دمج متعدد المستويات عبر الوسائط. وهذا يسمح لـ YOLO-World باكتشاف وتحديد الكائنات الموصوفة في مطالبتك داخل الصورة بدقة.

مثال على النتائج من YOLO-World.
فوائد اختيار YOLO-World#
إحدى أكبر مزايا استخدام YOLO-World هي أنك لست مضطرًا لتدريب النموذج على فئة معينة. لقد تعلم بالفعل من أزواج من الصور والنصوص، لذا فهو يعرف كيفية العثور على الكائنات بناءً على الأوصاف. يمكنك تجنب ساعات من جمع البيانات، وتصنيف البيانات، والتدريب على وحدات معالجة الرسومات (GPUs) باهظة الثمن، وما إلى ذلك.
إليك بعض الفوائد الأخرى لاستخدام YOLO-World:
- الأداء في الوقت الفعلي - يدعم YOLO-World الأداء في الوقت الفعلي تمامًا مثل بنية YOLO الأصلية. إنه مثالي للتطبيقات التي تتطلب اكتشاف الكائنات بشكل فوري مثل المركبات ذاتية القيادة وأنظمة المراقبة.
- Instance Segmentation - يمكن لنموذج YOLO-World تحديد وفصل الكائنات في الصور بدقة، حتى لو لم يتم تدريب النموذج عليها بشكل خاص أثناء مرحلة التدريب.
- الكفاءة - يجمع YOLO-World بين الدقة العالية والكفاءة الحسابية، مما يجعله عمليًا للتطبيقات الواقعية. تجعل بنيته المبسطة اكتشاف الكائنات السريع ممكنًا دون متطلبات مفرطة في قوة المعالجة.
تطبيقات YOLO-World#
يمكن استخدام نماذج YOLO-World لمجموعة واسعة من التطبيقات. لنستكشف بعضًا منها.
مراقبة الجودة في التصنيع#
يتم فحص المنتجات التي يتم manufactured على خط التجميع بصرياً بحثاً عن أي عيوب قبل تعبئتها. غالباً ما يتم الكشف عن العيوب يدوياً، مما يستغرق وقتاً وقد يؤدي إلى أخطاء. يمكن أن تتسبب هذه الأخطاء في مشاكل مثل التكاليف الباهظة والحاجة إلى الإصلاحات أو عمليات الاسترجاع. للمساعدة في ذلك، تم إنشاء كاميرات رؤية آلية وأنظمة ذكاء اصطناعي خاصة لتنفيذ هذه الفحوصات.
تعد نماذج YOLO-World تقدمًا كبيرًا في هذا المجال. يمكنها العثور على العيوب في المنتجات حتى عندما لم يتم تدريبها على تلك المشكلة المحددة باستخدام قدراتها في التعلم بدون تدريب مسبق (zero-shot). على سبيل المثال، يمكن للمصنع الذي يصنع زجاجات المياه التمييز بسهولة بين زجاجة مغلقة بشكل صحيح بغطاء زجاجة مقابل زجاجة فُقد فيها الغطاء أو كانت معيبة باستخدام YOLO-World.

مثال على فحص غطاء الزجاجة.
الروبوتات#
تسمح نماذج YOLO-World للروبوتات بالتفاعل مع بيئات غير مألوفة. وبدون تدريبها على كائنات محددة قد تكون موجودة في الغرفة، لا يزال بإمكانها تحديد الكائنات الموجودة. لذا، لنفترض أن روبوتًا دخل غرفة لم يدخلها من قبل. باستخدام نموذج YOLO-World، لا يزال بإمكانه التعرف على كائنات مثل الكراسي أو الطاولات أو المصابيح وتحديدها، على الرغم من أنه لم يتم تدريبه بشكل خاص على تلك العناصر.
بالإضافة إلى اكتشاف الكائنات، يمكن لـ YOLO-World أيضاً تحديد حالة تلك الكائنات، بفضل ميزة "الوجهة ثم الاكتشاف" (prompt-then-detect). على سبيل المثال، في مجال الروبوتات agricultural، يمكن استخدامه لتحديد الفواكه الناضجة مقارنة بالفواكه غير الناضجة من خلال برمجة الروبوت لاكتشافها.
الذكاء الاصطناعي في صناعة السيارات#
تتضمن صناعة السيارات العديد من الأجزاء المتحركة، ويمكن استخدام YOLO-World لتطبيقات سيارات مختلفة. على سبيل المثال، عندما يتعلق الأمر بصيانة السيارات، فإن قدرة YOLO-World على التعرف على مجموعة واسعة من الكائنات دون وسم يدوي أو تدريب مسبق مكثف مفيدة للغاية. يمكن استخدام YOLO-World لتحديد أجزاء السيارة التي تحتاج إلى استبدال. يمكن أن تؤدي حتى إلى أتمتة مهام مثل فحوصات الجودة، واكتشاف العيوب أو القطع المفقودة في السيارات الجديدة.
تطبيق آخر هو اكتشاف الكائنات بدون تدريب مسبق في self-driving cars. يمكن لقدرات الكشف الصفري لنموذج YOLO-World تحسين قدرة السيارة ذاتية القيادة على اكتشاف وتصنيف الكائنات على الطريق، مثل المشاة، وإشارات المرور، والمركبات الأخرى، في الوقت الفعلي. من خلال القيام بذلك، يمكنه المساعدة في اكتشاف العقبات ومنع الحوادث لرحلة أكثر أماناً.

مثال على اكتشاف الكائنات على الطريق.
إدارة المخزون لمتاجر التجزئة#
يعد تحديد الكائنات على الأرفف في متاجر التجزئة جزءًا مهمًا من تتبع المخزون، وصيانة الأرصدة، وأتمتة العمليات. تعتبر قدرة Ultralytics YOLO-World على التعرف على مجموعة واسعة من الكائنات دون وسم يدوي أو تدريب مسبق مكثف مفيدة للغاية لإدارة المخزون.
على سبيل المثال، في inventory management، يمكن لـ YOLO-World رصد وتصنيف العناصر الموجودة على الرف بسرعة، مثل العلامات التجارية المختلفة لمشروبات الطاقة. يمكن لمتاجر التجزئة الاحتفاظ بمخزون دقيق، وإدارة مستويات المخزون بكفاءة، وتبسيط عمليات سلسلة التوريد.
جميع التطبيقات فريدة وتظهر مدى اتساع استخدام YOLO-World. بعد ذلك، دعنا نقوم بتجربة عملية مع YOLO-World ونلقي نظرة على مثال برمجي.
جولة برمجية#
كما ذكرنا من قبل، يمكن استخدام YOLO-World لاكتشاف أجزاء مختلفة من السيارة للصيانة. سيتضمن تطبيق الرؤية الحاسوبية الذي يكتشف أي إصلاحات مطلوبة التقاط صورة للسيارة، وتحديد أجزاء السيارة، وفحص كل جزء من السيارة بحثًا عن تلف، واقتراح الإصلاحات. سيستخدم كل جزء من هذا النظام تقنيات وأساليب ذكاء اصطناعي مختلفة. لغرض هذه الجولة البرمجية، دعنا نركز على الجزء الخاص باكتشاف أجزاء السيارة.
باستخدام YOLO-World، يمكنك تحديد أجزاء السيارة المختلفة في الصورة في أقل من 5 دقائق. يمكنك توسيع هذا الكود لتجربة تطبيقات مختلفة باستخدام YOLO-World أيضاً! للبدء، سنحتاج إلى تثبيت حزمة Ultralytics package عبر pip كما هو موضح أدناه.
لمزيد من الإرشادات وأفضل الممارسات المتعلقة بعملية التثبيت، راجع دليل Ultralytics Installation. أثناء تثبيت الحزم المطلوبة لـ YOLOv8، إذا واجهت أي صعوبات، فقم بلقطة سريعة على Common Issues guide للحصول على الحلول والنصائح.
بمجرد تثبيت الحزمة المطلوبة، يمكننا تنزيل صورة من الإنترنت لتشغيل استنتاجاتنا عليها. سنستخدم الصورة أدناه.

صورتنا المدخلة.
ثم سنقوم باستيراد الحزمة المطلوبة، وتهيئة نموذجنا، وتحديد الفئات التي نبحث عنها في صورتنا المدخلة. هنا، نحن مهتمون بالفئات التالية: سيارة، عجلة، باب سيارة، مرآة سيارة، ولوحة ترخيص.
سنستخدم بعد ذلك طريقة predict، مع توفير مسار الصورة جنبًا إلى جنب مع معلمات للحد الأقصى لعدد الاكتشافات، وعتبات لتقاطع الاتحاد (IoU) والثقة (conf) لتشغيل استنتاج على الصورة. أخيرًا، يتم حفظ الكائنات المكتشفة في ملف باسم 'result.jpg'.
سيتم حفظ صورة المخرجات التالية في ملفاتك.

صورتنا الناتجة.
إذا كنت تفضل رؤية ما يمكن لـ YOLO-World القيام به بدون برمجة، يمكنك الانتقال إلى صفحة عرض YOLO-World، وتحميل صورة مدخلة، وإدخال الفئات المخصصة.
اقرأ docs page on YOLO-World الخاصة بنا لمعرفة كيفية حفظ النموذج بالفئات المخصصة بحيث يمكن استخدامه مباشرة لاحقاً دون إدخال فئات مخصصة مراراً وتكراراً.
هل لاحظت أن أبواب السيارة لم يتم اكتشافها؟#
إذا ألقيت نظرة على الصورة الناتجة مرة أخرى، ستلاحظ أن الفئة المخصصة "باب السيارة" لم يتم اكتشافها. على الرغم من إنجازاته العظيمة، فإن YOLO-World لديه قيود معينة. لمواجهة هذه القيود واستخدام نموذج YOLO-World بفعالية، من المهم استخدام الأنواع الصحيحة من المطالبات النصية.
إليك بعض الأفكار حول ذلك:
- قد لا يحتاج YOLO-World إلى مستويات ثقة عالية لتوقعات دقيقة، لذا فإن تقليل عتبات الثقة يمكن أن يحسن معدلات الاكتشاف.
- أضف الفئات التي لا تهتم بها. سيساعد ذلك في تحسين عملية object detection الأساسية عن طريق تقليل الإيجابيات الكاذبة للكائنات الثانوية.
- يمكن لاكتشاف الكائنات الأكبر حجمًا أولاً قبل التركيز على التفاصيل الأصغر تحسين دقة الاكتشاف.
- اذكر الألوان في فئاتك لاكتشاف الكائنات بناءً على إشارات الألوان.
- يمكن أن يساعد وصف أحجام الكائنات في المطالبات أيضًا YOLO-World في تحديد كائنات معينة بدقة أكبر.
- يمكن لأساليب المعالجة اللاحقة، مثل تصفية التوقعات حسب الحجم أو تعديل مستويات الثقة لكل فئة، تحسين نتائج اكتشاف الكائنات بشكل أكبر.
الحدود لا حصر لها#
بشكل عام، يمكن تحويل نماذج YOLO-World إلى أداة قوية بفضل قدراتها المتقدمة في اكتشاف الكائنات. فهو يوفر كفاءة ودقة كبيرين، ويساعد في أتمتة المهام المختلفة عبر تطبيقات متنوعة، مثل مثال identifying car parts الذي ناقشناه عملياً.
لا تتردد في استكشاف GitHub repository الخاص بنا لمعرفة المزيد حول مساهماتنا في الرؤية الحاسوبية والذكاء الاصطناعي. إذا كنت مهتماً بمعرفة كيف يعيد الذكاء الاصطناعي تشكيل قطاعات مثل تكنولوجيا healthcare، فيرجى الاطلاع على صفحات الحلول الخاصة بنا. الاحتمالات مع الابتكارات مثل YOLO-World تبدو بلا حدود!






