Reconnaissance de chars dans un flux vidéo grâce aux méthodes d'apprentissage automatique (+2 vidéos sur les plateformes Elbrouz et Baïkal)

Reconnaissance de chars dans un flux vidéo grâce aux méthodes d'apprentissage automatique (+2 vidéos sur les plateformes Elbrouz et Baïkal)

Dans le cadre de nos activités, nous sommes quotidiennement confrontés au problème de la détermination des priorités de développement. Compte tenu de la forte dynamique de développement de l'industrie informatique et de la demande sans cesse croissante de nouvelles technologies de la part des entreprises et des gouvernements, chaque fois que nous déterminons le vecteur de développement et investissons nos propres forces et fonds dans le potentiel scientifique de notre entreprise, nous veillons à ce que toutes nos recherches et projets sont de nature fondamentale et interdisciplinaire.

Par conséquent, en développant notre technologie principale - le cadre de reconnaissance de données HIEROGLYPH, nous nous soucions à la fois d'améliorer la qualité de la reconnaissance des documents (notre principal secteur d'activité) et de la possibilité d'utiliser la technologie pour résoudre les problèmes de reconnaissance associés. Dans l'article d'aujourd'hui, nous vous expliquerons comment, sur la base de notre moteur de reconnaissance (documents), nous avons reconnu des objets plus grands et stratégiquement importants dans un flux vidéo.

Formulation du problème

À l'aide des développements existants, construire un système de reconnaissance de char permettant de classer un objet, ainsi que de déterminer des indicateurs géométriques de base (orientation et distance) dans des conditions mal contrôlées sans utiliser d'équipement spécialisé.

décision

Nous avons choisi l'approche d'apprentissage automatique statistique comme algorithme principal pour résoudre le problème. Mais l’un des problèmes clés du machine learning est la nécessité de disposer d’une quantité suffisante de données d’entraînement. Évidemment, les images naturelles obtenues à partir de scènes réelles contenant les objets dont nous avons besoin ne nous sont pas disponibles. Par conséquent, il a été décidé de recourir à la génération des données nécessaires à la formation, heureusement Nous avons beaucoup d'expérience dans cet endroit. Et pourtant, il ne nous a pas semblé naturel de synthétiser complètement les données pour cette tâche, c'est pourquoi une mise en page spéciale a été préparée pour simuler des scènes réelles. Le modèle contient divers objets qui simulent le paysage : revêtement paysager caractéristique, buissons, arbres, clôtures, etc. Les images ont été capturées à l’aide d’un appareil photo numérique petit format. Au cours du processus de capture d’image, l’arrière-plan de la scène a considérablement changé pour rendre les algorithmes plus robustes aux changements d’arrière-plan.

Reconnaissance de chars dans un flux vidéo grâce aux méthodes d'apprentissage automatique (+2 vidéos sur les plateformes Elbrouz et Baïkal)

Les objets cibles étaient 4 modèles de chars de combat : T-90 (Russie), M1A2 Abrams (USA), T-14 (Russie), Merkava III (Israël). Les objets étaient situés à différentes positions du polygone, élargissant ainsi la liste des angles visibles acceptables de l'objet. Les barrières techniques, les arbres, les buissons et autres éléments du paysage ont joué un rôle important.

Reconnaissance de chars dans un flux vidéo grâce aux méthodes d'apprentissage automatique (+2 vidéos sur les plateformes Elbrouz et Baïkal)

Ainsi, en quelques jours, nous avons collecté un ensemble suffisant pour la formation et l'évaluation ultérieure de la qualité de l'algorithme (plusieurs dizaines de milliers d'images).

Ils ont décidé de diviser la reconnaissance elle-même en deux parties : la localisation des objets et la classification des objets. La localisation a été effectuée à l'aide d'un classificateur expérimenté de Viola et Jones (après tout, un char est un objet rigide normal, pas pire qu'un visage, donc la méthode « aveugle aux détails » de Viola et Jones localise rapidement l'objet cible). Mais nous avons confié la classification et la détermination de l'angle à un réseau neuronal convolutif. Dans cette tâche, il est important pour nous que le détecteur identifie avec succès les caractéristiques qui, par exemple, distinguent le T-90 du Merkava. En conséquence, il a été possible de construire une composition efficace d'algorithmes qui résolvent avec succès le problème de la localisation et de la classification d'objets du même type.

Reconnaissance de chars dans un flux vidéo grâce aux méthodes d'apprentissage automatique (+2 vidéos sur les plateformes Elbrouz et Baïkal)

Ensuite, nous avons lancé le programme résultant sur toutes nos plates-formes existantes (Intel, ARM, Elbrus, Baikal, KOMDIV), optimisé des algorithmes difficiles à calculer pour augmenter les performances (nous en avons déjà parlé à plusieurs reprises dans nos articles, par exemple ici https://habr.com/ru/company/smartengines/blog/438948/ ou https://habr.com/ru/company/smartengines/blog/351134/) et obtenu un fonctionnement stable du programme sur l'appareil en temps réel.


Grâce à toutes les actions décrites, nous avons obtenu un produit logiciel à part entière doté de caractéristiques tactiques et techniques importantes.

Lecteur de réservoir intelligent

Nous vous présentons donc notre nouveau développement - un programme de reconnaissance d'images de chars dans un flux vidéo Lecteur de réservoir intelligent, qui:

Reconnaissance de chars dans un flux vidéo grâce aux méthodes d'apprentissage automatique (+2 vidéos sur les plateformes Elbrouz et Baïkal)

  • Résout le problème « ami ou ennemi » pour un ensemble d’objets donné en temps réel ;
  • Détermine les paramètres géométriques (distance à l'objet, orientation privilégiée de l'objet) ;
  • Fonctionne dans des conditions météorologiques incontrôlées, ainsi qu'en cas de blocage partiel de l'objet par des corps étrangers ;
  • Fonctionnement totalement autonome sur l'appareil cible, y compris en l'absence de communication radio ;
  • Liste des architectures de processeur prises en charge : Elbrus, Baikal, KOMDIV, ainsi que x86, x86_64, ARM ;
  • Liste des systèmes d'exploitation pris en charge : Elbrus OS, AstraLinux OS, Atlix OS, ainsi que MS Windows, macOS, diverses distributions Linux prenant en charge gcc 4.8, Android, iOS ;
  • Développement entièrement domestique.

Habituellement, dans la conclusion de nos articles sur Habré, nous fournissons un lien vers le marché, où toute personne utilisant son téléphone portable peut télécharger une version de démonstration de l'application afin d'évaluer réellement les performances de la technologie. Cette fois, compte tenu des spécificités de l'application qui en résulte, nous souhaitons à tous nos lecteurs de ne jamais être confrontés de leur vie au problème de déterminer rapidement si un char appartient à un certain camp.

Source: habr.com

Ajouter un commentaire