Raspberry Pi üzerinde Coral Edge TPU ile Ultralytics YOLO26 nasıl çalıştırılır#
Bir Raspberry Pi, uç noktada (edge) bilgisayarlı görü çalıştırmak için güç açısından verimli ve uygun fiyatlı bir platformdur, ancak cihaz üzerindeki çıkarım ONNX veya OpenVINO gibi optimize edilmiş formatlarda bile yavaştır. Pi'yi bir Coral Edge TPU yardımcı işlemcisiyle eşleştirmek, çıkarımı özel donanıma devreder ve hızı dramatik ölçüde artırır. Bu kılavuz, çalışma zamanını (runtime) nasıl kuracağınızı, bir Ultralytics YOLO26 modelini Edge TPU formatına nasıl aktaracağınızı ve hızlandırılmış çıkarımı nasıl çalıştıracağınızı göstermektedir.
Watch: How to Run Inference on Raspberry Pi using Google Coral Edge TPU
Neden Coral Edge TPU Kullanmalısın?#
Coral Edge TPU, sistemine bir Edge TPU yardımcı işlemcisi ekleyen kompakt bir cihazdır ve TensorFlow Lite modelleri için düşük güçlü, yüksek performanslı makine öğrenimi çıkarımı sağlar. Yalnızca CPU'nun yetersiz kaldığı gömülü ve mobil dağıtımlar için harika bir çözümdür:
- Daha hızlı çıkarım — Edge TPU, optimize edilmiş modelleri Raspberry Pi CPU'sunun tek başına elde edebileceğinden çok daha hızlı bir şekilde hızlandırır.
- Düşük güç tüketimi — Watt başına yüksek iş hacmi sağlar, pil veya güneş enerjisi ile çalışan dağıtımlar için idealdir.
- Tak-çalıştır — USB Accelerator USB 3.0 üzerinden bağlanır, bu nedenle ekstra bir donanım entegrasyonu gerekmez.
Resmi Coral kılavuzu eskimiştir: orijinal Coral çalışma zamanı yapıları artık güncel TensorFlow Lite çalışma zamanı sürümleriyle çalışmamaktadır ve proje 2021 ile 2025 yılları arasında hiçbir güncelleme almamıştır. Bu kılavuz, aktif olarak bakımı yapılan bir Edge TPU çalışma zamanını ve en son tflite-runtime sürümünü kullanır, böylece hızlandırıcı güncel bir Raspberry Pi OS kurulumunda çalışır.
Ön koşullar#
- Raspberry Pi 4B (2GB veya daha fazlası önerilir) veya Raspberry Pi 5 (Önerilen)
- Masaüstü sürümüyle birlikte Raspberry Pi OS Bullseye/Bookworm (64-bit) (Önerilen)
- Coral USB Accelerator
- Edge TPU derleyicisi ARM üzerinde mevcut olmadığından, modeli dışarı aktarmak için ARM olmayan bir platform (Google Colab, bir x86_64 Linux makinesi veya Ultralytics Docker container)
Bu kılavuz, ultralytics ve bağımlılıkları kurulu olan çalışan bir Raspberry Pi OS kurulumuna halihazırda sahip olduğunuzu varsayar. Değilse, önce hızlı başlangıç kılavuzunu takip edin.
Ön koşullar hazır olduğunda, iş akışı üç adımlıdır: Pi üzerinde Edge TPU çalışma zamanını kurun, ARM olmayan bir makinede modelinizi dışarı aktarın ve Pi üzerinde çıkarımı çalıştırın.
Edge TPU Çalışma Zamanını Kur#
Çalışma zamanı birkaç farklı sürümle gelir, bu yüzden işletim sisteminle eşleşeni seç. Yüksek frekanslı sürüm, daha iyi performans için Edge TPU'yu daha yüksek saat hızında çalıştırır, ancak bu termal daralmaya neden olabilir — eğer bunu seçersen bir tür soğutma sistemi kullan.
| 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 |
En son sürümü buradan indirin, ardından .deb paketini kurun:
sudo dpkg -i path/to/package.debÇalışma zamanını kurduktan sonra, yeni udev kuralının geçerli olabilmesi için Coral Edge TPU'nuzu Raspberry Pi üzerindeki bir USB 3.0 bağlantı noktasına takın.
Önce mevcut çalışma zamanını kaldır
Eğer halihazırda Coral Edge TPU çalışma zamanı yüklüyse, yeni bir sürüm kurmadan önce 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-maxModelini Edge TPU Formatına Aktar#
Edge TPU'yu kullanmak için modelinizi uyumlu bir biçime dönüştürün. Dışarı aktarma işlemini ARM olmayan bir platformda — Google Colab, bir x86_64 Linux makinesi, resmi Ultralytics Docker container veya Ultralytics Platform — çalıştırın, çünkü Edge TPU derleyicisi ARM üzerinde mevcut değildir. Kullanılabilir argümanlar için Dışarı Aktarma modu bölümüne bakın.
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ışarı aktarılan model, <model_name>_saved_model/ klasörüne <model_name>_full_integer_quant_edgetpu.tflite olarak kaydedilir.
Dosya adı _edgetpu.tflite ile bitmelidir. Başka bir adla yeniden adlandırırsanız, Ultralytics Edge TPU'yu algılamak yerine onu düz bir TensorFlow Lite modeli olarak yükleyecek ve hızlandırıcı kullanılmayacaktır.
Edge TPU üzerinde Çıkarımı Çalıştır#
Modeli çalıştırmadan önce, Raspberry Pi üzerine gerekli kütüphaneleri kur. Eğer TensorFlow halihazırda yüklüyse, önce onu kaldır:
pip uninstall tensorflow tensorflow-aarch64Ardından tflite-runtime'ı kurun veya güncelleyin:
pip install -U tflite-runtimeŞimdi çıkarımı çalıştırabilirsin:
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 moduyla ilgili tüm ayrıntıları Predict sayfasında bulabilirsiniz.
Birden fazla Edge TPU'nuz varsa, device argümanıyla belirli birini seçebilirsiniz.
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#
Aşağıdaki rakamlar Raspberry Pi OS Bookworm 64-bit ve bir USB Coral Edge TPU ile ölçülmüştür. Sadece çıkarım süresini gösterir (ön/son işleme hariç) ve Edge TPU'nun Pi modelleri ve modları arasında sağladığı hızlanma için göreceli bir referans görevi görür.
Bu karşılaştırmalar YOLOv8 modelleri ile kaydedilmiştir. Mutlak çıkarım süreleri model sürümüne ve görüntü boyutuna göre değişir, ancak Pi modelleri ve saat modları arasındaki göreceli hız artışları sabittir.
| 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.
Sonuç#
Bir Coral Edge TPU, bir Raspberry Pi'yi Ultralytics YOLO26 için yetenekli, düşük güç tüketimine sahip bir çıkarım cihazına dönüştürür. Modelinizi ARM olmayan bir makinede dışarı aktarın, _edgetpu.tflite uzantısını koruyun ve hızlandırılmış uç nokta çıkarımı elde etmek için Pi üzerinde tflite-runtime ile çalıştırın. Daha fazla dağıtım seçeneği için Raspberry Pi kılavuzuna bakın.
SSS#
Coral Edge TPU, sistemine bir Edge TPU yardımcı işlemcisi ekleyen kompakt bir cihazdır. Bu yardımcı işlemci, özellikle TensorFlow Lite modelleri için optimize edilmiş düşük güçlü, yüksek performanslı makine öğrenimi çıkarımını mümkün kılar. Raspberry Pi üzerinde, çıkarımı CPU'nun tek başına elde edebileceğinin çok ötesine taşır, bu da Ultralytics YOLO26 modelleri için performansı önemli ölçüde artırır.
Bu bağlantıdan Raspberry Pi OS sürümünüze uygun
.debpaketini indirin, ardından kurun:sudo dpkg -i path/to/package.debEdge TPU Çalışma Zamanını Kurma bölümündeki adımları izleyerek önceki Coral Edge TPU çalışma zamanı sürümlerini kaldırdığınızdan emin olun.
Evet. Dışarı aktarma işlemini Google Colab, bir x86_64 Linux makinesi veya Ultralytics Docker container üzerinde çalıştırın; ayrıca Ultralytics Platform kullanabilirsiniz. Python ve CLI ile nasıl dışarı aktarılacağı aşağıda açıklanmıştır:
Modeli dışa aktarmafrom 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ışarı Aktarma modu belgelerine bakın.
TensorFlow kuruluysa ve
tflite-runtime'a geçmeniz gerekiyorsa, önce TensorFlow'u kaldırın:pip uninstall tensorflow tensorflow-aarch64Ardından
tflite-runtime'ı kurun veya güncelleyin:pip install -U tflite-runtimeAyrıntılı talimatlar için Edge TPU'da Çıkarım Çalıştırma bölümüne bakın.
YOLO26 modelinizi Edge TPU uyumlu bir formata aktardıktan sonra, aşağıdaki kod parçacıklarıyla çıkarımı çalıştırın. Ultralytics'in modeli Edge TPU üzerinde yükleyebilmesi için model dosyası
_edgetpu.tfliteuzantısını korumalıdır:Modeli çalıştırmafrom 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 moduna ilişkin kapsamlı ayrıntılar Predict sayfasındadır.