Reconocimiento de tanques en una transmisión de video utilizando métodos de aprendizaje automático (+2 videos en las plataformas Elbrus y Baikal)

Reconocimiento de tanques en una transmisión de video utilizando métodos de aprendizaje automático (+2 videos en las plataformas Elbrus y Baikal)

En el curso de nuestras actividades, nos enfrentamos diariamente al problema de determinar las prioridades de desarrollo. Teniendo en cuenta la alta dinámica de desarrollo de la industria de TI, la demanda cada vez mayor de nuevas tecnologías por parte de las empresas y los gobiernos, cada vez que determinamos el vector de desarrollo e invertimos nuestras propias fuerzas y fondos en el potencial científico de nuestra empresa, nos aseguramos de que Todas nuestras investigaciones y proyectos son de carácter fundamental e interdisciplinario.

Por lo tanto, al desarrollar nuestra tecnología principal, el marco de reconocimiento de datos HIEROGLYPH, nos preocupamos tanto por mejorar la calidad del reconocimiento de documentos (nuestra principal línea de negocio) como por la posibilidad de utilizar la tecnología para resolver problemas de reconocimiento relacionados. En el artículo de hoy le diremos cómo, basándonos en nuestro motor de reconocimiento (documentos), reconocimos objetos más grandes y estratégicamente importantes en una transmisión de video.

Formulación del problema

Utilizando los desarrollos existentes, construir un sistema de reconocimiento de tanques que permita clasificar un objeto, así como determinar indicadores geométricos básicos (orientación y distancia) en condiciones mal controladas sin el uso de equipos especializados.

Solución

Elegimos el enfoque de aprendizaje automático estadístico como algoritmo principal para resolver el problema. Pero uno de los problemas clave del aprendizaje automático es la necesidad de disponer de una cantidad suficiente de datos de entrenamiento. Evidentemente, las imágenes naturales obtenidas de escenas reales que contengan los objetos que necesitamos no están a nuestra disposición. Por lo que se decidió recurrir a generar los datos necesarios para el entrenamiento, afortunadamente Tenemos mucha experiencia en este lugar.. Y, sin embargo, no nos parecía natural sintetizar completamente los datos para esta tarea, por lo que se preparó un diseño especial para simular escenas reales. El modelo contiene diversos objetos que simulan el paisaje: cobertura paisajística característica, arbustos, árboles, vallas, etc. Las imágenes fueron capturadas utilizando una cámara digital de pequeño formato. Durante el proceso de captura de imágenes, el fondo de la escena cambió significativamente para que los algoritmos sean más robustos ante los cambios de fondo.

Reconocimiento de tanques en una transmisión de video utilizando métodos de aprendizaje automático (+2 videos en las plataformas Elbrus y Baikal)

Los objetivos eran 4 modelos de carros de combate: T-90 (Rusia), M1A2 Abrams (EE.UU.), T-14 (Rusia), Merkava III (Israel). Los objetos se ubicaron en diferentes posiciones del polígono, ampliando así la lista de ángulos visibles aceptables del objeto. Las barreras de ingeniería, los árboles, los arbustos y otros elementos del paisaje desempeñaron un papel importante.

Reconocimiento de tanques en una transmisión de video utilizando métodos de aprendizaje automático (+2 videos en las plataformas Elbrus y Baikal)

Así, en un par de días reunimos un conjunto suficiente para el entrenamiento y posterior evaluación de la calidad del algoritmo (varias decenas de miles de imágenes).

Decidieron dividir el reconocimiento en dos partes: localización de objetos y clasificación de objetos. La localización se realizó utilizando un clasificador entrenado de Viola y Jones (después de todo, un tanque es un objeto rígido normal, no peor que una cara, por lo que el método "ciego a los detalles" de Viola y Jones localiza rápidamente el objeto objetivo). Pero confiamos la clasificación y determinación del ángulo a una red neuronal convolucional; en esta tarea es importante para nosotros que el detector identifique con éxito aquellas características que, digamos, distinguen al T-90 del Merkava. Como resultado, fue posible construir una composición eficaz de algoritmos que resuelva con éxito el problema de localización y clasificación de objetos del mismo tipo.

Reconocimiento de tanques en una transmisión de video utilizando métodos de aprendizaje automático (+2 videos en las plataformas Elbrus y Baikal)

A continuación, lanzamos el programa resultante en todas nuestras plataformas existentes (Intel, ARM, Elbrus, Baikal, KOMDIV), optimizamos algoritmos computacionalmente difíciles para aumentar el rendimiento (ya hemos escrito sobre esto varias veces en nuestros artículos, por ejemplo aquí https://habr.com/ru/company/smartengines/blog/438948/ o https://habr.com/ru/company/smartengines/blog/351134/) y logró un funcionamiento estable del programa en el dispositivo en tiempo real.


Como resultado de todas las acciones descritas, obtuvimos un producto de software completo con importantes características tácticas y técnicas.

Lector de tanque inteligente

Por eso les presentamos nuestro nuevo desarrollo: un programa para reconocer imágenes de tanques en una secuencia de vídeo. Lector de tanque inteligente, cual:

Reconocimiento de tanques en una transmisión de video utilizando métodos de aprendizaje automático (+2 videos en las plataformas Elbrus y Baikal)

  • Resuelve el problema de “amigo o enemigo” para un conjunto determinado de objetos en tiempo real;
  • Determina parámetros geométricos (distancia al objeto, orientación preferida del objeto);
  • Funciona en condiciones climáticas incontroladas, así como en caso de bloqueo parcial del objeto por objetos extraños;
  • Funcionamiento totalmente autónomo en el dispositivo de destino, incluso en ausencia de comunicación por radio;
  • Lista de arquitecturas de procesadores compatibles: Elbrus, Baikal, KOMDIV, así como x86, x86_64, ARM;
  • Lista de sistemas operativos compatibles: Elbrus OS, AstraLinux OS, Atlix OS, así como MS Windows, macOS, varias distribuciones de Linux compatibles con gcc 4.8, Android, iOS;
  • Desarrollo completamente interno.

Normalmente, al final de nuestros artículos sobre Habré, proporcionamos un enlace al mercado, donde cualquiera que utilice su teléfono móvil puede descargar una versión de demostración de la aplicación para evaluar realmente el rendimiento de la tecnología. Esta vez, teniendo en cuenta las características específicas de la aplicación resultante, deseamos que todos nuestros lectores nunca en sus vidas se enfrenten al problema de determinar rápidamente si un tanque pertenece a un bando determinado.

Fuente: habr.com

Añadir un comentario