İçeriğe geç

Coral Edge TPU Raspberry Pi üzerinde Ultralytics YOLO11 ile 🚀

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

Coral Edge TPU nedir?

The Coral Edge TPU is a compact device that adds an Edge TPU coprocessor to your system. It enables low-power, high-performance ML inference for TensorFlow Lite models. Read more at the Coral Edge TPU home page.



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

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

Many people want to run their models on an embedded or mobile device such as a Raspberry Pi, since they are very power efficient and can be used in many different applications. However, the inference performance on these devices is usually poor even when using formats like ONNX or OpenVINO. The Coral Edge TPU is a great solution to this problem, since it can be used with a Raspberry Pi and accelerate inference performance greatly.

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 arasında herhangi bir güncelleme yapılmadı. Bu kılavuz size 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 SistemiYüksek frekans moduİndirilecek sürüm
Bullseye 32bitHayırlibedgetpu1-std_ ... .bullseye_armhf.deb
Bullseye 64bitHayırlibedgetpu1-std_ ... .bullseye_arm64.deb
Bullseye 32bitEvetlibedgetpu1-max_ ... .bullseye_armhf.deb
Bullseye 64bitEvetlibedgetpu1-max_ ... .bullseye_arm64.deb
Kitap Kurdu 32bitHayırlibedgetpu1-std_ ... .bookworm_armhf.deb
Kitap Kurdu 64bitHayırlibedgetpu1-std_ ... .bookworm_arm64.deb
Kitap Kurdu 32bitEvetlibedgetpu1-max_ ... .bookworm_armhf.deb
Kitap Kurdu 64bitEvetlibedgetpu1-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'i kullanmak için TPU, modelinizi uyumlu bir biçime dönüştürmeniz gerekir. Edge TPU derleyicisi ARM'de mevcut olmadığından, Google Colab, x86_64 Linux makinesinde, resmi Ultralytics Docker konteynerini kullanarak veya Ultralytics HUB kullanarak dışa aktarmayı çalıştırmanız önerilir. Kullanılabilir argümanlar için Dışa Aktarma Modu 'na bakın.

Modeli dışa aktarma

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. Modelinizin aşağıdaki son ek ile bitmesi önemlidir _edgetpu.tfliteAksi takdirde ultralytics bir Edge TPU modeli kullandığınızı bilmez.

Modelin çalıştırılması

Modeli gerçekten çalıştırmadan önce, doğru kütüphaneleri yüklemeniz gerekecektir.

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

Şimdi aşağıdaki kodu kullanarak çıkarımı çalıştırabilirsiniz:

Modelin çalıştırılması

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

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

Çoklu Edge TPU'lar ile çıkarım

Birden fazla Edge TPU'nuz varsa, belirli bir TPU seçmek için aşağıdaki kodu kullanabilirsiniz.

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

SSS

Coral Edge TPU nedir ve Raspberry Pi'nin performansını Ultralytics YOLO11 ile nasıl artırır?

The Coral Edge TPU is a compact device designed to add an Edge TPU coprocessor to your system. This coprocessor enables low-power, high-performance machine learning inference, particularly optimized for TensorFlow Lite models. When using a Raspberry Pi, the Edge TPU accelerates ML model inference, significantly boosting performance, especially for Ultralytics YOLO11 models. You can read more about the Coral Edge TPU on their home page.

Coral Edge TPU çalışma zamanını Raspberry Pi'ye nasıl kurabilirim?

Coral Edge TPU çalışma zamanını Raspberry Pi'nize yüklemek için uygun .deb 'den Raspberry Pi OS sürümünüz için paket bu bağlantı. İndirdikten sonra, yüklemek için aşağıdaki komutu kullanın:

sudo dpkg -i path/to/package.deb

Kurulum İzlen ecek Yol bölümünde özetlenen adımları izleyerek önceki Coral Edge TPU çalışma zamanı sürümlerini kaldırdığınızdan emin olun.

Ultralytics YOLO11 modelimi Coral Edge TPU ile uyumlu olacak şekilde dışa aktarabilir miyim?

Yes, you can export your Ultralytics YOLO11 model to be compatible with the Coral Edge TPU. It is recommended to perform the export on Google Colab, an x86_64 Linux machine, or using the Ultralytics Docker container. You can also use Ultralytics HUB for exporting. Here is how you can export your model using Python and CLI:

Modeli dışa aktarma

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

Daha fazla bilgi için Dışa Aktarma Modu belgelerine bakın.

Raspberry Pi'mde TensorFlow zaten yüklüyse ancak bunun yerine tflite-runtime kullanmak istiyorsam ne yapmalıyım?

Raspberry Pi'nizde TensorFlow yüklüyse ve şu adrese geçmeniz gerekiyorsa tflite-runtimekullanarak önce TensorFlow adresini kaldırmanız gerekir:

pip uninstall tensorflow tensorflow-aarch64

Ardından, yükleyin veya güncelleyin tflite-runtime aşağıdaki komut ile:

pip install -U tflite-runtime

Belirli bir tekerlek için, örneğin TensorFlow 2.15.0 tflite-runtimeadresinden indirebilirsiniz. bu bağlantı ve kullanarak yükleyin pip. Ayrıntılı talimatlar modelin çalıştırılması bölümünde mevcuttur Modeli Çalıştırma.

Coral Edge TPU kullanarak Raspberry Pi üzerinde dışa aktarılmış bir YOLO11 modeli ile çıkarımı nasıl çalıştırabilirim?

YOLO11 modelinizi Edge TPU uyumlu bir biçime aktardıktan sonra, aşağıdaki kod parçacıklarını kullanarak çıkarımı çalıştırabilirsiniz:

Modelin çalıştırılması

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

Tahmin modu özelliklerinin tamamına ilişkin kapsamlı ayrıntılar Tahmin Sayfasında bulunabilir.

📅 9 ay önce oluşturuldu ✏️ 1 ay önce güncellendi

Yorumlar