Yolo Vision Shenzhen
Shenzhen
Şimdi katılın

Ultralytics YOLO11 modellerini NCNN model formatına aktarma

Abirami Vina

5 dakikalık okuma

18 Haziran 2025

Ultralytics YOLO11 modellerini, sınırlı güç ve işlem kaynaklarına sahip uç cihazlarda verimli, düşük gecikmeli yapay zeka çıkarımları çalıştırmak için NCNN model formatına aktarın.

Yapay zeka çözümleri, afet yönetimi, atık yönetimi ve yangınla mücadele gibi yüksek riskli sektörlerde bile daha yaygın hale geliyor. Benimsenme artmaya devam ettikçe, yapay zeka modelleri yalnızca sunucularda veya bulutta değil, doğrudan sahada çalışan cihazlarda olmak üzere daha çeşitli ortamlarda konuşlandırılıyor.

Örneğin, küçük işlemcilerle çalışan kenar bileşenlerine sahip dronlar ve ekipmanlar, afet bölgelerinde çok önemli bir rol oynayabilir. Termal kameralarla donatılmış bu cihazlar, moloz altında mahsur kalan insanları bulmak için yerinde veri toplayabilir ve analiz edebilir. Bu, görüntülerden ve videolardan görsel bilgileri yorumlayan bir yapay zeka dalı olan bilgisayarlı görü sayesinde mümkün olmaktadır.

Ancak, Görüntü İşleme Yapay Zeka modellerini uç cihazlarda (edge devices) kullanıma sunmak göründüğü kadar basit değildir. AI modellerinin, sınırlı işlem gücü ve belleğe sahip donanımlarda verimli bir şekilde çalışacak şekilde optimize edilmesi gerekir. İşte bu yüzden NCNN gibi AI çerçeveleri (frameworks) önemlidir. Doğruluğu feda etmeden düşük güçlü cihazlarda gerçek zamanlı performans için modelleri dönüştürmeye ve optimize etmeye yardımcı olurlar.

Özellikle, Ultralytics YOLO11 gibi Ultralytics YOLO modelleri, Ultralytics tarafından desteklenen NCNN entegrasyonu kullanılarak kolayca NCNN model formatına aktarılabilir. YOLO11'i NCNN model formatına dönüştürmek, modelin daha hızlı çalışmasını, daha az bellek kullanmasını ve doğruluktan ödün vermeden farklı cihazlarda sorunsuz çalışmasını sağlar.

Bu makalede, Ultralytics tarafından desteklenen NCNN entegrasyonunu inceleyecek ve YOLO11 modelinizi NCNN model formatına nasıl aktarabileceğinizi adım adım göstereceğiz. Haydi başlayalım!

NCNN'ye genel bir bakış: Hafif bir sinir ağı çerçevesi

NCNN, Tencent tarafından geliştirilen açık kaynaklı bir sinir ağı çıkarım çerçevesidir. Özellikle mobil ve uç ortamlar için tasarlanmıştır ve minimum ayak iziyle yüksek performanslı çıkarımı destekler. Bu, onu akıllı telefonlar, dronlar ve IoT (Nesnelerin İnterneti) cihazları gibi kaynak kısıtlı cihazlarda dağıtım için ideal hale getirir.

NCNN çerçevesi, verimliliği, taşınabilirliği ve mobil CPU'lar (Merkezi İşlem Birimleri) için optimizasyonu nedeniyle yapay zeka ve derin öğrenme topluluğunda popülerlik kazanmıştır. Geliştiricilerin, sınırlı bellek ve işlem gücüne sahip uygun fiyatlı cihazlarda sinir ağı modellerini çalıştırmasını sağlar. Basit ve esnek olacak şekilde tasarlanan NCNN, çok çeşitli bilgisayarlı görü modellerini destekler ve Android, Linux, iOS ve macOS dahil olmak üzere birden çok platformda çalışır.

Şekil 1. NCNN formatındaki modeller birçok platformda dağıtılabilir.

NCNN performans optimizasyonunun temel özellikleri

NCNN'yi etkili ve yaygın olarak kullanılan bir sinir ağı çıkarım çerçevesi yapan temel özelliklerden bazıları şunlardır:

  • Hafif, donanımdan bağımsız çalışma zamanı: NCNN framework'ü, modelleri standart CPU'larda çalıştırmak için optimize edilmiştir ve GPU'lar (Grafik İşleme Birimleri) veya NPU'lar (Sinirsel İşleme Birimleri) gibi özel donanımlar gerektirmez.
  • Model niceleme: Bellek ve hızın kritik olduğu uygulamalar için NCNN, model boyutunu küçülten ve çıkarım süresini iyileştiren niceleme yöntemlerini destekler. Yapay zeka modellerinin mobil ve gömülü cihazlarda sorunsuz çalışmasına yardımcı olur.
  • Açık kaynak ve erişilebilir: Açık kaynaklı bir çerçeve olarak NCNN, herkesin kullanması, değiştirmesi ve geliştirmesi için serbestçe kullanılabilir. Bu, çeşitli kullanım durumlarında yeniliği ve geniş çapta benimsenmeyi teşvik eder.
  • Aktif geliştirme ve topluluk: NCNN, Tencent ve büyüyen bir geliştirici topluluğu tarafından GitHub'da aktif olarak sürdürülmekte olup, düzenli güncellemeler ve model uyumluluğu iyileştirmeleri yapılmaktadır.

YOLO11'i NCNN model formatına aktarma: Hızlı bir kılavuz

NCNN'nin ne olduğunu tartıştığımıza göre, YOLOv8 modellerini NCNN biçimine nasıl aktaracağımıza daha yakından bakalım.

Adım 1: Ultralytics Python paketini kurun

Modeli dışa aktarmadan önce, ilk adım, paket yükleyici pip'i kullanarak Ultralytics Python paketini yüklemektir. Bu, terminalinizde veya komut isteminizde "pip install ultralytics" komutunu çalıştırarak yapılabilir. Bir Jupyter Notebook veya Google Colab'da çalışıyorsanız, komutun önüne bir ünlem işareti ekleyin, örneğin: "!pip install ultralytics".

Ultralytics paketi, çeşitli bilgisayarlı görü görevleri için Vision AI modellerini eğitmek, test etmek, ince ayar yapmak ve dışa aktarmak için araçlar sağlar. Kurulum sırasında veya bir modeli dışa aktarırken herhangi bir sorunla karşılaşırsanız, resmi Ultralytics belgeleri ve Sık Karşılaşılan Sorunlar kılavuzu sorun giderme için harika kaynaklardır.

Adım 2: Ultralytics YOLO11'i Dışa Aktarma

Ultralytics paketini yükledikten sonra, YOLO11 modelinizi yükleyebilir ve NCNN formatına aktarabilirsiniz. Aşağıdaki örnek, önceden eğitilmiş bir modeli ("yolo11n.pt") kullanır ve NCNN formatında dışa aktarır ve çıktıyı "/yolo11n_ncnn_model" adlı bir klasöre kaydeder. 

from ultralytics import YOLO

model = YOLO("yolo11n.pt")

model.export(format="ncnn")  

Dışa aktarılan YOLO11 modeli daha sonra akıllı telefonlar, gömülü sistemler veya IoT platformları gibi çeşitli hafif cihazlarda dağıtılabilir. Dağıtım süreci de oldukça akıcıdır. 

Örneğin, dışa aktarılmış modeli nasıl yükleyeceğinizi ve çıkarım yapacağınızı gösteren aşağıdaki kod parçacığını inceleyin. Çıkarım, eğitilmiş bir modeli yeni, görülmemiş veriler üzerinde tahminler yapmak için kullanma sürecini ifade eder. Bu örnekte, model halka açık bir URL'den alınan bisiklete binen bir adamın görüntüsü üzerinde test edilmektedir.

ncnn_model = YOLO("./yolo11n_ncnn_model")

results = ncnn_model("https://images.pexels.com/photos/19431209/pexels-photo-19431209/free-photo-of-a-man-riding-a-bike-on-a-road.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2.jpg", save=True)

Kodu çalıştırdıktan sonra, çıktı görüntüsünü "runs/detect/predict" klasöründe bulacaksınız.

Şekil 2. NCNN formatında dışa aktarılmış bir YOLO11 modeli kullanarak nesneleri tespit etme. Görüntü: yazar.

Neden NCNN ile gerçek zamanlı algılamayı seçmelisiniz?

Ultralytics'in desteklediği çeşitli entegrasyonları keşfederken, mevcut çeşitli dışa aktarma seçenekleri olduğunu fark edebilirsiniz. Peki, NCNN formatını ne zaman seçmelisiniz?

NCNN dışa aktarma formatı, YOLO11 modellerini sınırlı kaynaklara sahip cihazlara dağıtmanız gerektiğinde güvenilir bir seçimdir. Özellikle buluta bağlantı gerektirmeden doğrudan cihaz üzerinde çalışan gerçek zamanlı uygulamalar (uç cihazlar gibi) için kullanışlıdır. Bu, modelin nesne algılama gibi görevleri doğrudan yerinde gerçekleştirebileceği anlamına gelir.

İşte NCNN'nin harika bir uyum sağladığı bazı yaygın senaryolar:

  • Mobil dağıtım: NCNN formatı Android ve iOS için optimize edilmiştir, bu da modelleri hızlı, cihaz üzerinde çıkarım için minimum gecikmeyle mobil uygulamalara entegre etmeyi kolaylaştırır.
  • Gömülü sistemler ve IoT cihazları: Raspberry Pi veya NVIDIA Jetson gibi cihazlara dağıtım yapıyorsanız, NCNN'ye aktarmak performansı ve yanıt verme hızını artırmaya yardımcı olabilir.
  • Masaüstü ve sunucu dağıtımı: NCNN, düşük güçlü cihazlar için harika olsa da, masaüstü ve sunucu ortamları için Linux, Windows ve macOS'i de destekler. Bu, geliştiricilere dağıtım için esnek seçenekler sunar.
Şekil 3. NCNN ile YOLO11 model dağıtımı için seçenekler. Yazarın görseli.

NCNN ile YOLO11 model dağıtımının kullanım alanları

Şimdi de YOLO11 modellerini NCNN'ye aktarmanın gerçek bir fark yaratabileceği bazı pratik kullanım örneklerine dalalım.

İtfaiye için görüntü yapay zekası kaskları

Kameralar ve gömülü mikro bilgisayarlarla donatılmış güvenlik kaskları, güvenliği ve farkındalığı artırmak için inşaat ve itfaiye gibi alanlarda kullanılabilir. YOLO11 gibi gerçek zamanlı Görü Yapay Zeka modelleri, çeşitli nesne ve ekipman türlerini tespit etmek için bu cihazlarda çalıştırılabilir. Örneğin, bu tür kasklar, itfaiyecilerin düşük görüş koşullarında insanları, engelleri veya tehlikeleri tespit etmelerine yardımcı olabilir.

Ancak, tam boyutlu modelleri doğrudan giyilebilir cihazlarda çalıştırmak, performansın yavaşlamasına ve pilin hızla tükenmesine neden olabilir. Bu durumda, NCNN entegrasyonunu kullanmak akıllıca bir seçimdir. Düşük gecikmeli, enerji açısından verimli çıkarım sağlar. 

Atık sınıflandırması ve akıllı kutular

Benzer şekilde, akıllı çöp kutuları, atıldıklarında malzemeleri tanımlamak ve ayırmak için kameralar ve kompakt uç yapay zeka işlemcileriyle entegre edilebilir. YOLO11 gibi Görüntü Yapay Zeka modelleri, kağıt, plastik, kauçuk vb. gibi farklı türdeki atık malzemeleri tespit etmek için özel olarak eğitilebilir.

Atık tanımlandıktan sonra, yeniden kullanılabilirliğine göre otomatik olarak ayrı bölmelere ayrılabilir. NCNN formatında dışa aktarılan YOLO11 modelleriyle birlikte uç yapay zeka kullanarak, bu kutular verileri yerel olarak işleyebilir - internet bağlantısına ihtiyaç duymadan. Bu, otonom olarak çalışabilmelerini ve minimum gecikmeyle gerçek zamanlı ayıklama kararları alabilmelerini sağlar.

Şekil 4. YOLO11 kullanarak plastik atık malzemeleri tespit etme.

Drone'lar ve bilgisayarlı görü kullanarak sığır takibi

Bazen, uzak konumlardaki tarım alanları, kararlı internet bağlantılarına veya hatta tutarlı güce erişimden yoksundur, bu da çevrimiçi AI uygulamalarını çalıştırma yeteneklerini sınırlar. Bu gibi durumlarda, çeşitli görevleri yerine getirmek için uç cihazlar ve dronlar kullanılabilir. 

İyi bir örnek, sığır, koyun ve kümes hayvanları gibi hayvanların izlenmesidir. Bu, hayvan hareketini izlemek, yaralanma, hastalık veya anormal davranış belirtilerini tespit etmek ve hayvanlar kaybolduğunda çiftçileri uyarmak için kullanılabilen YOLO11 gibi Vision AI modelleri kullanılarak yapılabilir. NCNN entegrasyonu ayrıca bu verileri doğrudan uç cihazlarda çalıştırmayı ve işlemeyi mümkün kılar, bu da onu uzak veya şebekeden bağımsız alanlardaki çiftliklerdeki görüntü ve video analizi için harika bir uyum haline getirir.

Şekil 5. Hayvanları izlemek için YOLO11 kullanımına bir bakış.

Önemli çıkarımlar

Ultralytics tarafından desteklenen NCNN entegrasyonunu kullanarak YOLO11 modellerini dışa aktarmak, Görüntü İşlemeyi düşük güçlü ortamlara getirmenin basit bir yoludur. İster afet bölgelerindeki dronlar, ister akıllı atık ayıklama kutuları veya uzak çiftliklerdeki hayvanları izleme olsun, YOLO ve NCNN hızlı, verimli ve taşınabilir gerçek zamanlı AI çıkarımları sağlar. Bu yaklaşım, yapay zeka sistemlerinin en çok ihtiyaç duyulduğu zamanlarda daha erişilebilir ve güvenilir olmasına yardımcı olur.

Yapay zeka hakkında daha fazla bilgi edinmek ister misiniz? Bilgisayarlı görü projenize başlamak için GitHub depomuzu keşfedin, topluluğumuzla bağlantı kurun ve lisanslama seçeneklerimize göz atın. Perakendede yapay zeka ve sağlık hizmetlerinde bilgisayarlı görü gibi yeniliklerin geleceği nasıl şekillendirdiğini çözüm sayfalarımızda öğrenin.

Gelin, yapay zekanın geleceğini
birlikte inşa edelim!

Makine öğreniminin geleceği ile yolculuğunuza başlayın

Ücretsiz başlayın
Bağlantı panoya kopyalandı