رؤية YOLO 2026:

كيفية تشغيل Ultralytics YOLO26 على Raspberry Pi باستخدام Coral Edge TPU#

Raspberry Pi with Edge TPU accelerator

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



Watch: How to Run Inference on Raspberry Pi using Google Coral Edge TPU

لماذا تستخدم Coral Edge TPU؟#

إن Coral Edge TPU هو جهاز مدمج يضيف معالجاً مساعداً Edge TPU إلى نظامك، مما يتيح استنتاج ML عالي الأداء ومنخفض الطاقة لنماذج TensorFlow Lite. وهو خيار ممتاز لعمليات النشر المضمنة والمحمولة حيث لا يمكن لوحدة المعالجة المركزية (CPU) وحدها مواكبة المتطلبات:

  • استنتاج أسرع — يقوم Edge TPU بتسريع النماذج المكممة (quantized) بشكل يفوق بكثير ما تحققه وحدة المعالجة المركزية لـ Raspberry Pi بمفردها.
  • استهلاك منخفض للطاقة — يوفر إنتاجية عالية لكل واط، وهو مثالي لعمليات النشر التي تعمل بالبطارية أو بالطاقة الشمسية.
  • التوصيل والتشغيل — يتصل USB Accelerator عبر منفذ USB 3.0، لذا لا يلزم أي تكامل إضافي للعتاد.
وقت تشغيل محدث لـ TensorFlow Lite الحالي

الدليل الرسمي لـ Coral قديم: لم تعد إصدارات بيئة تشغيل Coral الأصلية تعمل مع إصدارات بيئة تشغيل TensorFlow Lite الحالية، ولم يشهد المشروع أي تحديثات بين عامي 2021 و2025. يستخدم هذا الدليل بيئة تشغيل Edge TPU تتم صيانتها بفعالية وأحدث tflite-runtime لكي يعمل المُسَرِّع على تثبيت نظام تشغيل Raspberry Pi OS الحالي.

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

  • Raspberry Pi 4B (يوصى بـ 2 جيجابايت أو أكثر) أو Raspberry Pi 5 (موصى به)
  • Raspberry Pi OS Bullseye/Bookworm (64 بت) مع واجهة سطح المكتب (موصى به)
  • Coral USB Accelerator
  • منصة لا تعمل بمعمارية ARM (مثل Google Colab، أو جهاز يعمل بنظام x86_64 Linux، أو حاوية Ultralytics Docker) لتصدير النموذج، نظراً لأن مترجم Edge TPU غير متوفر على معمارية ARM

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

مع توفر المتطلبات الأساسية، يتكون سير العمل من ثلاث خطوات: تثبيت بيئة تشغيل Edge TPU على Raspberry Pi، وتصدير نموذجك على جهاز لا يعمل بمعمارية ARM، وتشغيل الاستدلال مرة أخرى على Raspberry Pi.

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

يأتي وقت التشغيل في إصدارات متعددة، لذا اختر ما يتوافق مع نظام التشغيل الخاص بك. يشغل الإصدار عالي التردد (high-frequency) وحدة Edge TPU بسرعة ساعة أعلى لأداء أفضل، ولكنه قد يسبب اختناقاً حرارياً — استخدم نوعاً من التبريد إذا اخترته.

نظام تشغيل Raspberry Piوضع التردد العاليالإصدار المطلوب تنزيله
Bullseye 32bitلاlibedgetpu1-std_ ... .bullseye_armhf.deb
Bullseye 64bitلاlibedgetpu1-std_ ... .bullseye_arm64.deb
Bullseye 32bitنعمlibedgetpu1-max_ ... .bullseye_armhf.deb
Bullseye 64bitنعمlibedgetpu1-max_ ... .bullseye_arm64.deb
Bookworm 32bitلاlibedgetpu1-std_ ... .bookworm_armhf.deb
Bookworm 64bitلاlibedgetpu1-std_ ... .bookworm_arm64.deb
Bookworm 32bitنعمlibedgetpu1-max_ ... .bookworm_armhf.deb
Bookworm 64bitنعمlibedgetpu1-max_ ... .bookworm_arm64.deb

قم بتنزيل أحدث إصدار من هنا، ثم قم بتثبيت حزمة .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، قم بتحويل نموذجك إلى تنسيق متوافق. قم بتنفيذ عملية التصدير على منصة لا تعمل بمعمارية ARM — مثل Google Colab، أو جهاز يعمل بنظام x86_64 Linux، أو حاوية Ultralytics Docker الرسمية، أو منصة Ultralytics — نظراً لأن مترجم 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")

يتم حفظ النموذج المُصدَّر في مجلد <model_name>_saved_model/ باسم <model_name>_full_integer_quant_edgetpu.tflite.

حافظ على اللاحقة `_edgetpu.tflite`

يجب أن ينتهي اسم الملف بـ _edgetpu.tflite. إذا قمت بإعادة تسميته إلى أي شيء آخر، فسوف يقوم Ultralytics بتحميله كنموذج TensorFlow Lite عادي بدلاً من اكتشاف Edge TPU ولن يتم استخدام المُسَرِّع.

تشغيل الاستنتاج على Edge TPU#

قبل تشغيل النموذج، قم بتثبيت المكتبات الصحيحة على Raspberry Pi. إذا كان 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")

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

الاستنتاج باستخدام وحدات Edge TPU متعددة

إذا كان لديك عدة وحدات Edge TPU، يمكنك تحديد وحدة معينة باستخدام وسيط device.

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

المقارنات المعيارية#

تم قياس الأرقام أدناه باستخدام Raspberry Pi OS Bookworm 64-bit وجهاز USB Coral Edge TPU. وهي تظهر وقت الاستنتاج فقط (باستثناء المعالجة الأولية/اللاحقة) وتعتبر مرجعاً نسبياً للتسريع الذي يوفره Edge TPU عبر نماذج وأوضاع Pi المختلفة.

حول هذه الأرقام

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

حجم الصورةالنموذجوقت الاستنتاج القياسي (ملي ثانية)وقت الاستنتاج بالتردد العالي (ملي ثانية)
320YOLOv8n32.226.7
320YOLOv8s47.139.8
512YOLOv8n73.560.7
512YOLOv8s149.6125.3

في المتوسط:

  • يعد Raspberry Pi 5 أسرع بنسبة 22% في الوضع القياسي مقارنة بـ Raspberry Pi 4B.
  • يعد Raspberry Pi 5 أسرع بنسبة 30.2% في وضع التردد العالي مقارنة بـ Raspberry Pi 4B.
  • يعد وضع التردد العالي أسرع بنسبة 28.4% من الوضع القياسي.

الخلاصة#

يحول Coral Edge TPU جهاز Raspberry Pi إلى جهاز استدلال قادر ومنخفض الطاقة لنموذج Ultralytics YOLO26. قم بتصدير نموذجك على جهاز لا يعمل بمعمارية ARM، واحتفظ باللاحقة _edgetpu.tflite، وشغله باستخدام tflite-runtime على Raspberry Pi للحصول على استدلال طرفي مُسَرَّع. لمزيد من خيارات النشر، راجع دليل Raspberry Pi.

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

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

  • قم بتنزيل حزمة .deb المناسبة لإصدار نظام التشغيل Raspberry Pi OS الخاص بك من هذا الرابط، ثم قم بتثبيتها:

    sudo dpkg -i path/to/package.deb

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

  • نعم. قم بتنفيذ عملية التصدير على Google Colab، أو جهاز يعمل بنظام x86_64 Linux، أو حاوية Ultralytics Docker؛ يمكنك أيضاً استخدام منصة Ultralytics. إليك كيفية التصدير باستخدام 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")

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

  • إذا كان TensorFlow مثبتًا لديك وتحتاج إلى التبديل إلى tflite-runtime، فالغِ تثبيت TensorFlow أولاً:

    pip uninstall tensorflow tensorflow-aarch64

    ثم قم بتثبيت أو تحديث tflite-runtime:

    pip install -U tflite-runtime

    للحصول على تعليمات مفصلة، راجع قسم تشغيل الاستدلال على Edge TPU.

  • بعد تصدير نموذج YOLO26 الخاص بك إلى تنسيق متوافق مع Edge TPU، قم بتشغيل الاستدلال باستخدام القصاصات البرمجية التالية. يجب أن يحتفظ ملف النموذج باللاحقة _edgetpu.tflite لكي يقوم Ultralytics بتحميله على Edge 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")

    توجد التفاصيل الشاملة حول وضع التنبؤ على صفحة التنبؤ.

التعليقات