stringtranslate.com

Histograma de color

En el procesamiento de imágenes y la fotografía , un histograma de color es una representación de la distribución de colores en una imagen . En el caso de las imágenes digitales, un histograma de color representa la cantidad de píxeles que tienen colores en cada uno de los rangos de colores de una lista fija que abarca el espacio de color de la imagen , el conjunto de todos los colores posibles.

El histograma de color se puede construir para cualquier tipo de espacio de color, aunque el término se utiliza con más frecuencia para espacios tridimensionales como RGB o HSV . Para imágenes monocromáticas , se puede utilizar en su lugar el término histograma de intensidad . Para imágenes multiespectrales, donde cada píxel está representado por un número arbitrario de mediciones (por ejemplo, más allá de las tres mediciones en RGB), el histograma de color es N -dimensional, siendo N el número de mediciones tomadas. Cada medición tiene su propio rango de longitud de onda del espectro de luz, algunas de las cuales pueden estar fuera del espectro visible.

Si el conjunto de valores de color posibles es suficientemente pequeño, cada uno de esos colores puede ubicarse en un rango por sí solo; entonces, el histograma es simplemente el recuento de píxeles que tienen cada color posible. La mayoría de las veces, el espacio se divide en un número apropiado de rangos, a menudo dispuestos como una cuadrícula regular, cada uno de los cuales contiene muchos valores de color similares. El histograma de color también puede representarse y mostrarse como una función suave definida sobre el espacio de color que se aproxima al recuento de píxeles.

Al igual que otros tipos de histogramas , el histograma de color es una estadística que puede verse como una aproximación de una distribución continua subyacente de valores de color.

Descripción general

Los histogramas de color son construcciones flexibles que se pueden construir a partir de imágenes en varios espacios de color , ya sea RGB , cromaticidad rg o cualquier otro espacio de color de cualquier dimensión. Un histograma de una imagen se produce primero discretizando los colores de la imagen en una serie de contenedores y contando el número de píxeles de la imagen en cada contenedor. Por ejemplo, un histograma de cromaticidad Rojo-Azul se puede formar normalizando primero los valores de los píxeles de color dividiendo los valores RGB por R+G+B, luego cuantificando las coordenadas R y B normalizadas en N contenedores cada uno. Un histograma bidimensional de cromaticidad Rojo-Azul dividido en cuatro contenedores ( N = 4) podría producir un histograma que se parezca a esta tabla:

Un histograma puede ser N-dimensional. Aunque es más difícil de visualizar, un histograma de color tridimensional para el ejemplo anterior podría considerarse como cuatro histogramas de rojo y azul separados, donde cada uno de los cuatro histogramas contiene los valores de rojo y azul para un intervalo de verde (0-63, 64-127, 128-191 y 192-255).

El histograma proporciona un resumen compacto de la distribución de datos en una imagen. El histograma de color de una imagen es relativamente invariante con la traslación y la rotación sobre el eje de visualización, y varía solo lentamente con el ángulo de visión. [1] Al comparar las firmas del histograma de dos imágenes y hacer coincidir el contenido de color de una imagen con la otra, el histograma de color es particularmente adecuado para el problema de reconocer un objeto de posición y rotación desconocidas dentro de una escena. Es importante destacar que la traslación de una imagen RGB al espacio de cromaticidad rg invariante a la iluminación permite que el histograma funcione bien en niveles de luz variables.

1. ¿Qué es un histograma?

Un histograma es una representación gráfica del número de píxeles de una imagen. De una forma más sencilla de explicarlo, un histograma es un gráfico de barras, cuyo eje X representa la escala tonal (negro a la izquierda y blanco a la derecha), y el eje Y representa el número de píxeles de una imagen en una determinada zona de la escala tonal. Por ejemplo, el gráfico de un histograma de luminancia muestra el número de píxeles para cada nivel de brillo (de negro a blanco), y cuando hay más píxeles, el pico en un determinado nivel de luminancia es más alto.

2. ¿Qué es un histograma de color?

Un histograma de color de una imagen representa la distribución de la composición de colores en la imagen. Muestra los diferentes tipos de colores que aparecen y la cantidad de píxeles de cada tipo de color que aparece. La relación entre un histograma de color y un histograma de luminancia es que un histograma de color también se puede expresar como "tres histogramas de luminancia", cada uno de los cuales muestra la distribución del brillo de cada canal de color individual rojo/verde/azul.

Características de un histograma de color

Un histograma de color se centra únicamente en la proporción de la cantidad de diferentes tipos de colores, independientemente de la ubicación espacial de los colores. Los valores de un histograma de color provienen de estadísticas. Muestran la distribución estadística de los colores y el tono esencial de una imagen.

En general, como las distribuciones de color del primer plano y del fondo de una imagen son diferentes, podría haber una distribución bimodal en el histograma.

Solo para el histograma de luminancia, no existe un histograma perfecto y, en general, el histograma puede determinar si hay sobreexposición o no, pero hay ocasiones en las que podría pensar que la imagen está sobreexpuesta al ver el histograma; sin embargo, en realidad no es así.

Principios de la formación de un histograma de color

La formación de un histograma de color es bastante sencilla. A partir de la definición anterior, podemos contar simplemente la cantidad de píxeles de cada 256 escalas en cada uno de los 3 canales RGB y representarlos en 3 gráficos de barras individuales.

En general, un histograma de color se basa en un espacio de color determinado, como RGB o HSV. Cuando calculamos los píxeles de diferentes colores en una imagen, si el espacio de color es grande, primero podemos dividir el espacio de color en una cierta cantidad de intervalos pequeños. Cada uno de los intervalos se denomina bin. Este proceso se denomina cuantificación del color. Luego, al contar la cantidad de píxeles en cada uno de los bins, obtenemos el histograma de color de la imagen.

Los pasos concretos de los principios se pueden ver en el Ejemplo 1.

Ejemplos

Ejemplo 1

Dada la siguiente imagen de un gato (una versión original y una versión que se ha reducido a 256 colores para facilitar los propósitos del histograma), los siguientes datos representan un histograma de color en el espacio de color RGB, utilizando cuatro contenedores.

El bin 0 corresponde a las intensidades 0-63

El contenedor 1 es 64-127

El contenedor 2 es 128-191 y el contenedor 3 es 192-255.

Una foto de un gato
Una foto de un gato
Histograma de color de la imagen del gato anterior, con el eje x representando RGB y el eje y representando la frecuencia.
Una imagen de un gato que se ha reducido a 256 colores.
Una imagen de un gato reducida a 256 colores en el espacio de color RGB

Ejemplo 2

Aplicación en cámara:

Hoy en día, algunas cámaras tienen la capacidad de mostrar los 3 histogramas de color cuando tomamos fotografías.

Podemos examinar los recortes (picos en el lado blanco o negro de la escala) en cada uno de los 3 histogramas de color RGB. Si encontramos uno o más recortes en un canal de los 3 canales RGB, esto provocaría una pérdida de detalle para ese color.

Para ilustrarlo, considere este ejemplo:

1. Sabemos que cada uno de los tres canales R, G, B tiene un rango de valores de 0 a 255 (8 bits). Por lo tanto, considere una fotografía que tiene un rango de luminancia de 0 a 255.

2. Supongamos que la foto que tomamos está formada por 4 bloques adyacentes entre sí y establecemos la escala de luminancia para cada uno de los 4 bloques de la foto original en 10, 100, 205, 245. Por lo tanto, la imagen se parece a la figura superior a la derecha.

3. Luego, sobreexponemos un poco la foto, digamos que la escala de luminancia de cada bloque se incrementa en 10. Por lo tanto, la escala de luminancia para cada uno de los 4 bloques de la nueva foto es 20, 110, 215, 255. Entonces, la imagen se parece a la segunda figura de la derecha.

No hay mucha diferencia entre ambas figuras, lo único que podemos ver es que toda la imagen se vuelve más brillante (el contraste de cada uno de los bloques permanece igual).

4. Ahora, sobreexponemos nuevamente la foto original, esta vez la escala de luminancia de cada bloque se incrementa en 50. Por lo tanto, la escala de luminancia para cada uno de los 4 bloques de la nueva foto es 60, 150, 255, 255. La nueva imagen ahora se parece a la tercera figura de la derecha.

Tenga en cuenta que la escala del último bloque es 255 en lugar de 295, ya que 255 es la escala superior y, por lo tanto, el último bloque se ha recortado. Cuando esto sucede, perdemos el contraste de los últimos 2 bloques y, por lo tanto, no podemos recuperar la imagen sin importar cómo la ajustemos.

Para concluir, al tomar fotografías con una cámara que muestra histogramas, mantenga siempre el tono más brillante de la imagen debajo de la escala más grande 255 en el histograma para evitar perder detalles.

Desventajas y otros enfoques

El principal inconveniente de los histogramas para la clasificación es que la representación depende del color del objeto estudiado, ignorando su forma y textura. Los histogramas de color pueden ser potencialmente idénticos para dos imágenes con diferente contenido de objetos que comparten información de color. Por el contrario, sin información espacial o de forma, los objetos similares de diferente color pueden ser indistinguibles basándose únicamente en comparaciones de histogramas de color. No hay forma de distinguir una taza roja y blanca de un plato rojo y blanco. Dicho de otra manera: los algoritmos basados ​​en histogramas no tienen el concepto de una "taza" genérica, y un modelo de una taza roja y blanca no sirve cuando se da una taza azul y blanca idéntica. Otro problema es que los histogramas de color tienen una alta sensibilidad a la interferencia ruidosa, como los cambios de intensidad de la iluminación y los errores de cuantificación. Los histogramas de color de alta dimensionalidad (bins) también son otro problema. Algunos espacios de características de histogramas de color a menudo ocupan más de cien dimensiones. [2]

Algunas de las soluciones propuestas han sido la intersección de histogramas de color, la indexación de constantes de color, el histograma de color acumulativo, la distancia cuadrática y los correlogramas de color . Aunque existen desventajas en el uso de histogramas para indexación y clasificación, el uso del color en un sistema en tiempo real tiene varias ventajas. Una de ellas es que la información de color es más rápida de calcular en comparación con otras invariantes. Se ha demostrado en algunos casos que el color puede ser un método eficiente para identificar objetos de ubicación y apariencia conocidas.

Investigaciones posteriores sobre la relación entre los datos del histograma de color y las propiedades físicas de los objetos en una imagen han demostrado que pueden representar no solo el color y la iluminación del objeto, sino que también se relacionan con la rugosidad de la superficie y la geometría de la imagen y brindan una estimación mejorada de la iluminación y el color del objeto. [3]

Por lo general, para calcular los índices de similitud de imágenes se utilizan la distancia euclidiana, la intersección del histograma o las distancias coseno o cuadráticas. [4] Ninguno de estos valores refleja el índice de similitud de dos imágenes en sí mismo; solo es útil cuando se lo compara con otros valores similares. Esta es la razón por la que todas las implementaciones prácticas de recuperación de imágenes basada en contenido deben completar el cálculo de todas las imágenes de la base de datos, y es la principal desventaja de estas implementaciones.

Otro enfoque para el contenido de imagen de color representativo es el histograma de color bidimensional. Un histograma de color bidimensional considera la relación entre los colores del par de píxeles (no solo el componente de iluminación). [5] Un histograma de color bidimensional es una matriz bidimensional. El tamaño de cada dimensión es el número de colores que se usaron en la fase de cuantificación del color. Estas matrices se tratan como matrices, cada elemento de las cuales almacena un recuento normalizado de pares de píxeles, y cada color corresponde al índice de un elemento en cada vecindario de píxeles. Para la comparación de histogramas de color bidimensionales, se sugiere calcular su correlación, porque construido como se describió anteriormente, es un vector aleatorio (en otras palabras, un valor aleatorio multidimensional). Al crear un conjunto de imágenes finales, las imágenes deben organizarse en orden decreciente del coeficiente de correlación.

El coeficiente de correlación también se puede utilizar para comparar histogramas de color. Los resultados de recuperación con coeficiente de correlación son mejores que con otras métricas. [6]

Histograma de intensidad de datos continuos

La idea de un histograma de intensidad se puede generalizar a datos continuos, por ejemplo, señales de audio representadas por funciones reales o imágenes representadas por funciones con dominio bidimensional .

Sea (véase espacio de Lebesgue ), entonces el operador de histograma acumulativo se puede definir mediante:

.

es la medida de Lebesgue de conjuntos. a su vez es una función real . El histograma (no acumulativo) se define como su derivada .

.

Referencias

  1. ^ Shapiro, Linda G. y Stockman, George C. "Visión por computadora" Prentice Hall, 2003 ISBN  0-13-030796-3
  2. ^ Xiang-Yang Wang, Jun-Feng Wu y Hong-Ying Yang "Recuperación de imágenes robusta basada en histograma de color de regiones de características locales" Springer Netherlands, 2009 ISSN 1573-7721
  3. ^ Anatomía de un histograma de color; Novak, CL; Shafer, SA; Computer Vision and Pattern Recognition, 1992. Actas CVPR '92., Conferencia de la IEEE Computer Society de 1992 del 15 al 18 de junio de 1992 Página(s): 599 - 605 doi :10.1109/CVPR.1992.223129
  4. ^ Sistemas integrados de imágenes espaciales y de características: recuperación, análisis y compresión; Smith, JR; Facultad de Artes y Ciencias, Universidad de Columbia, 1997
  5. ^ Estimación de la efectividad de la recuperación de imágenes mediante histograma de color 2D; Bashkov, EA; Kostyukova, NS; Journal of Automation and Information Sciences, 2006 (6) Página(s): 84-89
  6. ^ Recuperación de imágenes basada en contenido mediante correlación de histogramas de color; Bashkov, EA; Shozda, NS; Actas de Graphicon, 2002 Página(s): [1] Archivado el 7 de julio de 2012 en Wayback Machine.

Enlaces externos