APRENDIZAJE PROFUNDO FRENTE A VISIÓN ARTIFICIAL TRADICIONAL

APRENDIZAJE PROFUNDO FRENTE A VISIÓN ARTIFICIAL TRADICIONAL
Resumen. El aprendizaje profundo ha superado los límites de lo que era posible en el dominio del
procesamiento de imágenes digitales. Sin embargo, eso no quiere decir que las técnicas
tradicionales de visión por computadora, que habían experimentado un desarrollo progresivo en los
años anteriores al surgimiento de la DL, se hayan vuelto obsoletas. Este documento analizará los
beneficios y los inconvenientes de cada enfoque. El objetivo de este artículo es promover una
discusión sobre si se debe mantener el conocimiento de las técnicas clásicas de visión por
computadora. El documento también explorará cómo se pueden combinar los dos lados de la visión
por computadora. Se revisan varias metodologías híbridas recientes que han demostrado la
capacidad de mejorar el rendimiento de la visión por computadora y abordar problemas que no se
adaptan al Deep Learning. Por ejemplo, la combinación de técnicas tradicionales de visión por
computadora con Deep Learning ha sido popular en dominios emergentes como Visión panorámica
y visión 3D para los cuales los modelos de Deep Learning aún no se han optimizado por completo.
Keywords: Computer Vision, Deep Learning, Hybrid techniques
1. INTRODUCCIÓN
El aprendizaje profundo (DL) se utiliza en el dominio del procesamiento de imágenes digitales
para resolver problemas difíciles (por ejemplo, coloración, clasificación, segmentación y
detección de imágenes). Los métodos de DL, como las redes neuronales convolucionales (CNN),
mejoran principalmente el rendimiento de la predicción mediante el uso de macrodatos y
abundantes recursos informáticos, y han superado los límites de lo que era posible. Los
problemas que se suponía que no tenían solución se están resolviendo ahora con una precisión
sobrehumana. La clasificación de imágenes es un excelente ejemplo de esto. Desde que fue
reactivada por Krizhevsky, Sutskever y Hinton en 2012 [1], DL ha dominado el dominio desde
entonces debido a un rendimiento sustancialmente mejor en comparación con los métodos
tradicionales.
¿DL está haciendo obsoletas las técnicas tradicionales de visión por computadora (CV)? ¿DL ha
reemplazado la visión por computadora tradicional? ¿Existe todavía la necesidad de estudiar las
técnicas CV tradicionales cuando la DL parece ser tan eficaz? Todas estas son cuestiones que se
han planteado en la comunidad en los últimos años [2] y que este artículo pretende abordar.
Además, DL no va a resolver todos los problemas de CV. Hay algunos problemas en los que las
técnicas tradicionales con características globales son una mejor solución. La llegada de DL
puede abrir muchas puertas para hacer algo con técnicas tradicionales para superar los muchos
desafíos que trae DL (por ejemplo, potencia de cómputo, tiempo, precisión, características y
cantidad de entradas, entre otros).
Este documento proporcionará una comparación del aprendizaje profundo con los enfoques
más tradicionales de definición de características artesanales que dominaron CV antes. Ha
habido tanto progreso en Deep Learning en los últimos años que es imposible que este artículo
capture las muchas facetas y subdominios del Deep Learning que están abordando los
problemas más pertinentes en CV en la actualidad. Este artículo revisará los enfoques
algorítmicos tradicionales en CV, y más particularmente, las aplicaciones en las que se han
utilizado como un sustituto adecuado de la DL, para complementar la DL y para abordar
problemas que la DL no puede
Luego, el artículo pasará a revisar algunas de las actividades recientes en la combinación de DL
con CV, con un enfoque en las técnicas de vanguardia para la tecnología emergente, como la
percepción 3D, a saber, el registro de objetos, la detección de objetos y la segmentación
semántica de Nubes de puntos 3D. Finalmente, se discuten los desarrollos y las posibles
direcciones para lograr que el rendimiento de 3D DL a las mismas alturas que 2D DL se discutan
junto con una perspectiva sobre el impacto que el aumento del uso de 3D tendrá en CV en
general.
2. UNA COMPARACIÓN DEL APRENDIZAJE PROFUNDO Y LA VISIÓN POR COMPUTADORA
TRADICIONAL
2.1 ¿QUÉ ES EL APRENDIZAJE PROFUNDO?
Para obtener una comprensión fundamental de la LD, debemos considerar la diferencia
entre el análisis descriptivo y el análisis predictivo.
El análisis descriptivo implica definir un modelo matemático comprensible que describa
el fenómeno que deseamos observar. Esto implica recopilar datos sobre un proceso,
formular hipótesis sobre patrones en los datos y validar estas hipótesis mediante la
comparación del resultado de los modelos descriptivos que formamos con el resultado
real [3]. Sin embargo, producir tales modelos es precario porque siempre existe el riesgo
de variables no modeladas que los científicos e ingenieros descuidan incluir debido a la
ignorancia o la falta de comprensión de algunos fenómenos complejos, ocultos o no
intuitivos [4].
El análisis predictivo implica el descubrimiento de reglas que subyacen a un fenómeno
y forman un modelo predictivo que minimiza el error entre el resultado real y el
predicho considerando todos los posibles factores de interferencia [3]. El aprendizaje
automático rechaza el paradigma de programación tradicional en el que el análisis de
problemas se reemplaza por un marco de entrenamiento en el que el sistema recibe
una gran cantidad de patrones de entrenamiento (conjuntos de entradas para las que
se conocen los resultados deseados) que aprende y utiliza para calcular nuevos patrones
[5 ].
DL es un subconjunto del aprendizaje automático. DL se basa principalmente en redes
neuronales artificiales (ANN), un paradigma informático inspirado en el funcionamiento
del cerebro humano. Al igual que el cerebro humano, está compuesto por muchas
células informáticas o "neuronas", cada una de las cuales realiza una operación simple
e interactúa entre sí para tomar una decisión [6]. Deep Learning tiene que ver con el
aprendizaje o la "asignación de créditos" a través de muchas capas de una red neuronal
de manera precisa, eficiente y sin supervisión, y es de interés reciente debido a los
avances en el procesamiento de hardware [7]. Se ha demostrado que la
autoorganización y la explotación de interacciones entre unidades pequeñas funcionan
mejor que el control central, especialmente para modelos de procesos complejos no
lineales, ya que se puede lograr una mejor tolerancia a fallos y adaptabilidad a nuevos
datos [7].
2.2 VENTAJAS DEL APRENDIZAJE PROFUNDO
Las rápidas progresiones en DL y las mejoras en las capacidades de los dispositivos,
incluida la potencia informática, la capacidad de memoria, el consumo de energía, la
resolución del sensor de imagen y la óptica, han mejorado el rendimiento y la
rentabilidad de acelerar aún más la difusión de las aplicaciones basadas en la visión. En
comparación con las técnicas tradicionales de CV, DL permite a los ingenieros de CV
lograr una mayor precisión en tareas como clasificación de imágenes, segmentación
semántica, detección de objetos y localización y mapeo simultáneo (SLAM). Dado que
las redes neuronales que se utilizan en DL están entrenadas en lugar de programadas,
las aplicaciones que utilizan este enfoque a menudo requieren un análisis menos
experto y un ajuste fino y explotan la enorme cantidad de datos de video disponibles en
los sistemas actuales. DL también proporciona una flexibilidad superior porque los
modelos y marcos de CNN se pueden volver a entrenar utilizando un conjunto de datos
personalizado para cualquier caso de uso, a diferencia de los algoritmos CV, que tienden
a ser más específicos del dominio.
Tomando como ejemplo el problema de la detección de objetos en un robot móvil,
podemos comparar los dos tipos de algoritmos para la visión por computadora:
El enfoque tradicional es utilizar técnicas de CV bien establecidas, como descriptores de
características (SIFT, SURF, BRIEF, etc.) para la detección de objetos. Antes de la
aparición de DL, se llevó a cabo un paso llamado extracción de características para
tareas como la clasificación de imágenes. Las características son pequeños parches
"interesantes", descriptivos o informativos en imágenes. En este paso pueden intervenir
varios algoritmos de CV, como la detección de bordes, la detección de esquinas o la
segmentación de umbrales. Se extraen tantas características como sea posible de las
imágenes y estas características forman una definición (conocida como bolsa de
palabras) de cada clase de objeto. En la etapa de implementación, estas definiciones se
buscan en otras imágenes. Si una cantidad significativa de características de una bolsa
de palabras están en otra imagen, la imagen se clasifica como que contiene ese objeto
específico (es decir, silla, caballo, etc.).
La dificultad de este enfoque tradicional es que es necesario elegir qué características
son importantes en cada imagen dada. A medida que aumenta el número de clases para
clasificar, la extracción de características se vuelve cada vez más engorrosa. Depende
del juicio del ingeniero de CV y de un largo proceso de prueba y error decidir qué
características describen mejor las diferentes clases de objetos. Además, cada
definición de característica requiere lidiar con una plétora de parámetros, todos los
cuales deben ser ajustados por el ingeniero de CV.
DL introdujo el concepto de aprendizaje de extremo a extremo en el que a la máquina
se le proporciona un conjunto de datos de imágenes que se han anotado con las clases
de objetos que están presentes en cada imagen [7]. Por lo tanto, un modelo DL se
"entrena" con los datos dados, donde las redes neuronales descubren los patrones
subyacentes en clases de imágenes y automáticamente resuelve las características más
descriptivas y destacadas con respecto a cada clase específica de objeto para cada
objeto. Está bien establecido que los DNN funcionan mucho mejor que los algoritmos
tradicionales, aunque con compensaciones con respecto a los requisitos informáticos y
el tiempo de capacitación. Con todos los enfoques de vanguardia en CV que emplean
esta metodología, el flujo de trabajo del ingeniero de CV ha cambiado drásticamente,
donde el conocimiento y la experiencia en la extracción de características hechas a
mano han sido reemplazados por conocimientos y experiencia en iterar a través de
arquitecturas de aprendizaje profundo. como se muestra en la Fig.1.
El desarrollo de las CNN ha tenido una tremenda influencia en el campo de la CV en los
últimos años y es responsable de un gran salto en la capacidad de reconocer objetos
[9]. Esta ráfaga en progreso ha sido posible gracias a un aumento en la potencia
informática, así como a un aumento en la cantidad de datos disponibles para entrenar
redes neuronales. La reciente explosión y la adopción generalizada de varias
arquitecturas de redes neuronales profundas para CV es evidente en el hecho de que el
artículo fundamental Clasificación de ImageNet con redes neuronales convolucionales
profundas ha sido citado más de 3000 veces [2].
Las CNN utilizan núcleos (también conocidos como filtros) para detectar características
(por ejemplo, bordes) en una imagen. Un kernel es solo una matriz de valores, llamados
pesos, que están entrenados para detectar características específicas. Como su nombre
lo indica, la idea principal detrás de las CNN es convolucionar espacialmente el kernel
en una imagen de entrada determinada para verificar si la característica que debe
detectar está presente. Para proporcionar un valor que represente qué tan seguro es
que una característica específica está presente, se lleva a cabo una operación de
convolución calculando el producto escalar del kernel y el área de entrada donde se
superpone el kernel (el área de la imagen original que el kernel está mirando se conoce
como el campo receptivo [10]).
Para facilitar el aprendizaje de los pesos del núcleo, la salida de la capa de convolución
se suma con un término de sesgo y luego se alimenta a una función de activación no
lineal. Las funciones de activación suelen ser funciones no lineales como Sigmoid, TanH
y ReLU (unidad lineal rectificada). Según la naturaleza de los datos y las tareas de
clasificación, estas funciones de activación se seleccionan en consecuencia [11]. Por
ejemplo, se sabe que las ReLU tienen una representación más biológica (las neuronas
en el cerebro se activan o no). Como resultado, produce resultados favorables para las
tareas de reconocimiento de imágenes, ya que es menos susceptible al problema del
gradiente de desaparición y produce representaciones más dispersas y eficientes [7].
Para acelerar el proceso de entrenamiento y reducir la cantidad de memoria consumida
por la red, la capa convolucional suele ir seguida de una capa de agrupación para
eliminar la redundancia presente en la función de entrada. Por ejemplo, la agrupación
máxima mueve una ventana sobre la entrada y simplemente genera el valor máximo en
esa ventana reduciendo efectivamente los píxeles importantes en una imagen [7].
Como se muestra en la Fig. 2, las CNN profundas pueden tener varios pares de capas
convolucionales y agrupadas. Finalmente, una capa completamente conectada aplana
el volumen de la capa anterior en un vector de características y luego una capa de salida
que calcula las puntuaciones (confianza o probabilidades) para las clases /
características de salida a través de una red densa. Esta salida luego se pasa a una
función de regresión como Softmax [12], por ejemplo, que mapea todo en un vector
cuyos elementos suman uno [7].
Pero DL sigue siendo solo una herramienta de CV. Por ejemplo, la red neuronal más
utilizada en CV es la CNN. Pero, ¿qué es una convolución? De hecho, es una técnica de
procesamiento de imágenes ampliamente utilizada (por ejemplo, consulte Detección de
bordes de Sobel). Las ventajas de la DL son claras y estaría más allá del alcance de este
documento revisar el estado de la técnica. Ciertamente, DL tampoco es la panacea para
todos los problemas, como veremos en las siguientes secciones de este documento,
existen problemas y aplicaciones donde los algoritmos CV más convencionales son más
adecuados.
2.3 VENTAJAS DE LAS TÉCNICAS TRADICIONALES DE VISIÓN POR COMPUTADORA
Esta sección detallará cómo se ha demostrado que los enfoques tradicionales basados
en funciones, como los que se enumeran a continuación, son útiles para mejorar el
rendimiento en las tareas de CV:
•
•
•
•
•
Transformación de características invariantes de escala (SIFT) [14]
Funciones robustas aceleradas (SURF) [15]
Funciones de la prueba de segmento acelerada (FAST) [16]
Hough transforma [17]
Hash geométrico [18]
Los descriptores de características como SIFT y SURF generalmente se combinan con
algoritmos tradicionales de clasificación de aprendizaje automático como Support
Vector Machines y KNearest Neighbors para resolver los problemas de CV antes
mencionados.
DL es a veces excesivo ya que a menudo las técnicas tradicionales de CV pueden resolver
un problema de manera mucho más eficiente y en menos líneas de código que DL. Los
algoritmos como SIFT e incluso los algoritmos simples de recuento de píxeles y umbrales
de color no son específicos de una clase, es decir, son muy generales y funcionan de la
misma manera para cualquier imagen. Por el contrario, las características aprendidas
de una red neuronal profunda son específicas de su conjunto de datos de
entrenamiento que, si no está bien construido, probablemente no funcionará bien para
imágenes diferentes del conjunto de entrenamiento. Por lo tanto, SIFT y otros
algoritmos se utilizan a menudo para aplicaciones como costura de imágenes /
reconstrucción de malla 3D que no requieren conocimientos de clase específicos. Se ha
demostrado que estas tareas se pueden lograr mediante el entrenamiento de grandes
conjuntos de datos, sin embargo, esto requiere un gran esfuerzo de investigación y no
es práctico realizar este esfuerzo para una aplicación cerrada. Es necesario practicar el
sentido común a la hora de elegir qué ruta tomar para una solicitud de CV determinada.
Por ejemplo, para clasificar dos clases de productos en una cinta transportadora de línea
de montaje, una con pintura roja y otra con pintura azul. Una red neuronal profunda
funcionará dado que se pueden recopilar suficientes datos para entrenar. Sin embargo,
se puede lograr lo mismo mediante el uso de un umbral de color simple. Algunos
problemas se pueden abordar con técnicas más sencillas y rápidas.
¿Qué pasa si un DNN tiene un rendimiento deficiente fuera de los datos de
entrenamiento? Si el conjunto de datos de entrenamiento es limitado, entonces la
máquina puede sobreajustarse a los datos de entrenamiento y no ser capaz de
generalizar para la tarea en cuestión. Sería demasiado difícil ajustar manualmente los
parámetros del modelo porque un DNN tiene millones de parámetros dentro de él, cada
uno con complejas interrelaciones. De esta forma, los modelos DL han sido criticados
por ser una caja negra de esta forma [5]. El CV tradicional tiene total transparencia y
uno puede juzgar si su solución funcionará fuera de un entorno de formación. El
ingeniero de CV puede tener información sobre un problema que puede transferir a su
algoritmo y, si algo falla, los parámetros se pueden ajustar para que funcionen bien para
una gama más amplia de imágenes.
Hoy en día, las técnicas tradicionales se utilizan cuando el problema se puede simplificar
para que se puedan implementar en microcontroladores de bajo costo o para limitar el
problema de las técnicas de aprendizaje profundo al resaltar ciertas características en
los datos, aumentar los datos [19] o ayudar en la anotación del conjunto de datos [ 20].
Más adelante en este artículo analizaremos cuántas técnicas de transformación de
imágenes se pueden utilizar para mejorar el entrenamiento de su red neuronal.
Finalmente, hay muchos problemas más desafiantes en CV como: robótica [21], realidad
aumentada [22], unión automática de panorámicas [23], realidad virtual [24], modelado
3D [24], estimación de movimiento [24], video estabilización [21], captura de
movimiento [24], procesamiento de video [21] y comprensión de escenas [25] que no
pueden implementarse fácilmente de manera diferenciable con aprendizaje profundo,
pero se benefician de soluciones que utilizan técnicas "tradicionales".
3. DESAFÍOS PARA LA VISIÓN ARTIFICIAL TRADICIONAL
3.1 MEZCLA DE ENFOQUES HECHOS A MANO CON DL PARA UN MEJOR RENDIMIENTO
Existen claras compensaciones entre el CV tradicional y los enfoques basados en el
aprendizaje profundo. Los algoritmos CV clásicos están bien establecidos, son
transparentes y optimizados para el rendimiento y la eficiencia energética, mientras
que DL ofrece una mayor precisión y versatilidad a costa de grandes cantidades de
recursos informáticos.
Los enfoques híbridos combinan el CV tradicional y el aprendizaje profundo y ofrecen
las ventajas de ambas metodologías. Son especialmente prácticos en sistemas de alto
rendimiento que deben implementarse rápidamente. Por ejemplo, en una cámara de
seguridad, un algoritmo CV puede detectar eficazmente rostros u otras características
[26] u objetos en movimiento [27] en la escena. Estas detecciones luego se pueden
pasar a un DNN para verificación de identidad o clasificación de objetos. El DNN solo
necesita aplicarse en un pequeño parche de la imagen, lo que ahorra importantes
recursos informáticos y esfuerzo de capacitación en comparación con lo que se
requeriría para procesar todo el cuadro.
La fusión de métricas de Machine Learning y Deep Network se ha vuelto muy popular,
por el simple hecho de que puede generar mejores modelos. Las implementaciones de
procesamiento de visión híbrida pueden introducir ventajas en el rendimiento y
"pueden ofrecer una reducción de 130X-1,000X en operaciones de acumulación
múltiple y una mejora de aproximadamente 10X en las velocidades de fotogramas en
comparación con una solución DL pura. Además, la implementación híbrida utiliza
aproximadamente la mitad del ancho de banda de la memoria y requiere recursos de
CPU significativamente menores ”[28].
3.2 SUPERAR LOS DESAFÍOS DEL APRENDIZAJE PROFUNDO
También hay desafíos introducidos por DL. Los últimos enfoques de DL pueden lograr
una precisión sustancialmente mejor; sin embargo, este salto tiene el costo de miles de
millones de operaciones matemáticas adicionales y un mayor requisito de potencia de
procesamiento. DL requiere estos recursos informáticos para la formación y, en menor
medida, para la inferencia. Es esencial tener hardware dedicado (por ejemplo, GPU de
alta potencia [29] y TPU [30] para entrenamiento y plataformas aceleradas por IA como
VPU para inferencia [31]) para desarrolladores de IA.
Los resultados del procesamiento de la visión con DL también dependen de la resolución
de la imagen. Lograr un rendimiento adecuado en la clasificación de objetos, por
ejemplo, requiere imágenes o videos de alta resolución, con el consiguiente aumento
en la cantidad de datos que deben procesarse, almacenarse y transferirse. La resolución
de la imagen es especialmente importante para aplicaciones en las que es necesario
detectar y clasificar objetos a distancia, p. Ej. en imágenes de cámaras de seguridad. Las
técnicas de reducción de fotogramas discutidas anteriormente, como el uso de
funciones SIFT [26, 32] o el flujo óptico para objetos en movimiento [27] para identificar
primero una región de interés, son útiles con respecto a la resolución de la imagen y
también con respecto a la reducción del tiempo y los datos requeridos. para
entrenamiento.
DL necesita big data. A menudo se requieren millones de registros de datos. Por
ejemplo, PASCAL VOC Dataset consta de 500K imágenes con 20 categorías de objetos
[26] [33], ImageNet consta de 1,5 millones de imágenes con 1000 categorías de objetos
[34] y Microsoft Common Objects in Context (COCO) consta de 2,5 millones de imágenes
con 91 categorías de objetos [35]. Cuando no se dispone de grandes conjuntos de datos
o instalaciones de alta computación, entran en juego los métodos tradicionales.
Entrenar a un DNN lleva mucho tiempo. Dependiendo de la disponibilidad del hardware
informático, la capacitación puede llevar horas o días. Además, el entrenamiento para
cualquier aplicación dada a menudo requiere muchas iteraciones, ya que implica prueba
y error con diferentes parámetros de entrenamiento. La técnica más común para
reducir el tiempo de formación es el aprendizaje por transferencia [36]. Con respecto al
CV tradicional, la transformada discreta de Fourier es otra técnica de CV que alguna vez
experimentó una gran popularidad, pero que ahora parece poco conocida. El algoritmo
se puede utilizar para acelerar las convoluciones como lo demuestra [37, 38] y, por lo
tanto, puede volver a ser de gran importancia.
Sin embargo, hay que decir que las tareas más sencillas y específicas del dominio que la
clasificación general de imágenes no requerirán tantos datos (del orden de cientos o
miles en lugar de millones). Esta sigue siendo una cantidad considerable de datos y las
técnicas de CV se utilizan a menudo para impulsar los datos de entrenamiento a través
del aumento de datos o reducir los datos a un tipo particular de característica a través
de otros pasos de preprocesamiento.
El preprocesamiento implica transformar los datos (generalmente con técnicas
tradicionales de CV) para permitir que las relaciones / patrones se interpreten más
fácilmente antes de entrenar su modelo. El aumento de datos es una tarea común de
preprocesamiento que se utiliza cuando hay datos de entrenamiento limitados. Puede
implicar realizar rotaciones aleatorias, cambios, cizallas, etc. en las imágenes de su
conjunto de entrenamiento para aumentar de manera efectiva el número de imágenes
de entrenamiento [19]. Otro enfoque es resaltar las características de interés antes de
pasar los datos a una CNN con métodos basados en CV, como la sustracción de fondo y
la segmentación [39].
3.3 APROVECHAR AL MÁXIMO LA INFORMÁTICA PERIMETRAL
Si los algoritmos y las inferencias de redes neuronales se pueden ejecutar en el borde,
la latencia, los costos, los requisitos de procesamiento y almacenamiento en la nube y
los requisitos de ancho de banda se reducen en comparación con las implementaciones
basadas en la nube. La informática de borde también puede cumplir con los requisitos
de privacidad y seguridad al evitar la transmisión de datos sensibles o identificables a
través de la red.
Los enfoques híbridos o compuestos que involucran CV y DL convencionales aprovechan
en gran medida las capacidades de computación heterogéneas disponibles en el borde.
Una arquitectura de cómputo heterogénea consta de una combinación de CPU,
coprocesadores de microcontroladores, procesadores de señales digitales (DSP),
matrices de puertas programables de campo (FPGA) y dispositivos de aceleración de IA
[31] y puede ser energéticamente eficiente al asignar diferentes cargas de trabajo al
motor de cómputo más eficiente. Las implementaciones de prueba muestran
reducciones de latencia 10x en la detección de objetos cuando se ejecutan inferencias
de DL en un DSP frente a una CPU [28].
Varios híbridos de aprendizaje profundo y enfoques basados en características hechas
a mano han demostrado sus beneficios en aplicaciones de borde. Por ejemplo, para el
reconocimiento de expresiones faciales, [41] proponen una nueva pérdida de
características para incrustar la información de las características hechas a mano en el
proceso de entrenamiento de la red, que intenta reducir la diferencia entre las
características hechas a mano y las características aprendidas por los profundos. red
neuronal. También se ha demostrado que el uso de enfoques híbridos es ventajoso para
incorporar datos de otros sensores en los nodos de borde. Un modelo híbrido de este
tipo en el que el aprendizaje profundo es asistido por fuentes de sensores adicionales
como imágenes de radar de apertura sintética (SAR) y elevación como imágenes de
radar de apertura sintética (SAR) y elevación se presenta en [40]. En el contexto de la
visión de robot 3D, [42] han demostrado que la combinación de métodos subespaciales
lineales y predicción convolucional profunda logra un rendimiento mejorado junto con
un rendimiento en tiempo de ejecución varios órdenes de magnitud más rápido en
comparación con el estado de la técnica.
3.4 PROBLEMAS NO ADECUADOS PARA EL APRENDIZAJE PROFUNDO
Hay muchos más problemas cambiantes en CV, tales como: robótica, realidad
aumentada, unión automática de panoramas, realidad virtual, modelado 3D,
estabilización de movimiento, estabilización de video, captura de movimiento,
procesamiento de video y comprensión de escenas que no se pueden implementar
fácilmente de una manera diferenciable. con aprendizaje profundo, pero deben
resolverse utilizando las otras técnicas "tradicionales".
DL sobresale en la resolución de problemas de clasificación cerrados, en los que se debe
mapear una amplia gama de señales potenciales en un número limitado de categorías,
dado que hay suficientes datos disponibles y el conjunto de prueba se parece mucho al
conjunto de entrenamiento. Sin embargo, las desviaciones de estos supuestos pueden
causar problemas y es fundamental reconocer los problemas en los que DL no es bueno.
Marcus y col. presentan diez preocupaciones sobre el aprendizaje profundo y sugieren
que el aprendizaje profundo debe complementarse con otras técnicas si queremos
alcanzar la inteligencia artificial general [43]. Además de discutir las limitaciones del
procedimiento de entrenamiento y los requisitos intensos de computación y datos
como lo hacemos en nuestro artículo, la clave para su discusión es identificar problemas
en los que la DL se desempeña mal y donde se puede complementar con otras técnicas.
Uno de esos problemas es la capacidad limitada de los algoritmos de DL para aprender
relaciones visuales, es decir, identificar si varios objetos en una imagen son iguales o
diferentes. Esta limitación ha sido demostrada por [43] quienes argumentan que los
mecanismos de retroalimentación que incluyen la atención y el agrupamiento
perceptivo pueden ser los componentes computacionales clave para realizar el
razonamiento visual abstracto.
También vale la pena señalar que los modelos ML tienen dificultades para lidiar con los
antecedentes, es decir, no todo se puede aprender de los datos, por lo que se deben
inyectar algunos antecedentes en los modelos [44], [45]. Las soluciones que tienen que
ver con CV 3D necesitan antecedentes sólidos para funcionar bien, p. Ej. El modelado
3D basado en imágenes requiere información sobre suavidad, silueta e iluminación [46].
A continuación, se muestran algunos campos emergentes en CV donde DL se enfrenta
a nuevos desafíos y donde el CV clásico tendrá un papel más destacado.
3.5 VISIÓN 3D
Los sistemas de visión 3D son cada vez más accesibles y, como tal, ha habido muchos
avances en el diseño de redes neuronales convolucionales 3D (CNN 3D). Este campo
emergente se conoce como Aprendizaje Profundo Geométrico y tiene múltiples
aplicaciones como clasificación de video, gráficos por computadora, visión y robótica.
Este documento se centrará en 3DCNN para procesar datos de 3D Vision Systems.
Donde las capas convolucionales 2D el núcleo tiene la misma profundidad para generar
una matriz 2D, la profundidad de un núcleo convolucional 3D debe ser menor que la del
volumen de entrada 3D para que la salida de la convolución también sea 3D y así
preservar el espacio. información.
El tamaño de la entrada es mucho mayor en términos de memoria que las imágenes
RGB convencionales y el núcleo también debe convolucionarse a través del espacio de
entrada en 3 dimensiones (ver Fig. 3). Como resultado, la complejidad computacional
de las CNN 3D crece cúbicamente con la resolución. En comparación con el
procesamiento de imágenes en 2D, el CV en 3D se hace aún más difícil ya que la
dimensión adicional introduce más incertidumbres, como oclusiones y diferentes
ángulos de cámara, como se muestra en la Fig.4.
Los métodos basados en FFT pueden optimizar las CNN 3D y reducir la cantidad de
cálculo, sin embargo, a costa de mayores requisitos de memoria. Investigaciones
recientes han visto cómo la implementación del algoritmo de filtrado mínimo de
Winograd (WMFA) logra una aceleración doble en comparación con cuDNN (lenguaje /
API de NVIDIA para programar en sus tarjetas gráficas) sin aumentar la memoria
requerida [49]. La siguiente sección incluirá algunas soluciones con arquitecturas
novedosas y pasos de preprocesamiento para diversas representaciones de datos 3D
que se han propuesto para superar estos desafíos.
El aprendizaje profundo geométrico (GDL) se ocupa de la extensión de las técnicas de
DL a datos 3D. Los datos 3D se pueden representar en una variedad de formas
diferentes que se pueden clasificar como euclidianas o no euclidianas [50]. Los datos
estructurados euclidianos 3D tienen una estructura de cuadrícula subyacente que
permite una parametrización global y tienen un sistema común de coordenadas como
en Imágenes 2D. Esto permite que los paradigmas 2D DL existentes y 2DCNN se puedan
aplicar a datos 3D. Los datos euclidianos 3D son más adecuados para analizar objetos
rígidos simples como sillas, aviones, etc. con enfoques basados en vóxeles [51]. Por otro
lado, los datos 3D no euclidianos no tienen la estructura de matriz cuadriculada donde
no hay parametrización global. Por lo tanto, extender las técnicas clásicas de DL a tales
representaciones es una tarea desafiante y solo recientemente se ha realizado con
arquitecturas como Pointnet [52].
La información de forma continua que es útil para el reconocimiento a menudo se
pierde en su conversión a una representación de vóxel. Con respecto a los algoritmos
CV tradicionales, [53] proponen una característica unidimensional que se puede aplicar
a las CNN de vóxeles. Se propuso una nueva característica invariante de rotación basada
en la curvatura media que mejora el reconocimiento de formas para las CNN de vóxeles.
El método fue muy exitoso, ya que cuando se aplicó a la arquitectura reciente de vóxeles
CNN Octnet de última generación, se logró un aumento de precisión general del 1% en
el conjunto de datos ModelNet10.
3.6 SLAM
Visual SLAM es un subconjunto de SLAM donde se utiliza un sistema de visión en lugar
de LiDAR para el registro de puntos de referencia en una escena. Visual SLAM tiene las
ventajas de la fotogrametría (datos visuales ricos, bajo costo, peso ligero y bajo
consumo de energía) sin la pesada carga de trabajo computacional asociada que implica
el posprocesamiento. El problema del SLAM visual consiste en pasos como la detección
del entorno, la correspondencia de datos, la estimación del movimiento, así como la
actualización de la ubicación y el registro de nuevos puntos de referencia [54].
La construcción de un modelo de cómo aparecen los objetos visuales en diferentes
condiciones, como la rotación 3D, el escalado, la iluminación y la extensión de esa
representación utilizando una forma sólida de aprendizaje de transferencia para lograr
el aprendizaje de cero o una sola vez, es un problema desafiante en este dominio. Los
métodos de extracción de características y representación de datos pueden ser útiles
para reducir la cantidad de ejemplos de entrenamiento necesarios para un modelo ML
[55].
Un enfoque de dos pasos se usa comúnmente en la localización basada en imágenes;
reconocimiento de lugar seguido de estimación de pose. El primero calcula un
descriptor global para cada una de las imágenes agregando descriptores de imágenes
locales, p. SIFT, utilizando el enfoque de bolsa de palabras. Cada descriptor global se
almacena en la base de datos junto con la pose de cámara de su imagen asociada con
respecto al mapa de referencia de nube de puntos 3D. Se extraen descriptores globales
similares de la imagen de la consulta y el descriptor global más cercano en la base de
datos se puede recuperar mediante una búsqueda eficiente. La pose de cámara del
descriptor global más cercano nos daría una localización aproximada de la imagen de la
consulta con respecto al mapa de referencia. En la estimación de pose, la pose exacta
de la imagen de la consulta se calcula con mayor precisión con algoritmos como
Perspective-n-Point (PnP) [13] y algoritmos de verificación geométrica [18]. [56]
El éxito del reconocimiento de lugares basado en imágenes se atribuye en gran medida
a la capacidad de extraer descriptores de características de la imagen.
Desafortunadamente, no existe un algoritmo para extraer características locales
similares a SIFT para escaneos LiDAR. Una escena 3D se compone de puntos 3D e
imágenes de base de datos. Un enfoque ha asociado cada punto 3D a un conjunto de
descriptores SIFT correspondientes a las características de la imagen a partir de las
cuales se trianguló el punto. Luego, estos descriptores se pueden promediar en un solo
descriptor SIFT que describe la apariencia de ese punto [57].
Otro enfoque construye características multimodales a partir de datos RGB-D en lugar
del procesamiento en profundidad. Para la parte de procesamiento en profundidad,
adoptan el conocido método de coloración basado en normales de superficie, ya que se
ha demostrado que es eficaz y robusto en todas las tareas [58]. Otro enfoque alternativo
que utiliza técnicas CV tradicionales presenta Force Histogram Decomposition (FHD), un
descriptor jerárquico basado en gráficos que permite caracterizar las relaciones
espaciales y la información de forma entre las subpartes estructurales por pares de los
objetos. Una ventaja de este procedimiento de aprendizaje es su compatibilidad con los
marcos tradicionales de bolsas de características, lo que permite representaciones
híbridas que reúnen características estructurales y locales [59].
3.7 360 CÁMARAS
Una cámara 360, también conocida como cámara omnidireccional o esférica o
panorámica es una cámara con un campo de visión de 360 grados en el plano horizontal,
o con un campo visual que cubre (aproximadamente) toda la esfera. Las cámaras
omnidireccionales son importantes en aplicaciones como la robótica donde se necesita
una gran cobertura de campo visual. Una cámara 360 puede reemplazar múltiples
cámaras monoculares y eliminar los puntos ciegos que obviamente son ventajosos en
vehículos terrestres no tripulados (UGV) omnidireccionales y vehículos aéreos no
tripulados (UAV). Gracias a la característica de imagen de las cámaras esféricas, cada
imagen captura el panorama de 360◦ de la escena, eliminando la limitación en las
opciones de dirección disponibles. Uno de los principales desafíos con las imágenes
esféricas es la gran distorsión del barril debido a la lente de ojo de pez ultra gran angular,
que complica la implementación de métodos convencionales inspirados en la visión
humana, como la detección de carriles y el seguimiento de trayectorias. A menudo se
requieren pasos adicionales de procesamiento previo, como la calibración previa y la
desparasitación. Un enfoque alternativo que ha sido presentado por [60], que elude
estos pasos de preprocesamiento al formular la navegación como un problema de
clasificación para encontrar la orientación de la ruta potencial óptima directamente
basada en las imágenes esféricas sin calibrar y sin procesar.
La costura panorámica es otro problema de investigación abierto en esta área. Una
metodología de costura en tiempo real [61] utiliza un grupo de mallas deformables y la
imagen final y combina las entradas utilizando un robusto sombreador de píxeles. Otro
enfoque [62], combina la precisión proporcionada por el razonamiento geométrico
(líneas y puntos de fuga) con el mayor nivel de abstracción de datos y reconocimiento
de patrones logrado por las técnicas DL (mapas de bordes y normales) para extraer
hipótesis estructurales y de diseño para escenas interiores. En escenas escasamente
estructuradas, los métodos de alineación de imágenes basados en características a
menudo fallan debido a la escasez de características de imagen distintas. En su lugar, se
pueden aplicar métodos de alineación de imagen directa, como los basados en la
correlación de fase. [23] han investigado las técnicas de alineación de imágenes basadas
en correlación basadas en filtros de correlación discriminativa (DCF) y muestran que los
métodos basados en DCF propuestos superan los enfoques basados en correlación de
fase en estos conjuntos de datos.
3.8 ANOTACIÓN Y AUMENTO DE CONJUNTOS DE DATOS
Hay argumentos en contra de la combinación de CV y DL y se resumen en la conclusión
de que necesitamos reevaluar nuestros métodos desde los basados en reglas hasta los
basados en datos. Tradicionalmente, desde la perspectiva del procesamiento de
señales, conocemos las connotaciones operativas de los algoritmos CV como los
métodos SIFT y SURF, pero DL no lleva ese significado a ninguna parte, todo lo que
necesita son más datos. Esto puede verse como un gran paso adelante, pero también
puede ser un retroceso. Algunos de los pros y los contras de cada lado de este debate
ya se han discutido en este documento; sin embargo, si los métodos futuros deben
basarse exclusivamente en datos, entonces se debe centrar la atención en métodos más
inteligentes para la creación de conjuntos de datos.
El problema fundamental de la investigación actual es que ya no hay datos suficientes
para algoritmos avanzados o modelos para aplicaciones especiales. La combinación de
conjuntos de datos personalizados y modelos DL será el tema futuro de muchos
artículos de investigación. Los resultados de muchos investigadores consisten no solo
en algoritmos o arquitecturas, sino también en conjuntos de datos o métodos para
acumular datos. La anotación del conjunto de datos es un cuello de botella importante
en el flujo de trabajo de DL que requiere muchas horas de etiquetado manual. En
ninguna parte esto es más problemático que en las aplicaciones de segmentación
semántica donde cada píxel debe anotarse con precisión. Hay muchas herramientas
útiles disponibles para semiautomatizar el proceso según lo revisado por [20], muchas
de las cuales aprovechan enfoques algorítmicos como las características ORB [55], la
transformación de polígonos [63], el área de interés semiautomática (AOI) montaje [55]
y todo lo anterior [63].
El método más fácil y común para superar los conjuntos de datos limitados y reducir el
sobreajuste de los modelos de aprendizaje profundo para la clasificación de imágenes
es ampliar artificialmente el conjunto de datos mediante transformaciones que
preservan la etiqueta. Este proceso se conoce como aumento de conjunto de datos e
implica la generación artificial de datos de entrenamiento adicionales a partir de los
disponibles, por ejemplo, recortando, escalando o rotando imágenes [64]. Es deseable
que los procedimientos de aumento de datos requieran muy pocos cálculos y se puedan
implementar dentro de la línea de entrenamiento de DL para que las imágenes
transformadas no necesiten ser almacenadas en el disco. Los enfoques algorítmicos
tradicionales que se han empleado para el aumento de conjuntos de datos incluyen el
análisis de componentes principales (PCA) [1], la adición de ruido, la interpolación o
extrapolación entre muestras en un espacio de características [65] y el modelado del
contexto visual que rodea a los objetos a partir de anotaciones de segmentación [66].
CONCLUSIÓN
Muchas de las técnicas de CV inventadas en los últimos 20 años se han vuelto irrelevantes en los
últimos años debido a la DL. Sin embargo, el conocimiento nunca queda obsoleto y siempre hay algo
que vale la pena aprender de cada generación de innovación. Ese conocimiento puede brindarle
más intuiciones y herramientas para usar, especialmente cuando desee lidiar con problemas de CV
en 3D, por ejemplo. Conocer solo DL para CV limitará drásticamente el tipo de soluciones en el
arsenal de un ingeniero de CV.
En este artículo hemos expuesto muchos argumentos sobre por qué las técnicas tradicionales de CV
siguen siendo muy útiles incluso en la era de la DL. Hemos comparado y contrastado CV y DL
tradicionales para aplicaciones típicas y discutimos cómo a veces CV tradicional puede considerarse
como una alternativa en situaciones en las que DL es excesivo para una tarea específica.
El documento también destacó algunas áreas en las que las técnicas tradicionales de CV siguen
siendo relevantes, como su utilización en enfoques híbridos para mejorar el rendimiento. Las
innovaciones de DL están impulsando avances emocionantes para IoT (Internet of Things), así como
técnicas híbridas que combinan las tecnologías con algoritmos tradicionales. Además, revisamos
cómo las técnicas tradicionales de CV pueden realmente mejorar el rendimiento de la DL en una
amplia gama de aplicaciones, desde la reducción del tiempo de formación, el procesamiento y los
requisitos de datos hasta su aplicación en campos emergentes como SLAM, puntadas panorámicas,
aprendizaje profundo geométrico y visión 3D donde la DL no existe. pero bien establecido.
El dominio del procesamiento de imágenes digitales ha experimentado algunos cambios muy
dramáticos recientemente y en un período muy corto. Tanto es así que nos ha llevado a
cuestionarnos si las técnicas de CV que estaban de moda antes de la explosión de la IA siguen siendo
relevantes. Es de esperar que este documento destaque algunos casos en los que las técnicas
tradicionales de CV son útiles y que todavía hay algo que ganar con los años de esfuerzo dedicados
a su desarrollo, incluso en la era de la inteligencia basada en datos.