OpenVINO™ kullanarak Ultralytics YOLO11'i sorunsuz bir şekilde dağıt
Ultralytics YOLO11'i OpenVINO™ formatına dışa aktarmanın, Intel® donanımı üzerinde ışık hızında çıkarımı nasıl sağladığını, hızı, ölçeklenebilirliği ve doğruluğu nasıl artırdığını öğren.

Yapay zekanın benimsenmesi, yapay zeka çözümlerinin erişilebilir olmasına bağlıdır ve bunun büyük bir parçası da bu çözümlerin insanların halihazırda sahip olduğu donanımlarda kolayca dağıtılabilmesini sağlamaktır. Yapay zeka modellerini GPU'larda (grafik işleme birimleri) çalıştırmak, performans ve paralel işlem gücü açısından harika bir seçenektir.
Ancak gerçek şu ki, herkes, özellikle uç ortamlarda veya günlük dizüstü bilgisayarlarda üst düzey GPU'lara erişemez. Bu nedenle modelleri; merkezi işlem birimleri (CPU'lar), entegre GPU'lar ve sinir işleme birimleri (NPU'lar) gibi daha yaygın olarak bulunan donanımlarda verimli bir şekilde çalışacak şekilde optimize etmek çok önemlidir.
Örneğin bilgisayarlı görü, makinelerin görüntüleri ve video akışlarını gerçek zamanlı olarak analiz etmesini ve anlamasını sağlayan bir yapay zeka dalıdır. Ultralytics YOLO11 gibi vizyon yapay zeka modelleri, perakende analizinden tıbbi teşhise kadar uzanan uygulamalara güç veren nesne algılama ve örnek bölümleme gibi temel görevleri destekler.

Şekil 1. Bir perakende mağazasındaki nesneleri algılamak ve bölümlemek için Ultralytics YOLO11 kullanılıyor.
Bilgisayarlı görüyü daha geniş çapta erişilebilir kılmak için Ultralytics, CPU'lar, GPU'lar ve NPU'lar genelinde yapay zeka çıkarımını optimize etmek ve çalıştırmak için bir açık kaynaklı proje olan OpenVINO araç seti ile güncellenmiş bir entegrasyon yayınladı.
Bu entegrasyon ile YOLO11 modellerini dışa aktarmak ve CPU'larda 3 kata kadar daha hızlı çıkarım ve Intel GPU'ları ile NPU'larında hızlandırılmış performans ile dağıtmak daha kolaydır. Bu makalede, YOLO11 modellerini OpenVINO formatına dışa aktarmak ve çıkarım için kullanmak üzere Ultralytics Python paketini nasıl kullanacağımızı adım adım inceleyeceğiz. Hadi başlayalım!
Link to this sectionUltralytics YOLO11'e genel bakış#
Ultralytics tarafından desteklenen OpenVINO entegrasyonunun ayrıntılarına dalmadan önce, YOLO11'i güvenilir ve etkili bir bilgisayarlı görü modeli yapan şeyin ne olduğuna daha yakından bakalım. YOLO11, Ultralytics YOLO serisindeki en son modeldir ve hem hız hem de doğruluk açısından önemli geliştirmeler sunar.
Temel özelliklerinden biri verimliliktir. Örneğin, Ultralytics YOLO11m, Ultralytics YOLOv8m'den %22 daha az parametreye sahiptir, ancak COCO veri setinde daha yüksek bir ortalama hassasiyet (mAP) elde eder. Bu, daha hızlı çalıştığı ve nesneleri daha doğru bir şekilde algıladığı anlamına gelir; bu da onu performans ve yanıt verebilirliğin kritik olduğu gerçek zamanlı uygulamalar için ideal kılar.

Şekil 2. Ultralytics YOLO11'in performans kıyaslamaları.
YOLO11, nesne algılamanın ötesinde; örnek bölümleme, poz tahmini, görüntü sınıflandırma, nesne takibi ve yönlendirilmiş sınırlayıcı kutu algılama gibi çeşitli gelişmiş bilgisayarlı görü görevlerini destekler. YOLO11 ayrıca geliştirici dostudur ve Ultralytics Python paketi, modelleri eğitmek, değerlendirmek ve dağıtmak için basit ve tutarlı bir arayüz sağlar.
Buna ek olarak, Ultralytics Python paketi, YOLO11'i çeşitli dağıtım boru hatlarına kolayca entegre etmenize olanak tanıyan OpenVINO, ONNX, TorchScript dahil olmak üzere çeşitli entegrasyonları ve birden fazla dışa aktarma formatını destekler. İster bulut altyapısını, ister uç cihazları veya gömülü sistemleri hedefliyor ol, dışa aktarma süreci basittir ve donanım ihtiyaçlarına uyarlanabilir.
Link to this sectionOpenVINO™ nedir?#
OpenVINO™ (Açık Görsel Çıkarım ve Sinir Ağı Optimizasyonu), çok çeşitli donanımlarda yapay zeka çıkarımını optimize etmek ve dağıtmak için kullanılan açık kaynaklı bir araç setidir. Geliştiricilerin CPU'lar, entegre ve ayrık GPU'lar, NPU'lar ve alanda programlanabilir kapı dizileri (FPGA'ler) dahil olmak üzere çeşitli Intel platformlarında yüksek performanslı çıkarım uygulamalarını verimli bir şekilde çalıştırmalarını sağlar.
OpenVINO, donanım farklılıklarını cihaza özel eklentiler aracılığıyla soyutlayan birleşik bir çalışma zamanı arayüzü sağlar. Bu, geliştiricilerin kodu bir kez yazıp tutarlı bir API kullanarak birden fazla Intel donanım hedefi genelinde dağıtabileceği anlamına gelir.
İşte OpenVINO'yu dağıtım için harika bir seçenek haline getiren temel özelliklerden bazıları:
- Model dönüştürücü: Bu araç, PyTorch, ONNX, TensorFlow, PaddlePaddle ve diğerleri gibi popüler çerçevelerden gelen modelleri dönüştürür ve hazırlar, böylece Intel donanımında verimli çıkarım için optimize edilebilirler.
- Heterojen yürütme: Kodunuzu farklı Intel donanımları için yeniden yazmanıza gerek yoktur. OpenVINO, aynı modeli CPU'lardan GPU'lara kadar desteklenen herhangi bir donanımda çalıştırmayı kolaylaştırır.
- Niceleme desteği: Araç seti, model boyutunu küçültmeye ve doğruluğu önemli ölçüde etkilemeden çıkarımı hızlandırmaya yardımcı olan FP16 (varsayılan) ve INT8 gibi düşük hassasiyetli formatları destekler.

Şekil 3. OpenVINO, çeşitli dağıtım seçeneklerini mümkün kılar.
Link to this sectionUltralytics x OpenVINO entegrasyonunu keşfetme#
Artık OpenVINO'nun ne olduğunu ve önemini keşfettiğimize göre, YOLO11 modellerini OpenVINO formatına nasıl aktaracağımızı ve Intel donanımında verimli çıkarımı nasıl çalıştıracağımızı tartışalım.
Link to this sectionAdım: Ultralytics Python paketini yükle#
Bir modeli OpenVINO formatına aktarmak için önce Ultralytics Python paketini yüklemeniz gerekecektir. Bu paket, YOLO11 dahil olmak üzere YOLO modellerini eğitmek, değerlendirmek ve dışa aktarmak için ihtiyacınız olan her şeyi sağlar.
Terminalinizde veya komut isteminizde "pip install ultralytics" komutunu çalıştırarak yükleyebilirsiniz. Jupyter Notebook veya Google Colab gibi etkileşimli bir ortamda çalışıyorsanız, komutun önüne bir ünlem işareti eklemeniz yeterlidir.
Ayrıca, kurulum sırasında veya dışa aktarırken herhangi bir sorunla karşılaşırsanız, Ultralytics dokümantasyonu ve sorun giderme kılavuzları tekrar yoluna girmenize yardımcı olacak harika kaynaklardır.
Link to this sectionAdım 2: YOLO11 modelinizi OpenVINO formatına dışa aktarın#
Ultralytics paketi kurulduktan sonra, bir sonraki adım YOLO11 modelinizi yüklemek ve onu OpenVINO ile uyumlu bir formata dönüştürmektir.
Aşağıdaki örnekte, önceden eğitilmiş bir YOLO11 modeli (“yolo11n.pt”) kullanıyoruz. Dışa aktarma işlevi, onu OpenVINO formatına dönüştürmek için kullanılır. Bu kodu çalıştırdıktan sonra, dönüştürülen model “yolo11n_openvino_model” adlı yeni bir dizine kaydedilecektir.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="openvino")Link to this sectionAdım 3: Dışa aktarılan model ile çıkarımı çalıştırın#
YOLO11 modeliniz OpenVINO formatına aktarıldığında, çıkarımları iki şekilde çalıştırabilirsiniz: Ultralytics Python paketini veya yerel OpenVINO Runtime'ı kullanarak.
Link to this sectionUltralytics Python paketini kullanma#
Dışa aktarılan YOLO11 modeli, aşağıdaki kod parçacığında gösterildiği gibi Ultralytics Python paketi kullanılarak kolayca dağıtılabilir. Bu yöntem, hızlı denemeler ve Intel donanımında hızlı dağıtım için idealdir.
Sisteminizde bulunan Intel donanımına bağlı olarak, çıkarım için hangi cihazın kullanılacağını da "intel:cpu", "intel:gpu" veya "intel:npu" gibi belirtebilirsiniz.
ov_model = YOLO("yolo11n_openvino_model/")
results = ov_model("https://ultralytics.com/images/bus.jpg", device="intel:gpu")Yukarıdaki kodu çalıştırdıktan sonra, çıktı görüntüsü "runs/detect/predict" dizinine kaydedilecektir.

Şekil 4. Görüntüdeki nesneleri algılamak için dışa aktarılan YOLO11 modelini kullanma.
Link to this sectionYerel OpenVINO Runtime'ı kullanma#
Özellikle üretim ortamlarında çıkarımı çalıştırmanın özelleştirilebilir bir yolunu arıyorsanız, OpenVINO Runtime modelinizin nasıl yürütüleceği üzerinde size daha fazla kontrol sağlar. Eşzamansız yürütme (birden fazla çıkarım isteğini paralel olarak çalıştırma) ve yük dengeleme (çıkarım iş yüklerini Intel donanımı genelinde verimli bir şekilde dağıtma) gibi gelişmiş özellikleri destekler.
Yerel çalışma zamanını kullanmak için, dışa aktarılan model dosyalarına ihtiyacınız olacaktır: bir .xml dosyası (ağ mimarisini tanımlayan) ve bir .bin dosyası (modelin eğitilmiş ağırlıklarını depolayan). Ayrıca uygulamanıza bağlı olarak giriş boyutları veya ön işleme adımları gibi ek parametreleri de yapılandırabilirsiniz.
Tipik bir dağıtım akışı; OpenVINO çekirdeğini başlatmayı, hedef cihaz için modeli yüklemeyi ve derlemeyi, girdiyi hazırlamayı ve çıkarımı yürütmeyi içerir. Ayrıntılı örnekler ve adım adım rehberlik için resmi Ultralytics OpenVINO dokümantasyonuna bakın.
Link to this sectionNeden Ultralytics x OpenVINO entegrasyonunu seçmelisin?#
Ultralytics entegrasyonlarını keşfederken, Ultralytics Python paketinin YOLO11 modellerini TorchScript, CoreML, TensorRT ve ONNX gibi çeşitli formatlara aktarmayı desteklediğini fark edeceksin. Peki, neden OpenVINO entegrasyonunu seçmelisin?
İşte OpenVINO dışa aktarma formatının modelleri Intel donanımında dağıtmak için neden harika bir uyum olduğunun bazı nedenleri:
- Performans kazanımları: Intel CPU'larda 3 kata kadar daha hızlı çıkarım deneyimleyebilir, entegre GPU'lar ve NPU'larda ek hızlanma elde edebilirsin.
- Yeniden eğitime gerek yok: Mevcut YOLO11 modellerini, değiştirmeye veya yeniden eğitmeye gerek kalmadan doğrudan OpenVINO formatına aktarabilirsin.
- Ölçek için oluşturuldu: Aynı dışa aktarılan model, düşük güçlü uç cihazlarda ve büyük ölçekli bulut altyapısında dağıtılabilir, bu da ölçeklenebilir yapay zeka dağıtımını basitleştirir.
Ayrıca, OpenVINO™ Model Hub'da bir dizi Intel® platformu genelinde YOLO11 modeli için performans kıyaslamalarını değerlendirebilirsin. OpenVINO Model Hub, geliştiricilerin yapay zeka modellerini Intel donanımında değerlendirmeleri ve OpenVINO'nun Intel CPU'lar, dahili GPU'lar, NPU'lar ve ayrık grafikler genelindeki performans avantajını keşfetmeleri için bir kaynaktır.

Şekil 5. OpenVINO™ Model Hub: Bir dizi Intel® platformunda YOLO11 Modeli için Performans Kıyaslamaları.
Link to this sectionYOLO11 ve OpenVINO dışa aktarma formatının uygulamaları#
OpenVINO entegrasyonunun yardımıyla, YOLO11 modellerini gerçek dünya durumlarında Intel donanımı genelinde dağıtmak çok daha basit hale gelir.
Harika bir örnek, YOLO11'in boş rafları gerçek zamanlı olarak algılamaya, hangi ürünlerin azaldığını takip etmeye ve müşterilerin mağazada nasıl hareket ettiğini analiz etmeye yardımcı olabileceği akıllı perakendedir. Bu, perakendecilerin envanter yönetimini iyileştirmelerini ve daha iyi müşteri etkileşimi için mağaza düzenlerini optimize etmelerini sağlar.
Benzer şekilde, akıllı şehirlerde YOLO11, araçları sayarak, yayaları takip ederek ve kırmızı ışık ihlallerini gerçek zamanlı olarak algılayarak trafiği izlemek için kullanılabilir. Bu içgörüler, trafik akışı optimizasyonunu destekleyebilir, yol güvenliğini iyileştirebilir ve otomatik yaptırım sistemlerine yardımcı olabilir.

Şekil 6. YOLO11 kullanarak araçları sayma.
Bir diğer ilginç kullanım durumu, eksik bileşenler, yanlış hizalama veya yüzey hasarı gibi görsel kusurları otomatik olarak algılamak için üretim hatlarında dağıtılabilecek endüstriyel denetimdir. Bu, verimliliği artırır, maliyetleri düşürür ve daha iyi ürün kalitesini destekler.
Link to this sectionOpenVINO araç setini kullanırken dikkat edilmesi gereken temel faktörler#
YOLO11 modellerini OpenVINO ile dağıtırken, en iyi sonuçları elde etmek için aklında tutman gereken birkaç önemli nokta şunlardır:
- Donanım uyumluluğunu kontrol et: Modelin verimli bir şekilde çalışabilmesi için CPU, entegre GPU veya NPU olsun, Intel donanımının OpenVINO tarafından desteklendiğinden emin ol.
- Doğru sürücüleri yükle: Intel GPU'ları veya NPU'ları kullanıyorsan, gerekli tüm sürücülerin düzgün bir şekilde yüklendiğinden ve güncel olduğundan emin ol.
- Hassasiyet ödünleşimlerini anla: OpenVINO, FP32, FP16 ve INT8 model hassasiyetlerini destekler. Her biri hız ve doğruluk arasında bir ödünleşim ile gelir, bu nedenle performans hedeflerine ve mevcut donanıma göre doğru seçeneği seçmek önemlidir.
Link to this sectionÖne çıkanlar#
Ultralytics YOLO11'i OpenVINO formatına aktarmak, Intel donanımında hızlı, verimli vizyon yapay zeka modellerini çalıştırmayı kolaylaştırır. Yeniden eğitmen veya kodunu değiştirmen gerekmeden CPU'lar, GPU'lar ve NPU'lar genelinde dağıtım yapabilirsin. Bu, işleri basit ve ölçeklenebilir tutarken performansı artırmanın harika bir yoludur.
Ultralytics Python paketinde yerleşik destek ile OpenVINO ile dışa aktarma ve çıkarım çalıştırma basittir. Sadece birkaç adımda modelini optimize edebilir ve çeşitli Intel platformlarında çalıştırabilirsin. İster akıllı perakende, ister trafik izleme veya endüstriyel denetim üzerinde çalışıyor ol, bu iş akışı geliştirmeden dağıtıma hız ve güvenle geçmene yardımcı olur.
YOLO topluluğuna katıl ve Ultralytics tarafından desteklenen etkili entegrasyonlar hakkında daha fazla bilgi edinmek için Ultralytics GitHub deposuna göz at. Ayrıca, bilgisayarlı görü ile çalışmaya başlamak için Ultralytics lisanslama seçeneklerine bir göz at!
Ultralytics × OpenVINO entegrasyonunu çalışırken görmek için yaklaşan web seminerimize kaydol ve yapay zekayı ölçekli olarak optimize etmek ve dağıtmak için araçları keşfetmek üzere OpenVINO web sitesini ziyaret et.






