Meet YOLO26: next-gen vision AI.

Link to this sectionUltralytics YOLO26 Modelleri için Rockchip RKNN Dışa Aktarma#

Bilgisayarlı görü modellerini özellikle Rockchip işlemcilerle çalışan gömülü cihazlarda dağıtırken, uyumlu bir model formatına sahip olmak şarttır. Ultralytics YOLO26 modellerini RKNN formatına dışa aktarmak, optimize edilmiş performans ve Rockchip donanımı ile uyumluluk sağlar. Bu kılavuz, YOLO26 modellerini kayan noktalı ve INT8 nicelleştirilmiş dışa aktarımlar dahil olmak üzere RKNN formatına dönüştürme sürecinde sana rehberlik edecek ve Rockchip platformlarında verimli bir dağıtım yapmanı sağlayacaktır.

Rockchip RKNN export for NPU deployment

Not

Bu kılavuz, Rockchip RK3588 tabanlı Radxa Rock 5B ve Rockchip RK3566 tabanlı Radxa Zero 3W üzerinde test edilmiştir. RK3576, RK3568, RK3562, RK2118, RV1126B, RV1103, RV1106, RV1103B ve RV1106B gibi rknn-toolkit2 destekleyen diğer Rockchip tabanlı cihazlarda da çalışması beklenmektedir. RV1103 ve RV1106 gibi yalnızca INT8 hedefleyen cihazlar int8=True gerektirir.

Link to this sectionRockchip nedir?#

Çok yönlü ve güç verimliliği yüksek çözümler sunmasıyla tanınan Rockchip, geniş bir tüketici elektroniği, endüstriyel uygulama ve yapay zeka teknolojisi yelpazesine güç veren gelişmiş Çip Üzerinde Sistemler (SoC'ler) tasarlar. ARM tabanlı mimarisi, yerleşik Sinir İşleme Birimleri (NPU'lar) ve yüksek çözünürlüklü multimedya desteği ile Rockchip SoC'ler, tabletler, akıllı TV'ler, IoT sistemleri ve uç yapay zeka uygulamaları gibi cihazlar için üst düzey performans sağlar. Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas ve Banana Pi gibi şirketler, Rockchip SoC'lere dayalı çeşitli ürünler sunarak bunların farklı pazarlardaki erişimini ve etkisini daha da genişletmektedir.

Link to this sectionRKNN Toolkit#

RKNN Toolkit, Rockchip'in derin öğrenme modellerinin donanım platformlarında dağıtımını kolaylaştırmak için sağladığı bir araç ve kütüphane setidir. RKNN veya Rockchip Neural Network, bu araçlar tarafından kullanılan tescilli formattır. RKNN modelleri, Rockchip'in NPU'sunun (Sinir İşleme Birimi) sağladığı donanım hızlandırmasından tam olarak yararlanacak şekilde tasarlanmıştır; bu da RK3588, RK3566, RV1103, RV1106 ve diğer Rockchip destekli sistemler gibi cihazlarda yapay zeka görevlerinde yüksek performans sağlar.

Link to this sectionRKNN Modellerinin Temel Özellikleri#

RKNN modelleri, Rockchip platformlarında dağıtım için çeşitli avantajlar sunar:

  • NPU için Optimize Edilmiştir: RKNN modelleri, Rockchip'in NPU'larında çalışmak üzere özel olarak optimize edilmiştir ve maksimum performans ile verimlilik sağlar.
  • Düşük Gecikme: RKNN formatı, uç cihazlarda gerçek zamanlı uygulamalar için kritik öneme sahip olan çıkarım gecikmesini en aza indirir.
  • Platforma Özgü Özelleştirme: RKNN modelleri belirli Rockchip platformlarına göre uyarlanabilir ve donanım kaynaklarının daha iyi kullanılmasını sağlar.
  • Güç Verimliliği: Özel NPU donanımından yararlanan RKNN modelleri, CPU veya GPU tabanlı işlemeye göre daha az güç tüketir ve taşınabilir cihazlar için pil ömrünü uzatır.

Link to this sectionRockchip donanımına İşletim Sistemi yükleme#

Rockchip tabanlı bir cihazı eline aldıktan sonra ilk adım, donanımın çalışan bir ortama önyükleme yapabilmesi için bir işletim sistemi yüklemektir. Bu kılavuzda, test ettiğimiz iki cihaz olan Radxa Rock 5B ve Radxa Zero 3W'nin başlangıç kılavuzlarına yönlendirme yapacağız.

Link to this sectionRKNN'e Dışa Aktar: YOLO26 Modelini Dönüştürme#

Bir Ultralytics YOLO26 modelini RKNN formatına dışa aktar ve dışa aktarılan model ile çıkarım yap.

Not

Modeli RKNN'e dışa aktarmak için X86 tabanlı bir Linux PC kullandığından emin ol; çünkü Rockchip tabanlı cihazlarda (ARM64) dışa aktarma desteklenmemektedir.

Link to this sectionKurulum#

Gerekli paketleri kurmak için şunları çalıştır:

Kurulum
# Install the required package for YOLO26
pip install ultralytics

Kurulum süreci ile ilgili ayrıntılı talimatlar ve en iyi uygulamalar için Ultralytics Kurulum kılavuzumuza göz at. YOLO26 için gerekli paketleri kurarken herhangi bir zorlukla karşılaşırsan, çözümler ve ipuçları için Yaygın Sorunlar kılavuzumuza başvur.

Link to this sectionKullanım#

Not

Dışa aktarma şu anda yalnızca tespit modelleri için desteklenmektedir. Gelecekte daha fazla model desteği eklenecektir.

RKNN formatı Dışa Aktar, Tahmin ve Doğrula modlarını destekler. Çıkarım ve doğrulama, Rockchip NPU donanımı üzerinde çalışır. Modelini dışa aktar, ardından çıkarım yapmak veya doğruluğunu test etmek için dışa aktarılan modeli yükle. Varsayılan olarak RKNN dışa aktarma, FP16 destekli Rockchip hedefleri için half=True ile mevcut kayan noktalı derleme yolunu kullanır. Kalibrasyon verileriyle INT8 nicelleştirilmiş bir RKNN modeli oluşturmak için int8=True kullan. RKNN dışa aktarma ayrı bir FP32 modu sunmaz; int8=False bırakmak FP32 talep etmez.

Dışa Aktar
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to RKNN format
model.export(format="rknn", name="rk3588")  # creates '/yolo26n_rknn_model'

# Export an INT8-quantized RKNN model with calibration data
model.export(format="rknn", name="rk3588", int8=True, data="coco8.yaml")
Tahmin
from ultralytics import YOLO

# Load the exported RKNN model
model = YOLO("./yolo26n_rknn_model")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Doğrula
from ultralytics import YOLO

# Load the exported RKNN model
model = YOLO("./yolo26n_rknn_model")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Link to this sectionDışa Aktarma Argümanları#

ArgümanTipVarsayılanAçıklama
formatstr'rknn'Dışa aktarılan model için Rockchip dağıtım ortamlarıyla uyumluluğu tanımlayan hedef format.
imgszint veya tuple640Desired image size for the model input. Can be an integer for square images or a tuple (height, width) for specific dimensions.
batchint1Dışa aktarma modelinin toplu çıkarım boyutunu veya dışa aktarılan modelin predict modunda eşzamanlı olarak işleyeceği maksimum görüntü sayısını belirtir.
namestr'rk3588'rk3588, rk3576, rk3566, rk3568, rk3562, rk2118, rv1126b, rv1103, rv1106, rv1103b veya rv1106b gibi Rockchip hedefini belirtir.
halfboolTrueFP16 destekli hedefler için varsayılan kayan noktalı RKNN dışa aktarma yolunu etkinleştirir. int8=True ile birlikte kullanılamaz.
int8boolFalseINT8 nicelleştirmeyi etkinleştirir. RV1103 ve RV1106 gibi yalnızca INT8 destekleyen hedefler için gereklidir. False olduğunda, RKNN Toolkit FP32 yerine FP16 destekli hedefler için kayan noktalı bir model oluşturur.
datastrNoneINT8 kalibrasyonu için kullanılan veri kümesi YAML dosyası. int8=True ile ihmal edilirse, Ultralytics model görevi için varsayılan kalibrasyon veri kümesini seçer.
fractionfloat1.0INT8 nicelleştirmesi için kullanılacak kalibrasyon görüntülerinin oranı.
devicestrNoneDışa aktarma için cihazı belirtir: GPU (device=0), CPU (device=cpu).
İpucu

Lütfen RKNN'e dışa aktarırken x86 Linux makinesi kullandığından emin ol.

Dışa aktarma süreci hakkında daha fazla bilgi için dışa aktarma ile ilgili Ultralytics dokümantasyon sayfasına göz at.

Link to this sectionDışa Aktarılan YOLO26 RKNN Modellerini Dağıtma#

Ultralytics YOLO26 modellerini başarıyla RKNN formatına dışa aktardıktan sonra, bir sonraki adım bu modelleri Rockchip tabanlı cihazlarda dağıtmaktır.

Link to this sectionKurulum#

Gerekli paketleri kurmak için şunları çalıştır:

Kurulum
# Install the required package for YOLO26
pip install ultralytics

Kurulum tamamlandıktan sonra, yukarıdaki Kullanım bölümünde gösterildiği gibi çıkarım ve doğrulamayı Rockchip cihazında çalıştır; dışa aktarılan _rknn_model doğrudan YOLO(...) ile yüklenir.

Not

RKNN çalışma zamanı sürümünün RKNN Toolkit sürümüyle eşleşmediğini belirten bir günlük mesajıyla karşılaşırsan ve çıkarım başarısız olursa, lütfen /usr/lib/librknnrt.so dosyasını resmi librknnrt.so dosyası ile değiştir.

RKNN dışa aktarma ekran görüntüsü

Link to this sectionGerçek Dünya Uygulamaları#

YOLO26 RKNN modelleriyle çalışan Rockchip tabanlı cihazlar çeşitli uygulamalarda kullanılabilir:

  • Akıllı Gözetim: Düşük güç tüketimi ile güvenlik izleme için verimli nesne algılama sistemleri dağıt.
  • Endüstriyel Otomasyon: Kalite kontrol ve kusur algılamayı doğrudan gömülü cihazlarda uygula.
  • Perakende Analitiği: Bulut bağımlılığı olmadan müşteri davranışlarını ve envanter yönetimini gerçek zamanlı takip et.
  • Akıllı Tarım: tarımda bilgisayarlı görü kullanarak ürün sağlığını izle ve zararlıları algıla.
  • Otonom Robotik: Kaynak kısıtlı platformlarda görüş tabanlı navigasyon ve engel algılamayı etkinleştir.

Link to this sectionKarşılaştırmalar#

Aşağıdaki YOLO26 karşılaştırmaları, Ultralytics ekibi tarafından Rockchip RK3588 tabanlı Radxa Rock 5B üzerinde rknn model formatı ile hız ve doğruluk ölçülerek çalıştırılmıştır.

Performans
ModelFormatDurumBoyut (MB)mAP50-95(B)Çıkarım süresi (ms/im)
YOLO26nrknn7.10.47965.7
YOLO26srknn20.90.57199.2
YOLO26mrknn42.50.610235.3
YOLO26lrknn52.10.630280.5
YOLO26xrknn112.20.666669.1

ultralytics 8.4.23 ile kıyaslanmıştır

Not

Yukarıdaki kıyaslamalar için doğrulama COCO128 veri seti kullanılarak yapılmıştır. Çıkarım süresi ön/son işlemleri içermez.

Link to this sectionÖzet#

Bu kılavuzda, Ultralytics YOLO26 modellerini Rockchip platformlarında dağıtımlarını geliştirmek amacıyla RKNN formatına nasıl aktaracağını öğrendin. Ayrıca RKNN Toolkit ile tanıştın ve uç yapay zeka uygulamaları için RKNN modellerini kullanmanın özel avantajlarını gördün.

Ultralytics YOLO26 ve Rockchip'in NPU teknolojisinin birleşimi, gömülü cihazlarda gelişmiş bilgisayarlı görü görevlerini çalıştırmak için verimli bir çözüm sunar. Bu yaklaşım, minimum güç tüketimi ve yüksek performans ile gerçek zamanlı nesne algılama ve diğer yapay zeka görme uygulamalarını mümkün kılar.

Kullanımla ilgili daha fazla ayrıntı için RKNN resmi dokümantasyonunu ziyaret et.

Ayrıca, diğer Ultralytics YOLO26 entegrasyonları hakkında daha fazla bilgi edinmek istersen, entegrasyon kılavuzu sayfamızı ziyaret et. Orada birçok faydalı kaynak ve içgörü bulacaksın.

Link to this sectionSSS#

Link to this sectionUltralytics YOLO modelimi RKNN formatına nasıl aktarırım?#

You can easily export your Ultralytics YOLO model to RKNN format using the export() method in the Ultralytics Python package or via the command-line interface (CLI). Ensure you are using an x86-based Linux PC for the export process, as ARM64 devices like Rockchip are not supported for this operation. You can specify the target Rockchip platform using the name argument, such as rk3588, rk3566, or others. This process generates an optimized RKNN model ready for deployment on your Rockchip device, taking advantage of its Neural Processing Unit (NPU) for accelerated inference.

Örnek
from ultralytics import YOLO

# Load your YOLO model
model = YOLO("yolo26n.pt")

# Export to RKNN format for a specific Rockchip platform
model.export(format="rknn", name="rk3588")

Link to this sectionRKNN modellerini Rockchip cihazlarında kullanmanın faydaları nelerdir?#

RKNN modelleri, özel olarak Rockchip'in Sinir İşleme Birimlerinin (NPU) donanım hızlandırma yeteneklerinden yararlanmak için tasarlanmıştır. Bu optimizasyon, aynı donanımda ONNX veya TensorFlow Lite gibi genel model formatlarını çalıştırmaya kıyasla önemli ölçüde daha hızlı çıkarım hızları ve azaltılmış gecikme sağlar. RKNN modellerini kullanmak, cihazın kaynaklarının daha verimli kullanılmasını sağlar; bu da özellikle uç cihazlardaki gerçek zamanlı uygulamalar için kritik olan daha düşük güç tüketimi ve daha iyi genel performans ile sonuçlanır. Ultralytics YOLO modellerini RKNN'ye dönüştürerek, RK3588, RK3566 ve diğerleri gibi Rockchip SoC'leri ile güçlendirilmiş cihazlarda optimum performansa ulaşabilirsin.

Link to this sectionRKNN modellerini NVIDIA veya Google gibi diğer üreticilerin cihazlarına dağıtabilir miyim?#

RKNN modelleri, özellikle Rockchip platformları ve onların entegre NPU'ları için optimize edilmiştir. Teknik olarak bir RKNN modelini yazılım emülasyonu kullanarak diğer platformlarda çalıştırabilsen de, Rockchip cihazlarının sağladığı donanım hızlandırmasından yararlanamazsın. Diğer platformlarda optimum performans için, Ultralytics YOLO modellerini NVIDIA GPU'lar için TensorRT veya Google'ın Edge TPU'su için TensorFlow Lite gibi o platformlar için özel olarak tasarlanmış formatlara aktarman önerilir. Ultralytics, çeşitli donanım hızlandırıcılarla uyumluluğu sağlayarak geniş bir format yelpazesine dışa aktarmayı destekler.

Link to this sectionRKNN modeli dağıtımı için hangi Rockchip platformları desteklenmektedir?#

Ultralytics YOLO'nun RKNN formatına dışa aktarılması; RK3588, RK3576, RK3566, RK3568, RK3562, RK2118 ve RV1126B dahil olmak üzere kayan noktalı RKNN yapılarına sahip Rockchip platformlarını destekler. Ayrıca, RV1103, RV1106, RV1103B ve RV1106B gibi yalnızca INT8 destekleyen hedefler için gerekli olan int8=True ile INT8 nicemlenmiş RKNN dışa aktarımını da destekler. Bu platformlar genellikle Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas ve Banana Pi gibi üreticilerin cihazlarında bulunur; bu da optimize edilmiş RKNN modellerini tek kartlı bilgisayarlardan endüstriyel sistemlere kadar bir dizi Rockchip destekli cihazda dağıtmana olanak tanır.

Link to this sectionRockchip cihazlarında RKNN modellerinin performansı diğer formatlara göre nasıldır?#

RKNN modelleri, Rockchip'in NPU'ları için optimize edildiklerinden, Rockchip cihazlarında genellikle ONNX veya TensorFlow Lite gibi diğer formatlardan daha iyi performans gösterir. Örneğin, Radxa Rock 5B (RK3588) üzerindeki kıyaslamalar, RKNN formatındaki YOLO26n modelinin 65,7 ms/görüntü çıkarım süresine ulaştığını ve diğer formatlardan önemli ölçüde daha hızlı olduğunu göstermektedir. Kıyaslamalar bölümünde gösterildiği gibi, bu performans avantajı çeşitli YOLO26 model boyutlarında tutarlıdır. RKNN modelleri, özel NPU donanımından yararlanarak gecikmeyi en aza indirir ve iş hacmini en üst düzeye çıkarır; bu da onları Rockchip tabanlı uç cihazlardaki gerçek zamanlı uygulamalar için ideal kılar.

Yorumlar