انتقل إلى المحتوى

دليل حول YOLOv8 تصدير النموذج إلى TFLite للنشر

شعار TFLite

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

ال TensorFlow يتيح لك تنسيق التصدير Lite أو TFLite تحسين ملف Ultralytics YOLOv8 نماذج لمهام مثل اكتشاف الكائنات وتصنيف الصور في التطبيقات المستندة إلى جهاز Edge. في هذا الدليل ، سنتعرف على خطوات تحويل نماذجك إلى تنسيق 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

قبل أن ننظر إلى رمز التصدير YOLOv8 نماذج لتنسيق 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: تحويل ملف YOLOv8 نموذج

يمكنك تحسين كفاءة تنفيذ النموذج على الجهاز وتحسين الأداء عن طريق تحويلها إلى تنسيق TFLite.

تركيب

لتثبيت الحزم المطلوبة ، قم بتشغيل:

تركيب

# Install the required package for YOLOv8
pip install ultralytics

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

استخدام

قبل الغوص في تعليمات الاستخدام ، من المهم ملاحظة أنه في حين أن جميع Ultralytics YOLOv8 النماذج متاحة للتصدير ، يمكنك التأكد من أن النموذج الذي تحدده يدعم وظائف التصدير هنا.

استخدام

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to TFLite format
model.export(format="tflite")  # creates 'yolov8n_float32.tflite'

# Load the exported TFLite model
tflite_model = YOLO("yolov8n_float32.tflite")

# Run inference
results = tflite_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to TFLite format
yolo export model=yolov8n.pt format=tflite  # creates 'yolov8n_float32.tflite'

# Run inference with the exported model
yolo predict model='yolov8n_float32.tflite' source='https://ultralytics.com/images/bus.jpg'

لمزيد من التفاصيل حول عملية التصدير ، قم بزيارة Ultralytics صفحة التوثيق الخاصة بالتصدير.

نشر التصدير YOLOv8 نماذج TFLite

بعد تصدير الخاص بك بنجاح Ultralytics YOLOv8 نماذج بتنسيق TFLite ، يمكنك الآن نشرها. الخطوة الأولى الأساسية والموصى بها لتشغيل نموذج TFLite هي استخدام YOLOطريقة ("model.tflite") ، كما هو موضح في مقتطف شفرة الاستخدام السابق. ومع ذلك ، للحصول على إرشادات متعمقة حول نشر نماذج TFLite الخاصة بك في إعدادات أخرى مختلفة ، ألق نظرة على الموارد التالية:

  • Android: دليل بدء سريع لدمج TensorFlow Lite في تطبيقات Android ، يوفر خطوات سهلة المتابعة لإعداد نماذج التعلم الآلي وتشغيلها.

  • iOS: اطلع على هذا الدليل التفصيلي للمطورين حول دمج ونشر نماذج TensorFlow Lite في تطبيقات iOS ، حيث يقدم إرشادات وموارد خطوة بخطوة.

  • أمثلة شاملة: تقدم هذه الصفحة نظرة عامة على مختلف TensorFlow أمثلة خفيفة ، تعرض التطبيقات العملية والبرامج التعليمية المصممة لمساعدة المطورين على التنفيذ TensorFlow لايت في مشاريع التعلم الآلي الخاصة بهم على الأجهزة المحمولة وأجهزة الحافة.

ملخص

في هذا الدليل ، ركزنا على كيفية التصدير إلى تنسيق TFLite. عن طريق تحويل Ultralytics YOLOv8 نماذج لتنسيق نموذج TFLite ، يمكنك تحسين كفاءة وسرعة YOLOv8 النماذج ، مما يجعلها أكثر فعالية ومناسبة لبيئات الحوسبة الحافة.

لمزيد من التفاصيل حول الاستخدام، قم بزيارة الوثائق الرسمية لـ TFLite.

أيضا ، إذا كنت مهتما بالآخرين Ultralytics YOLOv8 عمليات التكامل ، تأكد من مراجعة صفحة دليل التكامل الخاصة بنا. ستجد الكثير من المعلومات والأفكار المفيدة في انتظارك هناك.

الأسئلة المتداولة

كيف يمكنني تصدير نموذج YOLOv8 إلى تنسيق TFLite؟

لتصدير نموذج YOLOv8 إلى تنسيق TFLite، يمكنك استخدام مكتبة Ultralytics . أولاً، قم بتثبيت الحزمة المطلوبة باستخدام:

pip install ultralytics

ثم استخدم المقتطف البرمجي التالي لتصدير النموذج الخاص بك:

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to TFLite format
model.export(format="tflite")  # creates 'yolov8n_float32.tflite'

بالنسبة لمستخدمي CLI ، يمكنك تحقيق ذلك باستخدام:

yolo export model=yolov8n.pt format=tflite  # creates 'yolov8n_float32.tflite'

لمزيد من التفاصيل، قم بزيارة دليل التصديرUltralytics .

ما هي فوائد استخدام TensorFlow Lite لنشر نموذج YOLOv8 ؟

TensorFlow TFLite (TFLite) هو إطار عمل مفتوح المصدر للتعلم العميق مصمم للاستدلال على الجهاز، مما يجعله مثاليًا لنشر نماذج YOLOv8 على الأجهزة المحمولة والمضمنة وأجهزة إنترنت الأشياء. تشمل المزايا الرئيسية ما يلي:

  • التحسين على الجهاز: تقليل وقت الاستجابة وتعزيز الخصوصية من خلال معالجة البيانات محلياً.
  • توافق المنصة: يدعم Android و iOS و و Linux المدمج و MCU.
  • الأداء: يستخدم تسريع الأجهزة لتحسين سرعة النموذج وكفاءته.

لمعرفة المزيد، راجع دليل TFLite.

هل من الممكن تشغيل نماذج YOLOv8 TFLite على Raspberry Pi؟

نعم، يمكنك تشغيل نماذج YOLOv8 TFLite على Raspberry Pi لتحسين سرعات الاستدلال. أولاً، قم بتصدير نموذجك إلى تنسيق TFLite كما هو موضح هنا. بعد ذلك، استخدم أداة مثل TensorFlow Lite Interpreter لتنفيذ النموذج على جهاز Raspberry Pi الخاص بك.

لمزيد من التحسينات، يمكنك التفكير في استخدام Coral Edge TPU. لمعرفة الخطوات التفصيلية، راجع دليل نشر Raspberry Pi الخاص بنا.

هل يمكنني استخدام نماذج TFLite على المتحكمات الدقيقة للتنبؤات YOLOv8 ؟

نعم، يدعم TFLite النشر على المتحكمات الدقيقة ذات الموارد المحدودة. لا يتطلب وقت تشغيل TFLite الأساسي سوى 16 كيلوبايت من الذاكرة على متحكمات Arm Cortex M3 ويمكنه تشغيل نماذج YOLOv8 الأساسية. وهذا يجعله مناسبًا للنشر على الأجهزة ذات القدرة الحاسوبية والذاكرة المحدودة.

للبدء، تفضل بزيارة دليل TFLite Micro لوحدات التحكم الدقيقة.

ما هي المنصات المتوافقة مع نماذج YOLOv8 المصدرة من TFLite؟

TensorFlow يوفر Lite توافقًا واسع النطاق مع النظام الأساسي، مما يتيح لك نشر نماذج YOLOv8 على مجموعة كبيرة من الأجهزة، بما في ذلك:

  • Android و iOS: الدعم الأصلي من خلال مكتبات TFLite Android و iOS .
  • لينكس المدمج: مثالي لأجهزة الكمبيوتر أحادية اللوحة مثل Raspberry Pi.
  • المتحكمات الدقيقة: مناسبة لوحدات MCU ذات الموارد المحدودة.

لمزيد من المعلومات حول خيارات النشر، راجع دليل النشر التفصيلي الخاص بنا.

كيف يمكنني استكشاف المشكلات الشائعة وإصلاحها أثناء تصدير النموذج YOLOv8 إلى TFLite؟

إذا واجهتك أخطاء أثناء تصدير النماذج YOLOv8 إلى TFLite، فإن الحلول الشائعة تتضمن ما يلي:

  • تحقق من توافق الحزمة: تأكد من أنك تستخدم إصدارات متوافقة من Ultralytics و TensorFlow. راجع دليل التثبيت الخاص بنا.
  • دعم الطراز: تحقق من أن الطراز المحدد YOLOv8 يدعم تصدير TFLite عن طريق التحقق هنا.

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



تم الإنشاء 2024-03-01، تم التحديث 2024-07-05
المؤلفون: جلين-جوتشر (6)، أبيرامي فينا (1)

التعليقات