Hızlı Başlangıç Kılavuzu: Ultralytics YOLO26 ile Raspberry Pi#
Raspberry Pi, gerçek zamanlı nesne algılama için Ultralytics YOLO26 çalıştıran, GPU gerektirmeyen küçük ve uygun fiyatlı bir bilgisayardır. Bu kılavuzda YOLO26'yı Raspberry Pi 4 ve 5'e dağıtma adımları anlatılıyor: işletim sistemini yükleme, Ultralytics'ı kurma, ARM'de en hızlı çıkarım için NCNN formatına dışa aktarma ve canlı kamera akışında tahminler çalıştırma. Ayrıca, donanımın için en iyi hız ve doğruluk dengesini seçebilmen için sekiz dışa aktarma formatındaki performans kıyaslamaları da yer alıyor.
Ultralytics kurulumuna, NCNN formatına dışa aktarıp çıkarım çalıştırmaya, kıyaslamalara veya kameradan çıkarıma git.
İzle: Raspberry Pi 5 güncellemeleri ve iyileştirmeleri.
Bu kılavuz, en güncel Raspberry Pi OS Bookworm (Debian 12) yüklü Raspberry Pi 4 ve Raspberry Pi 5 ile test edilmiştir. Raspberry Pi 3 gibi daha eski Raspberry Pi cihazlarında da aynı Raspberry Pi OS Bookworm yüklü olduğu sürece bu kılavuzun çalışması beklenir.
Raspberry Pi nedir?#
Raspberry Pi küçük ve uygun fiyatlı, tek kartlı bir bilgisayardır. Hobi amaçlı ev otomasyonundan endüstriyel kullanıma kadar çok çeşitli proje ve uygulamalarda popüler hâle gelmiştir. Raspberry Pi kartları çeşitli işletim sistemlerini çalıştırabilir ve sensörler, aktüatörler ve diğer donanım bileşenleriyle kolayca bütünleşmeyi sağlayan GPIO (Genel Amaçlı Giriş/Çıkış) pinleri sunar. Farklı özelliklere sahip çeşitli modelleri vardır; ancak tümü düşük maliyetli, kompakt ve çok yönlü olma temel tasarım felsefesini paylaşır.
Raspberry Pi Serisi Karşılaştırması#
| Raspberry Pi 3 | Raspberry Pi 4 | Raspberry Pi 5 | |
|---|---|---|---|
| CPU | Broadcom BCM2837, Cortex-A53 64Bit SoC | Broadcom BCM2711, Cortex-A72 64Bit SoC | Broadcom BCM2712, Cortex-A76 64Bit SoC |
| CPU Maksimum Frekansı | 1.4GHz | 1.8GHz | 2.4GHz |
| GPU | VideoCore IV | VideoCore VI | VideoCore VII |
| GPU Maksimum Frekansı | 400MHz | 500MHz | 800MHz |
| Bellek | 1GB LPDDR2 SDRAM | 1GB, 2GB, 4GB, 8GB LPDDR4-3200 SDRAM | 2GB, 4GB, 8GB, 16GB LPDDR4X-4267 SDRAM |
| PCIe | Uygulanamaz | Uygulanamaz | 1xPCIe 2.0 arayüzü |
| Maksimum güç tüketimi | 2.5A@5V | 3A@5V | 5A@5V (PD etkin) |
Raspberry Pi OS nedir?#
Raspberry Pi OS (önceden Raspbian olarak biliniyordu), Raspberry Pi Foundation tarafından dağıtılan Raspberry Pi kompakt tek kartlı bilgisayar ailesi için Debian GNU/Linux dağıtımını temel alan Unix benzeri bir işletim sistemidir. Raspberry Pi OS, ARM CPU'lu Raspberry Pi için yüksek düzeyde optimize edilmiştir ve Raspberry Pi 4 ile 5'te varsayılan olarak Wayland üzerinde çalışan hafif bir masaüstü ortamı kullanır. Raspberry Pi OS etkin olarak geliştirilmektedir; Raspberry Pi'de mümkün olduğunca çok Debian paketinin kararlılığını ve performansını iyileştirmeye odaklanır.
Raspberry Pi OS'yi Raspberry Pi'ye yükle#
Raspberry Pi'yi edindikten sonra yapman gereken ilk şey, bir micro-SD karta Raspberry Pi OS'yi yazdırmak, kartı cihaza takmak ve işletim sistemini başlatmaktır. Cihazını ilk kullanıma hazırlamak için Raspberry Pi'nin ayrıntılı Başlangıç Belgeleri bölümündeki adımları izle.
Ultralytics'i kur#
Bir sonraki Bilgisayarlı Görü projen için Ultralytics paketini Raspberry Pi'ye iki şekilde kurabilirsin:
Docker ile başla#
Raspberry Pi'de Ultralytics YOLO26'yı kullanmaya başlamanın en hızlı yolu, Raspberry Pi için önceden oluşturulmuş bir Docker imajını çalıştırmaktır.
Docker konteynerini çekip Raspberry Pi'de çalıştırmak için aşağıdaki komutu yürüt. Bu komut, Debian 13 ve Python 3.13 çalıştıran resmî Python 3.13-slim-trixie imajını temel alır.
t=ultralytics/ultralytics:latest-arm64
sudo docker pull $t && sudo docker run -it --ipc=host $tDocker imajında Ultralytics zaten bulunur; bu nedenle doğrudan modelini NCNN'ye aktarabilirsin.
Docker kullanmadan başla#
Ultralytics Paketini Yükle#
Burada Ultralytics paketini Raspberry Pi'ye kuracağız. NCNN gibi biçimlere aktarma bağımlılıkları, PyTorch modelini ilk kez dışa aktardığında otomatik olarak kurulur; bu nedenle burada yalnızca temel paket yeterlidir.
-
Paket listesini güncelle, pip'i yükle ve en son sürüme yükselt
sudo apt update sudo apt install python3-pip -y pip install -U pip -
ultralyticspip paketini yüklepip install ultralytics -
Cihazı yeniden başlat
sudo reboot
Raspberry Pi'de NCNN kullan#
Ultralytics'in desteklediği tüm model dışa aktarma biçimleri arasında NCNN, ARM mimarisi gibi mobil/gömülü platformlar için yüksek düzeyde optimize edildiğinden Raspberry Pi cihazlarında en iyi çıkarım performansını sunar. YOLO26n PyTorch modelini NCNN'ye dönüştür ve ardından dışa aktarılan modelle çıkarım yap:
from ultralytics import YOLO
# YOLO26n PyTorch modelini yükle
model = YOLO("yolo26n.pt")
# # Modeli NCNN biçimine aktar
model.export(format="ncnn") # creates 'yolo26n_ncnn_model'
# # Dışa aktarılan NCNN modelini yükle
ncnn_model = YOLO("yolo26n_ncnn_model")
# Çıkarımı çalıştır
results = ncnn_model("https://ultralytics.com/images/bus.jpg")Desteklenen dışa aktarma seçenekleri hakkında daha fazla bilgi için model dağıtım seçenekleri kılavuzuna bak.
YOLO26'nın YOLO11'e kıyasla performans iyileştirmeleri#
YOLO26, Raspberry Pi 5 gibi donanım kaynakları kısıtlı cihazlarda çalışmak üzere özel olarak tasarlanmıştır. Raspberry Pi 5'te ONNX'e aktarılmış modellerle, 640 giriş boyutunda YOLO11n ile karşılaştırıldığında YOLO26n, FPS değerinde ~%15 artış (6.79 → 7.79) sağlarken daha yüksek mAP (40.1'e karşı 39.5) sunar. Aşağıdaki tablo ve grafik bu karşılaştırmayı gösterir.
| Model | mAP50-95(B) | Çıkarım süresi (ms/im) |
|---|---|---|
| YOLO26n | 40.1 | 128.42 |
| YOLO26s | 47.8 | 352.84 |
| YOLO26m | 52.5 | 993.78 |
| YOLO26l | 54.4 | 1259.46 |
| YOLO26x | 56.9 | 2636.26 |
Ultralytics 8.4.14 ile kıyaslandı.
Raspberry Pi 5 YOLO26 kıyaslama sonuçları#
YOLO26 kıyaslama testleri, hızı ve doğruluğu ölçmek için Ultralytics ekibi tarafından sekiz farklı model biçiminde gerçekleştirildi: PyTorch, TorchScript, ONNX, OpenVINO, LiteRT, MNN, NCNN, ExecuTorch. Kıyaslama testleri, varsayılan giriş görüntüsü boyutu 640 olan Raspberry Pi 5'te FP32 hassasiyetinde gerçekleştirildi.
Karşılaştırma grafiği#
Diğer model boyutları Raspberry Pi'lerde çalıştırılamayacak kadar büyük olduğundan ve yeterli performans sunmadığından yalnızca YOLO26n ve YOLO26s modellerine ait kıyaslama sonuçlarını ekledik.
Ayrıntılı karşılaştırma tablosu#
Aşağıdaki tablo, Raspberry Pi 5'te çalışan iki farklı modelin (YOLO26n, YOLO26s) sekiz farklı biçimdeki (PyTorch, TorchScript, ONNX, OpenVINO, LiteRT, MNN, NCNN, ExecuTorch) kıyaslama sonuçlarını gösterir; her birleşim için durumu, boyutu, mAP50-95(B) metriğini ve çıkarım süresini sunar.
| Biçim | Durum | Diskteki boyut (MB) | mAP50-95(B) | Çıkarım süresi (ms/im) |
|---|---|---|---|---|
| PyTorch | ✅ | 5.3 | 0.4760 | 299.09 |
| TorchScript | ✅ | 9.8 | 0.4734 | 353.20 |
| ONNX | ✅ | 9.5 | 0.4734 | 125.99 |
| OpenVINO | ✅ | 9.6 | 0.4734 | 104.55 |
| LiteRT | ✅ | 9.8 | 0.4730 | 123.30 |
| MNN | ✅ | 9.4 | 0.4749 | 91.87 |
| NCNN | ✅ | 9.4 | 0.4784 | 67.03 |
| ExecuTorch | ✅ | 9.4 | 0.4772 | 144.83 |
Ultralytics 8.4.108 ile kıyaslandı
Çıkarım süresine ön/son işleme dahil değildir.
Sonuçlarımızı Yeniden Üretme#
Yukarıdaki Ultralytics kıyaslamalarını tüm dışa aktarma biçimlerinde tekrarlamak için şu kodu çalıştır:
from ultralytics import YOLO
# YOLO26n PyTorch modelini yükle
model = YOLO("yolo26n.pt")
# COCO128 veri kümesinde YOLO26n hızını ve doğruluğunu tüm dışa aktarma formatları için kıyasla
results = model.benchmark(data="coco128.yaml", imgsz=640)Kıyaslama sonuçlarının sistemin tam donanım ve yazılım yapılandırmasına ve kıyaslamalar çalıştırılırken sistemin mevcut iş yüküne göre değişebileceğini unutma. En güvenilir sonuçlar için çok sayıda görüntü içeren bir veri kümesi kullan; örneğin data='coco.yaml' (5000 doğrulama görüntüsü).
format=litert dışa aktarma işlemi (litert-torch aracılığıyla) yalnızca Linux x86_64 ve macOS'ta desteklenir; Raspberry Pi'nin kendisinde desteklenmez. .tflite modelini Linux x86_64 çalışan bir makinede veya Mac'te dışa aktar, Raspberry Pi'ye kopyala ve Pi'yi çıkarım için kullan.
Raspberry Pi kamerasını kullan#
Bilgisayarlı görü projelerinde Raspberry Pi kullanırken çıkarım yapmak için gerçek zamanlı video akışlarını almak çok önemli olabilir. Raspberry Pi üzerindeki MIPI CSI konektörü, resmi Raspberry Pi kamera modüllerini bağlamana olanak tanır. Bu kılavuzda, video akışlarını almak ve YOLO26 modellerini kullanarak çıkarım yapmak için Raspberry Pi Camera Module 3 kullandık.
Raspberry Pi'nin sunduğu farklı kamera modülleri ve Raspberry Pi kamera modüllerini kullanmaya nasıl başlayacağın hakkında daha fazla bilgi edin.
Raspberry Pi 5, Raspberry Pi 4'ten daha küçük CSI konektörleri kullanır (22 pin - 15 pin); bu nedenle Raspberry Pi kamerası bağlamak için 15 pin - 22 pin adaptör kablosuna ihtiyacın olacak.
Kamerayı test et#
Kamerayı Raspberry Pi'ye bağladıktan sonra aşağıdaki komutu yürüt. Kameradan yaklaşık 5 saniye boyunca canlı video akışı görmelisin.
rpicam-helloResmi Raspberry Pi belgelerindeki rpicam-hello kullanımını öğren
Kamerayla çıkarım#
YOLO26 modellerinde çıkarım yapmak için Raspberry Pi Kamerasını kullanmanın iki yöntemi vardır.
Kameraya erişmek ve YOLO26 modellerinde çıkarım yapmak için Raspberry Pi OS ile önceden yüklenmiş olarak gelen picamera2 aracını kullanabiliriz.
import cv2
from picamera2 import Picamera2
from ultralytics import YOLO
# # Picamera2'yi başlat
picam2 = Picamera2()
picam2.preview_configuration.main.size = (1280, 720)
picam2.preview_configuration.main.format = "RGB888"
picam2.preview_configuration.align()
picam2.configure("preview")
picam2.start()
# YOLO26 modelini yükle
model = YOLO("yolo26n.pt")
while True:
# # Kareleri sırayla yakala
frame = picam2.capture_array()
# # Kare üzerinde YOLO26 çıkarımı yap
results = model(frame)
# Sonuçları kare üzerinde görselleştir
annotated_frame = results[0].plot()
# # Sonuç karesini göster
cv2.imshow("Camera", annotated_frame)
# 'q' tuşuna basılırsa döngüyü sonlandır
if cv2.waitKey(1) == ord("q"):
break
# # Kaynakları serbest bırak ve pencereleri kapat
cv2.destroyAllWindows()Görüntü/video girdi türünü değiştirmek istiyorsan Çıkarım Kaynakları belgemize bak.
Raspberry Pi kullanırken en iyi uygulamalar#
YOLO26 çalıştıran Raspberry Pi'lerde en yüksek performansı elde etmek için izleyebileceğin birkaç en iyi uygulama vardır.
-
SSD kullan
Raspberry Pi'yi 7/24 kesintisiz kullanırken sistem için SSD kullanman önerilir; çünkü SD kart sürekli yazma işlemlerine dayanamayabilir ve bozulabilir. Raspberry Pi 5'te yerleşik PCIe konektörü sayesinde artık Raspberry Pi 5 için NVMe Base gibi bir adaptör kullanarak SSD bağlayabilirsin.
-
Grafik arayüzü olmadan yazdır
Raspberry Pi OS'yi yazdırırken masaüstü ortamını yüklememeyi (Raspberry Pi OS Lite) seçebilirsin; bu, cihazda bir miktar RAM tasarrufu sağlayarak bilgisayarlı görü işlemleri için daha fazla alan bırakır.
-
Raspberry Pi'yi hız aşırt
Raspberry Pi 5'te Ultralytics YOLO26 modellerini çalıştırırken performansı biraz artırmak istersen CPU'yu 2.4GHz temel hızından 3.0GHz'e, GPU'yu ise 800MHz'den 1GHz'e hız aşırtabilirsin. Sistem kararsızlaşır veya çökerse hız aşırtma değerlerini 100MHz'lik adımlarla düşür. Hız aşırtma ısı üretimini artırıp termal kısıtlamaya yol açabileceğinden uygun soğutma sağla.
a. Yazılımı yükselt
sudo apt update && sudo apt dist-upgradeb. Yapılandırma dosyasını düzenlemek için aç
sudo nano /boot/firmware/config.txtc. Aşağıdaki satırları en alta ekle
arm_freq=3000 gpu_freq=1000 force_turbo=1d. CTRL + X'e, ardından Y'ye basıp ENTER'a basarak kaydet ve çık
e. Raspberry Pi'yi yeniden başlat
Sonraki Adımlar#
YOLO26'yı Raspberry Pi'ne başarıyla kurdun. Daha fazla bilgi için diğer çıkarım seçeneklerini görmek üzere Tahmin modunu, ek dağıtım biçimleri için Dışa aktarma modunu veya uçta daha fazla işlem gücüne ihtiyaç duyuyorsan NVIDIA Jetson kılavuzunu incele. Belgelerin tamamına Ultralytics YOLO26 Belgeleri üzerinden ulaşabilirsin.
Teşekkürler ve atıflar#
Bu kılavuz ilk olarak, nesli tehlike altındaki türlerin korunması için YOLO kullanımına adanmış bir kuruluş olan Kashmir World Foundation adına Daan Eeltink tarafından oluşturuldu. Nesne algılama teknolojileri alanındaki öncü çalışmalarını ve eğitim odaklı yaklaşımlarını takdir ediyoruz.
Kashmir World Foundation'ın faaliyetleri hakkında daha fazla bilgi için web sitesini ziyaret edebilirsin.
Sık Sorulan Sorular#
Ultralytics YOLO26'yı Docker kullanmadan Raspberry Pi'ye kurmak için şu adımları izle:
- Paket listesini güncelle ve
piparacını yükle:sudo apt update sudo apt install python3-pip -y pip install -U pip - Ultralytics paketini yükle:
pip install ultralytics - Değişiklikleri uygulamak için cihazı yeniden başlat:
sudo reboot
Ayrıntılı yönergeler için Docker kullanmadan başla bölümüne bak.
- Paket listesini güncelle ve
Ultralytics YOLO26'nın NCNN biçimi, mobil ve gömülü platformlar için yüksek düzeyde optimize edildiğinden Raspberry Pi cihazlarında yapay zekâ görevlerini çalıştırmak için idealdir. NCNN, ARM mimarisinden yararlanarak çıkarım performansını en üst düzeye çıkarır ve diğer biçimlere kıyasla daha hızlı, daha verimli işlem sunar. Desteklenen dışa aktarma biçimleri hakkında daha fazla bilgi için model dışa aktarma seçeneklerine bak.
PyTorch YOLO26 modelini Python veya CLI komutlarını kullanarak NCNN biçimine dönüştürebilirsin:
Örnekfrom ultralytics import YOLO # YOLO26n PyTorch modelini yükle model = YOLO("yolo26n.pt") # # Modeli NCNN biçimine aktar model.export(format="ncnn") # creates 'yolo26n_ncnn_model' # # Dışa aktarılan NCNN modelini yükle ncnn_model = YOLO("yolo26n_ncnn_model") # Çıkarımı çalıştır results = ncnn_model("https://ultralytics.com/images/bus.jpg")Daha fazla bilgi için Raspberry Pi'de NCNN kullan bölümüne bak.
Temel farklar şunlardır:
- CPU: Raspberry Pi 4, Broadcom BCM2711, Cortex-A72 64-bit SoC kullanırken Raspberry Pi 5, Broadcom BCM2712, Cortex-A76 64-bit SoC kullanır.
- Maksimum CPU frekansı: Raspberry Pi 4'ün maksimum frekansı 1.8GHz iken Raspberry Pi 5'in frekansı 2.4GHz'e ulaşır.
- Bellek: Raspberry Pi 4, 8 GB'a kadar LPDDR4-3200 SDRAM sunarken Raspberry Pi 5, 2 GB, 4 GB, 8 GB ve 16 GB seçenekleriyle LPDDR4X-4267 SDRAM sunar.
Bu geliştirmeler, Raspberry Pi 5'teki YOLO26 modellerinin performans kıyaslamalarında Raspberry Pi 4'e kıyasla daha iyi sonuçlar elde etmesini sağlar. Daha fazla bilgi için Raspberry Pi Serisi Karşılaştırması tablosuna bak.
YOLO26 çıkarımı için Raspberry Pi Kamerası kurmanın iki yöntemi vardır:
-
picamera2kullanarak:import cv2 from picamera2 import Picamera2 from ultralytics import YOLO picam2 = Picamera2() picam2.preview_configuration.main.size = (1280, 720) picam2.preview_configuration.main.format = "RGB888" picam2.preview_configuration.align() picam2.configure("preview") picam2.start() model = YOLO("yolo26n.pt") while True: frame = picam2.capture_array() results = model(frame) annotated_frame = results[0].plot() cv2.imshow("Camera", annotated_frame) if cv2.waitKey(1) == ord("q"): break cv2.destroyAllWindows() -
TCP Akışı kullanarak:
rpicam-vid -n -t 0 --inline --listen -o tcp://127.0.0.1:8888from ultralytics import YOLO model = YOLO("yolo26n.pt") results = model("tcp://127.0.0.1:8888")
Ayrıntılı kurulum talimatları için Kamerayla Çıkarım bölümünü ziyaret et.
-