
En visión artificial , un mapa de prominencia es una imagen que resalta la región en la que los ojos de las personas se fijan primero o las regiones más relevantes para los modelos de aprendizaje automático . [ 1 ] El objetivo de un mapa de prominencia es reflejar el grado de importancia de un píxel para el sistema visual humano o para un modelo de aprendizaje automático que de otro modo sería opaco.
Por ejemplo, en esta imagen, una persona mira primero el fuerte y las nubes claras, por lo que deberían destacarse en el mapa de prominencia.
Solicitud
Descripción general
Los mapas de prominencia tienen aplicaciones en una variedad de problemas diferentes. Algunas aplicaciones generales:
ojo humano
- Compresión de imágenes y vídeo : El ojo humano se centra únicamente en una pequeña región de interés dentro del fotograma. Por lo tanto, no es necesario comprimir todo el fotograma con una calidad uniforme. Según los autores, el uso de un mapa de prominencia reduce el tamaño final del vídeo manteniendo la misma percepción visual. [ 2 ]
- Evaluación de la calidad de imagen y vídeo : La tarea principal de una métrica de calidad de imagen o vídeo es una alta correlación con las opiniones de los usuarios. Se da mayor importancia a las diferencias en las regiones más relevantes y, por lo tanto, contribuyen más a la puntuación de calidad. [ 3 ]
- Redireccionamiento de imágenes : Su objetivo es redimensionar una imagen expandiendo o reduciendo las regiones no informativas. Por lo tanto, los algoritmos de redireccionamiento dependen de la disponibilidad de mapas de prominencia que estiman con precisión todos los detalles relevantes de la imagen. [ 4 ]
- Detección y reconocimiento de objetos : En lugar de aplicar un algoritmo computacionalmente complejo a toda la imagen, podemos usarlo en las regiones más prominentes de una imagen que tengan más probabilidades de contener un objeto. [ 5 ]
- La corteza visual primaria (V1) parece ser responsable del mapa de prominencia, según la hipótesis de prominencia de V1 [ 6 ] .
Inteligencia artificial explicable
Los mapas de prominencia son una herramienta destacada en la inteligencia artificial explicable , [ 7 ] proporcionando explicaciones visuales del proceso de toma de decisiones de los modelos de aprendizaje automático , en particular las redes neuronales profundas . Estos mapas resaltan las regiones en los datos de entrada que son más influyentes en la salida del modelo, indicando efectivamente dónde está "mirando" el modelo al hacer una predicción. En tareas de clasificación de imágenes, por ejemplo, los mapas de prominencia pueden identificar píxeles o regiones que contribuyen más a una decisión de clase específica. Desarrolladas para redes neuronales convolucionales , las técnicas de mapeo de prominencia abarcan desde simplemente tomar el gradiente de la puntuación de clase con respecto a los datos de entrada hasta algoritmos más complejos, como gradientes integrados [ 8 ] y mapeo de activación de clase . [ 7 ] En la arquitectura Transformer , los mecanismos de atención dieron lugar a mapas de prominencia análogos, como mapas de atención, [ 9 ] despliegues de atención, [ 10 ] y mapas de atención discriminativos de clase. [ 11 ]
La prominencia como problema de segmentación
La estimación de prominencia puede considerarse un ejemplo de segmentación de imágenes . En visión artificial , la segmentación de imágenes es el proceso de dividir una imagen digital en múltiples segmentos (conjuntos de píxeles, también conocidos como superpíxeles ). El objetivo de la segmentación es simplificar o modificar la representación de una imagen para que sea más significativa y fácil de analizar. La segmentación de imágenes se utiliza habitualmente para localizar objetos y contornos (líneas, curvas, etc.) en las imágenes. Más precisamente, la segmentación de imágenes consiste en asignar una etiqueta a cada píxel de una imagen, de modo que los píxeles con la misma etiqueta compartan ciertas características. [ 12 ]
Algoritmos
Descripción general
En OpenCV se implementan tres formas de algoritmos clásicos de estimación de prominencia :
- Relevancia estática: Se basa en las características y estadísticas de la imagen para localizar las regiones de interés de la misma.
- Relevancia del movimiento: Se basa en el movimiento en un video, detectado mediante el flujo óptico . Los objetos que se mueven se consideran relevantes.
- Detección de objetos: La detección de objetos refleja la probabilidad de que una ventana de imagen cubra un objeto. Estos algoritmos generan un conjunto de cuadros delimitadores que indican dónde podría ubicarse un objeto en una imagen.
Además de los enfoques clásicos, los basados en redes neuronales también son populares. Existen ejemplos de redes neuronales para la estimación de la prominencia del movimiento:
- TASED-Net : Consta de dos bloques básicos. Primero, la red codificadora extrae características espaciotemporales de baja resolución, y luego la red de predicción subsiguiente decodifica las características codificadas espacialmente mientras agrega toda la información temporal.
- STRA-Net : Hace hincapié en dos cuestiones esenciales. Primero, las características espaciotemporales integradas mediante el acoplamiento de la apariencia y el flujo óptico , y luego la prominencia multiescala aprendida mediante un mecanismo de atención .
- STAViS : Combina información visual y auditiva espaciotemporal. Este enfoque emplea una única red neuronal que aprende a localizar fuentes sonoras y a fusionar las dos características para obtener un mapa de relevancia final.
Existe una nueva saliencia estática en la literatura denominada sensibilidad a la distorsión visual. [ 13 ] Se basa en la idea de que los bordes reales, es decir, los contornos de los objetos, son más prominentes que otras regiones con texturas complejas. Detecta los bordes de una manera diferente a los algoritmos clásicos de detección de bordes . Utiliza un umbral bastante pequeño para las magnitudes del gradiente para considerar la mera presencia de los gradientes. Así, obtiene 4 mapas binarios para las direcciones vertical, horizontal y dos diagonales. Se aplican operaciones morfológicas de cierre y apertura a las imágenes binarias para cerrar los pequeños huecos. Para eliminar las formas similares a manchas, utiliza la transformada de distancia . Después de todo, los grupos de píxeles conectados son bordes (o contornos) individuales. Se utiliza un umbral del tamaño del conjunto de píxeles conectados para determinar si un bloque de imagen contiene un borde perceptible (región prominente) o no.
Ejemplo de implementación
Primero, debemos calcular la distancia de cada píxel al resto de píxeles en el mismo fotograma:
es el valor del píxel, en el rango de [0,255]. La siguiente ecuación es la forma expandida de esta ecuación.
- SALS( I k ) = | I k - I 1 | + | I k - I 2 | + ... + | I k - I N |
Donde N es el número total de píxeles en el fotograma actual. Entonces podemos reestructurar aún más nuestra fórmula. Agrupamos los valores que tienen la misma I.
- SALS( I k ) = Σ F n × | I k - I n |
Donde F n es la frecuencia de I n . Y el valor de n pertenece a [0,255]. Las frecuencias se expresan en forma de histograma , y el tiempo de cálculo del histograma es complejidad temporal .
complejidad temporal
Este algoritmo de mapa de prominencia tiene Complejidad temporal . Dado que el tiempo de cálculo del histograma esComplejidad temporal donde N es el número de píxeles de un fotograma. Además, la parte de resta y la parte de multiplicación de esta ecuación requieren 256 operaciones. En consecuencia, la complejidad temporal de este algoritmo eslo cual es igual a.
Pseudocódigo
Todo el código que sigue es pseudocódigo de MATLAB . Primero, lee los datos de las secuencias de vídeo.
para k = 2 : 1 : 13 % lo que significa del fotograma 2 al 13, y en cada bucle el valor de K aumenta uno. I = imread ( currentfilename ); % lee el fotograma actual I1 = im2single ( I ); % convierte la imagen doble en simple (requisito del comando vlslic) l = imread ( previousfilename ); % lee el fotograma anterior I2 = im2single ( l ); regionSize = 10 ; % establece el parámetro de SLIC esta configuración de parámetros son el resultado experimental. RegionSize significa el tamaño del superpíxel. regularizer = 1 ; % establece el parámetro de SLIC segments1 = vl_slic ( I1 , regionSize , regularizer ); % obtiene el superpíxel del fotograma actual segments2 = vl_slic ( I2 , regionSize , regularizer ); % obtiene el superpíxel del fotograma anterior numsuppix = max ( segments1 (:)); % Obtener el número de superpíxeles. Toda la información sobre superpíxeles se encuentra en este enlace [http://www.vlfeat.org/overview/slic.html] regstats1 = regionprops ( segments1 , ' all ' ); regstats2 = regionprops ( segments2 , ' all ' ); % Obtener la característica de la región basada en segments1Después de leer los datos, realizamos un proceso de superpíxeles en cada fotograma. Spnum1 y Spnum2 representan el número de píxel del fotograma actual y del píxel anterior.
% Primero, calculamos la distancia del valor de cada píxel. % Este es nuestro código principal para i = 1 : 1 : spnum1 % Desde el primer píxel hasta el último. Y en cada bucle i++ para j = 1 : 1 : spnum2 % Desde el primer píxel hasta el último. j++. fotograma anterior centredist ( i : j ) = suma (( centro ( i ) - centro ( j ))); % calcular la distancia del centro fin finLuego calculamos la distancia de color de cada píxel; a este proceso lo llamamos función de contracción.
para i = 1 : 1 : spnum1 % Desde el primer píxel del fotograma actual hasta el último píxel. I ++ para j = 1 : 1 : spnum2 % Desde el primer píxel del fotograma anterior hasta el último píxel. J++ posdiff ( i , j ) = sum (( regstats1 ( j ). Centroid ' - mupwtd (:, i ))); % Calcular la distancia de color. fin finTras estos dos procesos, obtendremos un mapa de prominencia y, a continuación, almacenaremos todos estos mapas en una nueva carpeta.
Diferencia en los algoritmos
La principal diferencia entre la función uno y la dos radica en la función de contracción. Si spnum1 y spnum2 representan el número de píxel del fotograma actual, esta función de contracción corresponde a la primera función de prominencia. Si spnum1 es el número de píxel del fotograma actual y spnum2 representa el número de píxel del fotograma anterior, esta función de contracción corresponde a la segunda función de prominencia. Si utilizamos la segunda función de contracción, que emplea el píxel del mismo fotograma para obtener la distancia al centro y generar un mapa de prominencia, aplicamos esta función a cada fotograma y restamos el mapa de prominencia del fotograma anterior al mapa de prominencia del fotograma actual para obtener una nueva imagen, que es el nuevo resultado de prominencia de la tercera función.

conjuntos de datos
El conjunto de datos de prominencia visual suele contener movimientos oculares humanos en secuencias de imágenes. Es valioso para la creación de nuevos algoritmos de prominencia visual o para la evaluación comparativa de los existentes. Los parámetros más importantes del conjunto de datos son la resolución espacial, el tamaño y el equipo de seguimiento ocular . Aquí se muestra , por ejemplo, una parte de la tabla de grandes conjuntos de datos del conjunto de datos de referencia de prominencia visual del MIT/Tübingen .
Para recopilar datos de prominencia visual, es necesario preparar secuencias de imágenes o vídeos y un sistema de seguimiento ocular , además de invitar a observadores. Estos deben tener visión normal o corregida y estar a la misma distancia de la pantalla. Al inicio de cada sesión de grabación, el sistema de seguimiento ocular se recalibra. Para ello, el observador fija la mirada en el centro de la pantalla. A continuación, se inicia la sesión y se recopilan los datos de prominencia visual mostrando secuencias y registrando la dirección de la mirada.
El dispositivo de seguimiento ocular es una cámara de alta velocidad , capaz de registrar los movimientos oculares a una velocidad mínima de 250 fotogramas por segundo . Las imágenes de la cámara son procesadas por un software que se ejecuta en un ordenador dedicado y que devuelve los datos de la mirada.
Véase también
Referencias
- ↑ Subhash, Bijil (6 de marzo de 2022). "IA explicable: mapas de prominencia" . Medium . Recuperado el 26 de mayo de 2024 .
- ↑ Guo, Chenlei; Zhang, Liming (enero de 2010). "Un nuevo modelo de detección de prominencia espaciotemporal multirresolución y sus aplicaciones en compresión de imágenes y vídeo". IEEE Transactions on Image Processing . 19 (1): 185– 198. Bibcode : 2010ITIP...19..185G . doi : 10.1109/TIP.2009.2030969 . ISSN 1057-7149 . PMID 19709976. S2CID 1154218 .
- ↑ Tong, Yubing; Konik, Hubert; Cheikh, Faouzi; Tremeau, Alain (2010-05-01). "Evaluación de la calidad de imagen de referencia completa basada en el análisis del mapa de prominencia" . Journal of Imaging Science and Technology . 54 (3): 30503–1–30503–14. doi : 10.2352/J.ImagingSci.Technol.2010.54.3.030503 . hdl : 11250/142490 .
- ↑ Goferman, Stas; Zelnik-Manor, Lihi; Tal, Ayellet (octubre de 2012). "Detección de prominencia sensible al contexto". IEEE Transactions on Pattern Analysis and Machine Intelligence . 34 (10): 1915–1926 . Bibcode : 2012ITPAM..34.1915G . doi : 10.1109/TPAMI.2011.272 . ISSN 1939-3539 . PMID 22201056 .
- ↑ Jiang, Huaizu; Wang, Jingdong; Yuan, Zejian; Wu, Yang; Zheng, Nanning; Li, Shipeng (junio de 2013). "Detección de objetos prominentes: un enfoque de integración de características regionales discriminativas" . Conferencia IEEE de 2013 sobre visión por computadora y reconocimiento de patrones . IEEE. págs. 2083–2090 . arXiv : 1410.5926 . doi : 10.1109 /cvpr.2013.271 . ISBN 978-0-7695-4989-7.
- ↑ Li, Zhaoping (2002-01-01). "Un mapa de prominencia en la corteza visual primaria" . Trends in Cognitive Sciences . 6 (1): 9– 16. doi : 10.1016/S1364-6613(00)01817-9 . ISSN 1364-6613 .
- 1 2 Müller, Romy (2024). "Cómo la IA explicable afecta el desempeño humano: una revisión sistemática de las consecuencias conductuales de los mapas de prominencia". Revista internacional de interacción humano-computadora . 41 (4): 2020– 2051. arXiv : 2404.16042 . doi : 10.1080/10447318.2024.2381929 .
- ^ Sundararajan, Mukund; Taly, Ankur; Yan, Qiqi (2017). "Atribución axiomática para redes profundas". arXiv : 1703.01365 [ cs.LG ].
- ↑ Dosovitskiy, Alexey; Beyer, Lucas; Kolesnikov, Alejandro; Weissenborn, Dirk; Zhai, Xiaohua; Unterthiner, Thomas; Dehghani, Mostafa; Minderer, Matías; Heigold, Georg; Gelly, Sylvain; Uszkoreit, Jakob; Houlsby, Neil (2020). "Una imagen vale 16 x 16 palabras: transformadores para el reconocimiento de imágenes a escala". arXiv : 2010.11929 [ cs.CV ].
- ↑ Abnar, Samira; Zuidema, Willem (2020). "Cuantificación del flujo de atención en transformadores". arXiv : 2005.00928 [ cs.LG ].
- ↑ Brocki, Lennart; Binda, Jakub; Neo Christopher Chung (2023). "Mapas de atención discriminatorios de clase para transformadores de visión". arXiv : 2312.02364 [ cs.CV ].
- ↑ A. Maity (2015). "Detección y manipulación improvisada de objetos salientes". arXiv : 1511.02999 [ cs.CV ].
- ↑ Pak, Mesut; Bayazit, Ulug (julio de 2020). "Asignación regional de bits con atención visual y sensibilidad a la distorsión" . Multimedia Tools and Applications . 79 ( 27–28 ): 19239–19263 . doi : 10.1007/s11042-020-08686-z . ISSN 1380-7501 .
Enlaces externos
- Zhai, Yun; Shah, Mubarak (23 de octubre de 2006). «Detección de la atención visual en secuencias de vídeo mediante señales espaciotemporales». Actas de la 14.ª Conferencia Internacional ACM sobre Multimedia . MM '06. Nueva York, NY, EE. UU.: ACM. págs. 815–824 . CiteSeerX 10.1.1.80.4848 . doi : 10.1145/1180639.1180824 . ISBN 978-1595934475. S2CID 5219826 .
- VLfeat: https://www.vlfeat.org/
- Mapa de prominencia en Scholarpedia
- visión por computadora
- Procesamiento de imágenes