تخطي إلى المحتوى

كورال إيدج TPU على جهاز Raspberry Pi مع Ultralytics YOLO11 🚀

كمبيوتر Raspberry Pi أحادي اللوحة مع مسرع USB Edge TPU

ما هي حافة المرجان TPU ؟

إن Coral Edge TPU هو جهاز صغير الحجم يضيف معالج مساعد Edge TPU إلى نظامك. وهو يمكّنك من استنتاج تعلّم الآلة منخفض الطاقة وعالي الأداء لنماذج TensorFlow النماذج الخفيفة. اقرأ المزيد على الصفحة الرئيسية Coral Edge TPU .



شاهد: كيفية تشغيل الاستدلال على راسبيري باي باستخدام Google كورال إيدج TPU

تعزيز أداء موديل Raspberry Pi مع Coral Edge TPU

يرغب العديد من الأشخاص في تشغيل نماذجهم على جهاز مدمج أو محمول مثل Raspberry Pi، نظرًا لأنها موفرة جدًا للطاقة ويمكن استخدامها في العديد من التطبيقات المختلفة. ومع ذلك، عادةً ما يكون أداء الاستدلال على هذه الأجهزة ضعيفًا حتى عند استخدام تنسيقات مثل ONNX أو OpenVINO. يعد Coral Edge TPU حلاً رائعًا لهذه المشكلة، حيث يمكن استخدامه مع Raspberry Pi وتسريع أداء الاستدلال بشكل كبير.

الحافة TPU على راسبيري باي مع TensorFlow لايت (جديد) ⭐

الدليل الحالي من Coral حول كيفية استخدام Edge TPU مع Raspberry Pi قديم، ولم تعد إصدارات وقت تشغيل Coral Edge TPU الحالية تعمل مع إصدارات وقت التشغيل الحالية TensorFlow Lite. وبالإضافة إلى ذلك، يبدو أن Google قد تخلى عن مشروع كورال تماماً، ولم تكن هناك أي تحديثات بين عامي 2021 و 2024. سيوضح لك هذا الدليل كيفية جعل Edge TPU يعمل مع أحدث إصدارات وقت التشغيل TensorFlow Lite ووقت تشغيل Coral Edge TPU المحدث على كمبيوتر Raspberry Pi أحادي اللوحة (SBC).

المتطلبات الأساسية

شرح تفصيلي للتثبيت

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

تثبيت وقت تشغيل Edge TPU Edge

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

نظام تشغيل Raspberry Pi OS وضع التردد العالي إصدار للتحميل
بولسي 32 بت لا يوجد libedgetpu1-std_ ... .bullseye_armhf.deb
بولزاي 64 بت لا يوجد libedgetpu1-std_ ... .bullseye_arm64.deb
بولسي 32 بت نعم libedgetpu1-max_ ... .bullseye_armhf.deb
بولزاي 64 بت نعم libedgetpu1-max_ ... .bullseye_arm64.deb
دودة الكتب 32 بت لا يوجد libedgetpu1-std_ ... .bookworm_armhf.deb
دودة الكتب 64 بت لا يوجد libedgetpu1-std_ ... .bookworm_arm64.deb
دودة الكتب 32 بت نعم libedgetpu1-max_ ... .bookworm_armhf.deb
دودة الكتب 64 بت نعم libedgetpu1-max_ ... .bookworm_arm64.deb

قم بتنزيل أحدث إصدار من هنا.

بعد تنزيل الملف، يمكنك تثبيته باستخدام الأمر التالي:

sudo dpkg -i path/to/package.deb

بعد تثبيت وقت التشغيل، تحتاج إلى توصيل جهاز Coral Edge TPU بمنفذ USB 3.0 على جهاز Raspberry Pi. هذا لأنه، وفقًا للدليل الرسمي، فإن udev يجب أن تدخل القاعدة حيز التنفيذ بعد التثبيت.

مهم

إذا كان لديك بالفعل وقت تشغيل Coral Edge TPU مثبتًا لديك، فقم بإلغاء تثبيته باستخدام الأمر التالي.

# If you installed the standard version
sudo apt remove libedgetpu1-std

# If you installed the high frequency version
sudo apt remove libedgetpu1-max

قم بتصدير نموذجك إلى نموذج متوافق مع Edge TPU

لاستخدام Edge TPU ، تحتاج إلى تحويل نموذجك إلى تنسيق متوافق. يوصى بتشغيل التصدير على Google Colab، أو على جهاز لينكس x86_64، أو باستخدام حاوية Docker الرسمية Ultralytics Docker، أو باستخدام Ultralytics HUB، نظرًا لأن مترجم Edge TPU غير متوفر على ARM. راجع وضع التصدير لمعرفة الوسيطات المتاحة.

تصدير النموذج

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/model.pt")  # Load an official model or custom model

# Export the model
model.export(format="edgetpu")
yolo export model=path/to/model.pt format=edgetpu  # Export an official model or custom model

سيتم حفظ النموذج الذي تم تصديره في <model_name>_saved_model/ مجلد باسم <model_name>_full_integer_quant_edgetpu.tflite. من المهم أن ينتهي النموذج الخاص بك باللاحقة _edgetpu.tflite، وإلا فإن ultralytics لا يعرف أنك تستخدم طراز Edge TPU .

تشغيل النموذج

قبل أن تتمكن من تشغيل النموذج فعليًا، ستحتاج إلى تثبيت المكتبات الصحيحة.

إذا كان tensorflow مثبت، قم بإلغاء التثبيت tensorflow باستخدام الأمر التالي:

pip uninstall tensorflow tensorflow-aarch64

ثم قم بالتثبيت/التحديث tflite-runtime:

pip install -U tflite-runtime

يمكنك الآن تشغيل الاستدلال باستخدام الكود التالي:

تشغيل النموذج

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/<model_name>_full_integer_quant_edgetpu.tflite")  # Load an official model or custom model

# Run Prediction
model.predict("path/to/source.png")
yolo predict model=path/to/<model_name>_full_integer_quant_edgetpu.tflite source=path/to/source.png  # Load an official model or custom model

اعثر على معلومات شاملة في صفحة Predict للحصول على تفاصيل كاملة عن وضع التنبؤ.

الاستدلال باستخدام وحدات TPU متعددة الحواف

إذا كان لديك العديد من وحدات TPU ذات الحافة يمكنك استخدام الرمز التالي لتحديد TPU.

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/<model_name>_full_integer_quant_edgetpu.tflite")  # Load an official model or custom model

# Run Prediction
model.predict("path/to/source.png")  # Inference defaults to the first TPU

model.predict("path/to/source.png", device="tpu:0")  # Select the first TPU

model.predict("path/to/source.png", device="tpu:1")  # Select the second TPU

الأسئلة الشائعة

ما هو كورال إيدج TPU وكيف يعزز أداء Raspberry Pi مع Ultralytics YOLO11 ؟

Coral Edge TPU هو جهاز صغير الحجم مصمم لإضافة معالج مساعد Edge TPU إلى نظامك. يتيح هذا المعالج المساعد إمكانية الاستدلال على التعلم الآلي منخفض الطاقة وعالي الأداء، وهو محسّن بشكل خاص لنماذج TensorFlow لايت. عند استخدام Raspberry Pi، يعمل المعالج المساعد Edge TPU على تسريع استدلال نموذج التعلم الآلي، مما يعزز الأداء بشكل كبير، خاصةً لنماذج Ultralytics YOLO11 . يمكنك قراءة المزيد حول Coral Edge TPU على صفحتهم الرئيسية.

كيف يمكنني تثبيت وقت تشغيل Coral Edge TPU على جهاز Raspberry Pi؟

لتثبيت وقت تشغيل Coral Edge TPU على جهاز Raspberry Pi الخاص بك، قم بتنزيل .deb حزمة لإصدار نظام التشغيل Raspberry Pi OS الخاص بك من هذا الرابط. بمجرد تنزيله، استخدم الأمر التالي لتثبيته:

sudo dpkg -i path/to/package.deb

تأكد من إلغاء تثبيت أي إصدارات سابقة من وقت تشغيل Coral Edge TPU باتباع الخطوات الموضحة في قسم إرشادات التثبيت.

هل يمكنني تصدير نموذجي Ultralytics YOLO11 الخاص بي ليكون متوافقًا مع نموذج Coral Edge TPU ؟

نعم، يمكنك تصدير نموذج Ultralytics YOLO11 الخاص بك ليكون متوافقًا مع نموذج Coral Edge TPU. يوصى بإجراء التصدير على Google Colab، أو على جهاز لينكس x86_64، أو باستخدام حاوية Docker Ultralytics . يمكنك أيضًا استخدام Ultralytics HUB للتصدير. إليك كيفية تصدير النموذج الخاص بك باستخدام Python و CLI:

تصدير النموذج

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/model.pt")  # Load an official model or custom model

# Export the model
model.export(format="edgetpu")
yolo export model=path/to/model.pt format=edgetpu  # Export an official model or custom model

لمزيد من المعلومات، راجع وثائق وضع التصدير.

ماذا يجب أن أفعل إذا كان TensorFlow مثبتًا بالفعل على جهاز Raspberry Pi الخاص بي ولكنني أريد استخدام tflite-runtime بدلاً من ذلك؟

إذا كان لديك TensorFlow مثبتًا على جهاز Raspberry Pi وتحتاج إلى التبديل إلى tflite-runtime، ستحتاج إلى إلغاء تثبيت TensorFlow أولاً باستخدام:

pip uninstall tensorflow tensorflow-aarch64

بعد ذلك، قم بتثبيت أو تحديث tflite-runtime باستخدام الأمر التالي:

pip install -U tflite-runtime

بالنسبة لعجلة معينة، مثل TensorFlow 2.15.0 2.15.0 tflite-runtimeيمكنك تنزيله من هذا الرابط وتثبيته باستخدام pip. تتوافر تعليمات مفصلة في القسم الخاص بتشغيل النموذج تشغيل النموذج.

كيف أقوم بتشغيل الاستدلال باستخدام نموذج YOLO11 تم تصديره على جهاز Raspberry Pi باستخدام Coral Edge TPU ؟

بعد تصدير نموذج YOLO11 الخاص بك إلى تنسيق متوافق مع إيدج TPU ، يمكنك تشغيل الاستدلال باستخدام المقتطفات البرمجية التالية:

تشغيل النموذج

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/edgetpu_model.tflite")  # Load an official model or custom model

# Run Prediction
model.predict("path/to/source.png")
yolo predict model=path/to/edgetpu_model.tflite source=path/to/source.png  # Load an official model or custom model

يمكن العثور على تفاصيل شاملة حول ميزات وضع التنبؤ الكاملة على صفحة التنبؤ.

📅 تم إنشاؤها قبل 9 أشهر ✏️ تم التحديث منذ 1 شهر

التعليقات