دليل حول تصدير نموذج YOLO11 إلى TFLite للنشر
يتطلب نشر نماذج الرؤية الحاسوبية على الأجهزة المتطورة أو الأجهزة المدمجة تنسيقاً يضمن أداءً سلساً.
يسمح لك تنسيق التصدير TensorFlow Lite أو TFLite بتحسين نماذج Ultralytics YOLO11 الخاصة بك لمهام مثل اكتشاف الأجسام وتصنيف الصور في التطبيقات القائمة على الأجهزة المتطورة. في هذا الدليل، سنستعرض خطوات تحويل نماذجك إلى تنسيق TFLite، مما يسهل أداء نماذجك بشكل جيد على مختلف الأجهزة المتطورة.
لماذا يجب عليك التصدير إلى TFLite؟
تم تقديمه من قبل Google في مايو 2017 كجزء من إطار عمل TensorFlow ، TensorFlow Lite، أو TFLite اختصارًا، وهو إطار عمل مفتوح المصدر للتعلم العميق مصمم للاستدلال على الأجهزة، والمعروف أيضًا باسم الحوسبة المتطورة. وهو يوفر للمطورين الأدوات اللازمة لتنفيذ نماذجهم المدربة على الأجهزة المحمولة والأجهزة المدمجة وأجهزة إنترنت الأشياء، بالإضافة إلى أجهزة الكمبيوتر التقليدية.
TensorFlow لايت متوافق مع مجموعة واسعة من المنصات، بما في ذلك لينكس المدمج و Android و iOS و MCU. إن تصدير نموذجك إلى TFLite يجعل تطبيقاتك أسرع وأكثر موثوقية وقادرة على العمل دون اتصال بالإنترنت.
الميزات الرئيسية لطرازات TFLite
تقدم نماذج TFLite مجموعة واسعة من الميزات الرئيسية التي تتيح التعلم الآلي على الجهاز من خلال مساعدة المطورين على تشغيل نماذجهم على الأجهزة المحمولة والمضمنة والمتطورة:
التحسين على الجهاز: يعمل TFLite على تحسين التعلم الآلي على الجهاز ، مما يقلل من زمن الوصول عن طريق معالجة البيانات محليا ، وتعزيز الخصوصية من خلال عدم نقل البيانات الشخصية ، وتقليل حجم النموذج لتوفير المساحة.
دعم منصات متعددة: يوفر TFLite توافقًا واسع النطاق للمنصات، حيث يدعم Android ، iOS ، ولينوكس المدمج، والمتحكمات الدقيقة.
دعم لغة متنوعة: TFLite متوافق مع لغات البرمجة المختلفة ، بما في ذلك Java و Swift و Objective-C و C ++ و Python.
أداء عالي: يحقق أداء فائقا من خلال تسريع الأجهزة وتحسين النموذج.
خيارات النشر في TFLite
قبل أن نلقي نظرة على شيفرة تصدير نماذج YOLO11 إلى تنسيق TFLite، دعنا نفهم كيف تُستخدم نماذج TFLite عادةً.
تقدم TFLite خيارات نشر متنوعة على الجهاز لنماذج التعلم الآلي، بما في ذلك:
- النشر باستخدام Android و iOS: يمكن لتطبيقات Android و iOS مع TFLite تحليل موجزات الكاميرا وأجهزة الاستشعار القائمة على الحافة لاكتشاف الأجسام وتحديدها. تقدم TFLite أيضًا مكتبات iOS الأصلية المكتوبة بلغة Swift و Objective-C. يوضح مخطط البنية أدناه عملية نشر نموذج مدرب على منصات Android و iOS باستخدام TensorFlow لايت.
التنفيذ باستخدام Embedded Linux: في حالة تشغيل الاستدلالات على Raspberry Pi باستخدام Ultralytics لا يفي الدليل بمتطلبات السرعة لحالة الاستخدام الخاصة بك ، يمكنك استخدام نموذج TFLite المصدر لتسريع أوقات الاستدلال. بالإضافة إلى ذلك ، من الممكن تحسين الأداء بشكل أكبر من خلال استخدام ملفكورال إيدج TPU الجهاز.
النشر باستخدام وحدات التحكم الدقيقة: يمكن أيضا نشر نماذج TFLite على وحدات التحكم الدقيقة والأجهزة الأخرى التي تحتوي على بضعة كيلوبايت فقط من الذاكرة. يناسب وقت التشغيل الأساسي 16 كيلوبايت فقط على Arm Cortex M3 ويمكنه تشغيل العديد من الطرز الأساسية. لا يتطلب دعم نظام التشغيل أو أي مكتبات C أو C ++ قياسية أو تخصيص الذاكرة الديناميكية.
التصدير إلى TFLite: تحويل نموذج YOLO11 الخاص بك
يمكنك تحسين كفاءة تنفيذ النماذج على الجهاز وتحسين الأداء من خلال تحويلها إلى تنسيق TFLite.
التركيب
لتثبيت الحزم المطلوبة، قم بتشغيل
للاطلاع على الإرشادات التفصيلية وأفضل الممارسات المتعلقة بعملية التثبيت، راجع دليل التثبيتUltralytics . أثناء تثبيت الحزم المطلوبة لـ YOLO11، إذا واجهت أي صعوبات، راجع دليل المشكلات الشائعة للحصول على الحلول والنصائح.
الاستخدام
قبل الغوص في إرشادات الاستخدام، من المهم ملاحظة أنه على الرغم من أن جميع طرازاتUltralytics YOLO11 متاحة للتصدير، يمكنك التأكد من أن الطراز الذي تختاره يدعم وظيفة التصدير هنا.
الاستخدام
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite format
model.export(format="tflite") # creates 'yolo11n_float32.tflite'
# Load the exported TFLite model
tflite_model = YOLO("yolo11n_float32.tflite")
# Run inference
results = tflite_model("https://ultralytics.com/images/bus.jpg")
لمزيد من التفاصيل حول عملية التصدير ، قم بزيارة Ultralytics صفحة التوثيق الخاصة بالتصدير.
نشر نماذج YOLO11 TFLite المصدرة من YOLO11 TFLite
بعد تصدير نماذج Ultralytics YOLO11 الخاصة بك بنجاح إلى صيغة TFLite، يمكنك الآن نشرها. الخطوة الأولى الأساسية والموصى بها لتشغيل نموذج TFLite هي استخدام طريقة YOLO("model.tflite")، كما هو موضح في مقتطف كود الاستخدام السابق. ومع ذلك، للحصول على إرشادات متعمقة حول نشر نماذج TFLite الخاصة بك في إعدادات أخرى مختلفة، ألق نظرة على الموارد التالية:
Android: دليل البدء السريع لدمج TensorFlow Lite في تطبيقات Android ، حيث يوفر خطوات سهلة المتابعة لإعداد نماذج التعلم الآلي وتشغيلها.
iOS: اطلع على هذا الدليل التفصيلي للمطورين حول دمج ونشر نماذج TensorFlow Lite في تطبيقات iOS ، حيث يقدم إرشادات وموارد خطوة بخطوة.
أمثلة شاملة: تقدم هذه الصفحة نظرة عامة على مختلف TensorFlow أمثلة خفيفة ، تعرض التطبيقات العملية والبرامج التعليمية المصممة لمساعدة المطورين على التنفيذ TensorFlow لايت في مشاريع التعلم الآلي الخاصة بهم على الأجهزة المحمولة وأجهزة الحافة.
الملخص
ركزنا في هذا الدليل على كيفية التصدير إلى تنسيق TFLite. من خلال تحويل نماذج Ultralytics YOLO11 الخاصة بك إلى تنسيق نموذج TFLite، يمكنك تحسين كفاءة وسرعة نماذج YOLO11، مما يجعلها أكثر فعالية ومناسبة لبيئات الحوسبة المتطورة.
لمزيد من التفاصيل حول الاستخدام، قم بزيارة الوثائق الرسمية لـ TFLite.
أيضًا، إذا كنت تشعر بالفضول بشأن عمليات التكامل الأخرى Ultralytics YOLO11، فتأكد من مراجعة صفحة دليل التكامل الخاصة بنا. ستجد الكثير من المعلومات والأفكار المفيدة في انتظارك هناك.
الأسئلة الشائعة
كيف يمكنني تصدير نموذج YOLO11 إلى تنسيق TFLite؟
لتصدير نموذج YOLO11 إلى تنسيق TFLite، يمكنك استخدام مكتبة Ultralytics . أولاً، قم بتثبيت الحزمة المطلوبة باستخدام:
ثم استخدم المقتطف البرمجي التالي لتصدير النموذج الخاص بك:
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TFLite format
model.export(format="tflite") # creates 'yolo11n_float32.tflite'
بالنسبة لمستخدمي CLI ، يمكنك تحقيق ذلك باستخدام:
لمزيد من التفاصيل، قم بزيارة دليل التصديرUltralytics .
ما هي مزايا استخدام TensorFlow Lite لنشر نموذج YOLO11؟
TensorFlow TFLite (TFLite) هو إطار عمل مفتوح المصدر للتعلم العميق مصمم للاستدلال على الجهاز، مما يجعله مثاليًا لنشر نماذج YOLO11 على الأجهزة المحمولة والمضمنة وأجهزة إنترنت الأشياء. تشمل المزايا الرئيسية ما يلي:
- التحسين على الجهاز: تقليل وقت الاستجابة وتعزيز الخصوصية من خلال معالجة البيانات محلياً.
- توافق المنصة: يدعم Android و iOS و و Linux المدمج و MCU.
- الأداء: يستخدم تسريع الأجهزة لتحسين سرعة النموذج وكفاءته.
لمعرفة المزيد، راجع دليل TFLite.
هل من الممكن تشغيل نماذج YOLO11 TFLite على Raspberry Pi؟
نعم، يمكنك تشغيل نماذج YOLO11 TFLite على Raspberry Pi لتحسين سرعات الاستدلال. أولاً، قم بتصدير نموذجك إلى تنسيق TFLite كما هو موضح هنا. بعد ذلك، استخدم أداة مثل TensorFlow Lite Interpreter لتنفيذ النموذج على جهاز Raspberry Pi الخاص بك.
لمزيد من التحسينات، يمكنك التفكير في استخدام Coral Edge TPU. لمعرفة الخطوات التفصيلية، راجع دليل نشر Raspberry Pi الخاص بنا.
هل يمكنني استخدام نماذج TFLite على المتحكمات الدقيقة لتوقعات YOLO11؟
نعم، يدعم TFLite النشر على المتحكمات الدقيقة ذات الموارد المحدودة. لا يتطلب وقت تشغيل TFLite الأساسي سوى 16 كيلوبايت من الذاكرة على متحكمات Arm Cortex M3 ويمكنه تشغيل نماذج YOLO11 الأساسية. وهذا يجعله مناسبًا للنشر على الأجهزة ذات الطاقة الحاسوبية والذاكرة المحدودة.
للبدء، تفضل بزيارة دليل TFLite Micro لوحدات التحكم الدقيقة.
ما هي المنصات المتوافقة مع نماذج YOLO11 المصدرة من TFLite؟
TensorFlow يوفر Lite توافقًا واسعًا مع النظام الأساسي، مما يتيح لك نشر طرازات YOLO11 على مجموعة كبيرة من الأجهزة، بما في ذلك
- Android و iOS: الدعم الأصلي من خلال مكتبات TFLite Android و iOS .
- لينكس المدمج: مثالي لأجهزة الكمبيوتر أحادية اللوحة مثل Raspberry Pi.
- المتحكمات الدقيقة: مناسبة لوحدات MCU ذات الموارد المحدودة.
لمزيد من المعلومات حول خيارات النشر، راجع دليل النشر التفصيلي الخاص بنا.
كيف يمكنني استكشاف المشكلات الشائعة وإصلاحها أثناء تصدير نموذج YOLO11 إلى TFLite؟
إذا واجهت أخطاءً أثناء تصدير نماذج YOLO11 إلى TFLite، فإن الحلول الشائعة تتضمن ما يلي:
- تحقق من توافق الحزمة: تأكد من أنك تستخدم إصدارات متوافقة من Ultralytics و TensorFlow. راجع دليل التثبيت الخاص بنا.
- دعم الطراز: تحقق من أن طراز YOLO11 المحدد يدعم تصدير TFLite عن طريق التحقق هنا.
لمزيد من النصائح الإضافية حول استكشاف الأخطاء وإصلاحها، تفضل بزيارة دليل المشكلات الشائعة.