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

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

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

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

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

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

صورتنا الناتجة.
إذا كنت تفضل رؤية ما يمكن لـ YOLO-World القيام به بدون برمجة، يمكنك الانتقال إلى صفحة عرض YOLO-World، وتحميل صورة مدخلة، وإدخال الفئات المخصصة.
اقرأ صفحة التوثيق الخاصة بنا حول YOLO-World لتعلم كيفية حفظ النموذج بالفئات المخصصة بحيث يمكن استخدامه مباشرة لاحقًا دون إدخال الفئات المخصصة بشكل متكرر.
Link to this sectionهل لاحظت أن أبواب السيارة لم يتم اكتشافها؟#
إذا ألقيت نظرة على الصورة الناتجة مرة أخرى، ستلاحظ أن الفئة المخصصة "باب السيارة" لم يتم اكتشافها. على الرغم من إنجازاته العظيمة، فإن YOLO-World لديه قيود معينة. لمواجهة هذه القيود واستخدام نموذج YOLO-World بفعالية، من المهم استخدام الأنواع الصحيحة من المطالبات النصية.
إليك بعض الأفكار حول ذلك:
- قد لا يحتاج YOLO-World إلى مستويات ثقة عالية لتوقعات دقيقة، لذا فإن تقليل عتبات الثقة يمكن أن يحسن معدلات الاكتشاف.
- أضف الفئات التي لا تهتم بها. سيساعد ذلك في تحسين اكتشاف الكائنات الأساسي عن طريق تقليل النتائج الإيجابية الخاطئة للكائنات الثانوية.
- يمكن لاكتشاف الكائنات الأكبر حجمًا أولاً قبل التركيز على التفاصيل الأصغر تحسين دقة الاكتشاف.
- اذكر الألوان في فئاتك لاكتشاف الكائنات بناءً على إشارات الألوان.
- يمكن أن يساعد وصف أحجام الكائنات في المطالبات أيضًا YOLO-World في تحديد كائنات معينة بدقة أكبر.
- يمكن لأساليب المعالجة اللاحقة، مثل تصفية التوقعات حسب الحجم أو تعديل مستويات الثقة لكل فئة، تحسين نتائج اكتشاف الكائنات بشكل أكبر.
Link to this sectionالحدود لا حصر لها#
بشكل عام، يمكن تحويل نماذج YOLO-World إلى أداة قوية بقدرات اكتشاف الكائنات المتقدمة الخاصة بها. إنها توفر كفاءة ودقة رائعتين، وتساعد في أتمتة مهام مختلفة عبر تطبيقات متنوعة، مثل مثال تحديد أجزاء السيارة الذي ناقشناه عمليًا.
لا تتردد في استكشاف مستودع GitHub الخاص بنا لتعلم المزيد عن مساهماتنا في الرؤية الحاسوبية والذكاء الاصطناعي. إذا كنت مهتمًا بكيفية إعادة تشكيل الذكاء الاصطناعي لقطاعات مثل تكنولوجيا الرعاية الصحية، تحقق من صفحات حلولنا. تبدو الاحتمالات مع ابتكارات مثل YOLO-World لا حصر لها!






