MNN entegrasyonunu kullanarak Ultralytics YOLO11'i sorunsuz bir şekilde dağıt
Mobil, gömülü ve düşük güçlü platformlarda hızlı çıkarım için Ultralytics YOLO11 modellerini MNN entegrasyonu ile nasıl dışa aktarıp dağıtacağını öğren.

Günümüzde yapay zeka yenilikleri, uzak sunucu ortamlarının ötesine geçti. Yapay zeka çözümleri, sensörler ve akıllı telefonlar gibi uç cihazlara entegre ediliyor. Bu teknolojik değişim sayesinde veriler artık doğrudan üretildikleri yerde işlenebiliyor; bu da daha hızlı yanıt süreleri, gelişmiş gizlilik ve sürekli bulut bağlantısına olan bağımlılığın azalmasını sağlıyor.
Sonuç olarak, edge AI birçok sektörde hız kazanıyor. Daha fazla sistem daha hızlı ve daha yerel işleme süreçlerine doğru yöneldikçe, edge AI yazılım pazarının 2031 yılına kadar 8,88 milyar dolara ulaşması bekleniyor.
Özellikle, görüntüleri ve videoları anlamaya odaklanan bir yapay zeka dalı olan computer vision, uç noktalarda hızla benimseniyor. Gıda ürünleri paketlenirken onları saymaktan araçların yayaları algılamasına yardımcı olmaya kadar, computer vision farklı sektörlerde sayısız pratik uygulamayı destekliyor.
Bu durum, computer vision modelleri sayesinde mümkün oluyor. Örneğin, Ultralytics YOLO11; nesne algılama, örnek segmentasyonu, nesne takibi ve poz tahmini gibi çeşitli yapay zeka görevlerini destekleyen bir modeldir. Hızlı ve verimli olacak şekilde tasarlanmıştır ve sınırlı donanım kaynaklarına sahip cihazlarda iyi performans gösterir.

Şekil 1. YOLO11 kullanarak paketlenen gıdaları tespit etme ve takip etme (Kaynak).
Uç dağıtım için uygun olmasının yanı sıra, Ultralytics tarafından desteklenen çeşitli entegrasyonlar sayesinde YOLO11, farklı donanım ortamlarına uygun çeşitli formatlara aktarılabilir.
En verimli seçeneklerden biri, düşük kaynaklı cihazlar için tasarlanmış hafif bir çıkarım motoru olan MNN'dir (Mobile Neural Network). YOLO11'i MNN'e aktarmak, onun doğrudan cep telefonlarında, gömülü sistemlerde ve hızlı, cihaz üzerinde işlemenin gerekli olduğu diğer uç platformlarda çalışmasını sağlar.
Bu makalede, MNN entegrasyonunun nasıl çalıştığını keşfedecek, yaygın kullanım durumlarını vurgulayacak ve aktarılan bir YOLO11 modeliyle çıkarımları çalıştırmaya nasıl başlayacağımızı inceleyeceğiz. Hadi başlayalım!
Link to this sectionMNN'e genel bakış: Bir derin öğrenme çerçevesi#
Cep telefonları, endüstriyel sensörler ve taşınabilir sistemler gibi daha küçük cihazlarda computer vision modellerini çalıştırmak her zaman kolay değildir. Bu cihazlar genellikle sınırlı belleğe, daha yavaş işlemcilere ve katı güç sınırlarına sahiptir.
Mobile Neural Network veya MNN, Alibaba tarafından yapay zeka modellerinin düşük kaynaklı donanımlarda gerçek zamanlı performansı korurken verimli bir şekilde çalışmasını sağlamak için geliştirilmiş, hafif ve yüksek performanslı bir çıkarım motorudur. MNN, Android, iOS ve Linux dahil olmak üzere çok çeşitli platformları destekler ve merkezi işlem birimleri (CPU'lar) ve grafik işlem birimleri (GPU'lar) gibi çeşitli donanım türlerinde çalışır.

Şekil 2. MNN çerçevesine bir bakış (Kaynak).
Ultralytics tarafından desteklenen MNN entegrasyonu, YOLO11 modellerini MNN formatına kolayca aktarmayı mümkün kılar. Basitçe söylemek gerekirse bu, modellerin YOLO formatından MNN'e dönüştürülebileceği anlamına gelir.
Dönüştürüldükten sonra, verimli ve cihaz üzerinde çıkarım için MNN çerçevesini destekleyen cihazlarda dağıtılabilirler. MNN formatını kullanmanın temel faydası, boyutun, hızın ve kaynak verimliliğinin kritik olduğu senaryolarda YOLO11 dağıtımını basitleştirmesidir.
Link to this sectionMNN çıkarım arka ucunun temel özellikleri#
MNN entegrasyonunun nasıl kullanılacağına geçmeden önce, MNN çerçevesini gerçek dünya cihazlarında yapay zeka modellerini çalıştırmak için harika bir seçenek haline getiren özelliklere bir göz atalım. Uç ortamların benzersiz kısıtlamalarını yönetirken yine de hızlı ve güvenilir performans sunacak şekilde oluşturulmuştur.
İlginç bir şekilde MNN, Alibaba içinde Taobao, Tmall, Youku, DingTalk ve Xianyu dahil olmak üzere 30'dan fazla uygulamada; canlı video, kısa içerik, görsel arama ve cihaz üzerinde güvenlik kontrolleri gibi çok çeşitli senaryolarda dahili olarak kullanılmaktadır. Büyük ölçekli dağıtımı destekler ve üretim ortamlarında günde milyonlarca çıkarım çalıştırır.
İşte MNN çerçevesinin temel özelliklerinden bazıları:
- Arka uç otomatik seçimi: MNN, üzerinde çalıştığı donanıma bağlı olarak CPU veya GPU gibi en uygun yürütme arka ucunu otomatik olarak seçebilir.
- Çok iş parçacıklı yürütme: Daha hızlı çıkarım için çok çekirdekli işlemcilerden tam olarak yararlanılmasını sağlayan çoklu iş parçacığı kullanımını destekler.
- Model nicemlemeyi destekler: FP16 veya INT8 nicemlemesi kullanarak model boyutunu önemli ölçüde azaltmanızı sağlar, bu da daha az bellek kullanırken çıkarım hızını artırmaya yardımcı olur.
- Hafif ve hızlı: MNN, Android'de yaklaşık 400 KB ve iOS'ta yaklaşık 5 MB olan çekirdek kitaplığı ile çok küçük bir ayak izine sahiptir, bu da onu mobil ve gömülü cihazlar için ideal kılar.
Link to this sectionMNN entegrasyonunun nasıl çalıştığını anlamak#
Şimdi, YOLO11 modellerini MNN formatına nasıl aktaracağımıza bakalım.
İlk adım, YOLO11 modellerini MNN formatına aktarmak için gereken her şeyi sağlayan Ultralytics Python paketini yüklemektir. Bunu terminalinizde "pip install ultralytics" komutunu çalıştırarak veya komut istemini kullanarak yapabilirsiniz. Jupyter Notebook veya Google Colab kullanıyorsanız, komutun önüne ünlem işareti ekleyin.
Kurulum sırasında herhangi bir sorunla karşılaşırsanız, sorun giderme ipuçları için Yaygın Sorunlar kılavuzuna bakın.
Ortamınızı kurduktan sonra "yolo11n.pt" gibi önceden eğitilmiş bir YOLO11 modelini yükleyebilir ve aşağıdaki kod parçacığında gösterildiği gibi MNN formatına aktarabilirsiniz. Kendi özel YOLO11 modelinizi eğittiyseniz, dosya adını modelinizin yolu ile değiştirerek kolayca aktarabilirsiniz.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="mnn")Modelinizi MNN'e dönüştürdükten sonra, uygulama ihtiyaçlarınıza bağlı olarak farklı mobil ve gömülü platformlarda kullanabilirsiniz.
Örneğin, aktarılan modeli bir trafik videosu üzerinde test etmek istediğinizi varsayalım. Bu durumda, aşağıdaki örnekte gösterildiği gibi, araçlar, yayalar ve trafik işaretleri gibi nesneleri doğrudan cihaz üzerinde algılamak için YOLO11 modelini MNN formatında yükleyebilirsiniz.
mnn_model = YOLO("yolo11n.mnn")
results = mnn_model("https://videos.pexels.com/video-files/27783817/12223745_1920_1080_24fps.mp4", save=True)Çıkarım tamamlandığında, algılanan nesnelerin bulunduğu çıktı videosu otomatik olarak 'runs/detect/predict' klasörüne kaydedilir. Ayrıca, çıkarımı doğrudan MNN Python paketiyle çalıştırmak istiyorsanız, daha fazla ayrıntı ve örnek için resmi Ultralytics belgelerine göz atabilirsiniz.

Şekil 3. MNN formatına aktarılmış bir YOLO11 modeli kullanılarak trafiğin analizi. Görsel yazar tarafından hazırlanmıştır.
Link to this sectionYOLO11 ve MNN ile mümkün kılınan uç yapay zeka modeli dağıtımının kullanım durumları#
YOLO11'i MNN ile dağıtmak, bulut tabanlı işlemenin pratik olmadığı veya mümkün olmadığı ortamlarda nesne algılama gibi hızlı, verimli computer vision görevlerini mümkün kılar. Bu entegrasyonun gerçek dünya senaryolarında özellikle nasıl faydalı olabileceğine bir bakalım.
Link to this sectionBitki hastalığı teşhisi için mobil uç yapay zeka#
Görüntü sınıflandırma kullanan bitki hastalığı teşhis uygulamaları bahçıvanlar, araştırmacılar ve doğa meraklıları arasında popülerlik kazanıyor. Kullanıcılar sadece bir fotoğrafla yaprak lekesi veya renk solması gibi hastalıkların erken belirtilerini hızlıca teşhis edebiliyor. Bu uygulamalar genellikle internet erişiminin sınırlı veya hiç olmadığı dış mekanlarda kullanıldığından, bulut işlemeye güvenmek sorun yaratabilir.
Eğitimden sonra, bir YOLO11 modeli MNN formatına aktarılabilir ve doğrudan mobil cihazlarda çalıştırılabilir. Model daha sonra, sunucuya herhangi bir veri göndermeden bitki türlerini sınıflandırabilir ve görünür hastalık semptomlarını yerel olarak algılayabilir.

Şekil 4. Bir yaprak üzerindeki pas (bir bitki hastalığı) belirtilerini algılamak için YOLO11 kullanımına bir örnek (Kaynak).
Link to this sectionÜretimde cihaz üzerinde verimli çıkarımlar#
Üretim tesislerindeki yoğun üretim hatlarında doğru paket takibi şarttır. YOLO11, her öğeyi önemli kontrol noktalarından geçerken takip etmek ve saymak, sayıları gerçek zamanlı olarak güncellemek ve herhangi bir tutarsızlığı işaretlemek için kullanılabilir. Bu, eksik veya hesaba katılmayan gönderileri azaltmaya yardımcı olur ve daha sorunsuz, daha güvenilir operasyonları destekler.

Şekil 5. YOLO11 kullanarak paketlerin takibi ve sayılması (Kaynak).
MNN entegrasyonu bu bağlamda özellikle etkili olabilir. YOLO11 modeli MNN formatına aktarıldığında, doğrudan konveyör hattı boyunca kurulu kompakt, düşük güçlü cihazlarda çalışabilir.
Tüm işlemler yerel olarak gerçekleştiğinden, sistem anında geri bildirim sunabilir ve internet bağlantısı gerektirmez. Bu, fabrika sahasında hızlı ve güvenilir performans sağlayarak, yüksek doğruluk ve kontrolü korurken üretimin verimli bir şekilde devam etmesini sağlar.
Link to this sectionYOLO11'i MNN model formatına aktarmanın avantajları#
İşte Ultralytics tarafından sağlanan MNN entegrasyonunun bazı temel faydaları:
- Daha hızlı yanıt süreleri: Çıkarım cihaz üzerinde çalıştığından, tahminler minimum gecikmeyle gerçek zamanlı olarak gerçekleşir.
- Gelişmiş veri gizliliği: Veriler cihazda kalır, bu da hassas görüntüleri veya videoları buluta gönderme ihtiyacını azaltır.
- Açık kaynaklı ve aktif olarak korunmaktadır: Alibaba tarafından desteklenen ve aktif bir topluluk tarafından desteklenen MNN, güvenilirdir ve performans iyileştirmeleriyle düzenli olarak güncellenir.
Link to this sectionMNN çerçevesini kullanırken göz önünde bulundurulması gereken faktörler#
MNN'i dağıtım çerçeveniz olarak seçmeden önce, projenizin gereksinimlerine, dağıtım hedeflerine ve teknik sınırlamalarına ne kadar uyduğunu değerlendirmek de önemlidir. İşte dikkate almanız gereken bazı temel faktörler:
- Devam eden uyumluluk: Çerçeve güncellemeleri veya hedef platformlarınızdaki değişiklikler, her şeyin sorunsuz çalışmasını sağlamak için yeniden test etmeyi veya ayarlamalar yapmayı gerektirebilir.
- Daha az hata ayıklama aracı: Daha büyük çerçevelerle karşılaştırıldığında MNN, model davranışını hata ayıklama ve inceleme için daha sınırlı araçlara sahiptir, bu da sorun gidermeyi zorlaştırabilir.
- Performans donanıma bağlıdır: Modelinizin hızı ve verimliliği cihaza göre değişecektir. Performans hedeflerinizi karşıladığından emin olmak için hedef donanımınızı test edin.
Link to this sectionÖne çıkanlar#
Ultralytics'in MNN entegrasyonu desteği, YOLO11 modellerini mobil ve gömülü cihazlarda kullanım için dışa aktarmayı kolaylaştırır. Bulut erişimine veya sürekli bağlantıya bağlı kalmadan hızlı, güvenilir algılama gerektiren uygulamalar için pratik bir seçenektir.
Bu kurulum, performansı korurken ve kaynak taleplerini düşük tutarken dağıtımı kolaylaştırmaya yardımcı olur. İster akıllı ev sistemleri, saha araçları veya kompakt endüstriyel cihazlar geliştiriyor olun, YOLO11'i MNN'e aktarmak, computer vision görevlerini doğrudan uç cihazlarda çalıştırmak için esnek ve verimli bir yol sağlar.
Büyüyen topluluğumuza katıl! Yapay zeka dünyasının derinliklerine inmek için GitHub depomuzu keşfet. Computer vision projelerine başlamaya hazır mısın? Lisanslama seçeneklerimize göz at. Çözüm sayfalarımızdan sağlık hizmetlerinde yapay zeka ve perakendede computer vision hakkında daha fazla bilgi edinebilirsin!






