Característica (visión por computadora) - Feature (computer vision)

En la visión por computadora y el procesamiento de imágenes , una característica es un fragmento de información sobre el contenido de una imagen; normalmente sobre si una determinada región de la imagen tiene determinadas propiedades. Las características pueden ser estructuras específicas en la imagen, como puntos, bordes u objetos. Las características también pueden ser el resultado de una operación de vecindad general o de una detección de características aplicada a la imagen. Otros ejemplos de características están relacionados con el movimiento en secuencias de imágenes o con formas definidas en términos de curvas o límites entre diferentes regiones de la imagen.

En términos más generales, una característica es cualquier información que sea relevante para resolver la tarea computacional relacionada con una determinada aplicación. Este es el mismo sentido que la característica en el aprendizaje automático y el reconocimiento de patrones en general, aunque el procesamiento de imágenes tiene una colección de características muy sofisticada. El concepto de característica es muy general y la elección de características en un sistema de visión por computadora en particular puede depender en gran medida del problema específico en cuestión.

Introducción

Cuando las características se definen en términos de operaciones de vecindad local aplicadas a una imagen, un procedimiento comúnmente conocido como extracción de características , se pueden distinguir entre enfoques de detección de características que producen decisiones locales si hay una característica de un tipo dado en un punto de imagen dado o no, y aquellos que producen datos no binarios como resultado. La distinción se vuelve relevante cuando las características detectadas resultantes son relativamente escasas. Aunque se toman decisiones locales, la salida de un paso de detección de características no necesita ser una imagen binaria. El resultado a menudo se representa en términos de conjuntos de coordenadas (conectadas o desconectadas) de los puntos de la imagen donde se han detectado características, a veces con una precisión de subpíxeles.

Cuando la extracción de características se realiza sin una toma de decisiones local, el resultado a menudo se denomina imagen de características . En consecuencia, una imagen característica puede verse como una imagen en el sentido de que es una función de las mismas variables espaciales (o temporales) que la imagen original, pero donde los valores de los píxeles contienen información sobre las características de la imagen en lugar de la intensidad o el color. Esto significa que una imagen característica se puede procesar de manera similar a una imagen normal generada por un sensor de imagen. Las imágenes de características también se calculan a menudo como pasos integrados en algoritmos para la detección de características .

Definición

No existe una definición universal o exacta de lo que constituye una característica, y la definición exacta a menudo depende del problema o del tipo de aplicación. Sin embargo, una característica se define típicamente como una parte "interesante" de una imagen , y las características se utilizan como punto de partida para muchos algoritmos de visión por computadora. Dado que las características se utilizan como punto de partida y primitivas principales para los algoritmos posteriores, el algoritmo general a menudo solo será tan bueno como su detector de características. En consecuencia, la propiedad deseable para un detector de características es la repetibilidad : si se detectará o no la misma característica en dos o más imágenes diferentes de la misma escena.

La detección de características es una operación de procesamiento de imágenes de bajo nivel . Es decir, generalmente se realiza como la primera operación en una imagen y examina cada píxel para ver si hay una característica presente en ese píxel. Si esto es parte de un algoritmo más grande, entonces el algoritmo normalmente solo examinará la imagen en la región de las características. Como requisito previo incorporado para la detección de características, la imagen de entrada generalmente se suaviza mediante un núcleo gaussiano en una representación de espacio de escala y se calculan una o varias imágenes de características, a menudo expresadas en términos de operaciones derivadas de imágenes locales .

Ocasionalmente, cuando la detección de características es computacionalmente costosa y existen limitaciones de tiempo, se puede usar un algoritmo de nivel superior para guiar la etapa de detección de características, de modo que solo se busquen características en ciertas partes de la imagen.

Hay muchos algoritmos de visión artificial que utilizan la detección de características como paso inicial, por lo que se ha desarrollado una gran cantidad de detectores de características. Estos varían ampliamente en los tipos de características detectadas, la complejidad computacional y la repetibilidad.

Tipos

Bordes

Los bordes son puntos donde hay un límite (o un borde) entre dos regiones de la imagen. En general, un borde puede tener una forma casi arbitraria y puede incluir uniones. En la práctica, los bordes se definen generalmente como conjuntos de puntos en la imagen que tienen una magnitud de gradiente fuerte . Además, algunos algoritmos comunes encadenarán puntos de alto gradiente para formar una descripción más completa de un borde. Estos algoritmos suelen imponer algunas restricciones a las propiedades de un borde, como la forma, la suavidad y el valor del degradado.

Localmente, los bordes tienen una estructura unidimensional.

Rincones / puntos de interés

Los términos esquinas y puntos de interés se utilizan de forma un tanto intercambiable y se refieren a características puntuales en una imagen, que tienen una estructura bidimensional local. El nombre "Esquina" surgió desde que los primeros algoritmos primero realizaban la detección de bordes y luego analizaban los bordes para encontrar cambios rápidos en la dirección (esquinas). Estos algoritmos se desarrollaron luego para que ya no fuera necesaria la detección explícita de bordes, por ejemplo, buscando altos niveles de curvatura en el gradiente de la imagen. Luego se observó que las denominadas esquinas también se estaban detectando en partes de la imagen que no eran esquinas en el sentido tradicional (por ejemplo, se puede detectar una pequeña mancha brillante sobre un fondo oscuro). Estos puntos se conocen con frecuencia como puntos de interés, pero la tradición utiliza el término "esquina".

Blobs / regiones de puntos de interés

Los blobs proporcionan una descripción complementaria de las estructuras de la imagen en términos de regiones, a diferencia de las esquinas que tienen más forma de puntos. Sin embargo, los descriptores de manchas pueden contener a menudo un punto preferido (un máximo local de la respuesta de un operador o un centro de gravedad), lo que significa que muchos detectores de manchas también pueden considerarse operadores de puntos de interés. Los detectores de manchas pueden detectar áreas en una imagen que son demasiado suaves para ser detectadas por un detector de esquinas.

Considere la posibilidad de reducir una imagen y luego realizar la detección de esquinas. El detector responderá a los puntos que son nítidos en la imagen encogida, pero pueden ser suaves en la imagen original. Es en este punto que la diferencia entre un detector de esquinas y un detector de manchas se vuelve algo vaga. En gran medida, esta distinción puede remediarse incluyendo una noción apropiada de escala. Sin embargo, debido a sus propiedades de respuesta a diferentes tipos de estructuras de imagen a diferentes escalas, los detectores de manchas LoG y DoH también se mencionan en el artículo sobre detección de esquinas .

Crestas

Para los objetos alargados, la noción de crestas es una herramienta natural. Un descriptor de cresta calculado a partir de una imagen de nivel de gris puede verse como una generalización de un eje medial . Desde un punto de vista práctico, una cresta puede considerarse como una curva unidimensional que representa un eje de simetría y, además, tiene un atributo de ancho de cresta local asociado con cada punto de cresta. Desafortunadamente, sin embargo, es algorítmicamente más difícil extraer características de crestas de clases generales de imágenes de nivel de gris que características de bordes, esquinas o manchas. No obstante, los descriptores de crestas se utilizan con frecuencia para la extracción de carreteras en imágenes aéreas y para la extracción de vasos sanguíneos en imágenes médicas; consulte detección de crestas .

Detección

Escritorio con Detector Harris.png

La detección de características incluye métodos para calcular abstracciones de información de imagen y tomar decisiones locales en cada punto de la imagen, ya sea que haya una característica de imagen de un tipo determinado en ese punto o no. Las características resultantes serán subconjuntos del dominio de la imagen, a menudo en forma de puntos aislados, curvas continuas o regiones conectadas.

Detectores de características comunes y su clasificación:
Detector de características Borde Esquina Gota Cresta
Astuto [1] No No No
Sobel No No No
Harris y Stephens [2] / Plessey No No
SUSAN [3] No No
Shi y Tomasi [4] No No No
Curvatura de la curva de nivel [5] No No No
RÁPIDO [6] No No
Laplaciano de Gauss [5] No No
Diferencia de gaussianos No No
Determinante de arpillera [5] No No
Medidas de la característica de fuerza de Hesse No No
MSER [11] No No No
Crestas de curvatura principal No No No
Manchas de nivel de gris [15] No No No

Extracción

Una vez que se han detectado características, se puede extraer un parche de imagen local alrededor de la característica. Esta extracción puede implicar cantidades considerables de procesamiento de imágenes. El resultado se conoce como descriptor de características o vector de características. Entre los enfoques que se utilizan para la descripción de características, se pueden mencionar N- chorros e histogramas locales (consulte la transformación de características invariantes de escala para ver un ejemplo de un descriptor de histograma local). Además de dicha información de atributos, el paso de detección de características por sí mismo también puede proporcionar atributos complementarios, como la orientación del borde y la magnitud del gradiente en la detección del borde y la polaridad y la fuerza de la mancha en la detección de manchas.

Nivel bajo

Curvatura

Movimiento de la imagen

Basado en forma

Métodos flexibles

  • Formas deformables y parametrizadas
  • Contornos activos (serpientes)

Representación

Una característica de imagen específica, definida en términos de una estructura específica en los datos de la imagen, a menudo se puede representar de diferentes maneras. Por ejemplo, un borde se puede representar como una variable booleana en cada punto de la imagen que describe si un borde está presente en ese punto. Alternativamente, podemos usar una representación que proporcione una medida de certeza en lugar de una declaración booleana de la existencia del borde y combinar esto con información sobre la orientación del borde. De manera similar, el color de una región específica se puede representar en términos del color promedio (tres escalares) o un histograma de color (tres funciones).

Cuando se diseña un sistema de visión por computadora o un algoritmo de visión por computadora, la elección de la representación de características puede ser un problema crítico. En algunos casos, puede ser necesario un mayor nivel de detalle en la descripción de una característica para resolver el problema, pero esto tiene el costo de tener que lidiar con más datos y un procesamiento más exigente. A continuación, se comentan algunos de los factores que son relevantes para elegir una representación adecuada. En esta discusión, una instancia de una representación de características se conoce como descriptor de característica , o simplementedescriptor.

Certeza o confianza

Dos ejemplos de características de la imagen son la orientación del borde local y la velocidad local en una secuencia de imágenes. En el caso de la orientación, el valor de esta característica puede ser más o menos indefinido si hay más de un borde presente en la vecindad correspondiente. La velocidad local no está definida si la región de imagen correspondiente no contiene ninguna variación espacial. Como consecuencia de esta observación, puede ser relevante utilizar una representación de características que incluya una medida de certeza o confianza relacionada con la declaración sobre el valor de la característica. De lo contrario, es una situación típica que se utilice el mismo descriptor para representar valores de característica de certeza baja y valores de característica cercanos a cero, con una ambigüedad resultante en la interpretación de este descriptor. Dependiendo de la aplicación, tal ambigüedad puede ser aceptable o no.

En particular, si una imagen destacada se utilizará en un procesamiento posterior, puede ser una buena idea emplear una representación de características que incluya información sobre certeza o confianza . Esto permite calcular un nuevo descriptor de características a partir de varios descriptores, por ejemplo calculados en el mismo punto de imagen pero a diferentes escalas, o desde puntos diferentes pero vecinos, en términos de un promedio ponderado donde los pesos se derivan de las certezas correspondientes. En el caso más simple, el cálculo correspondiente se puede implementar como un filtrado de paso bajo de la imagen presentada. La imagen característica resultante será, en general, más estable al ruido.

Promedio

Además de tener medidas de certeza incluidas en la representación, la representación de los valores de características correspondientes puede ser en sí misma adecuada para una operación de promediado o no. La mayoría de las representaciones de características se pueden promediar en la práctica, pero solo en ciertos casos se puede dar al descriptor resultante una interpretación correcta en términos de un valor de característica. Estas representaciones se denominan promediables .

Por ejemplo, si la orientación de una arista se representa en términos de un ángulo, esta representación debe tener una discontinuidad en la que el ángulo pasa de su valor máximo a su valor mínimo. En consecuencia, puede suceder que dos orientaciones similares estén representadas por ángulos que tienen una media que no se encuentra cerca de ninguno de los ángulos originales y, por lo tanto, esta representación no es promediable. Hay otras representaciones de la orientación de los bordes, como el tensor de estructura, que son promediables.

Otro ejemplo se relaciona con el movimiento, donde en algunos casos solo se puede extraer la velocidad normal relativa a algún borde. Si se han extraído dos de tales características y se puede suponer que se refieren a la misma velocidad verdadera, esta velocidad no se da como el promedio de los vectores de velocidad normal. Por tanto, los vectores de velocidad normal no son promediables. En cambio, hay otras representaciones de movimientos, utilizando matrices o tensores, que dan la velocidad verdadera en términos de una operación promedio de los descriptores de velocidad normal.

Vectores de características y espacios de características

En algunas aplicaciones, no es suficiente extraer solo un tipo de característica para obtener la información relevante de los datos de la imagen. En su lugar, se extraen dos o más características diferentes, lo que da como resultado dos o más descriptores de características en cada punto de la imagen. Una práctica común es organizar la información proporcionada por todos estos descriptores como los elementos de un solo vector, comúnmente conocido como vector de características . El conjunto de todos los posibles vectores de características constituye un espacio de características .

Un ejemplo común de vectores de características aparece cuando cada punto de la imagen debe clasificarse como perteneciente a una clase específica. Suponiendo que cada punto de la imagen tiene un vector de características correspondiente basado en un conjunto adecuado de características, lo que significa que cada clase está bien separada en el espacio de características correspondiente, la clasificación de cada punto de la imagen se puede hacer usando el método de clasificación estándar .

Otro ejemplo relacionado ocurre cuando se aplica el procesamiento basado en redes neuronales a las imágenes. Los datos de entrada alimentados a la red neuronal a menudo se dan en términos de un vector de características de cada punto de la imagen, donde el vector se construye a partir de varias características diferentes extraídas de los datos de la imagen. Durante una fase de aprendizaje, la red puede encontrar por sí misma qué combinaciones de diferentes características son útiles para resolver el problema en cuestión.

Procesamiento de características de varios niveles

La extracción de características a veces se realiza en varias escalas. Uno de estos métodos es la transformación de características invariantes de escala (SIFT), un algoritmo de detección de características en visión por computadora; en este algoritmo, se analizan varias escalas de una imagen para extraer características.

Ver también

Referencias

Otras lecturas

  • T. Lindeberg (2009). "Espacio de escala" . En Benjamin Wah (ed.). Enciclopedia de Ciencias e Ingeniería de la Computación . IV . John Wiley e hijos. págs. 2495-2504. doi : 10.1002 / 9780470050118.ecse609 . ISBN 978-0470050118. (resumen y revisión de una serie de detectores de características formulados en función de las operaciones de un espacio de escala)