İçeriğe geç

Coral Edge TPU ile Raspberry Pi üzerinde Ultralytics YOLOv8 🚀

USB Edge TPU hızlandırıcılı Raspberry Pi tek kartlı bilgisayar

Coral Edge TPU nedir?

Coral Edge TPU , sisteminize bir Edge TPU yardımcı işlemcisi ekleyen kompakt bir cihazdır. TensorFlow Lite modelleri için düşük güçlü, yüksek performanslı ML çıkarımı sağlar. Coral Edge TPU ana sayfasından daha fazla bilgi edinin.

Coral Edge ile Raspberry Pi Model Performansını Artırın TPU

Birçok kişi modellerini Raspberry Pi gibi gömülü veya mobil bir cihazda çalıştırmak ister, çünkü bu cihazlar güç açısından çok verimlidir ve birçok farklı uygulamada kullanılabilir. Ancak, bu cihazlardaki çıkarım performansı, aşağıdaki gibi formatlar kullanıldığında bile genellikle düşüktür onnx veya openvino. Coral Edge TPU , Raspberry Pi ile kullanılabildiği ve çıkarım performansını büyük ölçüde hızlandırdığı için bu soruna harika bir çözümdür.

TensorFlow Lite ile Raspberry Pi üzerinde Edge TPU (Yeni)⭐

Coral'ın Edge TPU 'un Raspberry Pi ile nasıl kullanılacağına dair mevcut kılavuzu güncel değil ve mevcut Coral Edge TPU çalışma zamanı yapıları artık mevcut TensorFlow Lite çalışma zamanı sürümleriyle çalışmıyor. Buna ek olarak, Google Coral projesini tamamen terk etmiş gibi görünüyor ve 2021 ile 2024 yılları arasında herhangi bir güncelleme yapılmadı. Bu kılavuz, Edge TPU 'u TensorFlow Lite çalışma zamanının en son sürümleriyle ve Raspberry Pi tek kartlı bilgisayarda (SBC) güncellenmiş bir Coral Edge TPU çalışma zamanıyla nasıl çalıştıracağınızı gösterecektir.

Ön Koşullar

Kurulum İzlenecek Yol

Bu kılavuz, halihazırda çalışan bir Raspberry Pi OS kurulumuna sahip olduğunuzu ve ultralytics ve tüm bağımlılıklar. Almak için ultralytics yüklü ise, şu adresi ziyaret edin hızlı başlangıç kılavuzu buraya devam etmeden önce kurulum için.

Edge TPU çalışma zamanının yüklenmesi

İlk olarak, Edge TPU çalışma zamanını yüklememiz gerekiyor. Birçok farklı sürüm mevcuttur, bu nedenle işletim sisteminiz için doğru sürümü seçmeniz gerekir.

Raspberry Pi İşletim Sistemi Yüksek frekans modu İndirilecek sürüm
Bullseye 32bit Hayır libedgetpu1-std_ ... .bullseye_armhf.deb
Bullseye 64bit Hayır libedgetpu1-std_ ... .bullseye_arm64.deb
Bullseye 32bit Evet libedgetpu1-max_ ... .bullseye_armhf.deb
Bullseye 64bit Evet libedgetpu1-max_ ... .bullseye_arm64.deb
Kitap Kurdu 32bit Hayır libedgetpu1-std_ ... .bookworm_armhf.deb
Kitap Kurdu 64bit Hayır libedgetpu1-std_ ... .bookworm_arm64.deb
Kitap Kurdu 32bit Evet libedgetpu1-max_ ... .bookworm_armhf.deb
Kitap Kurdu 64bit Evet libedgetpu1-max_ ... .bookworm_arm64.deb

En son sürümü buradan indirin.

Dosyayı indirdikten sonra aşağıdaki komut ile kurulum yapabilirsiniz:

sudo dpkg -i path/to/package.deb

Çalışma zamanını kurduktan sonra Coral Edge TPU cihazınızı Raspberry Pi'nizdeki bir USB 3.0 portuna takmanız gerekir. Bunun nedeni, resmi kılavuza göre, yeni bir udev kuralının kurulumdan sonra yürürlüğe girmesi gerekir.

Önemli

Coral Edge TPU çalışma zamanı zaten yüklüyse, aşağıdaki komutu kullanarak kaldırın.

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

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

Modelinizi Edge TPU uyumlu bir modele aktarın

Edge TPU kullanmak için modelinizi uyumlu bir formata dönüştürmeniz gerekir. Edge TPU derleyicisi ARM'de mevcut olmadığından, dışa aktarma işlemini Google Colab, x86_64 Linux makinesinde, resmi Ultralytics Docker konteynerini kullanarak veya Ultralytics HUB kullanarak çalıştırmanız önerilir. Kullanılabilir argümanlar için Dışa Aktarma Modu 'na bakın.

İhracat

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

Dışa aktarılan model şu adrese kaydedilecektir <model_name>_saved_model/ adında bir klasör <model_name>_full_integer_quant_edgetpu.tflite.

Modelin çalıştırılması

Modelinizi dışa aktardıktan sonra, aşağıdaki kodu kullanarak modelinizle çıkarım yapabilirsiniz:

Koşmak

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

Tüm tahmin modu ayrıntıları için Tahmin sayfasında kapsamlı bilgi bulabilirsiniz.

Önemli

Modeli aşağıdakileri kullanarak çalıştırmalısınız tflite-runtime ve değil tensorflow. Eğer tensorflow yüklüyse, tensorflow adresini aşağıdaki komutla kaldırın:

pip uninstall tensorflow tensorflow-aarch64

Sonra yükleyin/güncelleyin tflite-runtime:

pip install -U tflite-runtime

Eğer bir tflite-runtime için tekerlek tensorflow 2.15.0 adresinden indirin Burada ve kullanarak yükleyin pip veya tercih ettiğiniz paket yöneticisini kullanabilirsiniz.



Oluşturma 2024-02-12, Güncelleme 2024-04-27
Yazarlar: glenn-jocher (3), Skillnoob (1)

Yorumlar