Ultralytics YOLO26 ile Raspberry Pi üzerinde Coral Edge TPU 🚀
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üç tüketimli, yüksek performanslı ML çıkarımı sağlar. Daha fazlasını Coral Edge TPU ana sayfasında okuyabilirsin.
Watch: How to Run Inference on Raspberry Pi using Google Coral Edge TPU
Coral Edge TPU ile Raspberry Pi Model Performansını Artır
Pek çok kişi, çok güç verimli oldukları ve birçok farklı uygulamada kullanılabildikleri için modellerini Raspberry Pi gibi gömülü veya mobil cihazlarda çalıştırmak ister. Ancak, ONNX veya OpenVINO gibi formatlar kullanılırken bile bu cihazlardaki çıkarım performansı genellikle düşüktür. Coral Edge TPU, bir 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'nun Raspberry Pi ile nasıl kullanılacağına dair mevcut kılavuzu eskimiştir ve mevcut Coral Edge TPU çalışma zamanı yapıları, artık güncel TensorFlow Lite çalışma zamanı sürümleriyle çalışmamaktadır. Buna ek olarak, Google Coral projesini tamamen terk etmiş gibi görünmektedir ve 2021 ile 2025 arasında herhangi bir güncelleme olmamıştır. Bu kılavuz, Edge TPU'yu bir Raspberry Pi tek kartlı bilgisayarda (SBC) TensorFlow Lite çalışma zamanının en son sürümleri ve güncellenmiş bir Coral Edge TPU çalışma zamanı ile nasıl çalıştıracağını sana gösterecektir.
Ön koşullar
- Raspberry Pi 4B (2GB veya daha fazlası önerilir) veya Raspberry Pi 5 (Önerilen)
- Raspberry Pi OS Bullseye/Bookworm (64-bit) masaüstü ile (Önerilen)
- Coral USB Accelerator
- Bir Ultralytics PyTorch modelini dışa aktarmak için ARM tabanlı olmayan bir platform
Kurulum Rehberi
Bu kılavuz, halihazırda çalışan bir Raspberry Pi OS kurulumuna sahip olduğunu ve ultralytics ile tüm bağımlılıklarını yüklediğini varsayar. ultralytics kurulumunu yapmak için, buraya devam etmeden önce kurulumu tamamlamak adına hızlı başlangıç kılavuzunu ziyaret et.
Edge TPU çalışma zamanının yüklenmesi
Öncelikle, Edge TPU çalışma zamanını yüklememiz gerekiyor. Mevcut birçok farklı sürüm vardır, bu yüzden işletim sistemin için doğru sürümü seçmen gerekir. Yüksek frekanslı sürüm, Edge TPU'yu daha yüksek bir saat hızında çalıştırır ve bu da performansı artırır. Ancak, bu durum Edge TPU'nun termal olarak yavaşlamasına (thermal throttling) neden olabilir, bu nedenle bir tür soğutma mekanizmasına sahip olman önerilir.
| Raspberry Pi OS | 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 |
| Bookworm 32bit | Hayır | libedgetpu1-std_ ... .bookworm_armhf.deb |
| Bookworm 64bit | Hayır | libedgetpu1-std_ ... .bookworm_arm64.deb |
| Bookworm 32bit | Evet | libedgetpu1-max_ ... .bookworm_armhf.deb |
| Bookworm 64bit | Evet | libedgetpu1-max_ ... .bookworm_arm64.deb |
Dosyayı indirdikten sonra, aşağıdaki komutla yükleyebilirsin:
sudo dpkg -i path/to/package.debÇalışma zamanını yükledikten sonra, yeni udev kuralının geçerli olması için Coral Edge TPU'nu Raspberry Pi üzerindeki bir USB 3.0 bağlantı noktasına tak.
Önemli
Halihazırda Coral Edge TPU çalışma zamanı yüklüyse, aşağıdaki komutu kullanarak onu kaldır.
# If you installed the standard version
sudo apt remove libedgetpu1-std
# If you installed the high-frequency version
sudo apt remove libedgetpu1-maxEdge TPU'ya dışa aktar
Edge TPU'yu kullanmak için modelini uyumlu bir formata dönüştürmen gerekir. Edge TPU derleyicisi ARM üzerinde mevcut olmadığından, dışa aktarma işlemini Google Colab üzerinde, bir x86_64 Linux makinesinde, resmi Ultralytics Docker konteynerini kullanarak veya Ultralytics Platform'u kullanarak yapman önerilir. Mevcut argümanlar için Dışa Aktarma Moduna bak.
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")Dışa aktarılan model, <model_name>_saved_model/ klasörüne <model_name>_full_integer_quant_edgetpu.tflite adıyla kaydedilecektir. Dosya adının _edgetpu.tflite son ekiyle bittiğinden emin ol; aksi takdirde Ultralytics, bir Edge TPU modeli kullandığını algılamayacaktır.
Modelin çalıştırılması
Modeli gerçekten çalıştırmadan önce doğru kütüphaneleri yüklemen gerekecek.
Eğer halihazırda TensorFlow yüklüyse, aşağıdaki komutla onu kaldır:
pip uninstall tensorflow tensorflow-aarch64Ardından tflite-runtime yükle veya güncelle:
pip install -U tflite-runtimeŞimdi aşağıdaki kodla çıkarım yapabilirsin:
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")Tahmin modu ayrıntılarının tamamı için Tahmin sayfasında kapsamlı bilgiler bulabilirsin.
Birden fazla Edge TPU'ya sahipsen, belirli bir TPU'yu seçmek için aşağıdaki kodu kullanabilirsin.
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 TPUKıyaslamalar
Raspberry Pi OS Bookworm 64-bit ve USB Coral Edge TPU ile test edilmiştir.
Gösterilen değer çıkarım süresidir, ön/son işleme dahil değildir.
| Görüntü Boyutu | Model | Standart Çıkarım Süresi (ms) | Yüksek Frekanslı Çıkarım Süresi (ms) |
|---|---|---|---|
| 320 | YOLOv8n | 32.2 | 26.7 |
| 320 | YOLOv8s | 47.1 | 39.8 |
| 512 | YOLOv8n | 73.5 | 60.7 |
| 512 | YOLOv8s | 149.6 | 125.3 |
Ortalama olarak:
- Raspberry Pi 5, standart modda Raspberry Pi 4B'den %22 daha hızlıdır.
- Raspberry Pi 5, yüksek frekanslı modda Raspberry Pi 4B'den %30.2 daha hızlıdır.
- Yüksek frekanslı mod, standart moddan %28.4 daha hızlıdır.
SSS
Coral Edge TPU nedir ve Ultralytics YOLO26 ile Raspberry Pi performansını nasıl artırır?
Coral Edge TPU, sistemine bir Edge TPU yardımcı işlemcisi eklemek için tasarlanmış kompakt bir cihazdır. Bu yardımcı işlemci, özellikle TensorFlow Lite modelleri için optimize edilmiş düşük güç tüketimli, yüksek performanslı makine öğrenimi çıkarımı sağlar. Raspberry Pi kullanırken, Edge TPU özellikle Ultralytics YOLO26 modelleri için çıkarım performansını hızlandırarak önemli ölçüde artırır. Coral Edge TPU hakkında daha fazlasını ana sayfalarında okuyabilirsin.
Raspberry Pi'ye Coral Edge TPU çalışma zamanını nasıl yüklerim?
To install the Coral Edge TPU runtime on your Raspberry Pi, download the appropriate .deb package for your Raspberry Pi OS version from this link. Once downloaded, use the following command to install it:
sudo dpkg -i path/to/package.debKurulum Rehberi bölümünde belirtilen adımları izleyerek önceki Coral Edge TPU çalışma zamanı sürümlerini kaldırdığından emin ol.
Ultralytics YOLO26 modelimi Coral Edge TPU ile uyumlu olacak şekilde dışa aktarabilir miyim?
Evet, Ultralytics YOLO26 modelini Coral Edge TPU ile uyumlu olacak şekilde dışa aktarabilirsin. Dışa aktarma işlemini Google Colab üzerinde, bir x86_64 Linux makinesinde veya Ultralytics Docker konteynerini kullanarak yapman önerilir. Dışa aktarma için Ultralytics Platform'u da kullanabilirsin. Python ve CLI kullanarak modelini şu şekilde dışa aktarabilirsin:
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")Daha fazla bilgi için Dışa Aktarma Modu belgelerine başvur.
Raspberry Pi'mde halihazırda TensorFlow yüklüyse ancak bunun yerine tflite-runtime kullanmak istiyorsam ne yapmalıyım?
Raspberry Pi'nde TensorFlow yüklüyse ve tflite-runtimea geçmen gerekiyorsa, öncelikle şu komutu kullanarak TensorFlow'u kaldırmalısın:
pip uninstall tensorflow tensorflow-aarch64Ardından, şu komutla tflite-runtime yükle veya güncelle:
pip install -U tflite-runtimeAyrıntılı talimatlar için Modeli Çalıştırma bölümüne bak.
Coral Edge TPU kullanarak Raspberry Pi üzerinde dışa aktarılmış bir YOLO26 modeliyle nasıl çıkarım yaparım?
YOLO26 modelini Edge TPU uyumlu bir formata dışa aktardıktan sonra, aşağıdaki kod parçacıklarını kullanarak çıkarım yapabilirsin:
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")Tam tahmin modu özellikleri hakkında kapsamlı ayrıntılar Tahmin Sayfasında bulunabilir.