İçeriğe geç

Sorunsuz Dağıtım için YOLOv8 adresinden NCNN adresine Nasıl Aktarılır

Bilgisayarla görme modellerini mobil veya gömülü sistemler gibi sınırlı hesaplama gücüne sahip cihazlara dağıtmak zor olabilir. Optimum performans için optimize edilmiş bir format kullandığınızdan emin olmanız gerekir. Bu, sınırlı işlem gücüne sahip cihazların bile gelişmiş bilgisayarla görme görevlerini iyi bir şekilde yerine getirebilmesini sağlar.

NCNN formatına dışa aktarma özelliği, dosyalarınızı optimize etmenizi sağlar Ultralytics YOLOv8 hafif cihaz tabanlı uygulamalar için modeller. Bu kılavuzda, modellerinizi NCNN formatına nasıl dönüştürebileceğiniz konusunda size yol göstererek modellerinizin çeşitli mobil ve gömülü cihazlarda iyi performans göstermesini kolaylaştıracağız.

Neden NCNN adresine ihracat yapmalısınız?

NCNN genel bakış

Bu NCNN Tencent tarafından geliştirilen çerçeve, cep telefonları, gömülü cihazlar ve IoT cihazları dahil olmak üzere mobil platformlar için özel olarak optimize edilmiş yüksek performanslı bir sinir ağı çıkarım hesaplama çerçevesidir. NCNN , Linux, Android, iOS ve macOS dahil olmak üzere çok çeşitli platformlarla uyumludur.

NCNN mobil CPU'lardaki yüksek işlem hızıyla bilinir ve derin öğrenme modellerinin mobil platformlara hızlı bir şekilde dağıtılmasını sağlar. Bu da akıllı uygulamalar oluşturmayı kolaylaştırarak yapay zekanın gücünü parmaklarınızın ucuna getiriyor.

NCNN Modellerinin Temel Özellikleri

NCNN modeller, geliştiricilerin modellerini mobil, gömülü ve uç cihazlarda çalıştırmalarına yardımcı olarak cihaz üzerinde makine öğrenimini mümkün kılan çok çeşitli temel özellikler sunar:

  • Verimli ve Yüksek Performanslı: NCNN modelleri, sınırlı kaynaklara sahip Raspberry Pi gibi mobil ve gömülü cihazlarda çalışmak için optimize edilmiş, verimli ve hafif olacak şekilde üretilmiştir. Ayrıca çeşitli bilgisayar görüşü tabanlı görevlerde yüksek doğrulukla yüksek performans elde edebilirler.

  • Niceleme: NCNN modelleri genellikle modelin ağırlıklarının ve aktivasyonlarının hassasiyetini azaltan bir teknik olan nicelemeyi destekler. Bu, performansta daha fazla iyileşme sağlar ve bellek ayak izini azaltır.

  • Uyumluluk: NCNN modelleri aşağıdaki gibi popüler derin öğrenme çerçeveleri ile uyumludur TensorFlow, Caffe, ve ONNX. Bu uyumluluk, geliştiricilerin mevcut modelleri ve iş akışlarını kolayca kullanabilmelerini sağlar.

  • Kullanımı Kolay: NCNN modelleri, popüler derin öğrenme çerçeveleriyle uyumlulukları sayesinde çeşitli uygulamalara kolay entegrasyon için tasarlanmıştır. Ayrıca NCNN , modelleri farklı formatlar arasında dönüştürmek için kullanıcı dostu araçlar sunarak geliştirme ortamında sorunsuz birlikte çalışabilirlik sağlar.

ile Dağıtım Seçenekleri NCNN

Dışa aktarma koduna bakmadan önce YOLOv8 modellerine NCNN biçiminde, nasıl olduğunu anlayalım NCNN modeller normalde kullanılır.

NCNN Verimlilik ve performans için tasarlanan modeller, çeşitli dağıtım platformlarıyla uyumludur:

  • Mobil Dağıtım: Android ve iOS için özel olarak optimize edilmiştir ve cihaz üzerinde verimli çıkarım için mobil uygulamalara sorunsuz entegrasyon sağlar.

  • Gömülü Sistemler ve IoT Cihazları: Raspberry Pi üzerinde Ultralytics Kılavuzu ile çıkarım yapmanın yeterince hızlı olmadığını düşünüyorsanız, NCNN dışa aktarılmış bir modele geçmek işleri hızlandırmaya yardımcı olabilir. NCNN , Raspberry Pi ve NVIDIA Jetson gibi cihazlar için, özellikle de doğrudan cihaz üzerinde hızlı işlem yapmanız gereken durumlarda harikadır.

  • Masaüstü ve Sunucu Dağıtımı: Linux, Windows ve macOS'ta masaüstü ve sunucu ortamlarında konuşlandırılabilir ve daha yüksek hesaplama kapasiteleriyle geliştirme, eğitim ve değerlendirmeyi destekler.

NCNN adresine aktarın: YOLOv8 Modelinizi Dönüştürme

YOLOv8 modellerini NCNN formatına dönüştürerek model uyumluluğunu ve dağıtım esnekliğini artırabilirsiniz.

Kurulum

Gerekli paketleri yüklemek için çalıştırın:

Kurulum

# Install the required package for YOLOv8
pip install ultralytics

Kurulum süreciyle ilgili ayrıntılı talimatlar ve en iyi uygulamalar için Ultralytics Kurulum kılavuzumuza göz atın. YOLOv8 için gerekli paketleri yüklerken herhangi bir zorlukla karşılaşırsanız, çözümler ve ipuçları için Ortak Sorunlar kılavuz umuza başvurun.

Kullanım

Kullanım talimatlarına geçmeden önce, tüm Ultralytics YOLOv8 modellerinin dışa aktarılabildiğini, ancak seçtiğiniz modelin dışa aktarma işlevini desteklediğinden burada emin olabileceğinizi belirtmek önemlidir.

Kullanım

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to NCNN format
model.export(format="ncnn")  # creates '/yolov8n_ncnn_model'

# Load the exported NCNN model
ncnn_model = YOLO("./yolov8n_ncnn_model")

# Run inference
results = ncnn_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to NCNN format
yolo export model=yolov8n.pt format=ncnn  # creates '/yolov8n_ncnn_model'

# Run inference with the exported model
yolo predict model='./yolov8n_ncnn_model' source='https://ultralytics.com/images/bus.jpg'

Desteklenen dışa aktarma seçenekleri hakkında daha fazla bilgi için dağıtım seçenekleriyle ilgiliUltralytics belge sayfasını ziyaret edin.

Dışa Aktarılan YOLOv8 NCNN Modellerini Dağıtma

Ultralytics YOLOv8 modellerinizi NCNN biçimine başarıyla aktardıktan sonra, artık bunları dağıtabilirsiniz. Bir NCNN modelini çalıştırmak için birincil ve önerilen ilk adım, önceki kullanım kod parçasında belirtildiği gibi YOLO("./model_ncnn_model") yöntemini kullanmaktır. Bununla birlikte, NCNN modellerinizi diğer çeşitli ayarlarda dağıtmaya ilişkin ayrıntılı talimatlar için aşağıdaki kaynaklara göz atın:

  • Android: Bu blog, Android uygulamaları aracılığıyla nesne algılama gibi görevleri gerçekleştirmek için NCNN modellerinin nasıl kullanılacağını açıklamaktadır.

  • macOS: macOS üzerinden görevleri gerçekleştirmek için NCNN modellerinin nasıl kullanılacağını anlayın.

  • Linux: Raspberry Pi ve benzeri sınırlı kaynaklara sahip cihazlarda NCNN modellerinin nasıl kullanılacağını öğrenmek için bu sayfayı keşfedin.

  • VS2017 kullanarak Windows x64: Visual Studio Community 2017 kullanarak Windows x64 üzerinde NCNN modellerinin nasıl dağıtılacağını öğrenmek için bu blogu keşfedin.

Özet

Bu kılavuzda, Ultralytics YOLOv8 modellerini NCNN formatına aktarmayı ele aldık. Bu dönüştürme adımı, YOLOv8 modellerinin verimliliğini ve hızını artırmak, onları daha etkili ve sınırlı kaynaklı bilgisayar ortamları için uygun hale getirmek için çok önemlidir.

Kullanımla ilgili ayrıntılı talimatlar için lütfen resmi NCNN belgelerine bakın.

Ayrıca, Ultralytics YOLOv8 için diğer entegrasyon seçeneklerini keşfetmekle ilgileniyorsanız, daha fazla içgörü ve bilgi için entegrasyon kılavuzu sayfamızı ziyaret ettiğinizden emin olun.

SSS

Ultralytics YOLOv8 modellerini NCNN formatına nasıl aktarabilirim?

Ultralytics YOLOv8 modelinizi NCNN biçimine aktarmak için aşağıdaki adımları izleyin:

  • Python: Kullanın export YOLO sınıfındaki işlev.

    from ultralytics import YOLO
    
    # Load the YOLOv8 model
    model = YOLO("yolov8n.pt")
    
    # Export to NCNN format
    model.export(format="ncnn")  # creates '/yolov8n_ncnn_model'
    
  • CLI: Kullanın yolo komutu ile export Tartışma.

    yolo export model=yolov8n.pt format=ncnn  # creates '/yolov8n_ncnn_model'
    

Ayrıntılı dışa aktarma seçenekleri için belgelerdeki Dışa Aktar sayfasına bakın.

YOLOv8 modellerini NCNN adresine ihraç etmenin avantajları nelerdir?

Ultralytics YOLOv8 modellerinizi NCNN adresine aktarmak çeşitli avantajlar sunar:

  • Verimlilik: NCNN modelleri mobil ve gömülü cihazlar için optimize edilmiştir ve sınırlı hesaplama kaynaklarıyla bile yüksek performans sağlar.
  • Niceleme: NCNN , model hızını artıran ve bellek kullanımını azaltan niceleme gibi teknikleri destekler.
  • Geniş Uyumluluk: NCNN modellerini Android, iOS, Linux ve macOS dahil olmak üzere birden fazla platformda dağıtabilirsiniz.

Daha fazla ayrıntı için belgelerdeki NCNN adresine Aktar bölümüne bakın.

Mobil yapay zeka uygulamalarım için neden NCNN adresini kullanmalıyım?

NCNNTencent tarafından geliştirilmiştir ve özellikle mobil platformlar için optimize edilmiştir. NCNN 'u kullanmak için temel nedenler şunlardır:

  • Yüksek Performans: Mobil CPU'larda verimli ve hızlı işlem için tasarlanmıştır.
  • Çapraz Platform: TensorFlow ve ONNX gibi popüler çerçevelerle uyumludur ve modelleri farklı platformlara dönüştürmeyi ve dağıtmayı kolaylaştırır.
  • Topluluk Desteği: Aktif topluluk desteği, sürekli iyileştirmeler ve güncellemeler sağlar.

Daha fazla bilgi için belgelerdeki NCNN genel bakış bölümünü ziyaret edin.

NCNN model dağıtımı için hangi platformlar destekleniyor?

NCNN çok yönlüdür ve çeşitli platformları destekler:

  • Cep telefonu: Android, iOS.
  • Gömülü Sistemler ve IoT Cihazları: Raspberry Pi ve NVIDIA Jetson gibi cihazlar.
  • Masaüstü ve Sunucular: Linux, Windows ve macOS.

Modelleri Raspberry Pi üzerinde çalıştırmak yeterince hızlı değilse, Raspberry Pi Kılavuzumuzda ayrıntılı olarak açıklandığı gibi NCNN formatına dönüştürmek işleri hızlandırabilir.

Ultralytics YOLOv8 NCNN modellerini Android üzerinde nasıl dağıtabilirim?

YOLOv8 modellerinizi Android adresinde dağıtmak için:

  1. Android için derleyin: NCNN Build for Android kılavuzunu takip edin.
  2. Uygulamanızla Entegre Edin: Verimli cihaz içi çıkarım için dışa aktarılan modeli uygulamanıza entegre etmek için NCNN Android SDK'sını kullanın.

Adım adım talimatlar için YOLOv8 NCNN Modellerini Dağıtma kılavuzumuza bakın.

Daha gelişmiş kılavuzlar ve kullanım örnekleri için Ultralytics dokümantasyon sayfasını ziyaret edin.



Oluşturma 2024-03-01, Güncelleme 2024-07-05
Yazarlar: glenn-jocher (6), abirami-vina (1)

Yorumlar