Tankok felismerése egy videofolyamban gépi tanulási módszerekkel (+2 videó az Elbrus és a Bajkál platformokon)

Tankok felismerése egy videofolyamban gépi tanulási módszerekkel (+2 videó az Elbrus és a Bajkál platformokon)

Tevékenységünk során naponta szembesülünk a fejlesztési prioritások meghatározásának problémájával. Figyelembe véve az informatikai ipar magas fejlődési dinamikáját, az új technológiák iránti folyamatosan növekvő üzleti és kormányzati keresletet, minden alkalommal, amikor meghatározzuk a fejlődés vektorát, és saját erőnket és forrásainkat cégünk tudományos potenciáljába fektetjük, gondoskodunk arról, hogy minden kutatásunk és projektünk alapvető és interdiszciplináris jellegű.

Ezért fő technológiánk - a HIEROGLYPH adatfelismerő keretrendszer - fejlesztésével mind a dokumentumfelismerés (fő üzletágunk) minőségének javítása, mind a technológia felhasználásának lehetősége a kapcsolódó felismerési problémák megoldására aggódunk. Mai cikkünkben eláruljuk, hogyan tudtunk felismerő motorunk (dokumentumaink) alapján felismerni a nagyobb, stratégiailag fontos objektumokat egy videofolyamban.

Probléma nyilatkozat

A meglévő fejlesztések felhasználásával olyan tankfelismerő rendszer kiépítése, amely lehetővé teszi egy objektum osztályozását, valamint az alapvető geometriai mutatók (tájolás és távolság) meghatározását rosszul szabályozott körülmények között, speciális berendezések használata nélkül.

döntés

A probléma megoldásának fő algoritmusaként a statisztikai gépi tanulási megközelítést választottuk. De a gépi tanulás egyik kulcsproblémája az, hogy elegendő mennyiségű képzési adattal kell rendelkezni. Nyilvánvaló, hogy a számunkra szükséges tárgyakat tartalmazó valódi jelenetekből nyert természetes képek nem állnak rendelkezésünkre. Ezért úgy döntöttek, hogy szerencsére a képzéshez szükséges adatok előállításához folyamodnak Nagyon sok tapasztalatunk van ezen a helyen. És mégis, számunkra természetellenesnek tűnt, hogy ehhez a feladathoz teljesen szintetizáljuk az adatokat, ezért egy speciális elrendezés készült a valódi jelenetek szimulálására. A modell különféle, a vidéket szimuláló objektumokat tartalmaz: jellegzetes tájborítás, bokrok, fák, kerítések stb. A képek kis formátumú digitális fényképezőgéppel készültek. A képrögzítési folyamat során a jelenet háttere jelentősen megváltozott, hogy az algoritmusok jobban ellenálljanak a háttérváltozásoknak.

Tankok felismerése egy videofolyamban gépi tanulási módszerekkel (+2 videó az Elbrus és a Bajkál platformokon)

A céltárgyak 4 harckocsi modell volt: T-90 (Oroszország), M1A2 Abrams (USA), T-14 (Oroszország), Merkava III (Izrael). Az objektumok a sokszög különböző helyein helyezkedtek el, ezáltal bővült az objektum elfogadható látható szögeinek listája. Jelentős szerepet kaptak a műszaki akadályok, fák, bokrok és egyéb tájelemek.

Tankok felismerése egy videofolyamban gépi tanulási módszerekkel (+2 videó az Elbrus és a Bajkál platformokon)

Így pár nap alatt összegyűjtöttünk egy elegendő készletet a betanításhoz és az algoritmus minőségének utólagos értékeléséhez (több tízezer kép).

Úgy döntöttek, hogy magát a felismerést két részre osztják: objektum lokalizációra és objektum osztályozásra. A lokalizációt egy betanított Viola és Jones osztályozó segítségével végezték el (végül is a tank egy normál merev tárgy, nem rosszabb, mint az arc, így Viola és Jones „részletvak” módszere gyorsan lokalizálja a céltárgyat). De az osztályozást és a szög meghatározását egy konvolúciós neurális hálózatra bíztuk - ebben a feladatban számunkra fontos, hogy a detektor sikeresen azonosítsa azokat a jellemzőket, amelyek mondjuk megkülönböztetik a T-90-et a Merkavától. Ennek eredményeként sikerült létrehozni egy olyan hatékony algoritmus-összetételt, amely sikeresen megoldja az azonos típusú objektumok lokalizációjának és osztályozásának problémáját.

Tankok felismerése egy videofolyamban gépi tanulási módszerekkel (+2 videó az Elbrus és a Bajkál platformokon)

Ezt követően minden létező platformunkon (Intel, ARM, Elbrus, Bajkál, KOMDIV) elindítottuk az eredményül kapott programot, számításilag nehéz algoritmusokat optimalizáltunk a teljesítmény növelésére (erről cikkeinkben már többször írtunk, például itt https://habr.com/ru/company/smartengines/blog/438948/ vagy https://habr.com/ru/company/smartengines/blog/351134/) és valós időben elérte a program stabil működését az eszközön.


A leírt műveletek eredményeként egy teljes értékű szoftverterméket kaptunk, amely jelentős taktikai és műszaki jellemzőkkel rendelkezik.

Smart Tank olvasó

Tehát bemutatjuk Önnek az új fejlesztésünket - egy programot a tankok képeinek videofolyamban történő felismerésére Smart Tank olvasó, melyik:

Tankok felismerése egy videofolyamban gépi tanulási módszerekkel (+2 videó az Elbrus és a Bajkál platformokon)

  • Valós időben megoldja a „barát vagy ellenség” problémát adott objektumkészletre vonatkozóan;
  • Meghatározza a geometriai paramétereket (az objektumtól való távolság, az objektum preferált tájolása);
  • Ellenőrizetlen időjárási körülmények között működik, valamint az objektum idegen tárgyak általi részleges blokkolása esetén;
  • Teljesen autonóm működés a céleszközön, beleértve a rádiókommunikáció hiányát is;
  • A támogatott processzorarchitektúrák listája: Elbrus, Baikal, KOMDIV, valamint x86, x86_64, ARM;
  • A támogatott operációs rendszerek listája: Elbrus OS, AstraLinux OS, Atlix OS, valamint MS Windows, macOS, különféle gcc 4.8-at támogató Linux disztribúciók, Android, iOS;
  • Teljesen hazai fejlesztés.

Általában a Habréval kapcsolatos cikkeink zárásaként adunk egy linket a piactérre, ahonnan bárki, aki mobiltelefonját használja, letöltheti az alkalmazás demóverzióját, hogy ténylegesen értékelje a technológia teljesítményét. Ezúttal, figyelembe véve az így létrejött alkalmazás sajátosságait, azt kívánjuk olvasóinknak, hogy soha életükben ne nézzenek szembe azzal a problémával, hogy gyorsan megállapítsák, egy tank egy adott oldalhoz tartozik-e.

Forrás: will.com

Hozzászólás