Makine öğrenimi yöntemlerini kullanarak video akışındaki tankların tanınması (Elbrus ve Baykal platformlarında +2 video)

Makine öğrenimi yöntemlerini kullanarak video akışındaki tankların tanınması (Elbrus ve Baykal platformlarında +2 video)

Faaliyetlerimiz sırasında her gün kalkınma önceliklerini belirleme sorunuyla karşı karşıya kalıyoruz. BT endüstrisinin yüksek gelişim dinamiklerini, iş dünyasının ve hükümetin yeni teknolojilere yönelik sürekli artan talebini göz önünde bulundurarak, gelişim vektörünü belirlediğimizde ve kendi güçlerimizi ve fonlarımızı şirketimizin bilimsel potansiyeline yatırdığımızda, şunları sağladığımızdan emin oluruz: tüm araştırmalarımız ve projelerimiz temel ve disiplinlerarası niteliktedir.

Bu nedenle, ana teknolojimiz olan HIEROGLYPH veri tanıma çerçevesini geliştirerek, hem belge tanıma kalitesinin (ana iş kolumuz) iyileştirilmesi hem de ilgili tanıma sorunlarını çözmek için teknolojiyi kullanma olasılığıyla ilgileniyoruz. Bugünkü makalemizde, tanıma motorumuza (belgelere) dayanarak, bir video akışındaki daha büyük, stratejik açıdan önemli nesneleri nasıl tanıdığımızı anlatacağız.

Sorunun formüle edilmesi

Mevcut gelişmeleri kullanarak, bir nesneyi sınıflandırmayı ve ayrıca özel ekipman kullanmadan kötü kontrol edilen koşullarda temel geometrik göstergeleri (yönelim ve mesafe) belirlemeyi mümkün kılan bir tank tanıma sistemi oluşturun.

karar

Sorunun çözümünde ana algoritma olarak istatistiksel makine öğrenimi yaklaşımını seçtik. Ancak makine öğreniminin temel sorunlarından biri yeterli miktarda eğitim verisine sahip olma ihtiyacıdır. Açıkçası ihtiyacımız olan nesneleri içeren gerçek sahnelerden elde edilen doğal görüntüler elimizde değil. Bu nedenle, neyse ki eğitim için gerekli verilerin oluşturulmasına başvurulmasına karar verildi. Bu yerde çok fazla tecrübemiz var. Ancak yine de bu görev için verileri tamamen sentezlemek bize doğal görünmedi, bu nedenle gerçek sahneleri simüle etmek için özel bir düzen hazırlandı. Model, kırsal bölgeyi simüle eden çeşitli nesneler içerir: karakteristik peyzaj örtüsü, çalılar, ağaçlar, çitler vb. Görüntüler küçük formatlı bir dijital kamera kullanılarak çekildi. Görüntü yakalama işlemi sırasında, algoritmaların arka plan değişikliklerine karşı daha dayanıklı olmasını sağlamak için sahnenin arka planı önemli ölçüde değiştirildi.

Makine öğrenimi yöntemlerini kullanarak video akışındaki tankların tanınması (Elbrus ve Baykal platformlarında +2 video)

Hedef nesneler 4 savaş tankı modeliydi: T-90 (Rusya), M1A2 Abrams (ABD), T-14 (Rusya), Merkava III (İsrail). Nesneler çokgenin farklı konumlarına yerleştirildi, böylece nesnenin kabul edilebilir görünür açılarının listesi genişletildi. Mühendislik bariyerleri, ağaçlar, çalılar ve diğer peyzaj unsurları önemli bir rol oynadı.

Makine öğrenimi yöntemlerini kullanarak video akışındaki tankların tanınması (Elbrus ve Baykal platformlarında +2 video)

Böylece, birkaç gün içinde eğitim ve algoritmanın kalitesinin daha sonra değerlendirilmesi için yeterli bir set topladık (birkaç on binlerce görüntü).

Tanıma işlemini iki bölüme ayırmaya karar verdiler: nesne yerelleştirmesi ve nesne sınıflandırması. Yerelleştirme, eğitimli bir Viola ve Jones sınıflandırıcısı kullanılarak gerçekleştirildi (sonuçta, bir tank normal, sert bir nesnedir, bir yüzden daha kötü değildir, bu nedenle Viola ve Jones'un "ayrıntıyı kör etme" yöntemi, hedef nesnenin yerini hızla belirler). Ancak açının sınıflandırılmasını ve belirlenmesini evrişimli bir sinir ağına emanet ettik - bu görevde dedektörün, örneğin T-90'ı Merkava'dan ayıran özellikleri başarıyla tanımlaması bizim için önemlidir. Sonuç olarak, aynı türdeki nesnelerin yerelleştirilmesi ve sınıflandırılması sorununu başarıyla çözen etkili bir algoritma bileşimi oluşturmak mümkün oldu.

Makine öğrenimi yöntemlerini kullanarak video akışındaki tankların tanınması (Elbrus ve Baykal platformlarında +2 video)

Daha sonra, ortaya çıkan programı mevcut tüm platformlarımızda (Intel, ARM, Elbrus, Baykal, KOMDIV) başlattık, performansı artırmak için hesaplama açısından zor algoritmaları optimize ettik (bunun hakkında zaten makalelerimizde birkaç kez yazdık, örneğin burada) https://habr.com/ru/company/smartengines/blog/438948/ veya https://habr.com/ru/company/smartengines/blog/351134/) ve programın cihazda gerçek zamanlı olarak kararlı çalışmasını sağladı.


Açıklanan tüm eylemlerin sonucunda, önemli taktik ve teknik özelliklere sahip tam teşekküllü bir yazılım ürünü elde ettik.

Akıllı Tank Okuyucu

Bu yüzden size yeni gelişimimizi sunuyoruz - video akışındaki tank görüntülerini tanımaya yönelik bir program Akıllı Tank Okuyucu, Hangi:

Makine öğrenimi yöntemlerini kullanarak video akışındaki tankların tanınması (Elbrus ve Baykal platformlarında +2 video)

  • Belirli bir nesne kümesi için "dost veya düşman" problemini gerçek zamanlı olarak çözer;
  • Geometrik parametreleri belirler (nesneye olan mesafe, nesnenin tercih edilen yönü);
  • Kontrolsüz hava koşullarında ve nesnenin yabancı cisimler tarafından kısmen engellenmesi durumunda çalışır;
  • Radyo iletişiminin olmadığı durumlar da dahil olmak üzere hedef cihazda tamamen otonom çalışma;
  • Desteklenen işlemci mimarilerinin listesi: Elbrus, Baykal, KOMDIV'in yanı sıra x86, x86_64, ARM;
  • Desteklenen işletim sistemlerinin listesi: Elbrus OS, AstraLinux OS, Atlix OS'nin yanı sıra MS Windows, macOS, gcc 4.8'i destekleyen çeşitli Linux dağıtımları, Android, iOS;
  • Tamamen yerli kalkınma.

Genellikle Habré hakkındaki makalelerimizin sonunda, teknolojinin performansını fiilen değerlendirmek için cep telefonunu kullanan herkesin uygulamanın demo sürümünü indirebileceği pazaryerine bir bağlantı sağlarız. Bu sefer, ortaya çıkan uygulamanın özelliklerini göz önünde bulundurarak, tüm okuyucularımızın, bir tankın belirli bir tarafa ait olup olmadığını hızlı bir şekilde belirleme sorunuyla hayatları boyunca asla karşılaşmamalarını diliyoruz.

Kaynak: habr.com

Yorum ekle