Kurumsal kullanıma hazır güvenlik: ISO 27001 + SOC 2 Tip I uyumlu.

Link to this sectionUltralytics YOLO Modelleri için Hailo Dışa Aktarımı#

Hailo yapay zeka hızlandırıcıları; Raspberry Pi AI Kit ve AI HAT+ gibi uç cihazlarda derlenmiş Hailo Executable Format (HEF) modellerini çalıştırır. Ultralytics, Hailo Dataflow Compiler (DFC) kullanarak YOLO nesne tespiti, segmentasyon, poz, OBB, sınıflandırma, semantik segmentasyon ve derinlik tahmini modellerini doğrudan HEF formatına dışarı aktarır.

Hailo dağıtımı, uç noktada bilgisayarlı görü için tasarlanmıştır: kameralar, robotlar, endüstriyel sistemler, ağ geçitleri ve her kareyi buluta göndermeden yerel nesne tespiti yapması gereken diğer cihazlar. Derlenmiş bir HEF; kuantize edilmiş ağı, donanım tahsisini, zamanlamayı ve seçilen hızlandırıcı için gereken isteğe bağlı HailoRT son işleme adımlarını içerir.

Daha yeni uç hızlandırıcıları karşılaştır

Yeni donanım dağıtımları için, daha yeni uç hızlandırıcı platformlarını hedefleyen ve daha yüksek performans sunabilecek Axelera ve DeepX seçeneklerini de değerlendir. Hailo, en iyi doğruluk için en az 1.024 adet temsili kalibrasyon görüntüsü önermektedir; yerleşik göreve özel veri kümeleri yalnızca hızlı testler için uygundur.

Link to this sectionNeden Ultralytics YOLO'yu Hailo Üzerinde Dağıtmalısın?#

Ultralytics YOLO'yu bir Hailo sinirsel işlem birimi (NPU) ile birleştirmek, model eğitiminden düşük güç tüketen uç yapay zeka çıkarımına kadar pratik bir yol sunar. Yaygın kullanım durumları şunları içerir:

  • Akıllı kameralar ve video analitiği: Güvenlik, perakende, trafik ve doluluk uygulamaları için kameraya yakın yerlerde gerçek zamanlı nesne tespiti çalıştır.
  • Robotik ve otonom sistemler: Kesintisiz bir bulut bağlantısına ihtiyaç duymadan insanları, araçları, paketleri, araçları veya engelleri tespit et.
  • Endüstriyel bilgisayarlı görü: Denetim, sayım, güvenlik izleme ve kalite kontrol için özel YOLO modelleri dağıt.
  • Raspberry Pi AI projeleri: AI Kit veya AI HAT+ kullanarak Raspberry Pi sistemlerine hızlandırılmış görü çıkarımı ekle.
  • Uç ağ geçitleri ve yapay zeka bilgisayarları: Bant genişliği ve bulut bilişim gereksinimlerini azaltırken, birden fazla video veya sensör akışını yerel olarak işle.

Yerel çıkarım, görüntüler dağıtım cihazında kaldığı için gizliliği ve yanıt süresini iyileştirebilir. Gerçek iş hacmi, gecikme süresi ve güç kullanımı; YOLO model boyutuna, girdi çözünürlüğüne, Hailo mimarisine, ana sisteme ve uygulama hattına bağlıdır.

Link to this sectionHailo Dışa Aktarımı Nasıl Çalışır?#

Ultralytics, format="hailo" arkasındaki tüm dışa aktarma iş akışının sahibidir:

YOLO (.pt) -> ONNX -> Hailo parse -> INT8 optimization -> HEF compile

Dışa aktarıcı bu aşamaları otomatik olarak gerçekleştirir:

  1. Derleyici uyumlu ayarlara sahip statik bir ONNX grafiği dışa aktarır.
  2. Model mimarisi için kafa çıktılarını seçer.
  3. Normalleştirme, aktivasyon ve son işleme yönergeleri oluşturur.
  4. Temsili bir kalibrasyon akışı oluşturur ve modeli INT8'e kuantize eder.
  5. Optimize edilmiş grafiği seçilen Hailo hızlandırıcısı için derler.
  6. HEF dosyasını Ultralytics meta verileriyle kaydeder ve ara ONNX dosyasını kaldırır.

YOLOv8 ve YOLO11 tespit modelleri, derlenen işlem hattında HailoRT YOLO NMS kullanır. YOLO26 tespit modelleri NMS'siz birebir çıktılarını kullanır, bu nedenle dışarı aktarıcı otomatik olarak farklı bir çıktı ve nicemleme yolu seçer. YOLOv8/YOLO11 segmentasyon, poz ve OBB hammade başlık tensörlerini derler; Ultralytics bunları çıkarım sırasında çözer ve YOLOv8/YOLO11/YOLO26 sınıflandırması yonga üzerinde softmax çalıştırır, böylece HEF doğrudan sınıf olasılıklarını döndürür. YOLO26 semantik segmentasyonu için dışarı aktarıcı hızlandırıcıyı takip eder: Hailo-8/8L (DFC v3.x), ana bilgisayar (host) üzerinden yukarı örnekleme (upsampling) ve indirgeme için sınıflandırıcı logit'leri döndürürken, Hailo-10/15 (DFC v5.x) yonga üzerinde çok sınıflı ArgMax başlıklarını derler ve kompakt bir sınıf haritası döndürür. Tek sınıflı başlıklar, ArgMax yerine eşik gerektirdiği için her hedefte ana bilgisayar logit yolunu kullanır. YOLO26 derinlik modelleri yoğun logit conv'u a16 formatında derler ve metrik derinlik haritasını ana bilgisayarda yeniden oluşturur (baştan sonra gelen kırpma/üstel ve öğrenilen log-afin kalibrasyonu), bu nedenle nicemleyici (quantizer) en geniş aralığını ham logit üzerinde tutar. Kullanıcıların ONNX son düğümlerini bulmasına, bir Hailo model betiği (.alls) yazmasına veya manuel olarak bir NMS JSON oluşturmasına gerek yoktur.

Link to this sectionKurulum#

Ultralytics'i yükle ve hedef donanımın için DFC tekerleğini (wheel) Hailo Developer Zone'dan indir (ücretsiz kayıt gereklidir):

pip install ultralytics
pip install /path/to/hailo_dataflow_compiler-*.whl
Not

Hailo derlemesi Linux x86_64 gerektirir. Modeli desteklenen bir iş istasyonunda derle, ardından çıktı dizinini hedef cihaza kopyala. Çıkarım için DFC gerekmez.

Hailo-8 ve Hailo-8L, DFC v3.x kullanır. Hailo-10 ve Hailo-15, DFC v5.x kullanır. Hedef hızlandırıcıyla eşleşen derleyici sürümünü yükle.

Ultralytics Platform'da Dışa Aktar

Ultralytics Platform, yönetilen Hailo dışa aktarımı sağlar, bu nedenle yerel bir Hailo hesabı veya DFC kurulumu gerekmez.

Link to this sectionBir Hailo HEF Modeli Dışa Aktar#

format="hailo" kullan ve name ile hedef hızlandırıcıyı seç:

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
output = model.export(format="hailo", name="hailo8l")
print(output)  # yolo11n_hailo_model/

Eşdeğer CLI komutu şudur:

yolo export model=yolo11n.pt format=hailo name=hailo8l

Hailo dışa aktarımı yalnızca INT8 destekler. data sağlanmadığında Ultralytics otomatik olarak göreve özel bir kalibrasyon veri kümesi indirir. Özel modeller için temsili eğitim veya doğrulama görüntülerini kullan:

En iyi doğruluk için en az 1.024 kalibrasyon görüntüsü kullan

Ultralytics, DFC optimizasyon seviyesini 2'ye zorlar ve ince ayarı gerçek kalibrasyon veri kümesi boyutunu kullanacak şekilde yapılandırır. Hailo en az 1.024 farklı görüntü önermektedir; yerleşik hafif veri kümeleri seviye 2'de derlenir ancak üretim ortamını tam olarak yansıtmayabilir. Üretim HEF dışa aktarımları için data="path/to/dataset.yaml" kullanarak temsili bir veri kümesi ver.

model.export(format="hailo", name="hailo8l", data="path/to/dataset.yaml")

Derleme sabit bir girdi şekli kullanır. imgsz değerini cihazda kullanılan çözünürlüğe ayarla:

model.export(format="hailo", name="hailo8l", imgsz=640)

Link to this sectionDesteklenen Modeller ve Donanım#

Hailo ekosistemi geniş bir bilgisayarlı görü iş yükü yelpazesini kapsar, ancak Ultralytics format="hailo" dışarı aktarıcısı şu anda standart YOLO nesne tespiti, segmentasyon, poz, OBB, sınıflandırma, semantik segmentasyon ve derinlik tahmini başlıklarını doğrular. Görev tablosu mevcut dışarı aktarıcı yollarını açıklar; donanım doğrulaması aşağıda ayrıca listelenmiştir.

Ultralytics göreviDoğrudan Hailo dışa aktarımıDesteklenen model aileleriNotlar
Nesne algılamaYOLOv8, YOLO11, YOLO26Özel modeller dahil standart Ultralytics Detect başlıkları
Örnek segmentasyonuYOLOv8, YOLO11Çıkarım sırasında Ultralytics tarafından kodu çözülen ham kafa tensörleri; YOLO26-seg şu anda desteklenmemektedir
Görüntü sınıflandırmaYOLOv8, YOLO11, YOLO26Softmax çip üzerinde çalışır; HEF doğrudan sınıf olasılıklarını döndürür
Poz tahminiYOLOv8, YOLO11Ultralytics tarafından çıkarım anında kodu çözülen ham kafa tensörleri; YOLO26-pose şu an desteklenmemektedir
Yönlendirilmiş nesne tespitiYOLOv8, YOLO11Ultralytics tarafından çıkarım anında kodu çözülen ham kafa tensörleri; YOLO26-OBB şu an desteklenmemektedir
Anlamsal segmentasyonYOLO26Hailo-8/8L ve tek sınıflı kafalar logit döndürür; Hailo-10/15 ise çok sınıflı haritalar oluşturur
Derinlik tahminiYOLO26a16 formatında derlenen yoğun logit; Ultralytics çıkarım sırasında metrik derinlik haritasını yeniden oluşturur

YOLOv10, YOLO-World, YOLOE ve RT-DETR gibi özelleştirilmiş tespit aileleri de ❌ desteklenmez. Ultralytics, doğrulanmamış bir HEF üretmek yerine derlemeden önce bu görevleri ve model ailelerini reddeder.

Model ailesiHailo-8 / Hailo-8LHailo-10 / Hailo-15Çıktı
YOLOv8 / YOLO11 algılamaHailoRT YOLO NMS ile HEF
YOLO26 algılamaDesteklenen çalışma zamanları için NMS-free tespit başlığı çıktıları
YOLOv8-seg / YOLO11-segÇıkarım sırasında Ultralytics tarafından kodu çözülen ham segmentasyon tensörleri
YOLOv8-pose / YOLO11-poseHailo-8L doğrulandıDoğrulanmadıUltralytics tarafından çıkarım anında çözülen ham poz tensörleri
YOLOv8-obb / YOLO11-obbHailo-8L doğrulandıDoğrulanmadıUltralytics tarafından çıkarım anında çözülen ham OBB tensörleri
YOLOv8-cls / YOLO11-cls / YOLO26-clsHailo-8L doğrulandıDoğrulanmadıÇip üzerinde softmax; HEF sınıf olasılıklarını döndürür
YOLO26-semHailo-8L doğrulandıDoğrulanmadıLogitler veya Hailo-10/15 üzerinde oluşturulmuş çok sınıflı bir harita
YOLO26-depthHailo-8L doğrulandıDoğrulanmadıYoğun logit; Ultralytics tarafından çözülen metrik derinlik haritası

Poz, OBB, sınıflandırma, YOLO26 semantik segmentasyon ve YOLO26 derinlik tahmini (Hailo-8/8L yolu), HailoRT 4.23 ve DFC 3.33 ile Hailo-8L üzerinde doğrulanmıştır. Dışarı aktarıcı listelenen diğer hedefleri de kabul eder, ancak bu yeni görev yolları üretim kullanımı öncesinde eşleşen derleyici ve cihazla doğrulama gerektirir.

Bu name değerlerinden birini seç:

nameHedef hızlandırıcı
hailo8Hailo-8
hailo8lHailo-8L
hailo10hHailo-10H
hailo15hHailo-15H
hailo15lHailo-15L

hailo8l varsayılandır. Seçilen hedefle eşleşen DFC sürümünü yükle.

Link to this sectionHailo Donanımı ve SDK Nesilleri#

Hailo hızlandırıcı aileleri farklı derleyici nesilleri kullanır. Oluşturulan HEF, hedef donanımla eşleşmelidir, bu nedenle dışa aktarımı yapan makine yerine çıkarımı çalıştıracak cihaz için name seç.

Donanım ailesiDFC nesliTipik dağıtım örnekleri
Hailo-8 / Hailo-8LDFC v3.xHızlandırıcı modülleri, Raspberry Pi AI Kit/HAT+
Hailo-10HDFC v5.xDaha yeni uç yapay zeka ve Raspberry Pi dağıtımları
Hailo-15H / Hailo-15LDFC v5.xAkıllı kamera ve gömülü görü uygulamaları

Derleyici Linux x86_64 üzerinde çalışırken, sonuçta ortaya çıkan HEF, HailoRT aracılığıyla Hailo cihazında çalışır. Bu ayrım, bir iş istasyonunda veya Ultralytics Platform'da derleme yapmana ve küçük çalışma zamanı yapısını bir ARM veya x86 uç ana bilgisayarına dağıtmana olanak tanır.

Link to this sectionUyumluluk Notları#

Hailo derlemesi donanıma özeldir ve sabit bir girdi şekli kullanır. Bu kısıtlamaları aklında tut:

  • Seçilen name, dağıtım hızlandırıcısı ile eşleşmelidir.
  • Kalibrasyon görüntüleri, üretimde beklenen aydınlatmayı, bakış açılarını, nesneleri ve arka planları temsil etmelidir.
  • Tek bir imgsz ile derlenen bir HEF, çalışma zamanında dinamik olarak yeniden boyutlandırılamaz.
  • Özel sınıf sayıları desteklenir çünkü Ultralytics, model meta verilerinden son işleme yapılandırmasını oluşturur.
  • Standart Ultralytics Detect başlıklarına sahip tespit modelleri, YOLOv8/YOLO11 segmentasyon, poz ve OBB modelleri, YOLOv8/YOLO11/YOLO26 sınıflandırma modelleri, ayrıca YOLO26 semantik segmentasyon ve derinlik tahmini modelleri desteklenmektedir; YOLO26 örnek segmentasyonu, poz, yönelimli sınırlayıcı kutu ile YOLO-World, YOLOE, YOLOv10 ve RT-DETR dışarı aktarımları şu anda desteklenmemektedir.
  • Hailo-8/8L ve Hailo-10/15 yapıları farklı DFC nesilleri tarafından derlenir ve birbirinin yerine kullanılamaz.

Link to this sectionKalibrasyon ve INT8 Kuantizasyonu#

Hailo HEF dışa aktarımı, YOLO ağını hızlandırıcı üzerinde verimli bir şekilde eşlemek için INT8 kuantizasyonu kullanır. Kalibrasyon veri seti aktivasyon aralıklarını tahmin eder; derleme sırasında modeli yeniden eğitmez veya etiket gerektirmez.

data atlandığında Ultralytics, nesne tespiti için COCO128, semantik segmentasyon için cityscapes8 veya derinlik tahmini için depth8 gibi görev odaklı hafif bir kalibrasyon veri seti kullanır. Yoğun derinlik başlığı kalibrasyon etki alanına karşı özellikle hassastır: bir derinlik modelini ilişkisiz tespit görüntüleriyle kalibre etmek tahmin edilen haritayı düzleştirir ve daha büyük etki alanı içi kümeler doğruluğu artırır. Özel bir bilgisayarlı görü modeli için data parametresini ilgili veri seti YAML dosyasına yönlendirerek derleyicinin gerçek dağıtım etki alanından temsilci görüntüleri gözlemlemesini sağla:

model.export(format="hailo", name="hailo8l", data="my_dataset.yaml")

fraction kalibrasyon için kullanılan veri kümesinin bir bölümünü seçer. Daha fazla görsel yalnızca dağıtım alanını temsil ettiklerinde yardımcı olur; alan dışı görseller nicelenmiş doğruluğu düşürebilir ve optimizasyon süresini artırabilir. Eğer INT8 HEF, orijinal PyTorch modeline kıyasla doğruluk kaybederse, model veya çalışma zamanı ayarlarını değiştirmeden önce kalibrasyon verilerini iyileştir.

Link to this sectionModel Ailesine Göre Doğruluk Beklentileri#

Alan içi kalibrasyon (COCO128, 128 görsel) ile bir Hailo-8L üzerinde ölçüldüğünde, INT8 HEF dışa aktarımları aynı değerlendirme protokolü altında PyTorch mAP50 değerlerinin şu kadarlık kısmını korur:

ModelmAP50 koruma oranıNotlar
YOLOv8n~%100Çip üstü NMS ile DFL başlığı
YOLO11n~%96Omurgadaki dikkat blokları INT8'e karşı daha hassastır
YOLO26n~%93Uçtan uca başlık artı dikkat; güven notuna bak

Koruma oranı, her iki modeli de aynı güven eşiğinde karşılaştırır. YOLOv8 ve YOLO11 HEF'leri, dışa aktarma anındaki conf değerini (varsayılan 0.25) çip üstü NMS'e gömer; bu nedenle, varsayılan düşük eşiğinde bir PyTorch temel çizgisi ile doğrulamak, kesinlik-duyarlılık eğrisinin daha büyük bir kısmını entegre eder ve nicemleme farkını olduğundan fazla gösterir.

Algılamanın ötesinde; segmentasyon, pose, OBB ve sınıflandırma dışa aktarma yolları aynı Hailo-8L (DFC 3.33, HailoRT 4.23) üzerinde doğrulanmıştır. Her bir INT8 HEF, etki alanı içi kalibrasyon kullanılarak aynı doğrulama kümesindeki PyTorch kontrol noktası ile karşılaştırılmıştır:

GörevMetrik (doğrulama kümesi)YOLOv8nYOLO11n
Örnek segmentasyonumask mAP50 tutma oranı (COCO128-seg)98.0%93.6%
Posebox mAP50 tutma oranı (COCO8-pose)98.1%90.8%
Yönlendirilmiş sınırlayıcı kutumAP50 tutma oranı (DOTA128)~%10096.9%
Sınıflandırmatop-1 tutma oranı (ImageNet val)92.6%95.4%

Segmentasyon, pose ve OBB, her görevin varsayılan etki alanı içi kümesiyle (COCO128-seg, COCO8-pose, DOTA128) kalibre edilmiştir; sınıflandırma ise ImageNet100 ile kalibre edilmiştir. Bu varsayımlardan iki uyarı ortaya çıkmaktadır: COCO8-pose yalnızca 8 görüntü içerir, bu yüzden pose sonuçlarını gösterge niteliğinde kabul et ve üretim ortamı için daha büyük bir data= dosyası ilet. Ayrıca DOTA8, her iki model için de mAP50 değerini %100'e yakın bir seviyede doyurduğu için OBB değeri DOTA128 üzerinde okunmaktadır. Sınıflandırma aynı zamanda YOLO11'in YOLOv8'den daha fazla performans koruduğu tek görevdir; diğer görevlerde YOLO11 dikkat (attention) ana omurgası INT8'e karşı daha duyarlıdır.

Cihaz ölçümlerinden üç pratik kural çıkar:

  1. Her zaman alan içi kalibrasyon yap. Alan dışı görsellerle ince ayar yapmak, ince ayarı tamamen devre dışı bırakmakla eşdeğerdir: 1.238 alan dışı görselle kalibre edilen bir YOLO26n, ince ayar olmadan derlenen ile aynı doğruluğu (%85.7) korur. Küçük bir alan içi kümesi, büyük bir alan dışı kümesinden daha iyidir.
  2. YOLO26 dağıtımları için conf değerini yaklaşık 0.05 düşür. Kuantizasyon, YOLO26 skorlarını ortalama 0.05 kadar aşağı çeker, bu nedenle PyTorch'ta ayarlanmış bir eşik değeri HEF üzerinde geçerli algılamaları düşürebilir. Cihaz üzerinde conf=0.20 kullanmak, PyTorch'un conf=0.25 değerindeki algılama sayısıyla eşleşir ve değeri biraz daha düşürmek (yaklaşık conf=0.15), daha düşük güvenilirlikli algılamalar maliyetine karşın mAP50 açığının neredeyse tamamını geri kazanır. Kuantizasyon ayrıca algılamaların yaklaşık %20'sini yeniden sıralar —ki bu hiçbir eşik değerinin düzeltemeyeceği kalıcı bir sıralama etkisidir— ancak bu yeniden düzenleme, düşük eşik değerinde mAP50 iyileşmesini engellemez.
  3. Dikkat cezası Hailo-8/8L (DFC 3.33) üzerinde yapısal bir durumdur. Dikkat blokları, derleyicinin sunduğu her modda INT8 aktivasyon girişlerini tutan matmul işlemlerine derlenir; 16 bit çıkış modu bu grafik için ayırma işleminde başarısız olur ve çevre katmanların hassasiyetini artırmak yardımcı olmaz çünkü matmul girişleri zaten INT8'e yeniden nicemler (derinlemesine ve çıkış evrişimlerini 16 bit ile korumak testlerimizde mAP'yi değiştirmedi). Doğruluk öncelik olduğunda ve model değiştirilebilir olduğunda, YOLO11 şu an için burada YOLO26'dan daha iyi nicemleme yapar; yeni Hailo nesilleri (DFC 5.x) daha fazla karma hassasiyet seçeneği sunar ve farklılık gösterebilir.

Link to this sectionDışa Aktarılan Yapılar#

Dışa aktarma, dağıtılabilir HEF ve Ultralytics meta verilerini içeren bir dizin oluşturur:

yolo11n_hailo_model/
├── yolo11n.hef
├── metadata.yaml
└── nms_config.json
  • *.hef HailoRT tarafından yüklenen derlenmiş modeldir.
  • metadata.yaml model adlarını, görevi, girdi boyutunu, adım sayısını (stride) ve Hailo hedef bilgilerini korur.
  • nms_config.json, YOLOv8 ve YOLO11 tespit modelleri için oluşturulan HailoRT NMS yapılandırmasını kaydeder. YOLO26 tespit ve tespit dışı tüm görevler (segmentasyon, pose, OBB, sınıflandırma, anlamsal) bu dosyayı kullanmaz.

Ara ONNX grafiği derlemeden sonra kaldırılır.

Link to this sectionHailo Donanımında Çıkarım Çalıştır#

HailoRT'yi hedef cihaza yükle. Raspberry Pi AI Kit ve AI HAT+ kullanıcıları Raspberry Pi AI yazılım kılavuzunu takip edebilir:

sudo apt install hailo-all
hailortcli fw-control identify

Tüm dışa aktarma dizinini, metadata.yaml dosyasının HEF'in yanında kalması için cihaza kopyala. Ultralytics, dışa aktarılan dizin üzerinde doğrudan predict ve val işlemlerini çalıştırmak için HailoRT kullanır:

from ultralytics import YOLO

model = YOLO("yolo11n_hailo_model")
results = model.predict("path/to/image.jpg")

Tespit modelleri için arka uç, YOLOv8 ve YOLO11 HailoRT NMS çıktısını dönüştürür ve YOLO26 bire bir çıktılarının kodunu otomatik olarak çözer. Ham segmentasyon, pose ve OBB tensörlerinin kodunu çözer, çip üzerindeki sınıflandırma olasılıklarını döndürür ve Hailo-8/8L ile tüm tek sınıflı kafalarda ana bilgisayar indirgemesi yoluyla veya çok sınıflı Hailo-10/15 kafaları için çip üzerinde ArgMax aracılığıyla anlamsal sınıf haritaları üretir. TAPPAS, GStreamer ve Raspberry Pi picamera2.devices.Hailo yardımcısı, uygulamaya özel işlem hatları için kullanılabilir durumdadır.

Bir GStreamer dağıtımı için HEF dosyasını hailonet'e ilet:

gst-launch-1.0 filesrc location=video.mp4 ! decodebin ! videoconvert ! \
  hailonet hef-path=yolo11n_hailo_model/yolo11n.hef ! \
  hailofilter function-name=yolov8 ! hailooverlay ! autovideosink

Link to this sectionHailo Dağıtım Seçenekleri#

HEF, çeşitli Hailo çalışma zamanı arayüzlerinde aynı dağıtılabilir model yapısıdır. Uygulamaya uygun arayüzü seç:

Çalışma zamanı seçeneğiEn uygun olduğu alan
HailoRT Python veya C/C++ APIÖzel uygulamalar ve çıkarım üzerinde doğrudan kontrol
Raspberry Pi picamera2.devices.HailoRaspberry Pi üzerinde Kamera Modülü projeleri
GStreamer ve Hailo uygulamalarıGerçek zamanlı video akışları ve çok aşamalı boru hatları
hailortcliCihaz kontrolleri, HEF incelemesi ve kıyaslama

Uygulamanın Ultralytics sınıf isimlerine, giriş boyutuna, adım değerine veya diğer model bilgilerine ihtiyaç duyduğu durumlarda metadata.yaml dosyasını HEF ile birlikte tut. HEF dosyasının kendisi, kamera yakalama, görselleştirme, izleme, uyarılar veya depolama gibi uygulama düzeyi mantığının yerini almaz.

Link to this sectionHailo Cihazını ve HEF dosyasını doğrulayın#

Bir kamera veya video boru hattını entegre etmeden önce, çalışma zamanını ve hızlandırıcıyı bağımsız olarak doğrulayın:

hailortcli fw-control identify
hailortcli parse-hef yolo11n_hailo_model/yolo11n.hef

Sadece cihaz üzerindeki performans ölçümleri, Hailo çıkarımını video kod çözme, görüntü yeniden boyutlandırma, çizim ve uygulama G/Ç işlemlerinden ayırır. Uçtan uca gecikmeyi veya saniye başına kare sayısını tahmin ederken uygulamayı bir bütün olarak ayrıca ölçün.

Link to this sectionHailo'nun Diğer YOLO Dışa Aktarma Formatlarıyla Karşılaştırılması#

Modeli çalıştıracak donanıma göre bir dışa aktarma formatı seçin:

Dağıtım hedefiUltralytics dışa aktarma formatı
Hailo NPUHailo HEF (format="hailo")
NVIDIA GPUTensorRT
Intel CPU, GPU veya NPUOpenVINO
Apple donanımıCoreML
Qualcomm Snapdragon NPUQNN
Rockchip NPURKNN
Raspberry Pi AI CameraSony IMX500
Taşınabilir çapraz çalışma zamanı kullanımıONNX

Nihai cihaz bir Hailo hızlandırıcısı içerdiğinde HEF doğru tercihtir. ONNX taşınabilir bir ara format olarak yararlı kalmaya devam eder, ancak HailoRT orijinal ONNX modeli yerine DFC tarafından üretilen donanıma özel HEF dosyasını yürütür.

Link to this sectionHailo Bilgisayarlı Görü Performansını Optimize Edin#

Model ve boru hattı tercihleri genellikle derleyici bayraklarından daha önemlidir:

  • Küçük bir YOLO modeli ile başlayın ve yalnızca doğruluk gerektirdiğinde model boyutunu artırın.
  • Uygulama için önemli olan nesneleri koruyan en düşük sabit imgsz değerini seçin.
  • Mümkün olduğunda gerçek kameradan ve ortamdan alınan kalibrasyon görüntülerini kullanın.
  • Her çıkarım için HEF dosyasını yeniden açmak yerine Hailo ağını kareler boyunca aktif tutun.
  • Cihaz çıkarım süresini ön işleme, video kod çözme, son işleme, görselleştirme ve ağ G/Ç işlemlerinden ayırın.
  • Sürekli video iş yükleri için GStreamer gibi akışlı bir boru hattı kullanın.
  • Dışa aktarılan HEF dosyasını üretimde kullanılan tam hızlandırıcı ve HailoRT sürümü üzerinde doğrulayın.

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

ArgümanTipVarsayılanAçıklama
namestrhailo8lHedef Hailo hızlandırıcı mimarisi
imgszint, list640Sabit model giriş boyutu
datastrgöreve özelKalibrasyon veri kümesi YAML dosyası
fractionfloat1.0Kullanılacak kalibrasyon görüntüleri oranı
quantizeint8Hailo dışa aktarımı INT8 niceleme kullanır
simplifyboolTrueAra ONNX grafiğini basitleştirin
conffloat0.25YOLOv8/YOLO11 HailoRT NMS güven eşiği
ioufloat0.7YOLOv8/YOLO11 HailoRT NMS IoU eşiği

Nesne tespiti dışarı aktarımı için YOLOv8 ve YOLO11 HailoRT NMS alırken, YOLO26 NMS'siz birebir çıktılarını korur. Segmentasyon, poz ve OBB ham başlık tensörlerini kullanır, sınıflandırma yonga üstü olasılıkları döndürür ve semantik segmentasyon Hailo-8/8L üzerinde ham logitleri ve tüm tek sınıflı başlıklar ya da çok sınıflı Hailo-10/15 başlıkları için işlenmiş sınıf haritalarını döndürür. Derinlik tahmini, Ultralytics'in çıkarım sırasında metrik derinlik haritasına dönüştürdüğü ham derinlik logitini döndürür. end2end geçmeyin; açık geçersiz kılmalar reddedilir. Dinamik şekiller, birden büyük yığınlar, gömülü Ultralytics NMS, FP16 ve FP32 de desteklenmez.

Link to this sectionHailo Dışa Aktarma Sorun Giderme#

Link to this sectionHailo Dataflow Compiler İçe Aktarma Hatası#

Dışa aktarma işlemi hailo_sdk_client eksik olduğunu bildirirse, hedef donanım nesli için DFC wheel dosyasını Ultralytics ile aynı Python ortamına yükleyin. Hailo-8/8L ve Hailo-10/15 farklı derleyici nesilleri gerektirir.

Link to this sectionDesteklenmeyen İşletim Sistemi veya Mimari#

HEF derlemesi Linux x86_64 üzerinde desteklenir. Yerel bilgisayarınız macOS, Windows, Raspberry Pi veya başka bir ARM sistemi ise Ultralytics Platform aracılığıyla dışa aktarın veya uyumlu bir iş istasyonu kullanın.

Link to this sectionDışa Aktarma Uzun Sürüyor#

DFC optimizasyonu en maliyetli aşamadır. Derleme süresi model boyutu, giriş çözünürlüğü ve kalibrasyon verileriyle birlikte artar. Desteklenen bir GPU optimizasyonu hızlandırabilir, sadece CPU ile derleme ise önemli ölçüde daha yavaş olabilir.

Link to this sectionNiceleştirilmiş Model Doğruluğu Düşüyor#

Üretim girdilerine benzeyen ve önemli nesneleri, ölçekleri, aydınlatma koşullarını ve arka planları içeren kalibrasyon görselleri kullan. Dağıtımdan önce orijinal PyTorch modelini ve dışa aktarılan HEF'i aynı doğrulama kümesinde karşılaştır. İyi bir kalibrasyonla bile aileye bağlı orta seviyede bir fark kalır; ölçülen temel çizgiler için Model Ailesine Göre Doğruluk Beklentileri bölümüne bak.

Link to this sectionHEF Cihazda Yüklenmiyor#

name değerinin fiziksel Hailo mimarisiyle eşleştiğini ve cihaz sürücüsünün, donanım yazılımının ve HailoRT paketlerinin birbirleriyle uyumlu olduğunu onaylayın. hailortcli parse-hef ile yapıyı inceleyin ve hailortcli fw-control identify ile hızlandırıcıyı doğrulayın.

Link to this sectionÇıktı Ayrıştırma Yanlış Görünüyor#

Ultralytics'in eşleşen YOLOv8, YOLO11 veya YOLO26 işlem sonrası yolunu seçebilmesi için metadata.yaml dosyasını HEF'in yanında tut. Özel HailoRT uygulamaları da aynı şekilde işlem sonrasını dışa aktarılan model ailesiyle eşleştirmelidir.

Link to this sectionSSS#

Link to this sectionRaspberry Pi üzerinde HEF derleyebilir miyim?#

Hayır. DFC işlemini desteklenen bir Linux x86_64 sisteminde çalıştırın ve ortaya çıkan HEF dosyasını Raspberry Pi cihazına dağıtın.

Link to this sectionNVIDIA GPU gerekiyor mu?#

Desteklenen bir GPU, DFC optimizasyon süresini büyük ölçüde azaltır. CPU ile derleme mümkündür ancak önemli ölçüde daha uzun sürebilir.

Link to this sectionHangi YOLO modelleri Hailo dışa aktarımını destekliyor?#

Doğrudan dışarı aktarım; standart YOLOv8, YOLO11 veya YOLO26 tespit başlığına sahip tespit modellerini, YOLOv8/YOLO11 segmentasyon, poz ve OBB modellerini ile YOLOv8/YOLO11/YOLO26 sınıflandırma modellerini destekler. Bu, bu standart mimarilerden oluşturulan özel eğitilmiş modelleri de içerir. YOLO26 semantik segmentasyon ve derinlik tahmini modelleri de desteklenmektedir. YOLO26 örnek segmentasyonu, poz ve OBB ile YOLOv10, YOLO-World, YOLOE ve RT-DETR, doğrulanmamış bir HEF üretmek yerine reddedilir.

Link to this sectionÖzel eğitimli bir YOLO modelini dışa aktarabilir miyim?#

Evet. Aynı format="hailo" komutunu özel .pt ağırlıklarıyla kullanın ve temsilci INT8 kalibrasyonu için eğitim veri kümesi YAML dosyasını data parametresi üzerinden geçirin. Sınıf isimleri ve sınıf sayısı model meta verilerinden okunur.

Link to this sectionHailo dışa aktarımı dinamik görüntü boyutlarını destekliyor mu?#

Hayır. DFC, sabit bir giriş şeklini HEF içine derler. Dağıtım boru hattında kullanılan çözünürlükle eşleşmesi için dışa aktarma sırasında imgsz değerini seçin.

Link to this sectionYOLO26 neden farklı Hailo çıktıları üretiyor?#

YOLO26, NMS içermeyen bire bir bir tespit kafası kullanır. Ultralytics, YOLOv8 ve YOLO11 için kullanılan HailoRT YOLOv8 tarzı NMS'yi eklemek yerine bu çıktı tensörlerini doğrudan derler.

Link to this sectionDFC ve HailoRT arasındaki fark nedir?#

Hailo Dataflow Compiler, modeli bir Linux x86_64 derleme makinesinde donanıma özel bir HEF dosyasına dönüştürür ve niceleştirir. HailoRT, bu HEF dosyasını hedef cihazda yükler ve çalıştırır.

Link to this sectionONNX mi yoksa HEF dosyasını mı dağıtmalıyım?#

Derlenmiş HEF dosyasını Hailo çalışma zamanına dağıtın. ONNX, dışa aktarma sırasında kullanılan bir ara temsildir ve başarılı derlemeden sonra kaldırılır.

Link to this sectionHailo DFC'yi nereden edinebilirim?#

Donanım neslinize uygun derleyici wheel dosyasını Hailo Developer Zone'dan indirin. Derleyici yalnızca HEF dosyasını oluşturmak için gereklidir; HailoRT bunu hedef hızlandırıcıda çalıştırır.

Link to this sectionÖzet#

Ultralytics Hailo dışa aktarımı, eğitilmiş bir YOLO modelinden dağıtılabilir bir HEF dosyasına doğrudan bir yol sağlar:

  1. Bir YOLOv8, YOLO11 veya YOLO26 tespit ya da sınıflandırma modeli, bir YOLOv8/YOLO11 segmentasyon, poz ya da OBB modeli veya bir YOLO26 semantik segmentasyon ya da derinlik tahmini modeli yükle.
  2. format="hailo" ile dışa aktarın ve hedef mimariyi seçin.
  3. Eşleşen DFC ile yerel olarak kalibre edip derleyin veya Ultralytics Platform üzerindeki yönetilen dışa aktarma özelliğini kullanın.
  4. HEF ve metadata.yaml dosyalarını Hailo destekli uç cihaza kopyalayın.
  5. HailoRT, Raspberry Pi Picamera2 veya bir GStreamer video işlem hattı ile çıkarım çalıştır.

Diğer bilgisayarlı görü dağıtım hedefleri için Dışa aktarma modu, Kıyaslama modu ve entegrasyon kılavuzuna göz atın. İlgili donanım kılavuzları arasında ONNX, OpenVINO, TensorRT, NCNN, RKNN, Sony IMX500 ve Qualcomm QNN yer alır.

Yorumlar