Contáctenos

Un códec de video diseñado para análisis de IA

Inteligencia Artificial

Un códec de video diseñado para análisis de IA

mm

Aunque tecno-thriller El círculo (2017) es más un comentario sobre las implicaciones éticas de las redes sociales que sobre los aspectos prácticos del análisis de video externo, la increíblemente pequeña cámara 'SeeChange' en el centro de la trama es lo que realmente empuja a la película a la categoría de 'ciencia ficción'.

La cámara/dispositivo de vigilancia 'SeeChange' del tecno-thriller The Circle (2017).

El dispositivo de cámara/vigilancia 'SeeChange' del thriller tecnológico 'The Circle' (2017).

Un dispositivo inalámbrico y de libre movimiento del tamaño de una canica grande, no es la falta de paneles solares o la ineficiencia de obtener energía de otras fuentes ambientales (como ondas de radio) eso hace que SeeChange sea una perspectiva poco probable, pero el hecho de que tendrá que comprimir video las 24 horas del día, los 7 días de la semana, con la escasa carga que pueda mantener.

Alimentar sensores baratos de este tipo es un área central de investigación en visión por computadora (CV) y análisis de video, particularmente en entornos no urbanos donde el sensor tendrá que obtener el máximo rendimiento con recursos energéticos muy limitados (baterías, energía solar, etc.). .).

En los casos en que un dispositivo IoT/CV de borde de este tipo deba enviar contenido de imagen a un servidor central (a menudo a través de redes de cobertura celular convencionales), las opciones son difíciles: el dispositivo necesita ejecutar algún tipo de red neuronal liviana localmente para enviar solo optimizado segmentos de datos relevantes para el procesamiento del lado del servidor; o tiene que enviar un video "tonto" para que los recursos de la nube conectados lo evalúen.

Aunque la activación de movimiento a través de sensores de visión inteligente (SVS) basados ​​en eventos puede reducir esta sobrecarga, que el control de la activación también cuesta energía.

Aferrarse al poder

Además, incluso con una activación poco frecuente (por ejemplo, cuando una oveja aparece de vez en cuando), el dispositivo no tiene suficiente energía para enviar gigabytes de video sin comprimir; tampoco tiene suficiente energía para ejecutar constantemente los códecs de compresión de video populares, como H.264/5, que esperan un hardware que esté enchufado o no muy lejos de la próxima sesión de carga.

Canalizaciones de análisis de video para tres tareas típicas de visión artificial. La arquitectura de codificación de video debe capacitarse para la tarea en cuestión y, por lo general, para la red neuronal que recibirá los datos. Fuente: https://arxiv.org/pdf/2204.12534.pdf

Canalizaciones de análisis de video para tres tareas típicas de visión artificial. La arquitectura de codificación de video debe capacitarse para la tarea en cuestión y, por lo general, para la red neuronal que recibirá los datos. Fuente: https://arxiv.org/pdf/2204.12534.pdf

Aunque el códec H.264 ampliamente difundido tiene un menor consumo de energía que su sucesor H.265, tiene mala eficiencia de compresiónSu sucesor, el H.265, ofrece una mejor eficiencia de compresión, pero un mayor consumo de energía. Mientras que el código abierto de Google... códec VP9 los supera a ambos en cada área, requiere mayores recursos de cómputo local, lo que presenta problemas adicionales en un sensor IoT supuestamente barato.

En cuanto al análisis de la transmisión local: para cuando hayas ejecutado incluso la red neuronal local más liviana para determinar qué cuadros (o áreas de un cuadro) vale la pena enviar al servidor, a menudo habrás gastado la energía que habrías ahorrado si simplemente enviaras todos los cuadros.

Extraer representaciones enmascaradas de ganado con un sensor que es poco probable que esté conectado a la red. ¿Gasta su capacidad de poder limitada en la segmentación semántica local con una red neuronal ligera; enviando información limitada a un servidor para obtener más instrucciones (introduciendo latencia); o enviando datos 'tontos' (desperdiciando energía en ancho de banda)? Fuente: https://arxiv.org/pdf/1807.01972.pdf

Extraer representaciones enmascaradas de ganado con un sensor que probablemente no esté conectado a la red eléctrica. ¿Gasta su limitada capacidad de energía en la segmentación semántica local con una red neuronal ligera; enviando información limitada a un servidor para obtener más instrucciones (lo que introduce latencia); o enviando datos "tontos" (desperdiciando energía en el ancho de banda)? Fuente: https://arxiv.org/pdf/1807.01972.pdf

Está claro que los proyectos de visión artificial necesitan códecs de compresión de vídeo dedicados que estén optimizados para los requisitos de redes neuronales específicas en tareas específicas y diversas, como segmentación semántica, detección de puntos clave (análisis del movimiento humano) y detección de objetos, entre otros posibles usos finales.

Si puede obtener el equilibrio perfecto entre la eficiencia de compresión de video y la transmisión mínima de datos, estará un paso más cerca de SeeChange y de la capacidad de implementar redes de sensores asequibles en entornos hostiles.

AccMPEG

Una nueva investigación de la Universidad de Chicago podría haber dado un paso más cerca de dicho códec, en forma de AccMPEG – un nuevo marco de transmisión y codificación de video que opera a baja latencia, alta precisión para redes neuronales profundas (DNN) del lado del servidor, y que tiene requisitos de cómputo local notablemente bajos.

Arquitectura de AccMPEG. Fuente: https://arxiv.org/pdf/2204.12534.pdf

Arquitectura de AccMPEG. Fuente: https://arxiv.org/pdf/2204.12534.pdf

El sistema puede hacer economías con respecto a los métodos anteriores al evaluar la medida en que cada 16x16px macrobloque es probable que afecte la precisión del DNN del lado del servidor. En cambio, los métodos anteriores generalmente tenían que evaluar este tipo de precisión en función de cada píxel de una imagen o realizar operaciones locales eléctricamente costosas para evaluar qué regiones de la imagen podrían ser de mayor interés.

En AccMPEG, esta precisión se estima en un módulo personalizado llamado AccGrad, que mide las formas en que la calidad de codificación del macrobloque es probable que sea pertinente para el caso de uso final, como una DNN del lado del servidor que intenta contar personas, realizar una estimación del esqueleto del movimiento humano u otras tareas comunes de visión por computadora.

Cuando un cuadro de video llega al sistema, AccMPEG lo procesa inicialmente a través de un modelo selector de calidad económico, titulado Modelo de cuenta. Cualquier área que probablemente no contribuya a los cálculos útiles de un DNN del lado del servidor es esencialmente un lastre y debe marcarse para la codificación con la calidad más baja posible, en contraste con las regiones sobresalientes, que deben enviarse con mejor calidad.

Este proceso presenta tres desafíos: ¿se puede realizar el proceso lo suficientemente rápido como para lograr una latencia aceptable sin usar recursos informáticos locales que consumen energía? ¿Se puede establecer una relación óptima entre frame-rate y calidad? ¿Y se puede entrenar rápidamente un modelo para un DNN individual del lado del servidor?

Logística de formación

Idealmente, un códec de visión por computadora estaría preentrenado en sistemas conectados a los requisitos exactos de una red neuronal específica. El módulo AccGrad, sin embargo, se puede derivar directamente de un DNN con solo dos propagaciones directas, con un ahorro de diez veces la sobrecarga estándar.

AccMPEG entrena a AccGrad durante solo 15 épocas de tres propagaciones cada una a través del DNN final, y potencialmente puede volver a entrenarse "en vivo" usando su estado de modelo actual como plantilla, al menos para tareas de CV con especificaciones similares.

AccModel utiliza el preentrenado MobileNet-SSD extractor de características, común en dispositivos de borde asequibles. Con una rotación de 12 GFLOPS, el modelo utiliza solo un tercio de los enfoques típicos de ResNet18. Además de la normalización y activación por lotes, la arquitectura consta solo de capas convolucionales y su sobrecarga de cómputo es proporcional al tamaño de la trama.

AccGrad elimina la necesidad de una inferencia DNN final, lo que mejora la logística de implementación.

AccGrad elimina la necesidad de una inferencia DNN final, lo que mejora la logística de implementación.

Cuadros por segundo

La arquitectura funciona de manera óptima a 10 fps, lo que la haría adecuada para fines como el monitoreo agrícola, la vigilancia de la degradación de edificios, el análisis de tráfico de alta visibilidad y la inferencia esquelética representativa en el movimiento humano; sin embargo, los escenarios de movimiento muy rápido, como el tráfico de poca visibilidad (de automóviles o personas) y otras situaciones en las que las altas velocidades de fotogramas son beneficiosas, no son adecuadas para este enfoque.

Parte de la economía del método reside en la premisa de que los macrobloques adyacentes probablemente tengan un valor similar, hasta que un macrobloque no alcance la precisión estimada. Las áreas obtenidas con este enfoque están más claramente delimitadas y pueden calcularse con mayor rapidez.

Mejora del rendimiento

Los investigadores probaron el sistema en una placa Jetson Nano de $60 con una única GPU Maxwell de 128 núcleos y varios otros equivalentes económicos. OpenVINO se utilizó para compensar algunos de los requisitos de energía de los DNN locales muy escasos a las CPU.

AccModel en sí se entrenó originalmente sin conexión en un servidor con 8 GPU GeForce RTX 2080S. Si bien se trata de una matriz formidable de potencia informática para la construcción de un modelo inicial, el reentrenamiento ligero que hace posible el sistema y la forma en que un modelo se puede ajustar a ciertos parámetros de tolerancia en diferentes DNN que atacan tareas similares, significa que AccMPEG puede forman parte de un sistema que necesita asistencia mínima en la naturaleza.

 

Publicado por primera vez el 1 de mayo de 2022.

Escritor sobre aprendizaje automático, especialista en síntesis de imágenes humanas. Exdirector de contenido de investigación en Metaphysic.ai.
sitio personal: martinanderson.ai
Contacto: [email protected]
Gorjeo: @manders_ai