Ultralytics YOLO27:

Ultralytics YOLO26'yı Coral Edge TPU ile Raspberry Pi'da Çalıştırma#

Raspberry Pi with Edge TPU accelerator

Bir Raspberry Pi, uçta bilgisayarlı görü çalıştırmak için enerji tasarruflu ve uygun fiyatlı bir platformdur; ancak ONNX veya OpenVINO gibi optimize edilmiş biçimlerde bile cihaz üzerindeki çıkarım yavaştır. Pi'ı bir Coral Edge TPU yardımcı işlemcisiyle eşleştirmek, çıkarımı özel donanıma aktarır ve önemli ölçüde hızlandırır. Bu kılavuzda çalışma zamanını nasıl yükleyeceğin, bir Ultralytics YOLO26 modelini Edge TPU biçimine nasıl aktaracağın ve hızlandırılmış çıkarımı nasıl çalıştıracağın gösterilir.



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 ve TensorFlow Lite modelleri için düşük güç tüketimli, yüksek performanslı ML çıkarımı sağlayan kompakt bir cihazdır. Tek başına CPU'nun yetersiz kaldığı gömülü ve mobil dağıtımlar için çok uygundur:

  • Daha hızlı çıkarım — Edge TPU, nicemlenmiş modelleri Raspberry Pi CPU'sunun tek başına sağlayabileceğinden çok daha hızlı çalıştırır.
  • Düşük güç tüketimi — watt başına yüksek işlem hacmi sunar; pille veya güneş enerjisiyle çalışan dağıtımlar için idealdir.
  • Tak ve çalıştırUSB Accelerator, USB 3.0 üzerinden bağlanır; bu nedenle ek donanım entegrasyonu gerekmez.
Güncel TensorFlow Lite için güncellenmiş çalışma zamanı

Resmî Coral kılavuzu güncel değildir: Orijinal Coral çalışma zamanı derlemeleri artık güncel TensorFlow Lite çalışma zamanı sürümleriyle çalışmıyor ve proje 2021 ile 2025 arasında hiç güncellenmedi. Bu kılavuzda, hızlandırıcının güncel bir Raspberry Pi OS kurulumunda çalışması için etkin şekilde bakımı yapılan bir Edge TPU çalışma zamanı ve en yeni tflite-runtime kullanılır.

Ön koşullar#

Bu kılavuzda, çalışan bir Raspberry Pi OS kurulumuna ve yüklenmiş ultralytics ile bağımlılıklarına zaten sahip olduğun varsayılır. Değilse önce hızlı başlangıç kılavuzunu izle.

Ön koşullar hazır olduğunda iş akışı üç adımdan oluşur: Pi'a Edge TPU çalışma zamanını yükle, ARM olmayan bir makinede modelini dışa aktar ve ardından Pi üzerinde çıkarımı çalıştır.

Edge TPU Çalışma Zamanını Yükleme#

Çalışma zamanı birkaç farklı derleme olarak sunulur; bu nedenle işletim sisteminle eşleşen derlemeyi seç. Yüksek frekanslı derleme, daha iyi performans için Edge TPU'yu daha yüksek saat hızında çalıştırır; ancak termal daraltmaya neden olabilir — bunu seçersen bir tür soğutma kullan.

Raspberry Pi OSYüksek frekans moduİndirilecek sürüm
Bullseye 32 bitHayırlibedgetpu1-std_ ... .bullseye_armhf.deb
Bullseye 64 bitHayırlibedgetpu1-std_ ... .bullseye_arm64.deb
Bullseye 32 bitEvetlibedgetpu1-max_ ... .bullseye_armhf.deb
Bullseye 64 bitEvetlibedgetpu1-max_ ... .bullseye_arm64.deb
Bookworm 32 bitHayırlibedgetpu1-std_ ... .bookworm_armhf.deb
Bookworm 64 bitHayırlibedgetpu1-std_ ... .bookworm_arm64.deb
Bookworm 32 bitEvetlibedgetpu1-max_ ... .bookworm_armhf.deb
Bookworm 64 bitEvetlibedgetpu1-max_ ... .bookworm_arm64.deb

En son sürümü buradan indir, ardından .deb paketini yükle:

sudo dpkg -i path/to/package.deb

Çalışma zamanını yükledikten sonra Coral Edge TPU'nu Raspberry Pi üzerindeki bir USB 3.0 bağlantı noktasına tak; böylece yeni udev kuralı etkinleşebilir.

Önce mevcut çalışma zamanını kaldır

Coral Edge TPU çalışma zamanını zaten yüklediysen yeni bir derleme yüklemeden önce kaldır.

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

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

Modelini Edge TPU Biçimine Dışa Aktarma#

Edge TPU'yu kullanmak için modelini uyumlu bir biçime dönüştür. Dışa aktarma işlemini ARM olmayan bir platformda — Google Colab, x86_64 Linux makinesi, resmî Ultralytics Docker container veya Ultralytics Platform üzerinde — çalıştır; çünkü Edge TPU derleyicisi ARM üzerinde kullanılamaz. Kullanılabilir bağımsız değişkenler için Dışa aktarma modu sayfasına bak.

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")

Dışa aktarılan model <model_name>_saved_model/ klasörüne <model_name>_full_integer_quant_edgetpu.tflite olarak kaydedilir.

`_edgetpu.tflite` son ekini koru

Dosya adı _edgetpu.tflite ile bitmelidir. Dosyayı başka bir adla yeniden adlandırırsan Ultralytics dosyayı Edge TPU'yu algılamak yerine düz bir TensorFlow Lite modeli olarak yükler ve hızlandırıcı kullanılmaz.

Edge TPU'da Çıkarım Çalıştırma#

Modeli çalıştırmadan önce Raspberry Pi'a doğru kitaplıkları yükle. TensorFlow zaten yüklüyse önce kaldır:

pip uninstall tensorflow tensorflow-aarch64

Ardından tflite-runtime paketini yükle veya güncelle:

pip install -U tflite-runtime

Artık çıkarımı çalıştırabilirsin:

Modeli çalıştırma
from ultralytics import YOLO

# Load a model
model = YOLO("path/to/yolo26n_full_integer_quant_edgetpu.tflite")  # Load an official model or custom model

# Run Prediction
model.predict("path/to/source.png")

Tahmin modunun tüm ayrıntılarını Predict sayfasında bulabilirsin.

Birden Çok Edge TPU ile Çıkarım

Birden çok Edge TPU'n varsa device bağımsız değişkeniyle belirli bir tanesini seçebilirsin.

from ultralytics import YOLO

# Load a model
model = YOLO("path/to/yolo26n_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

Karşılaştırmalı Testler#

Aşağıdaki değerler Raspberry Pi OS Bookworm 64 bit ve USB Coral Edge TPU ile ölçülmüştür. Yalnızca çıkarım süresini gösterir (ön işleme ve son işleme hariçtir) ve Edge TPU'nun farklı Pi modelleri ile modlarında sağladığı hızlandırma için göreli bir referans niteliğindedir.

Bu değerler hakkında

Bu karşılaştırmalar YOLOv8 modelleriyle 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 hızı modları arasındaki göreli hızlanmalar geçerliliğini korur.

Görüntü boyutuModelStandart çıkarım süresi (ms)Yüksek frekanslı çıkarım süresi (ms)
320YOLOv8n32.226.7
320YOLOv8s47.139.8
512YOLOv8n73.560.7
512YOLOv8s149.6125.3

Ortalama olarak:

  • Raspberry Pi 5, standart modda Raspberry Pi 4B'den %22 daha hızlıdır.
  • Raspberry Pi 5, yüksek frekans modunda Raspberry Pi 4B'den %30,2 daha hızlıdır.
  • Yüksek frekans modu, standart moddan %28,4 daha hızlıdır.

Sonuç#

Coral Edge TPU, Raspberry Pi'ı Ultralytics YOLO26 için yetenekli ve düşük güç tüketimli bir çıkarım cihazına dönüştürür. Modelini ARM olmayan bir makinede dışa aktar, _edgetpu.tflite son ekini koru ve hızlandırılmış uç çıkarımı elde etmek için Pi üzerinde tflite-runtime ile çalıştır. Daha fazla dağıtım seçeneği için Raspberry Pi kılavuzuna bak.

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üç tüketimli, yüksek performanslı ML çıkarımı sağlar. Raspberry Pi üzerinde çıkarımı CPU'nun tek başına sağlayabileceğinin çok ötesinde hızlandırır ve bu da Ultralytics YOLO26 modellerinin performansını önemli ölçüde artırır.

  • Raspberry Pi OS sürümüne uygun .deb paketini bu bağlantıdan indir, ardından yükle:

    sudo dpkg -i path/to/package.deb

    Önceki Coral Edge TPU çalışma zamanı sürümlerini Edge TPU Çalışma Zamanını Yükleme bölümündeki adımları izleyerek kaldırdığından emin ol.

  • Evet. Dışa aktarma işlemini Google Colab, x86_64 Linux makinesi veya Ultralytics Docker container üzerinde çalıştırabilirsin; ayrıca Ultralytics Platform da kullanabilirsin. Python ve CLI ile dışa aktarma şu şekilde yapılır:

    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")

    Daha fazla bilgi için Dışa aktarma modu belgelerine bak.

  • TensorFlow yüklüyse ve tflite-runtime paketine geçmen gerekiyorsa önce TensorFlow'u kaldır:

    pip uninstall tensorflow tensorflow-aarch64

    Ardından tflite-runtime paketini yükle veya güncelle:

    pip install -U tflite-runtime

    Ayrıntılı talimatlar için Edge TPU'da Çıkarım Çalıştırma bölümüne bak.

  • YOLO26 modelini Edge TPU ile uyumlu bir biçime aktardıktan sonra aşağıdaki kod parçacıklarıyla çıkarımı çalıştır. Ultralytics'in modeli Edge TPU üzerinde yüklemesi için model dosyası _edgetpu.tflite son ekini korumalıdır:

    Modeli çalıştırma
    from ultralytics import YOLO
    
    # Load a model
    model = YOLO("path/to/yolo26n_full_integer_quant_edgetpu.tflite")  # Load an official model or custom model
    
    # Run Prediction
    model.predict("path/to/source.png")

    Tahmin modu hakkında kapsamlı ayrıntılar Predict sayfasında yer alır.

Yorumlar