شيك أخضر
تم نسخ الرابط إلى الحافظة

استخدام تكامل ONNX لتصدير نماذج Ultralytics YOLO

تعرّف على كيفية تصدير نماذج Ultralytics YOLO مثل Ultralytics YOLO11 باستخدام تكامل ONNX للنشر عبر مختلف المنصات عبر مختلف الأجهزة.

عندما بدأت حلول الذكاء الاصطناعي تحظى بالاهتمام لأول مرة، تم نشر معظم النماذج على خوادم قوية في بيئات خاضعة للرقابة. ولكن مع تقدم التكنولوجيا، اتسع نطاق النشر إلى ما هو أبعد من مركز البيانات.

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

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

لكن نشر نماذج الرؤية الحاسوبية عبر مجموعة من أهداف النشر ليس دائمًا أمرًا بسيطًا. حيث تختلف الأجهزة من حيث الأجهزة وأنظمة التشغيل والأطر المدعومة، مما يجعل المرونة والتوافق أمرًا ضروريًا.

لهذا السبب فإن وجود خيار تصدير نماذج الرؤية الحاسوبية مثل Ultralytics YOLO11 إلى تنسيقات مختلفة أمر أساسي. على سبيل المثال، يوفر تكامل ONNX (Open Neural Network Exchange) المدعوم من Ultralytics طريقة عملية لسد الفجوة بين التدريب والنشر. ONNX هو تنسيق مفتوح يجعل النماذج محايدة من حيث الإطار وجاهزة للنشر عبر المنصات.

الشكل 1. يساعدك ONNX على أخذ نموذج تم تدريبه في إطار عمل وتشغيله في إطار عمل آخر بسهولة.

في هذه المقالة، سنلقي نظرة فاحصة على تكاملONNX المدعوم من قبل Ultralytics ونستكشف كيف يمكنك تصدير نموذج YOLO11 الخاص بك للنشر المرن عبر المنصات.

ما هو ONNX ووقت تشغيل ONNX

تبادل الشبكات العصبية المفتوحة هو مشروع مفتوح المصدر يحدد تنسيقًا قياسيًا لنماذج التعلم الآلي. تم تطويره في الأصل من قبل Microsoft وفيسبوك، وهو يسمح للمطورين بتدريب نموذج في إطار عمل واحد، مثل PyTorch وتشغيله في إطار عمل آخر، مثل TensorFlow. وهذا يجعل تطوير الذكاء الاصطناعي أكثر مرونةً وتعاوناً وسهولةً، خاصةً في مجالات مثل الرؤية الحاسوبية.

يوفر ONNX مجموعة مشتركة من المشغلات وتنسيق ملف موحد، مما يسهل نقل النماذج بين الأدوات والأطر وأوقات التشغيل والمُجمِّعات المختلفة. عادةً، لا يتوافق النموذج المدرَّب في إطار عمل ما بسهولة مع إطار عمل آخر - ولكن مع ONNX يمكنك تصدير نموذجك مرة واحدة ونشره في أي مكان تقريبًا: على وحدات المعالجة المركزية (وحدات المعالجة المركزية) أو وحدات معالجة الرسومات (وحدات معالجة الرسومات) أو الأجهزة المحمولة أو الأجهزة المتطورة.

كما أن ONNX Runtime هو محرك استدلالي عالي الأداء تم تطويره خصيصًا لتشغيل النماذج بتنسيق ONNX . وهو مصمم لجعل نماذج ONNX تعمل بشكل أسرع وأكثر كفاءة عبر مجموعة واسعة من الأنظمة الأساسية - بما في ذلك الخوادم والأجهزة المحمولة والأجهزة المتطورة. يتوافق ONNX Runtime مع أطر العمل الشائعة مثل PyTorch و TensorFlow و TensorFlow Lite و scikit-learn، مما يسهل دمجها في عمليات سير العمل المختلفة ونشر النماذج أينما كانت هناك حاجة إليها.

الشكل 2. يتيح كل من ONNX و ONNX Runtime نشر نماذج مرنة عبر المنصات.

الميزات الرئيسية لـ ONNX 

قبل أن نناقش كيفية تصدير YOLO11 إلى تنسيق ONNX دعنا نتحقق من بعض الميزات الرئيسية لتنسيق نموذج ONNX . 

سواء كنت تقوم بالتبديل بين الأدوات، أو النشر على أجهزة مختلفة، أو ترقية الأنظمة، يساعد ONNX في الحفاظ على سير كل شيء بسلاسة. إليك ما يجعل تنسيق نموذج ONNX فريداً من نوعه:

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

نظرة عامة على تكامل ONNX

يعد تصدير نماذجUltralytics YOLO مثل Ultralytics YOLO11 بتنسيق ONNX أمرًا بسيطًا ومباشرًا ويمكن القيام به في بضع خطوات. 

للبدء، قم بتثبيت حزمةUltralytics Python باستخدام مدير حزم مثل "pip". يمكن القيام بذلك عن طريق تشغيل الأمر "pip install ultralytics" في موجه الأوامر أو في المحطة الطرفية للبدء.

باستخدام حزمة Ultralytics يمكنك بسهولة تدريب النماذج واختبارها وضبطها وتصديرها ونشرها لمختلف مهام الرؤية الحاسوبية - مما يجعل العملية برمتها أسرع وأكثر كفاءة. أثناء التثبيت، إذا واجهت أي صعوبات، يمكنك الرجوع إلى دليل المشكلات الشائعة للحصول على الحلول والنصائح.

بمجرد تثبيت حزمة Ultralytics يمكنك تحميل نموذج YOLO11 وتصديره إلى تنسيق ONNX باستخدام الكود أدناه. يقوم هذا المثال بتحميل نموذج YOLO11 المدرّب مسبقًا (yolo11n.pt) وتصديره كملف ONNX (yolo11nonnx)، مما يجعله جاهزًا للنشر عبر منصات وأجهزة مختلفة.

from ultralytics import YOLO

model = YOLO("yolo11n.pt")

model.export(format="onnx") 

بعد تحويل نموذجك إلى تنسيق ONNX يمكنك نشره على مجموعة متنوعة من المنصات. 

يوضّح المثال أدناه كيفية تحميل نموذج YOLO11 المُصدَّر (yolo11nonnx) وتشغيل الاستدلال به. الاستدلال يعني ببساطة استخدام النموذج المدرّب لإجراء تنبؤات على بيانات جديدة. في هذه الحالة، سنستخدم عنوان URL لصورة حافلة لاختبار النموذج.

onnx_model = YOLO("yolo11n.onnx")

results = onnx_model("https://ultralytics.com/images/bus.jpg",save=True)

عند تشغيل هذا الرمز، ستُحفظ صورة الإخراج التالية في مجلد التشغيل/الكشف/التنبؤ.

الشكل 3. تشغيل استدلال باستخدام نموذج YOLO11 المُصدَّر على صورة.

متى يجب عليك اختيار تكامل ONNX

تدعم حزمة Ultralytics Python تصدير النماذج إلى عدة تنسيقات، بما في ذلك TorchScript و CoreML و TensorRT و ONNX. إذن، لماذا تختار ONNX

ما يميز ONNX هو أنه تنسيق لا يعتمد على إطار العمل. في حين أن العديد من تنسيقات التصدير الأخرى مرتبطة بأدوات أو بيئات محددة، يستخدم ONNX تنسيقًا موحدًا ومجموعة مشتركة من المشغلات. وهذا يجعلها قابلة للنقل بدرجة كبيرة وسهلة الاستخدام ومثالية للنشر عبر المنصات - سواء كنت تعمل مع خوادم سحابية أو تطبيقات جوال أو أجهزة متطورة. 

فيما يلي بعض الأسباب التي تجعل تكامل ONNX الخيار المثالي لمشاريع YOLO11 الخاصة بك:

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

تطبيقات YOLO11 وصيغة نموذج ONNX

بعد ذلك، دعنا نستكشف بعض التطبيقات الواقعية حيث يمكن نشر YOLO11 بمساعدة تكامل ONNX .

تتبع المخزون في المستودعات باستخدام YOLO11

في المستودعات المزدحمة، من الصعب مراقبة كل منتج وعبوة في جميع الأوقات. يمكن لأنظمة الرؤية الحاسوبية أن تساعد العمال في العثور على المنتجات على الرفوف والحصول على معلومات مثل عدد المنتجات ونوعها وما إلى ذلك. يمكن لهذه الأنظمة مساعدة الشركات على إدارة مخزونها الهائل تلقائيًا وتوفير الكثير من الوقت على عمال المستودعات.

على وجه التحديد، في المستودعات الذكية، يمكن استخدام نماذج YOLO11 المصدرة إلى ONNX لتحديد العناصر وعدّها في الوقت الفعلي باستخدام الكاميرات وأجهزة الحافة. يمكن للنموذج المُصدَّر أن يساعد في مسح الأرفف أو المنصات النقالة للكشف عن مستويات المخزون أو العناصر المفقودة أو البقع الفارغة. بما أن التصدير إلى ONNX يجعل النموذج خفيف الوزن وفعّالاً، يمكن تشغيله مباشرةً على الأجهزة الطرفية الصغيرة، مثل الكاميرات الذكية، مما يلغي الحاجة إلى خوادم باهظة الثمن أو الوصول المستمر إلى السحابة.

الشكل 4. مثال على استخدام YOLO11 للكشف عن الحزم وعدّها.

إدارة نفايات المستشفيات باستخدام YOLO11

تنتج المستشفيات في جميع أنحاء العالم كميات كبيرة من النفايات كل يوم، بدءاً من القفازات والمحاقن المستعملة إلى المعدات المستخدمة أثناء الجراحة (مثل الأدوات الجراحية ذات الاستخدام الواحد أو الأدوات الجراحية الملوثة مثل المقصات والمشارط). في الواقع، تُظهر الأبحاث أن المستشفيات تنتج حوالي 5 ملايين طن من النفايات كل عام، أي ما يعادل 29 رطلاً من النفايات لكل سرير يومياً. 

فرز هذه النفايات بشكل صحيح أمر ضروري للنظافة والسلامة واتباع اللوائح. مع نماذج YOLO11 التي يتم تصديرها بتنسيق ONNX يمكن للمستشفيات أتمتة عملية التخلص من النفايات ومراقبتها في الوقت الفعلي.

على سبيل المثال، يمكن للكاميرات الموضوعة بالقرب من حاويات النفايات في مناطق مثل غرف العمليات أو الممرات مراقبة العناصر أثناء التخلص منها. يمكن لنموذج YOLO11 المخصص، المدرب على التعرف على أنواع مختلفة من النفايات الطبية، تحليل اللقطات وتحديد ما يتم التخلص منه. إذا انتهى الأمر بعنصر ما في سلة المهملات الخطأ، مثل حقنة مستعملة في سلة المهملات العادية، يمكن إعداد النظام لتنبيه الموظفين على الفور بضوء أو صوت، مما يساعد على منع التلوث وضمان الامتثال.

الشكل 5. استخدام YOLO11 للكشف عن الأدوات الطبية.

مراقبة المحاصيل YOLO11

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

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

الشكل 6. يمكن استخدام YOLO11 للكشف عن المحاصيل في لقطات الطائرات بدون طيار. 

حدود ONNX التي يجب مراعاتها

بينما يوفر ONNX العديد من المزايا، مثل قابلية النقل والتوافق عبر المنصات وقابلية التشغيل البيني للإطار، إلا أن هناك بعض القيود التي يجب وضعها في الاعتبار.

  • حجم النموذج: يمكن أن يؤدي تحويل النماذج إلى تنسيق ONNX أحيانًا إلى أحجام ملفات أكبر مقارنةً بتنسيقاتها الأصلية. يمكن أن تساعد تقنيات مثل التكميم والتشذيب في التخفيف من هذه المشكلة عن طريق تقليل حجم النموذج دون التأثير بشكل كبير على الأداء.
  • توافق وقت التشغيل: على الرغم من أن وقت تشغيل ONNX Runtime مصمم للتوافق عبر الأنظمة الأساسية، إلا أن الأداء والدعم يمكن أن يختلف عبر الأجهزة وأنظمة التشغيل المختلفة. 
  • تحديات تصحيح الأخطاء: قد يكون تصحيح أخطاء نماذج ONNX أكثر تعقيدًا من الأطر الأصلية مثل PyTorch أو TensorFlow. قد تكون رسائل الخطأ أقل وصفية، مما يجعل من الصعب تحديد المشكلات. ومع ذلك، يمكن أن تساعد أدوات مثل Netron لتصور النماذج وقدرات تسجيل ONNX Runtime في استكشاف الأخطاء وإصلاحها.

الوجبات الرئيسية

إن تصدير Ultralytics YOLO11 إلى ONNX يجعل من السهل أخذ نموذج رؤية حاسوبية مدرّب ونشره في أي مكان تقريبًا - سواء كان ذلك على كمبيوتر محمول أو جهاز محمول أو حتى كاميرا ذكية صغيرة الحجم. مع تكامل ONNX أنت غير مقيد بإطار عمل أو منصة واحدة، مما يمنحك المرونة لتشغيل نموذجك في البيئة التي تناسب تطبيقك بشكل أفضل. 

وهذا يجعل الانتقال من التدريب إلى النشر في العالم الحقيقي أسرع وأكثر كفاءة. سواء كنت تقوم بتتبع المخزون في المستودع أو ضمان التخلص من نفايات المستشفى بشكل صحيح، فإن هذا الإعداد يساعد الأنظمة على العمل بسلاسة أكبر ويقلل من الأخطاء ويوفر وقتاً ثميناً.

هل تريد معرفة المزيد عن رؤية الكمبيوتر والذكاء الاصطناعي؟ استكشف مستودع GitHub الخاص بنا، وتواصل مع مجتمعنا، وتحقق من خيارات الترخيص لدينا لبدء مشروع رؤية الكمبيوتر الخاص بك. إذا كنت تستكشف ابتكارات مثل الذكاء الاصطناعي في التصنيع والرؤية الحاسوبية في صناعة السيارات، تفضل بزيارة صفحات الحلول الخاصة بنا لاكتشاف المزيد. 

شعار LinkedInشعار تويترشعار الفيسبوكرمز نسخ الرابط

اقرأ المزيد في هذه الفئة

دعونا نبني المستقبل
من الذكاء الاصطناعي معا!

ابدأ رحلتك مع مستقبل التعلم الآلي