Yeşil çek
Panoya kopyalanan bağlantı

Streamlit ve Ultralytics YOLO11 ile etkileşimli bir yapay zeka uygulaması çalıştırın

Streamlit arayüzü içinde YOLO11 çıkarımlarını nasıl çalıştıracağınızı ve kodlama uzmanlığı olmadan bilgisayarla görme görevleri için etkileşimli bir yapay zeka arayüzü oluşturmayı öğrenin.

Bilgisayarla görme modelleri, makinelerin görsel verileri yorumlamasını ve analiz etmesini sağlayan, nesne algılama, görüntü sınıflandırma ve örnek segmentasyonu gibi görevleri yüksek doğrulukla gerçekleştiren etkili yapay zeka araçlarıdır. Bununla birlikte, bu araçları daha geniş bir kitleye dağıtmak ve erişilebilir kılmak için bazen web geliştirme veya mobil uygulama becerileri gibi ek teknik uzmanlık gerekebilir.

Al Ultralytics YOLO11Örneğin. Bu, çeşitli görevleri destekleyen ve bir dizi uygulamada kullanışlı olan bir modeldir. Bununla birlikte, bazı teknik ön uç bilgisi olmadan, sorunsuz etkileşim için kullanıcı dostu bir arayüz oluşturmak ve dağıtmak bazı AI mühendisleri için biraz zorlayıcı olabilir.

Streamlit, bu süreci kolaylaştırmayı amaçlayan açık kaynaklı bir çerçevedir. Karmaşık ön uç geliştirme olmadan etkileşimli uygulamalar oluşturmak için Python bir araçtır. YOLO11 ile eşleştirildiğinde, kullanıcıların görüntüleri yüklemesine, videoları işlemesine ve gerçek zamanlı sonuçları minimum çabayla görselleştirmesine olanak tanır.

Ultralytics , Live Inference çözümü ile bunu bir adım öteye taşıyarak Streamlit entegrasyonunu daha da kolaylaştırıyor. Tek bir komutla, kullanıcılar YOLO11 için önceden oluşturulmuş bir Streamlit uygulaması başlatabilir ve manuel kurulum ve kodlama ihtiyacını ortadan kaldırabilir. 

Bu makalede, gerçek zamanlı yapay zeka dağıtımını daha hızlı ve daha erişilebilir hale getiren Streamlit ile Ultralytics'in Canlı Çıkarım çözümünü kullanarak YOLO11 'in nasıl kurulacağını ve çalıştırılacağını anlatacağız.

Streamlit nedir?

Streamlit, etkileşimli web uygulamalarının oluşturulmasını basitleştiren bir Python çerçevesidir. Yapay zeka geliştiricileri, ön uç geliştirmenin karmaşıklıklarıyla uğraşmak zorunda kalmadan yapay zeka destekli uygulamalar oluşturabilir. 

Yapay zeka ve makine öğrenimi modelleriyle sorunsuz bir şekilde çalışmak üzere tasarlanmıştır. Geliştiriciler sadece birkaç satır Python ile kullanıcıların görüntü yükleyebileceği, video işleyebileceği ve AI modelleriyle etkileşime girebileceği bir arayüz oluşturabilir.

Şekil 1. Streamlit'in temel özellikleri. Yazar tarafından resim.

En önemli özelliklerinden biri dinamik görüntülemedir. Kullanıcılar değişiklik yaptığında, uygulama sayfanın manuel olarak yeniden yüklenmesine gerek kalmadan otomatik olarak güncellenir.

Ayrıca, hafif ve kullanımı kolay olduğu için Streamlit hem yerel makinelerde hem de bulut platformlarında verimli bir şekilde çalışır. Bu, onu yapay zeka uygulamalarını dağıtmak, modelleri başkalarıyla paylaşmak ve sezgisel, etkileşimli bir kullanıcı deneyimi sağlamak için mükemmel bir seçim haline getirir.

Ultralytics YOLO11: Çok yönlü bir Vision AI modeli

Bir Streamlit uygulamasında Ultralytics YOLO11 ile canlı çıkarımların nasıl çalıştırılacağına geçmeden önce, YOLO11 'i bu kadar güvenilir yapan şeyin ne olduğuna daha yakından bakalım.

Ultralytics YOLO11 , nesne algılama, örnek segmentasyonu ve poz tahmini gibi gerçek zamanlı bilgisayarla görme görevleri için tasarlanmış bir modeldir. Etkileyici doğrulukla yüksek hızlı performans sunar.

Şekil 2. Nesne algılama için YOLO11 kullanımına bir örnek.

YOLO11'in en büyük avantajlarından biri kullanım kolaylığıdır. Karmaşık kurulumlara gerek yoktur; geliştiriciler Ultralytics Python paketini yükleyebilir ve sadece birkaç satır kodla tahminler yapmaya başlayabilir.

Ultralytics Python paketi, kullanıcıların modellere ince ayar yapmasına ve algılama ayarlarını yapmasına olanak tanıyan bir dizi özellik sunar. Ayrıca, daha sorunsuz dağıtım için farklı cihazlar arasında performansı optimize etmeye yardımcı olur.

Esnekliğin ötesinde, Ultralytics Python paketi uç cihazlar, bulut ortamları ve NVIDIA GPU sistemler dahil olmak üzere birden fazla platformda entegrasyonları destekler. İster küçük bir gömülü cihazda ister büyük ölçekli bir bulut sunucusunda kullanılsın, YOLO11 zahmetsizce uyum sağlayarak gelişmiş görsel yapay zekayı her zamankinden daha erişilebilir hale getirir.

Streamlit'i Ultralytics YOLO11 ile kullanmanın faydaları

Streamlit'in benim için doğru dağıtım seçeneği olup olmadığını nasıl bilebilirim diye merak ediyor olabilirsiniz. Ön uç geliştirmeyle uğraşmadan YOLO11 'i çalıştırmanın basit, kod açısından verimli bir yolunu arıyorsanız, Streamlit iyi bir seçenektir - özellikle prototip oluşturma, kavram kanıtı (PoC) projeleri veya daha az sayıda kullanıcıyı hedefleyen dağıtımlar için.

Gereksiz karmaşıklığı ortadan kaldırarak ve gerçek zamanlı etkileşim için sezgisel bir arayüz sağlayarak YOLO11 ile çalışma sürecini kolaylaştırır. İşte diğer bazı önemli avantajlar:

  • Özelleştirilebilir AI kontrolleri: Arayüzünüze kaydırıcılar, açılır menüler ve düğmeler ekleyerek kullanıcıların algılama ayarlarında ince ayar yapmasına ve belirli nesneleri kolayca filtrelemesine olanak tanıyabilirsiniz.
  • Diğer AI araçlarıyla entegrasyon: Streamlit, NumPy, OpenCV, Matplotlib ve diğer makine öğrenimi kütüphaneleri ile entegrasyonu destekleyerek AI iş akışı yeteneklerini geliştirir.
  • Etkileşimli veri görselleştirme: Grafikler ve çizelgeler için yerleşik destek, kullanıcıların nesne algılama, segmentasyon sonuçları veya izleme içgörülerini zahmetsizce görselleştirmelerini sağlar.
  • İşbirliği dostu: Streamlit uygulamaları basit bir bağlantı aracılığıyla ekip üyeleri, paydaşlar veya müşterilerle kolayca paylaşılabilir, anında geri bildirim ve yineleme sağlar.

Streamlit web uygulamasında YOLO11 dağıtımı için adım adım kılavuz

Streamlit' i YOLO11 ile kullanmanın faydalarını keşfettiğimize göre, şimdi Streamlit'i YOLO11 ile kullanarak bir tarayıcıda gerçek zamanlı bilgisayarla görme görevlerinin nasıl çalıştırılacağını inceleyelim.

Ultralytics Python paketini yükleme

İlk adım Ultralytics Python paketini yüklemektir. Bu, aşağıdaki komut kullanılarak yapılabilir:

1# Install the ultralytics package from PyPI
2pip install ultralytics

YOLO11 kurulduktan sonra herhangi bir karmaşık kurulum gerektirmeden kullanıma hazırdır. Gerekli paketleri yüklerken herhangi bir sorunla karşılaşırsanız, sorun giderme ipuçları ve çözümleri için Ortak Sorunlar Kılavuzumuza başvurabilirsiniz.

Streamlit uygulamasını YOLO11 ile başlatma 

Normalde, YOLO11'i çalıştırmak için Streamlit bileşenlerini kullanarak bir Python betiği geliştirmeniz gerekir. Ancak Ultralytics , YOLO11 'i Streamlit ile çalıştırmak için basit bir yol sağlar. 

Aşağıdaki Python betiğini çalıştırmak, Streamlit uygulamasını varsayılan web tarayıcınızda anında başlatacaktır:

1from ultralytics import solutions
2
3inf = solutions.Inference(
4    model="yolo11n.pt",  # you can use any model that Ultralytics support, i.e. YOLO11, or custom trained model
5)
6
7inf.inference()
8
9### Make sure to run the file using command `streamlit run <file-name.py>`

Ek bir yapılandırmaya gerek yoktur. Streamlit uygulama arayüzü, resimler ve videolar için bir yükleme bölümü, ilgilendiğiniz YOLO11 model varyantını seçmek için bir açılır menü ve algılama güvenini ayarlamak için kaydırıcılar içerir. Her şey düzgün bir şekilde düzenlenmiştir, bu da kullanıcıların ekstra kod yazmadan zahmetsizce çıkarım yapmalarını mümkün kılar.

Streamlit uygulamasında YOLO11 kullanarak çıkarımları çalıştırma

Artık Streamlit uygulaması web tarayıcınızda çalıştığına göre, YOLO11 ile çıkarımları çalıştırmak için nasıl kullanılacağını keşfedelim.

Örneğin, nesne algılama için bir video dosyasını analiz etmek istediğimizi varsayalım. İşte bir dosya yükleme, bir model seçme ve gerçek zamanlı sonuçları görüntüleme adımları:

  • Bir video dosyası yükleyin: Kullanıcı yapılandırması açılır menüsünden "video" öğesini seçin; bu, uygulamaya web kamerası akışı yerine önceden kaydedilmiş bir dosyayı işlemesini söyler.
  • Bir YOLO11 modeli seçin: Büyük bir YOLO11 modeli kullanarak nesne tespiti için model açılır menüsünden "YOLO11l" öğesini seçin.
  • Algılama işlemini başlatın: "Başlat "a tıklayarak YOLO11 'in videoyu kare kare analiz etmesine ve nesneleri gerçek zamanlı olarak algılamasına izin verin.
  • İşlenmiş videoyu görüntüleyin: Tespit edilen nesneleri sınırlayıcı kutularla görüntüleyerek videonun canlı güncellemelerle ekranda görünmesini izleyin.
  • Streamlit'te sonuçlarla etkileşim kurun: Ekstra kurulum veya kodlama yapmadan ayarları yapmak veya tespitleri analiz etmek için arayüzü kullanın.
Şekil 3. Ultralytics YOLO Streamlit uygulama arayüzü.

Streamlit ve YOLO11 kullanan kullanım örnekleri

Streamlit'in prototipler, araştırma araçları ve küçük ila orta ölçekli uygulamalar oluşturmak için nasıl harika olduğuna bir göz attık. Yapay zeka modellerini karmaşık ön uç geliştirme olmadan dağıtmanın basit bir yolunu sunuyor.

Bununla birlikte, YOLO11 'i Streamlit ile çalıştırmak her zaman kullanıma hazır bir çözüm değildir - yukarıdaki adımlarda kurduğumuz Ultralytics YOLO Streamlit uygulamasını kullanmadığınız sürece. Çoğu durumda, uygulamayı belirli ihtiyaçlara uyacak şekilde özelleştirmek için bazı geliştirme çalışmaları gerekir. Streamlit dağıtımı basitleştirirken, YOLO11 'in sorunsuz çalışmasını sağlamak için gerekli bileşenleri yapılandırmanız gerekecektir.

Ultralytics YOLO11 'in Streamlit ile gerçek dünya senaryolarında nasıl etkili bir şekilde kullanılabileceğine dair iki pratik örneği inceleyelim.

YOLO11 kullanarak envanter kontrolleri için nesneleri sayma

Perakende mağazalarında, depolarda veya ofis tedarik alanlarında envanter takibi yapmak zaman alıcı ve hatalara açık olabilir. Streamlit ile YOLO11 'i kullanan işletmeler, nesne sayımını hızlı ve verimli bir şekilde otomatikleştirebilir, bu da onu büyük ölçekli bir dağıtıma geçmeden önce bir kavram kanıtı (PoC) için mükemmel bir seçenek haline getirir.

Bu kurulumla, kullanıcılar bir görüntü yükleyebilir veya canlı bir kamera beslemesi kullanabilir ve YOLO11 nesneleri anında tespit etmeye ve saymaya yardımcı olabilir. Gerçek zamanlı sayım Streamlit arayüzünde görüntülenebilir ve manuel çaba harcamadan stok seviyelerini izlemek için kolay bir yol sağlar.

Örneğin, bir mağaza sahibi bir rafı tarayabilir ve manuel olarak saymak zorunda kalmadan kaç şişe, kutu veya paketlenmiş ürün bulunduğunu hemen görebilir. İşletmeler, YOLO11 ve Streamlit'ten yararlanarak manuel işleri azaltabilir, doğruluğu artırabilir ve minimum yatırımla otomasyonu keşfedebilir.

Şekil 4. YOLO11 kullanarak buzdolabındaki şişeleri algılama.

YOLO11 ve Streamlit ile güvenliği artırma

Ofislerde, depolarda veya etkinlik mekanlarında kısıtlı alanları güvende tutmak, özellikle manuel izleme ile zor olabilir. Streamlit ile YOLO11 'i kullanan işletmeler, yetkisiz erişimi gerçek zamanlı olarak tespit etmek için basit bir yapay zeka destekli güvenlik sistemi kurabilir.

Streamlit arayüzüne bir kamera beslemesi bağlanabilir ve burada YOLO11 kısıtlı bölgelere giren kişileri tanımlamak ve izlemek için kullanılır. Yetkisiz bir kişi tespit edilirse, sistem bir uyarıyı tetikleyebilir veya inceleme için olayı kaydedebilir.

Örneğin, bir depo yöneticisi yüksek güvenlikli depolama alanlarına erişimi izleyebilir veya bir ofis sürekli denetime ihtiyaç duymadan kısıtlı bölümlerdeki hareketleri takip edebilir.

Bu, daha büyük, tam otomatik bir sisteme geçmeden önce Vision AI odaklı güvenlik izlemeyi keşfetmek isteyen işletmeler için ufuk açıcı bir proje olabilir. İşletmeler, YOLO11 'i Streamlit ile entegre ederek güvenliği artırabilir, manuel izlemeyi en aza indirebilir ve yetkisiz erişime daha etkili bir şekilde yanıt verebilir.

Streamlit ile etkileşimli bir yapay zeka uygulamasını izlemek için ipuçları

Bilgisayarla görme modellerini dağıtmak için Streamlit gibi araçları kullanmak, etkileşimli ve kullanıcı dostu bir deneyim oluşturmaya yardımcı olur. Bununla birlikte, canlı arayüzü kurduktan sonra, sistemin verimli bir şekilde çalışmasını ve zaman içinde doğru sonuçlar vermesini sağlamak önemlidir.

İşte dağıtımdan sonra dikkate alınması gereken bazı temel faktörler:

  • Düzenli izleme: Algılama doğruluğunu, çıkarım hızını ve kaynak kullanımını izleyin. Performans düşerse model parametrelerini ayarlayın veya donanımı yükseltin.
  • Birden fazla kullanıcıyı yönetme ve ölçeklenebilirlik: Kullanıcı talebi arttıkça, altyapıyı optimize etmek performansı korumanın anahtarıdır. Bulut platformları ve ölçeklenebilir dağıtım çözümleri sorunsuz çalışmayı sağlamaya yardımcı olur.
  • Modeli güncel tutmak: Modelin ve kütüphanelerin güncel tutulması doğruluğu, güvenliği ve yeni özelliklere erişimi artırır.

Önemli çıkarımlar

Ultralytics , kodlama gerektirmeden tek bir komutla çalışan kullanıma hazır Streamlit canlı arayüzü ile YOLO11 dağıtımını basitleştirir. Bu, kullanıcıların gerçek zamanlı nesne algılamayı anında kullanmaya başlamasını sağlar.

Arayüz ayrıca, kullanıcıların modelleri değiştirmesine, algılama doğruluğunu ayarlamasına ve nesneleri kolaylıkla filtrelemesine olanak tanıyan yerleşik özelleştirme içerir. Her şey basit, kullanıcı dostu bir arayüz içinde yönetilir ve manuel kullanıcı arayüzü geliştirme ihtiyacını ortadan kaldırır. Birleştirerek

Streamlit'in dağıtım kolaylığı ile YOLO11'in yetenekleri, işletmeler ve geliştiriciler yapay zeka odaklı uygulamaları hızlı bir şekilde prototipleyebilir, test edebilir ve iyileştirebilir. 

Topluluğumuzun bir parçası olun ve yapay zeka hakkında daha fazla bilgi edinmek için GitHub depomuzu keşfedin. Üretimde yapay zeka ve sağlık hizmetlerinde bilgisayarla görme gibi yenilikler hakkında daha fazla bilgi edinmek için çözüm sayfalarımıza göz atın. Lisanslama seçeneklerimize göz atın ve bugün başlayın!

Facebook logosuTwitter logosuLinkedIn logosuKopya-bağlantı sembolü

Bu kategoride daha fazlasını okuyun

Yapay zekanın gelecekteki
adresini birlikte inşa edelim!

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