Departamento De Computación
Título: Paquete en Python para la reducción de
dimensionalidad en imágenes a color.
Autora: Liliam Fernández Cabrera.
Cabrera. Tutor: M.Sc. Roberto Díaz Amador.
Santa Clara, Cuba, 2018
i
Este documento es Propiedad Patrimonial de la Universidad Central “Marta
Abreu” de Las Villas, y se encuentra depositado en los fondos de la Biblioteca
Universitaria “Chiqui Gómez Lubian” subordinada a la Dirección de
Información Científico Técnica de la mencionada casa de altos estudios.
Se autoriza su utilización bajo la licencia siguiente:
Atribución- No Comercial- Compartir Igual
Para cualquier información contacte con:
Dirección de Información Científico Técnica. Universidad Central “Marta
Abreu” de Las Villas. Carretera a Camajuaní. Km 5½. Santa Clara. Villa Clara.
Cuba. CP. 54 830
Teléfonos.: +53 01 42281503-1419
ii
La que suscribe Liliam Fernández Cabrera, hago constar que el trabajo titulado Paquete en
Python para la redimensionalidad de imágenes a color fue realizado en la Universidad Central
“Marta Abreu” de Las Villas como parte de la culminación de los estudios de la especialidad de
Licenciatura en Ciencias de la Computación, autorizando a que el mismo sea utilizado por la
institución, para los fines que estime conveniente, tanto de forma parcial como total y que
además no podrá ser presentado en eventos ni publicado sin la autorización de la Universidad.
______________________
Firma del Autor
Los abajo firmantes, certificamos que el presente trabajo ha sido realizado según acuerdos de la
dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de
esta envergadura referido a la temática señalada.
____________________________ ___________________________
Firma del Tutor Firma del Jefe del Laboratorio
iii
RESUMEN
Un enfoque eficiente de las técnicas del procesamiento digital de imágenes permite dar solución
a muchas problemáticas en los campos investigativos que precisan del uso de imágenes para
búsquedas de información. Estas imágenes después de ser procesadas tienen una amplia gama
de usos en diferentes campos tales como la medicina, en diagnósticos en tomografías
digitalizadas de pacientes enfermos; la astrofísica, al determinar estados de la materia en cuerpos
celestes muy lejanos, así como la robótica en detección de objetos en tiempo real, entre otros.
La reducción de dimensionalidad en imágenes de color a escala de grises como parte del
procesamiento digital de imágenes es vital en la percepción humana para observadores con una
visión de color deficiente y en el análisis de estas imágenes por los métodos de búsqueda de
información. La eficiencia de los algoritmos que utilizan la reducción de dimensionalidad de
imágenes a color es vital debido a la importancia de los campos en que se utiliza y a los grandes
volúmenes de información que se procesan en sus aplicaciones, por lo que surge la necesidad
de un paquete de algoritmos que realice una eficiente reducción de dimensionalidad de imágenes
a color. En este trabajo de diploma se evaluarán las posibilidades de implementación de
herramientas de reducción de dimensionalidad en imágenes en un paquete en el lenguaje Python
que sea no propietario, fácil de utilizar y disponible. En la implementación del paquete se
aprovecha la ventaja que ofrece contar con un compendio de los métodos de conversión a escala
de grises más importantes desarrollados en este siglo de acuerdo con las publicaciones recientes,
al ser esta un área activa de investigación.
iv
ABSTRACT
An efficient approach to digital processing technics allows achieving solutions to problems in
diverse investigation field that use digital images for information search. These images after
being processed have a wide range of uses in fields like medicine, diagnosing sick patients by
digitalized tomographies; astrophysics, detecting matter status in faraway celestial bodies, and
robotics, real time object detection, among others. The reduction of color images dimensionality
as part of the digital image processing is vital for human perception of images in grayscale to
vision deficient human observers and analysis of these grayscale images by knowledge search
methods. The efficiency of the algorithms that use dimensionality reduction of color images is
fundamental because the huge information volume that needs to be processed; this is why the
necessity of an algorithms package that reduces the dimensionality of color images in an
efficient and robust way. In this basic degree thesis there will be evaluated the implementation
of dimensionality reduction methods in python programming language, which is free software,
easy to use, and available. In the package implementation we take advantage of a compendium
of state of the art grayscale conversion methods developed in this century, related to recent
publications.
v
TABLA DE CONTENIDOS
INTRODUCCIÓN..................................................................................................................... 1
CAPÍTULO 1. GENERALIDADES .................................................................................... 4
1.1 La Imagen Digital a Color ............................................................................................ 4
1.1.1 Imagen Digital ............................................................................................................. 5
1.1.2 Imagen a Color. Espacio de Color .............................................................................. 6
1.1.3 Estándares de Colores ................................................................................................. 9
1.2 Técnicas de Reducción de los Espacios de Color ............................................................ 10
1.2.1 Métodos clásicos de conversión de color a escala de grises. .................................... 11
1.2.2 El Problema de la conversión de color a escala de grises. ........................................ 14
1.2.3 Categorías de los métodos en estado-del-arte de C2G. ............................................. 16
1.3 Conclusiones del capítulo ................................................................................................ 26
CAPÍTULO 2. Materiales y Métodos ............................................................................ 27
2.1 El Lenguaje Python ..................................................................................................... 27
2.2 Diagrama de las Bibliotecas de Reducción de Dimensionalidad creadas................... 28
2.2.1 Decolorize (Decolor_linear2006) ........................................................................ 28
2.2.2 GcsDecolor2 ........................................................................................................ 29
2.2.3 SPDecolor ............................................................................................................ 31
2.2.4 Kim09 (Decolor_nonlinear2009) ........................................................................ 33
2.3 Procedimiento de evaluación utilizado. ...................................................................... 34
2.3.1 Diseño del experimento ....................................................................................... 35
2.3.2 Bases de casos utilizadas ..................................................................................... 35
2.3.3 Medidas Objetivas ............................................................................................... 35
2.3.4 Medidas Subjetivas .............................................................................................. 38
2.4 Análisis Estadístico de los Resultados ........................................................................ 38
2.5 Conclusiones del Capítulo .......................................................................................... 39
vi
CAPÍTULO 3. Resultados y Discusión ........................................................................ 40
3.1 Evaluación comparativa de los métodos implementados. .......................................... 40
3.1.1 Objetiva. .............................................................................................................. 40
3.1.2 Subjetiva. ............................................................................................................. 41
3.2 Diseño e implementación del paquete de conversión de imágenes a escala de grises:
C2G y la herramienta asociada: C2GApp. ............................................................................. 43
3.2.1 Implementación del paquete de algoritmos C2G ................................................ 44
3.2.2 Implementación de la aplicación visual C2G_app .............................................. 45
3.3 Conclusiones del capítulo ........................................................................................... 47
CONCLUSIONES .................................................................................................................. 48
RECOMENDACIONES ........................................................................................................ 49
BIBLIOGRAFÍA ..................................................................................................................... 50
ANEXOS .................................................................................................................................. 53
vii
LISTA DE FIGURAS
Figura 1 Ejemplo de separación de canales RGB........................................................................ 4
Figura 2 Comparación de cromaticidades encerradas en un espacio de color. ........................... 6
Figura 3 Comparación entre los modelos de color RGB y CMYK. Esta imagen demuestra la
diferencia de aspecto de los colores en un monitor de ordenador (RGB) en comparación con su
reproducción en CMYK en el proceso de impresión. ................................................................. 7
Figura 4 Izquierda: Mezcla de colores aditivos (Tres colores superpuestos en un vacío se suman
para crear el blanco) Derecha: Mezcla de colores sustractivos (Tres colores en un papel blanco,
se restan para volver el papel negro). .......................................................................................... 8
Figura 5 Modelo de color RGB. .................................................................................................. 9
Figura 6 Imagen del Monet, de Claude Oscar (Francia, 1840-1926) obra maestra “Impresión del
Amanecer” convertida a escala de grises por cinco métodos diferentes: b) la función rgb2gray
de Matlab, c) L* del CIEL*a*b*, d) RTCP, e) ApparentGreyscale, f) Kim09. ........................ 11
Figura 7 Conversión de RGB a escala de grises usando el método de suma pesada con los pesos
NTSC. De arriba hacia abajo: coordenadas en los cubos RGB en 3D, imágenes RGB originales,
imágenes en escala de grises, y sus histogramas. ...................................................................... 12
Figura 8 Conversión de RGB a escala de grises de las mismas tres imágenes de colores usando
la capa L* del espacio de color CIEL*a*b*. ............................................................................. 13
Figura 9 Conversión de RGB a escala de grises de las mismas tres imágenes de colores usando
la componente L del espacio de color HSL. .............................................................................. 14
Figura 10 Tres parámetros independientes de control son usados: realce de control , selección
de escala , supresión de sonido . Ejemplo usando = 0.3, = 25, y = 0.001. .............. 16
Figura 11 Diagrama de Flujo Decolor_Linear2006 .................................................................. 29
Figura 12 Diagrama de Flujo GcsDecolor2 ............................................................................... 31
Figura 13 Diagrama de Flujo SPDecolor .................................................................................. 32
Figura 14 Diagrama de Flujo Decolor_nonlinear2009 .............................................................. 34
Figura 15 Las imágenes muestran, en la (a) la imagen original a color, del (b)-(e) las imágenes
resultantes de los métodos propuestos y en la (f) la imagen resultante con la preservación de
contraste en los pétalos. ............................................................................................................. 36
viii
Figura 16 Las imágenes muestran, en la (a) las imágenes originales a color, el (b) las imágenes
resultantes de los métodos propuestos y en la (c) las imágenes resultantes con CCFR incluido.
................................................................................................................................................... 37
Figura 17 Valores de CCPR, CCFR y Marca-E para los cuatro métodos. ................................ 41
Figura 18 Resultados del SPSS para los sujetos 1 y 2 respectivamente. ................................... 41
Figura 19 Resultados del SPSS para los sujetos 3 y 4 respectivamente. ................................... 41
Figura 20 Imagen principal de la aplicación. ............................................................................ 45
Figura 21 Muestra del trabajo con imágenes. ............................................................................ 45
Figura 22 Muestra de las medidas de evaluación. ..................................................................... 46
Figura 23 Muestra de los algoritmos de transformación. .......................................................... 46
Figura 24 Muestra seleccionar imagen. ..................................................................................... 46
Figura 25 Muestra resultados de la aplicación. ......................................................................... 47
ix
LISTA DE TABLAS
Tabla 1 Los métodos en estado-del-arte para la conversión de C2G con mapeo global. .......... 17
Tabla 2 Los métodos en estado-del-arte para la conversión de C2G con mapeo local. ............ 21
Tabla 3 Los métodos en estado-del-arte para la conversión de C2G con mapeo híbrido. ........ 23
Tabla 4 Comparación de CCPR, CCFR y Marca-E. ................................................................. 40
Tabla 5 Evaluaciones subjetivas de los métodos. ...................................................................... 42
1
INTRODUCCIÓN
El color es una sensación humana asociada a la respuesta del cerebro a un estímulo visual
específico y el cual experimentamos como un solo atributo. Aunque podemos, de una forma
precisa, describir el color a través de la medición de su distribución espectral de poder, esto lleva
a un extenso grado de datos altamente superfluos. La razón se debe a que la muestra de color de
la retina de los ojos usa solamente tres anchos de banda, correspondientes a la luz roja, verde y
azul pertenecientes a la respuesta de tres tipos de células sensitivas (llamadas cones),
correspondientes al L (largo), M (medio) y S (corto) en relación a la longitud de onda de la
frecuencia de banda a la que ellas responden. Las señales de estos sensores junto a las de las
barras (sensibles solo a la intensidad), se combinan en el cerebro para dar diversas sensaciones
de color. Desafortunadamente la producción de color en imágenes digitales RGB es similar en
cierto aspecto al uso de tres sensores para las luces R, G, y B, pero sin sensores para la intensidad
solamente (como las barras) y la ausencia de un analizador similar al cerebro humano para
interpretar contextual y psicológicamente las señales de estos tres sensores.
Las antes mencionadas característica de la producción de color en imágenes digitales dificulta
el proceso de interpretar el color en imágenes descuidando o reduciendo su contenido cromático
porque esta tarea se convierte en un problema de reducción de dimensionalidad, del espacio 3D
de la representación RGB al espacio 2D o 1D de intensidad: la reducción de color y la
conversión a escala de grises (C2G) respectivamente. Para algunos métodos de reducción de
color es un problema similar a la cuantificación de color y a comprimir la dimensionalidad de
gamut. Sin embargo, en cualquier caso, hay una pérdida de información visual, y la mayoría de
las veces la conversión por lo general preserva el contraste entre la luminosidad y el brillo sin
un apropiado manejo del significado de la cromacidad (tonalidad y saturación). Este es el caso
del método clásico de conversión de imágenes C2G cuyo uso está muy difundido.
El uso más recurrente de la reducción de color es la conversión de imágenes C2G, también
llamado supresión de color o decoloración, las cuales pueden dividirse en dos grupos, el primero
tiene como meta la percepción humana de imágenes en escala de grises, incluyendo el problema
de la conversión de color o la re coloración de imágenes para observadores humanos con una
visión de color deficiente; el segundo grupo tiene como meta el procesamiento de imágenes en
1D, incluyendo visión artificial, el uso de métodos bien establecidos para el análisis de imágenes
en escala de grises tales como la segmentación, umbralización, textura de segmentación, etc.
Más o menos, el primer grupo de métodos necesitan generar una imagen en escala de grises
perceptualmente equivalente a la imagen original a color, donde las diferencias percibidas entre
los colores de la imagen a color deben ser proporcionales a las diferencias percibidas en los
grises en la imagen en escala de grises, tarea bastante compleja. En cambio, el segundo grupo
2
de métodos necesitan generar imágenes en escala de grises con consistencia global, esto es,
cuando dos pixeles tienen el mismo color en la imagen a color, deberán tener el mismo nivel de
gris en la imagen en escala de grises.
Este trabajo es un estudio comparativo de más de 20 métodos C2G desarrollados durante los
últimos 18 años de este siglo de acuerdo con las publicaciones más recientes, no obstante, otros
métodos adicionales publicados en este lapso de tiempo son mencionados, confirmando que el
problema de la conversión de C2G es una activa área de investigación, principalmente porque
este problema raramente asegura la calidad y la eficiencia simultáneamente.
Objetivo General:
Implementar un paquete en Python para la reducción de dimensionalidad en imágenes a color.
Objetivos Específicos:
1. Determinar a partir del estado del arte, cuáles de los métodos existentes pueden ser apropiados para las aplicaciones en desarrollo actualmente.
2. Implementar el paquete Python para la reducción de dimensionalidad en imágenes a color.
3. Realizar un manual de usuario para el uso del paquete elaborado.
Tareas de investigación:
1. Descripción de los principales métodos para la reducción de dimensionalidad en imágenes
a color.
2. Implementación del paquete Python para la reducción de dimensionalidad en imágenes a
color.
3. Realización de pruebas de funcionamiento a la solución planteada.
4. Realización del manual de usuario.
Justificación de la Investigación:
Python es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis
que favorezca un código legible. Se trata de un lenguaje de programación multiparadigma, ya
que soporta orientación a objetos, programación imperativa y, en menor medida, programación
funcional. Es un lenguaje interpretado, usa tipado dinámico y es multiplataforma, cualidades
que lo han convertido en uno de los principales lenguajes usados actualmente. Por estas razones
existe la necesidad de un paquete en este lenguaje para el trabajo con imágenes y su
transformación C2G.
3
Hipótesis de Investigación:
1. La programación en un lenguaje amigable permitirá a especialistas de computación su
uso eficiente, además de posibles extensiones consecuentes.
2. Las nuevas implementaciones de los métodos de conversión de imágenes de color a
escala de grises permitirán mayor claridad y facilidades de interpretación a especialistas
que no son del área de computación, en particular, fotógrafos, médicos, etc.
Estructura de la Tesis:
A continuación, el desarrollo de la tesis se estructura de la siguiente forma. En el Capítulo 1 se
desarrolla el marco teórico de forma que este permita un conocimiento general del tema
abordado y la comprensión adecuada de los capítulos siguientes por parte de personal no
especialista en temas de Ciencias de la Computación. También se muestran los antecedentes
investigativos de las diversas técnicas de reducción de los espacios de color que permiten llevar
imágenes a escala de grises. En el Capítulo 2 se exponen los resultados de la presente
investigación, así como lo referente a los métodos implementados. En este capítulo, se
demuestran las ventajas de usar el lenguaje de programación Python y su impacto final en la
implementación de los métodos. Además, son señalados los diagramas de flujo diseñados de los
métodos implementados, así como las medidas de evaluación utilizadas para medir sus
desempeños. En el Capítulo final se muestran los resultados obtenidos en la implementación de
las medidas de evaluación, así como la aplicación creada para el uso del paquete. Se desarrolla
el Manual de Usuario, que expondrá de forma detallada, las utilidades del Software desarrollado,
así como todas las ventajas de su uso por personal con tareas de corte investigativo
computacional. Finalmente aparecen las conclusiones de la presente Tesis de Grado y el listado
de imágenes y tablas utilizadas.
4
CAPÍTULO 1. GENERALIDADES
En este capítulo se reseñan las nociones básicas, en aspectos teóricos y matemáticos del
planteamiento del problema. Se definen los conceptos de imagen digital, así como el sistema de
representación matemática de la misma, los espacios de color como forma de organización
específica de los colores en la imagen digital. También se realiza un estudio de las diferentes
técnicas de reducción de los espacios de color, así como su aplicación. Estos antecedentes dieron
paso a este trabajo. De esta manera está constituido el marco teórico para el desarrollo del
mismo.
1.1 La Imagen Digital a Color
Las imágenes digitales a color están hechas de píxeles, y los píxeles están formados por
combinaciones de colores primarios. Un canal en este contexto es la imagen en escala de grises
del mismo tamaño que la imagen a color, hecha de uno de estos colores primarios. Por ejemplo,
una imagen de una cámara digital estándar tendrá los canales rojo, verde y azul. Una imagen en
escala de grises tendrá sólo un canal.
En el dominio digital, puede haber cualquier número de colores primarios convencionales para
formar una imagen; un canal en este caso es similar a una imagen en escala de grises sobre
cualquier color primario convencional. Por extensión, un canal es cualquier imagen en escala
de grises del mismo tamaño que la "propia" imagen, y asociado con ella.
Una imagen RGB tiene tres canales: rojo, verde y azul. Los canales RGB derivan u obedecen a
los receptores de color del ojo humano, y se usan en monitores de ordenador y escáneres de
imagen. Si la imagen RGB es de 24 bits (estándar desde 2005), cada canal tiene 8 bits, para el
rojo, verde y azul, o sea, la imagen está compuesta de tres imágenes (una por cada canal, Figura
1), donde cada imagen puede almacenar píxeles con intensidades de brillo convencional entre 0
y 255. Si la imagen RGB es de 48 bits (alta resolución), cada canal está hecho de imágenes de
16 bits.
Figura 1 Ejemplo de separación de canales RGB.
Una imagen CMYK tiene cuatro canales: cian, magenta, amarillo y negro. CMYK es el estándar
para imprimir. Una imagen CMYK de 32 bits (estándar también desde 2005) está hecha de
5
cuatro canales de 8 bits, uno para el cian, uno para el magenta, uno para el amarillo y uno para
el negro. No es común almacenar imágenes CMYK de 64 bits (16 bits por canal), debido al
hecho de que CMYK es dependiente de dispositivo, mientras que RGB es el estándar genérico
para almacenamiento independiente de dispositivo.
En digitalización de imágenes, los canales de color se convierten a números. Como las imágenes
contienen miles de píxeles, cada uno con múltiples canales, los canales se codifican
normalmente con el menor número de bits posible. Los valores típicos son 8 bits por canal o 16
bits por canal.
Como el cerebro no percibe necesariamente diferencias en cada canal para el mismo grado que
en otros canales, es posible que cambiar el número de bits para cada canal resulte en un
almacenamiento más óptimo; en particular, para imágenes RGB, comprimir más el canal azul y
después el rojo puede ser mejor que dar el mismo espacio a cada canal. Este tipo de compresión
"preferencial" es el resultado de estudios que muestran que la retina humana en realidad utiliza
el canal rojo para distinguir el detalle, junto con el verde en menor medida, y usa el canal azul
como información ambiental o para el fondo. (Ortod, 2005)
1.1.1 Imagen Digital
Una imagen digital o gráfico digital es una representación bidimensional de una imagen a partir
de una matriz numérica, frecuentemente en binario (unos y ceros). Dependiendo de si la
resolución de la imagen es estática o dinámica, puede tratarse de una imagen matricial (o mapa
de bits) o de un gráfico vectorial.
Las imágenes digitales se pueden obtener de varias formas:
Por medio de dispositivos de entrada de conversión analógica-digital como los escáneres
y las cámaras digitales.
Directamente mediante programas informáticos editores de mapas de bits y dibujo
vectorial, como por ejemplo realizando dibujos con el ratón o tableta digitalizadora
gráfica incluyendo el lápiz óptico, por otro lado, mediante un programa de renderización
3D a mapa de bits.
Las imágenes digitales se pueden modificar mediante filtros, añadir o suprimir elementos,
modificar su tamaño, etc. y almacenarse en un dispositivo de grabación de datos como por
ejemplo un disco duro.
La mayoría de formatos de imágenes digitales están compuestos por una cabecera que contiene
atributos (dimensiones de la imagen, tipo de codificación, etc.), seguida de los datos de la
imagen en sí misma. La estructura de los atributos y de los datos de la imagen es distinto en
cada formato.
Además, los formatos actuales añaden a menudo una zona de metadatos ("metadata" en
fotografía (Escala de sensibilidad, flash, etc.) Estos metadatos se utilizan muy a menudo en el
formato extensión de cámaras digitales y videocámaras. (Ortod, 2005)
6
1.1.2 Imagen a Color. Espacio de Color
Un espacio de color es un sistema de interpretación del color, es decir, una organización
específica de los colores en una imagen o video. Depende del modelo de color en combinación
con los dispositivos físicos que permiten las representaciones reproducibles de color, por
ejemplo, las que se aplican en señales analógicas (televisión a color) o representaciones
digitales. Un espacio de color puede ser arbitrario, con colores particulares asignados según el
sistema y estructurados matemáticamente.
Un modelo de color es un modelo matemático abstracto que describe la forma en la que los
colores pueden representarse como tuplas de números, normalmente como tres o cuatro valores
o componentes de color (RGB y CMYK son modelos de color). Sin embargo, un modelo de
color que no tiene asociada una función de mapeo a un espacio de color absoluto es más o menos
un sistema de color arbitrario sin conexión a un sistema de interpretación de color.
Añadiendo cierta función de mapeo entre el modelo de color y un espacio de color de referencia
se obtiene una "huella" en el espacio de color de referencia. A esta "huella" se la conoce como
gama de color y, en combinación con el modelo de color, define un nuevo espacio de color. Por
ejemplo, Adobe RGB y sRGB son dos espacios de color absolutos diferentes basados en el
modelo RGB. (Figura 2)
Figura 2 Comparación de cromaticidades encerradas en un espacio de color.
En el sentido más genérico de la definición dada, los espacios de color se pueden definir sin el
uso de un modelo de color. Estos espacios son un conjunto de nombres o números definidos por
la existencia de un conjunto correspondiente de muestras de color físico. Se puede crear un
amplio rango de colores mediante pigmentos de colores primarios (cian (C), magenta (M),
amarillo (Y), y negro (K)). Esos colores definen un espacio de color específico. Para crear una
representación tridimensional de un espacio de color, se puede asignar la cantidad de magenta
al eje X de la representación, la cantidad de cian a su eje Y, y la cantidad de amarillo a su eje Z.
7
El espacio 3D resultante proporciona una única posición por cada color posible que puede ser
creado combinando estos tres pigmentos.
Sin embargo, este no es el único espacio de color posible. Por ejemplo, cuando se muestran los
colores en un monitor de ordenador, normalmente se definen en el espacio de color RGB (rojo,
verde y azul, Figura 1.3). Esta es otra forma de crear básicamente los mismos colores (limitado
por el medio de reproducción, como el fósforo (CRT) o filtros y luz de fondo (LCD)), y el rojo,
el verde y el azul pueden considerarse como los ejes X, Y y Z. Otra manera de crear los mismos
colores es usando su matiz (eje X), su saturación (eje Y), y su brillo (eje Z). A esto se le llama
modelo de color HSV.
Figura 3 Comparación entre los modelos de color RGB y CMYK. Esta imagen demuestra la diferencia de aspecto de
los colores en un monitor de ordenador (RGB) en comparación con su reproducción en CMYK en el proceso de
impresión.
Para definir un espacio de color, la referencia estándar habitual es el espacio de color CIELAB
o CIEXYZ, los cuales están diseñados específicamente para abarcar todos los colores que el ser
humano puede ver.
Dado que "espacio de color" es un término más específico para ciertas combinaciones de un
modelo de color más una función de mapeo, el término "espacio de color" tiende a usarse
también para identificar modelos de color. Al identificar un espacio de color, automáticamente
se identifica el modelo de color asociado. Informalmente, los dos términos se suelen
intercambiar con frecuencia, aunque esto es estrictamente incorrecto. Por ejemplo, aunque
varios espacios de color específicos se basan en el modelo RGB, no existe tal cosa como: el
espacio de color RGB.
La conversión del espacio de color es la traducción de la representación de un color de una base
a otra. Esto ocurre normalmente en el contexto de convertir una imagen representada en un
espacio de color a otro espacio de color, teniendo como objetivo que la imagen convertida se
parezca lo más posible a la original.
El modelo de color RGB está implementado de formas diferentes, dependiendo de las
capacidades del sistema utilizado. De lejos, la implementación general más utilizada es la de 24
bits, con 8 bits, o 256 niveles de color discretos por canal. Cualquier espacio de color basado en
8
ese modelo RGB de 24 bits está limitado a un rango de 256×256×256 ≈ 16,7 millones de colores.
Algunas implementaciones usan 16 bits por componente para un total de 48 bits, resultando en
la misma gama con mayor número de colores. Esto es importante cuando se trabaja con espacios
de color de gama amplia (donde la mayoría de los colores se localizan relativamente juntos), o
cuando se usan consecutivamente un amplio número de algoritmos de filtrado digital. El mismo
principio se aplica en cualquier espacio de color basado en el mismo modelo de color, pero
implementado en diferentes profundidades de color.
El espacio de color CIE 1931 XYZ fue uno de los primeros intentos de producir un espacio de
color basado en medidas de percepción de color y es la base de casi todos los demás espacios
de color. Entre los derivados de CIE XYZ se encuentran CIELUV, CIEUVW, y CIELAB.
El espacio de color RGB utiliza una mezcla de colores aditivos, porque describe qué tipo de luz
necesita ser emitida para producir un color dado. RGB almacena valores individuales para el
rojo, el verde y el azul. El espacio de color RGBA es RGB con un canal adicional alfa para
indicar transparencia. Entre los espacios de color basados en RGB se incluye sRGB, Adobe
RGB y ProPhoto RGB.
CMYK utiliza síntesis sustractiva de color utilizada en el proceso de impresión, porque describe
qué clase de tinta necesita aplicarse para que la luz reflejada desde el sustrato y a través de la
tinta produzca un color dado. Se empieza con un sustrato blanco (lienzo o página), y se utiliza
la tinta para sustraer el color del blanco para crear una imagen (Figura 1.4). CMYK almacena
valores de tinta para cian, magenta, amarillo y negro. Hay muchos espacios de color CMYK
para diferentes conjuntos de tintas.
Figura 4 Izquierda: Mezcla de colores aditivos (Tres colores superpuestos en un vacío se suman para crear el blanco)
Derecha: Mezcla de colores sustractivos (Tres colores en un papel blanco, se restan para volver el papel negro).
YIQ se utilizaba en las emisiones de televisión en formato NTSC (Norte América, Japón) por
razones históricas. Este sistema almacena un valor de luminancia con dos valores de cromancia,
correspondientes a las cantidades de azul y rojo. Es similar al esquema YUV utilizado en la
mayoría de sistemas de captura de vídeo y en el sistema PAL (Australia, Europa, excepto
Francia, que usa SECAM), excepto que el espacio de color YIQ se rota 33° con respecto al
espacio de color YUV. El esquema YDbDr usado por SECAM se rota de otra forma.
9
YPbPr es una versión escalada de YUV. Es bastante común en su forma digital, YCbCr, usado
ampliamente en compresión de vídeo y esquemas de compresión de imagen como MPEG y
JPEG.
xvColor es un nuevo espacio de color de vídeo digital internacional estándar publicado por la
Comisión Electrotécnica Internacional (IEC 61966-2-4). Se basa en los estándares ITU BT.601
y BT.709 pero extiende la gama más allá de los R/G/B primarios especificados en esos
estándares. (Wright, 1981)
1.1.3 Estándares de Colores
Un estándar o modelo de colores es un modelo matemático abstracto que permite representar
los colores en forma numérica, utilizando típicamente tres o cuatro valores o componentes
cromáticos. Es decir, un modelo de colores sirve en una aplicación que asocia a un vector
numérico un elemento en un espacio de color.
Figura 5 Modelo de color RGB.
Se sabe que se puede generar una vasta gama de colores por mezcla aditiva de los colores
primarios rojo, azul y verde. Estos colores juntos determinan un espacio de colores. Se puede
imaginar este espacio como un cubo alineado al sistema de coordenadas de un espacio
tridimensional, en el cual la cantidad de color rojo se representa a lo largo del eje X y la cantidad
de amarillo a lo largo del eje Z. (figura 1.5) En esta representación, cada color tiene una posición
única.
HSV (hue, saturation, value), también conocido como HSB (hue, saturation, brightness) es
usado a menudo por artistas porque es más natural pensar sobre un color en términos de matiz
y saturación que en términos de componentes de color aditivos o sustractivos. HSV es una
transformación de un espacio de color RGB, y sus componentes y colorimetría son relativos al
espacio de color RGB del que deriva.
HSL (hue, saturation, lightness/luminance), también conocido como HLS o HSI (hue,
saturation, intensity) es bastante similar a HSV, con la "claridad" reemplazando el "brillo". La
diferencia es que el "brillo" de un color puro es igual al brillo del blanco, mientras que la claridad
de un color puro es igual a la claridad de un gris medio.
10
Los modelos de colores más usados son RGB, CMYK, HSL, HSV y el modelo tradicional de
coloración. (Anderson, no date)
1.2 Técnicas de Reducción de los Espacios de Color
Acorde con la CIE (Commission Internationale de l’Eclairage), si el color es percibido como la
propiedad de una fuente de luz es llamado una apertura o color auto luminoso, o si es la
propiedad de una superficie, es llamado un color objeto.
Para colores apertura, las dimensiones son:
Tonalidad (T): La sensación según la cual un área parece ser similar a uno de estos
colores percibidos, correspondiente a los colores primarios rojo, amarillo, verde, azul y
magenta (tonos primarios).
Saturación (S): La sensación según la cual el color percibido de un área aparenta ser más
o menos cromático, juzgado en proporción a su brillantez. Representa la pureza del color
percibido como brillante o pálido.
Brillantez (B): La sensación a través de la cual un área parece emitir más o menos luz.
Corresponde a un sentimiento en términos de luz, como oscuro o luminoso, y caracteriza
el nivel luminoso del estímulo del color.
Para colores objeto las mismas definiciones de tonalidad y saturación son utilizadas, pero la
intensidad depende de la luz incidente y la reflectabilidad de la superficie, ambas definen el
termino de luminosidad (L).
La luminosidad L (x, y), reflectabilidad R (x, y) e iluminación IL (x, y) son asociadas por, L (x,
y) = IL (x, y) R (x, y).
La luminosidad es el atributo mediante el cual el objeto parece reflejar o transmitir más o menos
la luz incidente, aunque la brillantez es el atributo de fuente de luz mediante el cual la luz emitida
es ordenada de brillante a oscura, siendo un valor fotométrico (con unidades cm/m²).
El término luminancia (Ʌ) es empleado en la literatura para indicar el concepto de luminosidad
y brillantez juntos.
Tonalidad y saturación tratados juntos se denominan cromacidad, entonces un color puede ser
caracterizado por su luminancia y cromacidad.
La apariencia visual de una imagen a color puede ser reproducida fielmente a una imagen a
escala de grises. La conversión puede preservar los rasgos distintivos y un orden razonable del
color, mientras respeta la luminancia original de los colores.
La usual elección de luminancia como la cantidad para los valores grises es porque esta es la
respuesta acromática al estímulo de un color, midiendo cuanta luz parece tener un color
comparado con una luz blanca equivalente. La visión humana en si misma depende de la
luminancia más que de cualquier otra cosa. (L.~Busin, N.~Vandenbroucke and L.~Macaire,
2008)
11
Figura 6 Imagen del Monet, de Claude Oscar (Francia, 1840-1926) obra maestra “Impresión del Amanecer”
convertida a escala de grises por cinco métodos diferentes: b) la función rgb2gray de Matlab, c) L* del CIEL*a*b*, d)
RTCP, e) ApparentGreyscale, f) Kim09.
Mapear la información de una imagen a color en 3D hacia una imagen de 1D en escala de grises
preservando la apariencia original, el contraste y los mejores detalles no es una tarea trivial. No
hay una solución general para este problema, debido al hecho de que la mayoría de los
algoritmos existentes no pueden ejecutar bien en ciertas circunstancias y las imágenes
resultantes en escala de grises tienen bajo contraste y baja interpretabilidad. (Kingdom, 2011)
Para el procesamiento de intensidad de imágenes, las características importantes de la
conversión de C2G son:
La necesidad de que cuando dos pixeles tienen el mismo color, estos tengan el mismo
nivel de gris en la imagen en escala de grises.
La necesidad de un mapeo continuo reduciendo los datos artificiales de la imagen, tales
como los contornos falsos en regiones de color homogéneo.
Esas restricciones no son conocidas para todos los métodos de conversión de C2G,
principalmente son términos de mapeo local.
1.2.1 Métodos clásicos de conversión de color a escala de grises.
La noción de “clásicos” está relacionada con los métodos para la conversión de C2G
desarrollados durante el siglo XX que todavía están en uso en algunos softwares o aplicaciones.
1. Los métodos de suma pesada. También llamados métodos directos, en cuyos:
Gray = aR + bG + cB. Alternativas:
La recomendación CIE BT.601, con ajuste a = 0.298936021, b = 0.587043074,
y c = 0.114020904; como en los formatos de televisión monocromática NTSC,
12
PAL, y SECAM. También usada por la función rgb2gray de Matlab, la estándar
posdata, y el espacio de color YUV.
La recomendación CIE BT.709usada en la televisión de alta definición (HDT)
donde a = 0.2126, b = 0.7152, y c = 0.0722.
La “conversión promedia”, en la cual a = b = c = 1/3.
Para propósitos de detección de rostro, a = 0.85, b = 0.10, y c = 0.05.
Para la segmentación de células en imágenes de tumores, a = 0.219, b = 0.581, y
c = 0.200.
El modo no lineal (corrección-gamma), donde
Gray = a RR + b GG + c BB.
Se nota que en todas las alternativas a 0, b 0, c 0 y a + b + c = 1.
En la suma pesada persiste el problema de los colores con una pequeña diferencia de
luminosidad, pero gran diferencia en cromacidad (tonalidad y saturación), ya que no se
distinguirán en la imagen en escala de grises. Será lo mismo para imágenes con un único
color dominante o con baja iluminación de color. (Bala and Braun, 2003)
Figura 7 Conversión de RGB a escala de grises usando el método de suma pesada con los pesos NTSC. De arriba hacia
abajo: coordenadas en los cubos RGB en 3D, imágenes RGB originales, imágenes en escala de grises, y sus
histogramas.
2. Los espacios de color luminancia-cromancia. Así como un color puede ser expresado
por su luminosidad (imagen en escala de grises) y cromacidad (tonalidad y saturación),
en la literatura de la ciencia del color hay varios espacios de colores estándares que
sirven para separarlos.
Categorizados en la familia de los espacios luminancia-cromancia están:
13
YUV,
CIEL*a*b*,
HSV,
HSL,
YIQ,
YCbCr, etc.
La luminancia obtenida de cada uno de esos espacios de color es diferente, entonces la
transformación de RGB a escala de grises puede ser cumplida a través de ellos con
resultados diferentes.
Figura 8 Conversión de RGB a escala de grises de las mismas tres imágenes de colores usando la capa L* del espacio
de color CIEL*a*b*.
14
Figura 9 Conversión de RGB a escala de grises de las mismas tres imágenes de colores usando la componente L del
espacio de color HSL.
El espacio de color HSL debe sus capacidades a dos hechos: 1) La luminancia (L) es
desemparejada de la cromancia, y 2) La tonalidad (T) y saturación (S) están íntimamente
relacionas a la manera en que los humanos perciben la cromancia.
Ideal para aplicaciones de procesamiento de imágenes donde la cromancia es de importancia
más que la percepción del color en su totalidad. (Bala, Eschbach and York, 2004)
1.2.2 El Problema de la conversión de color a escala de grises.
El propósito general de esta tarea de reducción de dimensión es como utilizar el rango limitado
en la escala de grises para preservar tanto como sea posible las características originales, las
estructuras salientes, el contraste de color, y otras importantes metas visuales y restricciones
lógicas. (Hassen, Wang and Salama, 2015)
A pesar de la gran proliferación de los métodos de conversión C2G, no todos estos algoritmos
están listos para la gran variedad de aplicaciones prácticas, por los siguientes problemas (Song
et al., 2010):
1. Las vistas visuales no están bien definidas, por lo que no es claro como preservar vistas
importantes en las imágenes en escala de grises transformadas.
2. Algunos algoritmos tienen un tiempo de costo extremadamente alto para computarlos; y
15
3. Otros requieren interacciones humano-computadora para tener una transformación
razonable.
Los propósitos visuales para la conversión de C2G son los siguientes cinco:
1. Preservación de característica. Las características de la imagen a color deben permanecer
definidas en la imagen en escala de grises.
2. Magnitud de contraste. La magnitud de los contrastes de la escala de grises debe reflejar
la magnitud de los contrastes de los colores (Wu and Toet, 2014). El contraste de color
entre dos pixeles p y q, en el espacio de color CIEL*a*b* es,
Cp, q = √(𝐿𝑝∗ − 𝐿𝑞∗ )2+ (𝑎𝑝∗ − 𝑎𝑞∗)
2+ (𝑏𝑝∗ − 𝑏𝑞∗)
2
3. Polaridad de contraste. La polaridad positiva o negativa del cambio de nivel de gris en
los contrastes de la escala de grises debe corresponder visualmente al cambio de polaridad
de la luminancia en los contrastes de color.
4. Fidelidad de Luminosidad. Las imágenes a color y escala de grises deben tener un
estímulo similar de luminosidad.
5. Rango dinámico. El rango dinámico de los niveles de gris en la imagen en escala de grises
debe concordar visiblemente con el rango dinámico de los valores de luminancia en la
imagen a color.
Las restricciones lógicas para la conversión C2G son las cuatro siguientes:
1. Mapeo continuo. La trasformación debe ser una función continua, reduciendo datos
artificiales, tales como un contorno falso en regiones homogéneas de la imagen.
2. Consistencia global. Cuando dos pixeles tienen el mismo color en la imagen a color,
tendrán el mismo nivel de gris en la imagen a escala de grises. También llamado
consistencia del mapeo. (Haritha and Reddy, 2013)
3. Preservación de la escala de grises. Cuando un pixel en la imagen a color es gris, este
tendrá el mismo nivel de gris en la imagen a escala de grises.
4. Disposición de la luminancia. Cuando una secuencia de píxeles de luminancia creciente
en la imagen a color comparte la misma tonalidad y saturación, tendrá crecientes niveles
de gris en la imagen a escala de grises. También llamado consistencia local de la
luminancia cuando está relacionada con gradientes de luminancia. (Wu and Toet, 2014)
Dos criterios prácticos pueden ser considerados (Benedetti et al., 2010):
1. Alta eficiencia. La transformación de C2G es asociado a aplicaciones. Para modificar
interactivamente los resultados de conversión, el algoritmo debe ser lo suficiente rápido para
una interacción preferida a tiempo real.
2. Aprendizaje no supervisado. El algoritmo no necesita intervención del usuario para evadir
la variabilidad de la escala de grises final causada por criterios subjetivos.
El aprendizaje no supervisado es particularmente importante cuando el algoritmo de
conversión de C2G es una etapa pre-procesamiento de un sistema de procesamiento de
imágenes digitales o un esquema de análisis de imágenes.
16
1.2.3 Categorías de los métodos en estado-del-arte de C2G.
Los métodos en estado-del-arte tratan de satisfacer algunos objetivos y restricciones citados
adoptados de las estrategias de mapeo global, local, o híbrido. (Kim et al., 2009)
Mapeo Global de C2G. El mismo mapeo de C2G es usado para todos los píxeles en la
información. Mapea consistentemente los mismos colores a los mismos valores en la
escala de grises sobre una imagen, garantizando una conversión homogénea de las
regiones de color constante.
Sería más desafiante determinar un mapeo global que preserve características locales en
posiciones diferentes al mismo tiempo.
Los métodos de mapeo global pueden más específicamente dividirse en:
Algoritmos de imágenes independientes, tales como el cálculo de la luminancia, y
Algoritmos de imágenes dependientes incorporando información estadística sobre el
color de la imagen, o información multi-espectral.
El más popular de los algoritmos de mapeo global de imágenes dependientes es
Decolorize (Grundland and Dodgson, 2007).
Figura 10 Tres parámetros independientes de control son usados: realce de control , selección de escala , supresión
de sonido . Ejemplo usando = 0.3, = 25, y = 0.001.
17
Mapeo Local de C2G. También llamado métodos espaciales, se basan en la suposición
de que la transformación de C2G necesita ser definida tal que píxeles diferentes entre sí
sean preservados.
El mapeo de valores de píxeles es espacialmente variado, dependiendo de las
distribuciones locales de los colores.
El paso de avance hacia los algoritmos espaciales es motivado porque para ciertas
aplicaciones, preservar la información de la luminancia por si misma puede no resultar
en la salida deseada.
Aunque el mapeo local ha ayudado a la hora de preservar las características locales,
regiones de colores constantes pueden ser convertidos no homogéneamente si el mapeo
cambia en las regiones.
Mapeo Híbrido de C2G. Algunos métodos de conversión de C2G globales tienen en
cuenta aspectos locales, mientras que algunos métodos de conversión de C2G locales
consideran coherencias globales.
Estos métodos realizan la tentativa de preservar las características tanto locales como
globales simultáneamente, y su meta es aumentar la exactitud perceptual más que
exagerar el discernimiento.
Como ejemplo, el método ApparentGrayscale (Smith, 2008), el cual usa un enfoque de
dos pasos, el primero, asigna globalmente valores de gris y determina el orden de color,
y el segundo, localmente realza la escala de grises para reproducir el contraste original.
Tabla 1 Los métodos en estado-del-arte para la conversión de C2G con mapeo global.
No. Autores Año Método Descripción Dificultades
1 Bala and
Braum 2004 BalaB04
(Bala and
Braun,
2003)
Se proponen dos
alternativas: espaciado
por igual en gris y
espaciado de acuerdo a su
diferencia de color en 3D
a partir de colores
adyacentes a aquellos a lo
largo de la dimensión de
luminosidad
Únicamente para gráficos por
encima de 10 colores y no es
aplicable a imágenes
complejas (Smith, 2008)
(Song et al., 2013)
2 Gooch,
Olsen,
Tumblin,
And Gooch
2005 Color2Gray
(Gooch et
al., 2002)
Impone el contraste de
color entre los píxeles
considerando variaciones
de brillo de acuerdo a
Significantes contrastes de
color no pueden ser bien
representados en la imagen en
escala de grises, el orden de
18
tonalidades en el espacio
de color CIEL*a*b*
grises contradice el orden de la
luminancia de colores
3 Rasche,
Geist, and
Westall
2005
(a,b)
Rasche05
(Rasche,
Geist and
Westall,
2005)
Enfocado en la reducción
de dimensión de color
para observadores con
deficiencia de color.
Define restricciones
directamente en diferente
pares de colores
obteniendo un mapeo
lineal global continuo
para asignar colores
similares a valores
similares de la escala de
grises usando una
comparación prudente de
pares entre colores
muestreados
El orden de la escala de grises
contradice el orden de
luminancia de los colores,
además es requerida una
cuantificación del color para
reducir el extremo costo
computacional del
procedimiento de
optimización, lo que resulta en
datos artificiales en imágenes
naturales con tonos continuos
4 Grunland
And
Dogson
2007 Decolorize
(Grundland
and
Dodgson,
2007)
Similar al Rasche05, pero
mejorando la eficiencia
computacional al usar el
análisis de componente
predominante (PdCA)
para encontrar el
componente en 1D que
maximiza el contraste
No toma en consideración
diferencias cromáticas que son
espacialmente distantes,
mapeando en algunos casos
colores diferentes hacia
niveles de gris bastante
similares. Es necesaria la
intervención del usuario
5 Kim, Jang,
Demouth,
and Lee
2009 Kim09
(Kim et al.,
2009)
Optimiza el Color2Gray
usando un rápido modelo
paramétrico no lineal. El
mapeo global es una
función no lineal de la
luminosidad, cromancia y
tonalidad de colores
El contraste significante de los
colores no puede ser bien
representado en la imagen en
escala de grises, enturbiando
los detalles finos. La
influencia de contraste
cromático en aspectos
discriminantes requiere de
intervención por parte del
usuario
6 Cui, Hu,
Razdan,
and
2009 Cui09 Introduce el ISOMAP
para formar un método no
lineal de reducción de
La imagen en escala de grises
puede presentar datos
artificiales tales como ruido de
19
Wonka (Cui et al.,
2010)
dimensión para mapear
vectores con alta
dimensionalidad de color
a los de baja
dimensionalidad
sal y pimienta, en dependencia
del parámetro k en los
vecinos-cercanos-k (KNN)
busca cuando no es lo
suficientemente grande. Al
incrementar k incrementa
significativamente el tiempo
computacional
7 Lu, Xu,
and Jia
2012 RTCP
(Lu, Xu and
Jia, 2012)
Adopta contexto espacial
en consideración del
método global, propone
una función bimodal de
energía de preservación
de contraste, junto con
restricciones locales y no
locales
La técnica de optimización
para resolver el modelo es
iterativa, necesitando un alto
tiempo de ejecución. Puede no
ser capaz de capturar todos los
detalles de la imagen y tiende
a producir datos falsos en la
escala de grises
8 Song,
Tao,
Chan, Bu,
and Yang
2013 Song13
(Song et al.,
2013)
Primero define la
Oportunidad de
Ocurrencia (CoH) de
acuerdo al principio
Helmholtz-Kohlrausch,
para medir el nivel de
atención de cada pixel en
la imagen a color.
Después introduce
estadísticas de la imagen
natural para estimar el
CoH de cada pixel
El tamaño de la ventana de
muestra debe ser seleccionado
manualmente, si es muy
pequeño la imagen computada
en escala de grises no podrá
preservar bien el CoH,
convergentemente si la
ventana de prueba se vuelve
mayor el CoH puede
preservarse mejor, pero el
ruido es incluido al mismo
tiempo
9 Zhu, Hu,
and Liu 2013 Zhu13
(Zhu, Hu
and Liu,
2014)
Reproduce la apariencia
percibida de una imagen
a color en su versión en
escala de grises. Basado
en la Teoría de Filtro,
introduce el concepto de
Canal Saliente para medir
el nivel de contraste de
diferentes canales
El cálculo del saliente puede
no converger, por lo que
establece el canal saliente a 0.
La optimización de la función
de energía será vulnerable a
gran ruido. El ajuste en el
mapa de contraste puede
causar datos artificiales
10 Jin and
Ng 2015 Jin15
Basado en la
combinación de valores
de píxeles en los canales
R,G y B. EL problema de
Los parámetros 𝜏 y 𝜇 se
pueden seleccionar de acuerdo
a reglas sin su cálculo óptimo
20
(Jin, Li and
Ng, 2014)
optimización trae consigo
la maximización de la
varianza de la imagen
saliente en escala de
grises
11 Liu, Liu,
Xie,
Wang,
and Liang
2015 GcsDecolor
1
(Liu et al.,
2015)
Propone un modelo no
lineal de mapeo global de
similaridad de gradiente
de correlación (Gcs)
trabajando en el espacio
de color RGB
directamente y determina
la solución con el
máximo valor Gcs a
partir del modelo
paramétrico lineal
inducido candidatos
discretizados de imágenes
Contiene un parámetro 휀1 para
evadir la inestabilidad
numérica con valores típicos
entre 1.3 y 1.5, pero es
dependiente de la imagen
12 Yoo, Lee,
and Lee 2015 Yoo15
Preserva la significancia
de una secuencia de color
durante la decoloración a
través del mapeo de
colores a una parrilla en
el espacio de color
CIELAB
Desde que ignora los valores
de saturación y luminosidad de
tonalidades similares y así
colores de tonalidad similar,
los cuales solo forman una
secuencia por mérito de
diferida saturación o
luminosidad, no será detectado
como una secuencia de color.
Como varios parámetros para
ser ajustados por el usuario
13 Liu, Liu,
Wang,
And Leung
2016 SPDecolor
(Liu et al.,
2017)
Un modelo polinomial
multivarianza de orden
dos el cual optimiza solo
parámetros de peso
parcial. El propósito de
esta decoloración
semiparamétrica es
mitigar el modelaje y las
deficiencias numéricas de
la penalización del
gradiente de error (GE)
bajo la formulación
polimonial multivarianza
de orden dos
En la actualidad hace uso de la
función rgb2gray de Matlab
como inicialización, pero
futuras versiones considerarán
como inicialización la imagen
obtenida por otros enfoques
más avanzados
21
14 Sowmya,
Govind,
And Somar
2016 C2Gcodesvd
La imagen de entrada en
RGB es convertida al
espacio CIEL*a*b* para
procesar los componentes
de luminancia y
cromancia
independientemente. La
información de
cromancia de la imagen
de entrada a color es
entonces analizada
usando SVD
La ejecución es
estadísticamente menos
significante que el CPDecolor.
Sin embargo, tiene baja
complejidad computacional
Tabla 2 Los métodos en estado-del-arte para la conversión de C2G con mapeo local.
No. Autores Año Método Descripción Dificultades
1 Bala and
Eschbach
2004 BalaE04
(Bala,
Eschbach
and York,
2004)
Aplica un filtro de alto
pase para cada canal
cromático del espacio de
color de CIEL*a*b para
forzar el contraste local,
pesa la salida con un
término dependiente de la
luminancia y agrega la
cromaticidad filtrada al
canal de luminosidad
Susceptible a problemas en la
cromancia o luminosidad, y
puede convertir no
homogéneamente regiones
constantes de color. Tiene el
peor desempeño en la
evaluación de Cadik
2 Neumann,
Cadík,
and
Nemcsics
2007 Neuman07
(Neumann,
Cadik and
Nemcsics,
2007)
Propone un método local
basado en el gradiente de
color para obtener la
mejor imagen perceptual
en escala de grises medido
en su espacio de color
Coloroid, así como en el
espacio de color
CIEL*a*b*
Los detalles de la imagen y
aspectos salientes pueden
perderse por comportamiento
impredecible en regiones
inconsistentes del campo
gradiente y puede convertir
no homogéneamente la
apariencia de regiones
constantes de color
3 Wu, Shen,
and Liu
2012 Wu12
(Wu, Shen
and Liu,
2012)
Utiliza un enfoque de dos
escalas. La imagen es
descompuesta como
segmentos perceptuales.
El tono gris global de la
resultante imagen en
Necesita intervención del
usuario
22
escala de grises es
determinado por el color
promediado de cada grupo
circundante
4 Zhou,
Sheng,
and Ma
2014 CPDM
Usa saliente de color e
información de posición
para mantener el contraste
original
Aunque es garantizada una
mejor ejecución para la
mayoría de las imágenes, hay
algunos casos en los cuales la
detección del saliente falla
para destacar el objeto
saliente
5 Liu, Liu,
Xie,
Wang, and
Liang
2015 GcsDecolor
2
(Liu et al.,
2015)
Similar al GcsDecolor 1
pero con un solucionador
no iterativo utilizando una
estrategia de búsqueda
discreta. En comparación
con el GcsDecolor 1 tiene
ventaja en términos de
simplicidad
Tiene el parámetro 휀2 para
prevenir la inestabilidad
numérica. A pesar de ser muy
robusto, cuando 휀2 tiende a 0
descalifica el modelo
ingenuo
6 Günes,
Kalkan,
And
Durmus
2015 Gunes15
(Güneş,
Kalkan and
Durmuş,
2016)
Con propósitos de
clasificación los
coeficientes adaptativos de
conversión C2G son
optimizados para generar
imágenes en escala de
grises más discriminantes
para reducir el error en la
clasificación de imagen
basado en algoritmos
genéticos (GA)
Dificultad para determinar
cuáles y cuantos aspectos son
los mejores para suficiente
información discriminante
7 Nguyen
And
Havlicek
2015 Constrained
Optimization
Grayscaler
(COG)
(Havlicek,
no date)
La imagen en escala de
grises es modelada como
una combinación lineal de
los canales de color
L*a*b* donde los
coeficientes mezclados
son computados por un
esquema programado de
restricciones cuadráticas
No reportados
23
usando aspectos de
dominio de la modulación
de la imagen a color de
entrada
8 You,
Barnes,
And Walker
2016 You16
(You,
Barnes and
Walker,
2016)
Mide dos propiedades:
brillantez y contraste de
color. Un gráfico basado
en un cuandro de
optimización balancea las
mediciones de la brillantez
y el contraste. Para
resolver la optimización,
un método basado en la
norma 𝐿1 convierte las
discontinuidades de color
a discontinuidades de
brillantez
No reportados
Tabla 3 Los métodos en estado-del-arte para la conversión de C2G con mapeo híbrido.
No. Autores Año Método Descripción Dificultades
1 Smith,
Landes,
Thollot y
Myszkowski
2008 Apparent-
Grayscale
(Smith,
2008)
Usan un acercamiento en
dos pasos para asignar
globalmente valores
grises y determinar el
ordenado del color y
además para mejorar
localmente la escala de
grises reproduce el
contraste original
aumentando el brillo
localmente para mejorar
los filos cromáticos.
Un contraste de color
significativo no puede ser bien
representado en una imagen de
escala de grises, puede
produces hechos falsos locales
ya que la mejora del detalle
puede conducir a pixelar la
imagen. No se puede restaurar
el contraste cromático entre
regiones no adyacentes.
2 Kuk, Ahn y
Cho
2011 Kuk11 Adopta un contexto
espacial en consideración
de un método global para
Se necesita interacción
humana, además dificultando
encontrar parámetros óptimos
24
(Kuk, Ahn
and Cho,
2011)
buscar colores punteros
usando k-means. Se
consideran
simultáneamente
los contrastes locales y
globales y se codifican
usando una función
energética.
para preservar la misma
percepción de la imagen
original, ya que falta una guía
visual para automáticamente
generar imágenes óptimas en
escala de grises.
3 Ancuti,
Ancuti y
Bekaert
2011 Ancuti11
(Ancuti,
Ancuti and
Bekaert,
2011)
Se mezcla la información
cromática y la luminancia
para conservar
la disparidad inicial de
color mientras se mejora
el contraste cromático, lo
que permite que áreas
salientes y no salientes
tengan diferentes
variaciones de
tonalidades.
Pueden aumentarse los hechos
falsos en la imagen a colores
debido a la compresión.
Ajustar manualmente los
parámetros angulares puede
perjudicar
el contraste cromático y puede
fallar cuando se emplean
regiones que no
reflejan la verdadera
información saliente de la
imagen.
4 Lu, Xu y Jia 2014 CPDecolor
(Lu, Xu
and Jia,
2012)
El método de
decoloración preservando
el contraste generaliza el
modelo de mapeo
considerando pares de
colores no locales y
combinando los límites
locales y no locales en la
optimización.
No preserva bien el contraste
local.
5 Wu y Toet 2014 Wu14
(Wu and
Toet,
2014)
Se calcula un mapa de
pesos para cada canal de
color, este mapa esta
compuesto por varias
métricas visuales de
calidad. A continuación,
un mapa con pesos de
múltiple resolución es
construido para cada
La contribución relativamente
fuerte al factor de contraste a
los pesos compuestos puede
resultar en una sobre mejora de
los bordes en las estructuras, y
la tonalidad perceptual puede
perderse.
25
canal aplicando una
pirámide gaussiana de
transformación a cada
mapa.
6 Jin, Li y Ng 2014 Jin14
(Jin, Li
and Ng,
2014)
Utiliza un enfoque
variacional usando un
método de optimización
de maximización de
varianza y de
conservación del brillo.
Una función de
energía determina las
transformaciones locales
para combinar los canales
de colores.
Puede causar varios errores en
algunas regiones suaves debido
a la sobrepoblación de
contornos. Presenta parámetros
que deben ser definidos por el
usuario.
7 Ji, Fang,
Wang y ma
2015 Ji15
(Ji et al.,
2016)
Presenta un mapeo rápido
y eficiente para preservar
rasgos dominantes en las
imágenes a color. Se basa
en una variante
tradicional de diferencias
gaussianas que se llama
filtro de luminancia.
Algunos rasgos locales en la
imagen de color no pueden ser
preservados
en la imagen de escala de
grises resultante.
8 Du, He,
Sheng, Ma,
y Lau
2015 Du15
(Du et al.,
2015)
Enfatiza el contraste de
color en las áreas borde
basadas en un modelo
basado en regiones. Se
desarrolla una función de
mapeado paramétrico
basada en información
global del color así como
de contraste local.
Dada que la función de
mapeado considera no solo la
información del
color de los pixeles objetivos
sino además del color que
rodea a esta
área, el mismo color en la
imagen original puede ser
mapeada a valores
diferentes a cada escala de
grises.
26
1.3 Conclusiones del capítulo
En este capítulo se especifican los conceptos necesarios sobre imagen digital, espacio de color
y estándares de colores. Se define toda la teoría sobre las técnicas de reducción de los espacios
de color, así como los métodos clásicos de conversión C2G. Se expresan los problemas
existentes en la conversión de color a escala de grises, el cómo esta no es una tarea trivial debido
a la alta complejidad que representa la reducción de dimensionalidad de imágenes a color. Se
presenta un compendio de los métodos en estado-del-arte actuales en los cuales se basa esta
tesis.
27
CAPÍTULO 2. Materiales y Métodos
2.1 El Lenguaje Python
Python es un lenguaje de programación de alto nivel cuya filosofía hace hincapié en una sintaxis
muy limpia y que favorezca un código legible. Se trata de un lenguaje de programación
multiparadigma ya que soporta orientación a objetos, programación imperativa y, en menor
medida, programación funcional. Es un lenguaje interpretado, usa tipado dinámico, es
fuertemente tipado y multiplataforma. (Knowlton, 2009)
Python es un lenguaje de programación multiparadigma. Esto significa que más que forzar a los
programadores a adoptar un estilo particular de programación, permite varios estilos:
programación orientada a objetos, programación imperativa y programación funcional. Otros
paradigmas están soportados mediante el uso de extensiones. Python usa tipado dinámico y
conteo de referencias para la administración de memoria. (Martelli, 2007)
Otro objetivo del diseño del lenguaje es la facilidad de extensión. Se pueden escribir nuevos
módulos fácilmente en C o C++. Python puede incluirse en aplicaciones que necesitan una
interfaz programable. (Oliphant, 2007)
Los usuarios de Python se refieren a menudo a la Filosofía Python que es bastante análoga a la
filosofía de Unix. El código que sigue los principios de Python de legibilidad y transparencia se
dice que es "pythonico". Contrariamente, el código opaco u ofuscado es bautizado como "no
pythonico". Estos principios fueron famosamente descritos por el desarrollador de Python Tim
Peters en El Zen de Python
Bello es mejor que feo.
Explícito es mejor que implícito.
Simple es mejor que complejo.
Complejo es mejor que complicado.
Plano es mejor que anidado.
Disperso es mejor que denso.
La legibilidad cuenta.
Los casos especiales no son tan especiales como para quebrantar las reglas.
Aunque lo práctico gana a la pureza.
Los errores nunca deberían dejarse pasar silenciosamente.
A menos que hayan sido silenciados explícitamente.
Frente a la ambigüedad, rechaza la tentación de adivinar.
Debería haber una -y preferiblemente sólo una- manera obvia de hacerlo.
Aunque esa manera puede no ser obvia al principio a menos que usted sea holandés.
Ahora es mejor que nunca.
Aunque nunca es a menudo mejor que ya mismo.
Si la implementación es difícil de explicar, es una mala idea.
28
Si la implementación es fácil de explicar, puede que sea una buena idea.
Los espacios de nombres (namespaces) son una gran idea ¡Hagamos más de esas
cosas!
Tim Peters, El Zen de Python
2.2 Diagrama de las Bibliotecas de Reducción de Dimensionalidad creadas.
En este epígrafe se hará una descripción de la teoría matemática detrás de los métodos
implementados, además de los Diagramas de flujo de cada uno para una mejor comprensión de
los mismos y de su desempeño.
2.2.1 Decolorize (Decolor_linear2006)
Este método está basado en la publicación “Decolorize: fast, contrast enhancing, color to
grayscale conversion” (Grundland and Dodgson, 2007). Tiene la ventaja de un mapeo
constante, una consistencia global y preservación de la escala de grises, así como unas
previsibles propiedades de arreglo de luminancia, saturación y tonalidad.
El algoritmo tiene como entrada una imagen a color RGB de la forma (𝑅𝑖, 𝐺𝑖,𝐵𝑖) ∈ [0,1]3 y
produce una imagen en escala de grises como salida de la forma 𝑇𝑖 ∈ [0,1]. Evadiendo los
problemas de corrección gamma, se asumen valores de color y escala de grises lineales. El
proceso es controlado por tres parámetros: el grado de realce de la imagen λ, el típico tamaño
de las características relevantes de la imagen en píxeles 𝜎 y la proporción de los píxeles de la
imagen en el borde exterior .
Los valores de color RGB de cada pixel son convertidos a valores de color YPQ, cuyos canales
son análogos a los canales de colores en el procesamiento visual humano. Este consiste en un
canal de luminancia acromático 𝑌𝑖 ∈ [𝑌𝑚𝑖𝑛, 𝑌𝑚𝑎𝑥] = [0,1] y un par de canales cromáticos de
colores opuestos: amarillo-azul 𝑃𝑖 ∈ [−𝑃𝑚𝑎𝑥 , 𝑃𝑚𝑎𝑥] = [−1,1] y rojo-verde 𝑄𝑖 ∈
[−𝑄𝑚𝑎𝑥, 𝑄𝑚𝑎𝑥] = [−1,1].
Para encontrar los ejes de color que mejor representen la pérdida en los diferentes contrastes
cromáticos al mapear la conversión de color a escala de grises, se introduce una nueva estrategia
de reducción de dimensionalidad basada en un análisis de componentes predominantes. En
contraste a los principales métodos de análisis de componentes, los cuales se optimizan con la
variabilidad de observaciones, el método de análisis de componentes predominantes se optimiza
con las diferencias entre las observaciones.
Posteriormente se propone fusionar la información de luminancia y cromancia de la imagen y
finalmente se utiliza la saturación para calibrar la luminancia mientras se ajusta su grado
dinámico y se compensa el ruido de la imagen.
La transformación resultante del color y los valores de saturación (𝑅𝑖, 𝐺𝑖,𝐵𝑖, 𝑆𝑖) a niveles de gris
𝑇𝑖 puede ser representada como un mapeo linear continuo:
29
𝑇𝑖 = 𝐺𝑗𝑖𝑅𝑖 + 𝑔𝑗𝑖𝐺𝑖 + 𝑏𝑗𝑖𝐵𝑖 + 𝑠𝑗𝑖𝑆𝑖 + 𝑡𝑗𝑖 para 𝑗𝑖 ∈ 1, 2, 3, 4, 5
Para producir la imagen resultante 𝑇𝑖, el algoritmo combina linealmente el canal de luminancia
𝑌𝑖 con retroalimentación del canal de crominancia predominante 𝐶𝑖 o el canal de saturación 𝑆𝑖. En ambos casos la polaridad del canal de predominancia cromática permite determinar si la
retroalimentación es positiva o negativa.
Diagrama de Flujo:
Iniciar decolor_linear2006
Imagen RGB
Definir espacio de color YPQ
Convertir la imagen al espacio YPQ
Normalizar Imagen
Finaliza decolor_linear2006 Imagen
Grayscale
¿Argumentos correctos?
Establecer valores por defecto
NO
SI
Formar parejas cada pixeles y una
muestra aleatoria
Calcular la diferencia de color entre las parejas de
pixeles
Derivar un eje cromático a partir
de las diferencias de color encontradas
Proyectar el contenido cromático de la imagen a el
eje cromático
Combinar los tonos acromáticos con el contenido
proyectado
Ajustar el rango dinámico de la imagen
Figura 11 Diagrama de Flujo Decolor_Linear2006
2.2.2 GcsDecolor2
Este método está basado en la publicación “GcsDecolor: Gradient Correlation Similarity for
Efficient Contrast Preserving Decolorization” (Liu et al., 2015). Presenta una nueva similitud
de gradiente de correlación (Gcs) que calcula la suma del gradiente de correlación entre cada
canal de la imagen a color y la imagen en escala de grises, realizando un mapeo local.
Con el objetivo de mantener las características discriminantes en la conversión de color a gris,
una estrategia común es minimizar la distancia de diferencias de píxeles entre la imagen a color
y la resultante en escala de grises. Asumiendo que la imagen a color dada está en formato RGB,
donde los índices r, g, b representan los canales de RGB. Suponemos que 𝛿𝑥,𝑦, donde (|𝛿𝑥,𝑦| =
30
√∑ (𝐼𝑐,𝑥 − 𝐼𝑐,𝑦)2
𝑐=𝑟,𝑔,𝑏 ) es el contraste de color teniendo un valor asignado indicando la
diferencia de un par de color y 𝑔𝑥 − 𝑔𝑦 denota el valor de la diferencia de gris entre los pixeles
𝑔𝑥 y 𝑔𝑦 respectivamente, entonces la norma clásica L2 se define como:
min𝑔∑ (𝑔𝑥 − 𝑔𝑦 − 𝛿𝑥,𝑦)
2(𝑥,𝑦)∈𝑃 , la cual está basada en la función de energía:
min
𝑤𝑐−∑ ∑
2(|∇𝐼𝑐,𝑖| + 휀1)|𝑠𝑖|
(|∇𝐼𝑐,𝑖| + 휀1)2+ |𝑠𝑖|2𝑐=𝑟,𝑔,𝑏𝑖
𝑠. 𝑡. 𝑠 = ∑ 𝑤𝑐∇𝐼𝑐; ∑ 𝑤𝑐 = 1
𝑐=𝑟,𝑔,𝑏𝑐=𝑟,𝑔,𝑏
Donde 휀1 es una constante positiva que aporta estabilidad numérica.
La imagen estimada g con la función de energía reescrita puede ser una forma paramétrica. El
valor P sería un grupo de pares de píxeles que contienen los candidatos locales y no locales.
Incorporando las diferencias entre los pixeles distantes en la función de energía hacemos que el
modelo trate bien con no solo pixeles cercanos entre si sino con regiones de contraste a larga
escala.
Intuitivamente, el modelo derivado de Gcs posee dos beneficios. El primero, calculando la
correlación entre dos valores absolutos se elimina la dificultad de determinar el signo de 𝛿𝑥,𝑦.
El segundo, al dividir el número de pares de pixeles en P, el valor de Gcs medido cae en el
intervalo de [0,3] para cada conversión de color a gris. Por lo tanto, esto da un valor universal,
que tiene el potencial de ser usado para la evaluación de la conversión entre diferentes imágenes.
La estrategia de búsqueda discreta adoptada se basa en reconocer que variaciones ligeras en los
pesos no cambiarán mucho la apariencia de la escala de grises, por esto se reduce el espacio de
solución y se busca la posible solución óptima en un rango discreto de 66 candidatos. Esta
estrategia reduce muchísimo los valores candidatos establecidos y reduce el tiempo de
ejecución. Asumiendo como 𝑔 = ∑ 𝑤𝑐𝐼𝑐𝑐=𝑟,𝑔,𝑏 , donde la restricción de los parámetros de peso
es 𝑤𝑐 ≥ 0, 𝑐 = 𝑟, 𝑔, 𝑏; ∑ 𝑤𝑐 = 1𝑐=𝑟,𝑔,𝑏 . La función objetivo es establecida como:
𝐺𝑐𝑠(𝑔) = −∑ ∑2(|𝐼𝑐,𝑥−𝐼𝑐,𝑦|+ 2)|𝑔𝑥−𝑔𝑦|
(|𝐼𝑐,𝑥−𝐼𝑐,𝑦|+ 2)2+|𝑔𝑥−𝑔𝑦|
2𝑐=𝑟,𝑔,𝑏(𝑥,𝑦)∈𝑃 donde 휀2 es una constante positiva que
provee estabilidad numérica. Después de discretizar el espacio de solución de 𝑤𝑟, 𝑤𝑔, 𝑤𝑏 en el
rango de [0,1] con intervalo 0.1, el espacio de búsqueda es por lo tanto 𝐽(𝐽 + 1)/2 = 66, 𝐽 =
11 al incorporar la restricción ∑ 𝑤𝑐 = 1𝑐=𝑟,𝑔,𝑏 . Consecuentemente se evalúa la función
objetivo con estos muy limitados candidatos y se selecciona el parámetro más pesado con menor
valor objetivo como la solución óptima final. Claramente, la imagen correspondiente al menor
valor de la función objetivo será escogida. El conjunto de pares de pixeles P es otra clave en la
eficiencia del algoritmo. Intuitivamente, cuan mayor es el conjunto P, mejor desempeño llevará
a cabo el algoritmo, mientras adiciona tiempo computacional.
31
Iniciar GcsDecolor2Imagen RGB
Búsqueda discreta con Matriz de pesos Wei
para decoloración
Tomar Canales de la Imagen (Subespacios)
Normalizar Imagen
Finaliza GcsDecolor2 Imagen
Grayscale
Formar parejas cada pixeles y una
muestra aleatoria
Calcular la diferencia de color entre las parejas de
pixeles
Aproximar la Imagen en escala de grises usando la combinacion lineal de los canales resultantes.
Figura 12 Diagrama de Flujo GcsDecolor2
2.2.3 SPDecolor
Este método está basado en la publicación “Semi-Parametric Decolorization with Laplacian-
based Perceptual Quality Metric” (Liu et al., 2017). En este, al observar el modelo de segundo
orden como la suma de 3 subespacios se comprueba que el primer subespacio en el modelo de
segundo orden tiene la importancia dominante y el segundo y tercer subespacio puede ser
considerado como perfeccionamiento. Por lo tanto, se presenta una estrategia semi paramétrica
global, sirviendo de ventaja los modelos de segundo orden y color a escala de grises. En el
algoritmo propuesto, el resultado de color a escala de grises en el primer subespacio es tratado
como una inmediata imagen griseada y entonces los parámetros en el segundo y tercer
subespacio son optimizados.
Se toma la imagen en escala de grises g como la suma de tres subespacios:
𝑔 = ∑ 𝑤𝑐1𝑚𝑐1
𝑚𝑐1∈𝑍1
+ ∑ 𝑤𝑐2𝑚𝑐2
𝑚𝑐2∈𝑍2
+ ∑ 𝑤𝑐3𝑚𝑐3
𝑚𝑐3∈𝑍3
𝑍1 = 𝐼𝑟 , 𝐼𝑔, 𝐼𝑏; 𝑍2 = 𝐼𝑟𝐼𝑔, 𝐼𝑟𝐼𝑏 , 𝐼𝑔𝐼𝑏; 𝑍3 = 𝐼𝑟𝐼𝑟 , 𝐼𝑔𝐼𝑔, 𝐼𝑏𝐼𝑏
Donde 𝑍1, 𝑍2 y 𝑍3 son los subespacios abarcados por un conjunto de monomios. Por un motivo
de conveniencia y brevedad, los elementos en los tres subespacios son llamados imágenes base.
Como han sido predefinidos por la combinación lineal de canales de imágenes, el objetivo de la
función de mapeo se torna en determinar los parámetros de peso 𝑤𝑐, esta función de mapeo
está definida por:
32
min𝑤𝑐
− ∑ ln∝𝑥,𝑦 𝑁𝜎 (∑𝑤𝑐𝑙𝑐(𝑥,𝑦) − 𝛿𝑥,𝑦𝑙𝑐∈𝑍
) + (1 − 𝛼𝑥,𝑦)𝑁𝜎 (∑𝑤𝑐𝑙𝑐(𝑥,𝑦) + 𝛿𝑥,𝑦𝑙𝑐∈𝑍
)(𝑥,𝑦)∈𝑃
Las diferencias entre los tres subespacios son enormes. Primeramente, como los elementos de
imagen en el subespacio 𝑍1 son de primer orden y los elementos de imagen en los subespacios
𝑍2 y 𝑍3 son de segundo orden, se espera que los elementos en el subespacio 𝑍1 estén menos
correlacionados y que este tenga más contenido.
Bajo el análisis de que el primer subespacio 𝑍1 en el modelo paramétrico multivarianza de
segundo orden tiene la mayor importancia y que los otros dos subespacios están secundaria y
similarmente relacionados, se propone aplicar un enfoque semi optimizado para la decoloración:
𝑔 = 𝑔1 + 𝑔2 ; 𝑔1 = ∑ 𝑤𝑐1𝑚𝑐1 , 𝑔2 = ∑ 𝑤𝑐2𝑚𝑐2 𝑚𝑐2∈𝑍2,𝑍3𝑚𝑐1∈𝑍1
Primeramente, se predefinen los factores de peso para la 𝑚𝑐1 ∈ 𝑍1. En segundo lugar, después
de la inmediata imagen griseada 𝑔1 es alcanzada, se utilizan algunas técnicas de optimización
para buscar el resultado óptimo proveniente de la inmediata imagen griseada y además el
segundo y tercer subespacios inducen imágenes candidatas. El modelo semi optimizado es el
siguiente: min𝑤𝑐∈𝑍2,𝑍3
𝐸(𝑤) = −∑ ln 𝛼𝑥,𝑦𝑒𝑥𝑝(−|∑ 𝑤𝑐𝑙𝑐(𝑥,𝑦)−(𝛿𝑥,𝑦−𝑔1)𝑙𝑐∈𝑍2,𝑍3
|2
2𝜎2) +(𝑥,𝑦)∈𝑃
(1 − 𝛼𝑥,𝑦)𝑒𝑥𝑝 (−|∑ 𝑤𝑐𝑙𝑐(𝑥,𝑦)+(𝛿𝑥,𝑦+𝑔1)𝑙𝑐∈𝑍2,𝑍3
|2
2𝜎2)
Iniciar SPDecolorImagen RGB
Establecer Matriz de pesos Wei para
decoloración
Tomar los Canales de la Imagen (Subespacios)
Normalizar Imagen
Finaliza SPDecolorImagen
Grayscale
Acotamiento correcto de
subespacios R, G, B
VALORES ESCALA DE GRISES
CORRECTOS
INCREMENTAR R, G, BNO
SI
Figura 13 Diagrama de Flujo SPDecolor
33
2.2.4 Kim09 (Decolor_nonlinear2009)
Este método está basado en la publicación “Robust Color-to-gray via Nonlinear Global
Mapping” (Kim et al., 2009). Para la consistencia de mapeo el método utiliza un mapeo global
para la conversión de color a escala de grises, esto previene conversiones no homogéneas de
regiones constantes de color, lo que podría desorganizar la apariencia de las imágenes. El mapeo
global es especificado por la fórmula funcional no lineal, g (x; y) = L + f(θ)C; donde L, C y θ
son los ángulos respectivamente para la luminosidad, la croma y la tonalidad de los valores de
color para un pixel (x,y) en el espacio de color CIE LCH. Debido a que el ángulo de tonalidad
θ tiene periodicidad 2π, la función f(θ) se modela como un polinomio trigonométrico como
sigue:
𝑓(𝜃) = ∑(𝐴𝑘 cos kθ+ 𝐵𝑘 sin kθ + 𝐴0)
𝑛
𝑘=1
Donde 𝐴𝑘, 𝐵𝑘 y 𝐴0 son parámetros desconocidos optimizados para preservar la apariencia visual
en la conversión de color a escala de grises.
El mapeo global g es bien empleado para lograr el éxito en la fidelidad de la luminosidad.
Cuando la croma C es 0, el color dado es gris y no será cambiado al mapear g. Similarmente,
cuando C es pequeño, el color dado está menos saturado y la luminosidad del pixel no cambiará
mucho en la conversión. Si hay suficientes píxeles casi grises, estos guiarán la conversión de
otros píxeles a través de los gradientes de imagen, previniendo cambios abruptos en la
luminosidad. Incluso cuando la imagen a color no contiene píxeles grises, la luminosidad L es
un factor mayor y domina los valores convertidos a la escala de grises.
Para preservar las características en la conversión de color a gris, se minimiza la diferencia de
los gradientes de imagen entre el color original y las imágenes resultantes en escala de grises.
La función de energía es definida por:𝐸𝑆 = ∑ ‖∇𝑔(𝑥, 𝑦) − 𝐺(𝑥, 𝑦)‖2(𝑥,𝑦)∈Ω
Donde (x,y) es un pixel en la imagen Ω. ∇g es el gradiente de la imagen en escala de grises,
definida por: 𝐺(𝑥, 𝑦) = (𝐺𝑥(𝑥,𝑦)
𝐺𝑦(𝑥,𝑦))𝑇
= (𝑐(𝑥+1,𝑦)θ𝑐(𝑥−1,𝑦)
𝑐(𝑥,𝑦+1)θ𝑐(𝑥,𝑦−1))𝑇
El operador de diferencia de color θ es definido por:
𝑐𝑖θ𝑐𝑗 = sign(𝑐𝑖, 𝑐𝑗)√∆𝐿𝑖𝑗2 +
(
∝√∆𝑎∗𝑖𝑗
2 + ∆𝑏∗𝑖𝑗2
ℛ
)
2
Donde L, 𝑎∗ y 𝑏∗ son la representación CIE L*a*b* de color c, ∆𝐿𝑖𝑗 = 𝐿𝑖 − 𝐿𝑗 , ∆𝑎∗𝑖𝑗 = 𝑎
∗𝑖 −
𝑎∗𝑗 y ∆𝑏∗𝑖𝑗 = 𝑏∗𝑖 − 𝑏
∗𝑗 . ℛ es la constante de normalización, ℛ = 2.54√2, para ecualizar los
rangos del contraste cromático, √∆𝑎∗𝑖𝑗2 + 𝑏∗𝑖𝑗
2 y el contraste de la luminosidad ∆𝐿𝑖𝑗. ∝ es un
parámetro especificado por el usuario para controlar la influencia del contraste cromático en la
discriminación de rasgos.
34
Iniciar decolor_nolinear2009
Imagen RGB
Convertir la imagen al espacio de color
LAB/LCH/LUV
Normalizar Imagen
Finaliza decolor_nolinear2009 Imagen
Grayscale
Calcular las diferencias de color G en el modelo
cromático Nayatani
Calcular el signo de GCalcular G
Reesterilizar la matriz de imagen
Calcular la función energética
Definir la imagen resultante usando el mapeo de L, C y X
Figura 14 Diagrama de Flujo Decolor_nonlinear2009
2.3 Procedimiento de evaluación utilizado.
Para evaluar los métodos de reducción de dimensionalidad de imágenes a color dependeremos
del propósito de la imagen final. Por ejemplo, si la imagen reducida final será evaluada por un
observador humano se dependerá de si este observador tiene una visión normal o tiene
deficiencia en la percepción de los colores. En cambio, si la imagen reducida final será
procesada digitalmente, en este caso como una imagen en escala de grises el procedimiento de
evaluación deberá cuantificar el desempeño de la secuencia de pasos del procesamiento. Por
esto es casi imposible lograr una caracterización general del proceso de evaluación para los
métodos de reducción de dimensionalidad en imágenes a color. No obstante, los procedimientos
de conversión a escala de grises cuentan con un consenso de aspectos objetivos para la
evaluación de los mismos, consistentes en el uso de un conjunto de imágenes y algunos
parámetros de desempeño.
La evaluación subjetiva de la imagen reducida final es considerada actualmente la más clara
evaluación para determinar la calidad de la imagen. Hasta la fecha, muchos autores han
desempeñado pruebas con observadores experimentales para la evaluación subjetiva, estos se
enfocaron en evaluar algunas propiedades específicas o avances que presentaban sus métodos.
35
2.3.1 Diseño del experimento
Con el objetivo de evaluar los métodos de conversión a escala de grises se han escogido un
grupo de imágenes tanto naturales como sintéticas. A estas imágenes se les lleva a cabo el
proceso de decoloración mediante los métodos Decolor_nonlinear2009, GcsDecolor2,
SPDecolor y Decolor_linear2006 y se evalúan objetivamente utilizando las métricas CCPR y
CCFR. Finalmente se realiza una evaluación subjetiva utilizando 12 observadores no expertos
a los cuales se le pide que escojan de las imágenes en escalas de grises cuales consideran que
son las mejor convertidas según sus correspondientes imágenes a color. Cada sujeto observa las
imágenes de manera aleatoria, algunas de las cuales se le repiten para disminuir la variabilidad
intra-observador.
2.3.2 Bases de casos utilizadas
Las imágenes utilizadas en el diseño del experimento están escogidas del conjunto de 212
imágenes aportadas en la publicación “Contrast Preserving Decolorization with Perception-
Based Quality Metrics” (Lu, Xu and Jia, 2014).
2.3.3 Medidas Objetivas
Los métodos de decoloración tienen carencia de evaluaciones cuantitativas para entender sus
desempeños. Los enfoques clásicos de referencias tales como Promedio del error al cuadrado
(MSE) y Similaridad Estructural (SSIM) no son aplicables en estas circunstancias, ya que la
imagen original a color y la imagen obtenida final en escala de grises no tienen la misma
dimensión. A su vez, aplicar las medidas de referencia-reducida y no-referencia es
conceptualmente inapropiado ya que la imagen a color contiene mucha más información que la
imagen en escala de grises.
Dos métricas básicas se proponen en este trabajo, midiendo respectivamente la preservación de
contraste y la similaridad de contenido de las imágenes de entrada. Estas métricas están
motivadas por el requerimiento fundamental de la conversión de color a escala de grises, el cual
es mantener tanto como sea posible los cambios de colores sin generar nuevos bordes que no
encuentran ninguna correspondencia en la imagen original a color. La medida final combina dos
métricas para formar la Marca-E, similar a la ampliamente usada Medida-F para encuentro de
precisión en el área de la estadística.
La primera medida objetiva es la propuesta en (Lu, Xu and Jia, 2012), para evaluar
cuantitativamente los algoritmos de conversión de color a escala de grises en términos de
preservación del contraste. La Razón de Preservación de Contraste del Color (CCFR) está
basada en el juicio de que si el contraste de color entre dos píxeles p y q, Cp,q, es más pequeño
que un umbral 𝜏, se convierte casi invisible en la visión humana.
36
Cp,q = ‖(𝐿𝑝∗ , 𝑎𝑝
∗ , 𝑏𝑝∗) − (𝐿𝑞
∗ , 𝑎𝑞∗ , 𝑏𝑞
∗)‖𝐿∗𝑎∗𝑏∗
=
= √(𝐿𝑝∗ − 𝐿𝑞∗ )2+ (𝑎𝑝∗ − 𝑎𝑞∗)
2+ (𝑏𝑝∗ − 𝑏𝑞∗)
2
La tarea de decoloración preservando el contraste es por lo tanto mantener los cambios de color
que son perceptibles por los humanos, o sea:
CCPR = #(𝑝,𝑞) | (𝑝,𝑞) ∈ , |𝑔𝑝− 𝑔𝑞| ≥ 𝜏
‖ ‖,
donde es el arreglo conteniendo todos los pares de píxeles cercanos con su diferencia original
de color Cp,q . |||| es el número pares de píxeles en . #(𝑝, 𝑞) | (𝑝, 𝑞) ∈ , |𝑔𝑝 − 𝑔𝑞| ≥
𝜏 es el número de pares de píxeles en que son todavía distinguibles después de la conversión.
Figura 15 Las imágenes muestran, en la (a) la imagen original a color, del (b)-(e) las imágenes resultantes de los
métodos propuestos y en la (f) la imagen resultante con la preservación de contraste en los pétalos.
La segunda medida objetiva es la propuesta en (Lu, Xu and Jia, 2014), para incrementar la
posibilidad de una evaluación más objetiva de los procedimientos de conversión de color a
escala de grises. La Razón de Fidelidad de Contenido del Color (CCFR) y La Marca-E es
efectiva para medir la pérdida de contraste después de la conversión. Aun así, no dice cómo la
imagen en escala de grises es fiel a la imagen de entrada a color en términos de estructuras. Para
complementar esto, similar a la medida de retirada en estadística que mide si las instancias
relevantes son recuperadas o no, la CCFR incorpora este tipo de información, definida como:
CCFR = 1 #(𝑝,𝑞) | (𝑝,𝑞) ∈ , 𝐶𝑝,𝑞 ≤ 𝜏
‖ ‖,
37
Donde son los pares de pixeles fijos contenidos con |gp – gq| > , correspondientes a las
estructuras con el menor contraste. Si la diferencia entre los pixeles originales es pequeña, por
ejemplo, Cp,q , el radio #(𝑝, 𝑞) | (𝑝, 𝑞) ∈ , 𝐶𝑝,𝑞 ≤ 𝜏 / ‖ ‖ medirá la ocurrencia de
datos artificiales no deseados en el resultado.
Adicionalmente, la Marca-E considera conjuntamente la CCPR y la CCFR. Es el promedio de
estas dos medidas y se escribe como:
E-score = 2(𝐶𝐶𝑃𝑅)(𝐶𝐶𝐹𝑅)
𝐶𝐶𝑃𝑅 +𝐶𝐶𝐹𝑅
Como ha sido remarcado por los autores, una superior CCPR y CCFR no implica un mejor
resultado. Solo la Marca-E determina la calidad final. No obstante, aunque la Marca-E provee
uno de los resultados más prometedores hasta la fecha, no puede hacer adecuadas predicciones
de calidad de imágenes convertidas de color a escala de grises.
Figura 16 Las imágenes muestran, en la (a) las imágenes originales a color, el (b) las imágenes resultantes de los
métodos propuestos y en la (c) las imágenes resultantes con CCFR incluido.
38
2.3.4 Medidas Subjetivas
En 2008 una evaluación exhaustiva conducida por Cadík, (Neumann, Cadik and Nemcsics,
2007) consistente de dos experimentos subjetivos se convirtió en la metodología de referencia
para comparar métricas de evaluación de calidad objetiva. El experimento le pide al sujeto
seleccionar la más favorable imagen convertida a escala de grises de un grupo de imágenes. Los
experimentos subjetivos se pueden conducir de dos formas, la primera, en la cual se muestran
las imágenes en escala de grises con su correspondiente imagen original a color como referencia
y la segunda, en la cual se muestran las imágenes convertidas sin ninguna referencia.
Sin importar la forma del experimento utilizada la comparación se puede basar en los
Coeficientes de Correlación de Spearman y Kendall (SRCC y KRCC respectivamente), así
como en el test no paramétrico de Chi Cuadrado para comprobar la veracidad de los datos. El
promedio y la desviación estándar de los valores de SRCC y KRCC para cada sujeto individual
en la exactitud y preferencia de la prueba puede ser calculada y ploteada. Puede utilizarse para
observar si hay acuerdo entre diferentes sujetos al calificar las imágenes convertidas. Una
desviación estándar baja de SRCC y KRCC denota un alto grado de acuerdo.
No obstante, los buenos resultados obtenidos con las pruebas subjetivas estas consumen gran
cantidad de tiempo, resultan costosas y lo más importante, no se pueden incorporar en sistemas
automáticos de monitorización de la calidad de las imágenes, ni para optimizar algoritmos de
procesamiento de imágenes.
2.4 Análisis Estadístico de los Resultados
Para el análisis estadístico de los datos resultantes se aplican medidas no paramétricas. Para el
caso de los datos de las pruebas realizadas se decide escoger el test no paramétrico de Chi
cuadrado, prueba en la que el estadístico utilizado sigue una distribución χ² si la hipótesis nula
es cierta. Algunos ejemplos de pruebas χ² son:
La prueba χ² de Pearson, la cual tiene numerosas aplicaciones:
La prueba χ² de frecuencias
La prueba χ² de independencia
La prueba χ² de bondad de ajuste
La prueba χ² de Pearson con corrección por continuidad o corrección de Yates
La prueba de Bartlett de homogeneidad de varianzas
Esta prueba mide la discrepancia entre una distribución observada y otra teórica (bondad de
ajuste), indicando en qué medida las diferencias existentes entre ambas, de haberlas, se deben
al azar en el contraste de hipótesis. También se utiliza para probar la independencia de dos
variables entre sí, mediante la presentación de los datos en tablas de contingencia.
39
La fórmula que da el estadístico es la siguiente: 𝑥2 = ∑(𝑂𝑏𝑠𝑒𝑟𝑣𝑎𝑑𝑎𝑖−𝑇𝑒ó𝑟𝑖𝑐𝑎𝑖)
2
𝑇𝑒ó𝑟𝑖𝑐𝑎𝑖
𝑘𝑖=1
Cuanto mayor sea el valor de 𝑥2, menos verosímil es que la hipótesis sea correcta. De la misma
forma, cuanto más se aproxima a cero el valor de chi-cuadrado, más ajustadas están ambas
distribuciones.
Los grados de libertad gl vienen dados por: 𝑔𝑙 = (𝑟 − 1)(𝑘 − 1)
Donde r es el número de filas y k el de columnas.
Criterio de decisión:
No se rechaza 𝐻0 cuando 𝑥2 < 𝑥𝑡2(𝑟 − 1)(𝑘 − 1). En caso contrario sí se rechaza.
Donde t representa el valor proporcionado por las tablas, según el nivel de significación
estadística elegido. (Plackett, 1983)
2.5 Conclusiones del Capítulo
En este capítulo se realiza una descripción de los métodos implementados, de sus diagramas de
flujo, así como de las funciones matemáticas que los caracterizan. Se explican los beneficios del
lenguaje de programación Python al escogerlo como el lenguaje para la implementación de los
métodos. Se informa sobre las bases de casos utilizadas y el diseño del experimento de
evaluación de los resultados. Este procedimiento de evaluación se divide en medidas de
evaluación objetivas y subjetivas, las cuales son descritas para la comprensión de su
fundamentación. A las mismas se le realizan diferentes análisis estadísticos los cuales sintetizan
los datos resultantes para facilitar su comprensión.
40
CAPÍTULO 3. Resultados y Discusión
3.1 Evaluación comparativa de los métodos implementados.
Para evaluar la eficiencia de los métodos implementados se realizaron pruebas objetivas y
subjetivas con el objetivo de lograr una variabilidad a la hora de obtener resultados que validen
este trabajo investigativo. No es objetivo de esta investigación demostrar la superioridad de
ninguno de los métodos por encima de otro, simplemente se quiere demostrar la variabilidad en
cuanto a la eficiencia que presentan los mismos según la forma en la que se evalúan sus
resultados y según las características que se quieran evaluar de los mismos.
3.1.1 Objetiva.
La Tabla 4 muestra los valores del CCPR, el CCFR y la Marca-E generados para los cuatro
métodos implementados. Idealmente, la Marca-E más alta se lograría si todo el contraste del
color fuera preservado y no se creara ningún borde inconsistente en la imagen resultante en
escala de grises, lo cual haría el CCPR y el CCFR igual a 1. Una decoloración independiente
del contenido de la imagen produce bajos valores de CCPR. La generación de datos artificiales
o bordes de color muy resaltados lleva a bajos valores de CCFR. Vale destacar que altos valores
de CCPR o CCFR no corresponde necesariamente a un mejor resultado. EL valor de calidad
final es determinado por el valor de la Marca-E. (Lu, Xu and Jia, 2014)
Tabla 4 Comparación de CCPR, CCFR y Marca-E.
Métodos CCPR CCFR Marca-E
Decolorize 0,97221706 0,84012828 0,89853883
GcsDecolor2 0,96424375 0,86063595 0,90752681
SPDecolor 0,91779749 0,80481494 0,85230352
Decolor_nonlinear2009 0,9679211 0,83981393 0,89642688
La evaluación objetiva fue llevada a cabo mediante los parámetros de CCPR, CCFR y Marca-E
para un valor umbral de 𝜏 = 15. Todos los métodos presentan altos valores de CCPR y CCFR
lo que indica, para el primero que no realizaron una decoloración independiente del contenido
de las imágenes y para el segundo que no se generaron datos artificiales o bordes resaltados. El
método con mejor valor de CCPR es el Decolorize (Decolor_linear2006) y el GcsDecolor2
presentó el mayor valor para CCFR. No obstante, el método con mayor calidad según los valores
de Marca-E fue el GcsDecolor2. En general todos los métodos muestran gran eficiencia debido
a sus valores cercanos a 1. El desempeño de los métodos se puede apreciar en la siguiente figura:
41
Figura 17 Valores de CCPR, CCFR y Marca-E para los cuatro métodos.
3.1.2 Subjetiva.
La evaluación subjetiva de los métodos fue llevada a cabo para evaluar la variabilidad inter e
intraobservador, la cual está limitada por diversos factores entre los cuales se incluye la calidad
técnica de la imagen. Se evaluó el desempeño de los cuatro métodos implementados con sus
respectivas conversiones de 20 imágenes a color de prueba. Estas fueron evaluadas por 12
sujetos los cuales escogieron basados en la imagen en escala de grises que según sus criterios
personales fueron las mejores que preservaron el contraste, los detalles y las diferencias entre
los colores. De los 12 sujetos a 4 se les realizó el experimento nuevamente un día después para
calcular la variabilidad intraobservador de la prueba.
El análisis estadístico para la variabilidad intraobservador fue realizado usando el Software
SPSS utilizando para ello el coeficiente de correlación (r de Pearson) para variables continuas.
Se consideró una r mayor o igual a 0.70 como buena y de 1 como perfecta.
Los resultados dados por el SPSS para los sujetos 1 y 2 en las dos pruebas realizadas es el
siguiente:
Figura 18 Resultados del SPSS para los sujetos 1 y 2 respectivamente.
Los resultados dados por el SPSS para los sujetos 3 y 4 en las dos pruebas realizadas es el
siguiente:
Figura 19 Resultados del SPSS para los sujetos 3 y 4 respectivamente.
42
En los resultados el coeficiente de correlación intraobservador para el índice de motilidad osciló
con los valores de r: 0,071, 0,596 y 0,945 siendo la correlación entre muy baja, baja y muy
buena, encontrándose variabilidad en la relación con el grupo de observación. Esto da como
conclusión que la variabilidad intraobservador puede estar condicionada por factores ajenos a
las pruebas subjetivas realizadas.
Para la evaluación interobservador se calculó el ranking dado por todos los sujetos a los cuatro
métodos, estos fueron ordenados como: Decolor_nonlinear2009 con un porciento del 36%,
SPDecolor con un porciento del 28%, Decolor_linear2006 con un porciento del 19% y
GcsDecolor2 con un porciento del 17%.
La Tabla 5 muestra la frecuencia de selección obtenida para cada método y su porciento
correspondiente. Los resultados muestran que el método Decolor_nonlinear2009 fue el más
escogido por los sujetos en la evaluación, mientras que los métodos Decolorize y GcsDecolor2
presentan las más bajas evaluaciones. Sin embargo, se propone establecer pruebas estadísticas
para decidir si las diferencias se deben a la eficiencia de los métodos o a una variabilidad
aleatoria en la valoración de los sujetos.
Tabla 5 Evaluaciones subjetivas de los métodos.
Métodos
Total Decolorize GcsDecolor2 SPDecolor Decolor_nonlinear2009
Frecuencia 47 41 69 89 246
% 19 17 28 36 100%
Se realizan pruebas de hipótesis para validar la veracidad de las pruebas subjetivas realizadas,
para esto se definen las hipótesis nula y alternativas de la siguiente forma:
Ho: No existe diferencia significativa en la selección llevada a cabo por los sujetos. La
probabilidad de haber escogido cualquiera de los métodos es la misma.
Ha: Hay métodos que logran una mayor eficiencia en la selección, concluyendo con un aporte
mayor en los resultados. Entonces, la probabilidad de encontrar en la selección alguno de los
métodos es diferente.
Puesto que la indagación es de caracterización (sujetos de evaluación) con relación a un
indicador (método de conversión de imágenes de color a escala de grisies) en una escala nominal
o clasificatoria (diferentes métodos), con más de dos clases mutuamente excluyentes, la prueba
estadística de valoración de los resultados a aplicar es: Chi Cuadrado para una muestra.
43
Se realiza un análisis de contraste de hipótesis, cuyo estadístico será:
𝑥2∗= ∑
(𝑂𝑖−𝐸𝑖)2
𝐸𝑖
𝑘𝑖=1 , con k-1 grados de libertad, donde 𝑂𝑖 son los valores de frecuencia
obtenidos según la Tabla 5, 𝐸𝑖 es el valor de frecuencia esperada y k es el número de métodos,
en este caso 4, con un nivel de significación de 5 %.
El valor 𝑥2∗ será la suma de k números no negativos. El numerador de cada término es la
diferencia entre la frecuecia observada y la frecuecia esperada. Por tanto, cuanto más cerca estén
entre sí ambos valores más pequeño será el numerador, y viceversa. El denominador permite
relativizar el tamaño del numerador. (Chi-cuadrado et al., no date)
La frecuencia esperada se calcula multiplicando el número total de pruebas n = 246 por la
probabilidad de ocurrencia asociada, es decir:
𝐸𝑖 = 𝑛 ∗ 𝑝𝑖 = 246 ∗14⁄ = 61,5 𝑖 = 1,… , 𝑘
El estadístico de contraste sería:
𝑥2 =(47 − 61,5)2
61,5+(41 − 61,5)2
61,5+(69 − 61,5)2
61,5+(89 − 61,5)2
61,5= 23,4633
Este valor se compara con la tabla de valores críticos de la distribución teórica de Chi Cuadrado.
El valor crítico de la distribución 𝑥2 con (4-1) = 3 grados de libertad es 𝑥20.95 (3) = 7,81.
Puesto que el valor estadístico 23,46 es mayor que el valor crítico 7,81 se rechaza la hipótesis
nula y se aprueba la hipótesis alternativa, es decir, que de los métodos hay algunos que logran
una mayor eficiencia en la selección, concluyendo con un aporte mayor en los resultados.
Entonces, la probabilidad de encontrar en la selección alguno de esos métodos es mayor.
3.2 Diseño e implementación del paquete de conversión de imágenes a escala de grises:
C2G y la herramienta asociada: C2GApp.
Con la finalidad de permitir un correcto uso y aplicabilidad de los elementos implementados se
ofrece esta ayuda o manual de usuario. En el mismo se dispondrá de información referente a las
principales funcionalidades del paquete de algoritmos y la aplicación que amplía las
funcionalidades desarrolladas en este. En la ayuda se mantiene un lenguaje no formal con
respecto a las características típicas a la disciplina de Ciencias de la Computación para permitir
un entendimiento completo destinado a los usuarios y desarrolladores que posteriormente usen
o modifiquen este sistema. Este manual está contenido como parte de la ayuda distribuida junto
a la aplicación principal.
44
3.2.1 Implementación del paquete de algoritmos C2G
Un enfoque correcto y basado en la eficiencia fue necesario desde la concepción de la idea de
construir un paquete de algoritmos basados en la conversión a escala de grises de imágenes a
color. Debido a que se implementarían algoritmos complejos y costosos computacionalmente
era necesario establecer una plataforma de desarrollo que permitiera afrontar los desafíos de
manera óptima. Nuestro estudio nos permitió comparar diferentes posibilidades en cuanto a
lenguajes, desde c++, java, c#, Matlab y Python; donde escogimos el último por las
posibilidades que nos permitía. Cabe destacar la legibilidad de su sintaxis y código, la eficiencia
generada por el mismo, aunque sea un lenguaje interpretado, muy buena disposición de
distribuciones de paquetes de corte científico para el trabajo con matrices, interoperabilidad y
posibilidades de redistribución del código fuente generado.
En la implementación del paquete se usaron varias bibliotecas, todas bajo la licencia MIT que
permite la redistribución del código fuente sin costo alguno lo que es una ventaja esencial a la
hora de desarrollar nuestro proyecto. Entre ellas se destacan OpenCV, NumPy, SciPy, PIL,
PyQt, MatPlotLib, cada una brinda herramientas indispensables para el desarrollo de nuestra
aplicación, como son:
1. Operaciones con arreglos multidimensionales (NumPy)
2. Slicing de matrices y arreglos multidimensionales (NumPy)
3. I\O de imágenes (OpenCV)
4. Medidas estadísticas. (SciPy)
5. Herramientas de procesamiento digital de imágenes (OpenCV, PIL, MatPlotLib)
6. Implementación de GUI (PyQt)
Se pretende en un posterior acercamiento empaquetar en Wheels el paquete de algoritmos para
poder ser distribuido bajo la plataforma PIP de instalación de componentes en sistemas
interpretados Python.
Se implementaron 4 scripts que permiten el cálculo de conversión a imágenes
independientemente de su formato origen. Estos son:
- SPDecolor (Liu et al., 2017)
- GCSDecolor (Liu et al., 2015)
- Decolor_Linear2006 (Grundland and Dodgson, 2007)
- Decolor_NonLinear2009 (Kim et al., 2009)
45
3.2.2 Implementación de la aplicación visual C2G_app
Se validó la motivación desde un comienzo de crear una aplicación que demuestre la eficiencia
de estos algoritmos tanto computacionalmente como visualmente (evaluación subjetiva) a la
hora de transformar las imágenes a su versión decolorada. Para ello se hace uso del framework
multiplataforma orientado a objetos: Qt, que permite construir independientemente la aplicación
visual de su núcleo algorítmico por lo cual esta puede ser portada a cualquier sistema que de
soporte a esta plataforma; actualmente todos los principales sistemas operativos apoyan a Qt
incluidos versiones móviles.
Figura 20 Imagen principal de la aplicación.
Esta aplicación presenta un diseño modular, lo cual es imprescindible para mantener activo el
desarrollo en este campo de investigación posibilitando incluir nuevos algoritmos de conversión
que complementen la funcionalidad de la aplicación. Esta característica fue lograda usando las
bondades de la programación dinámica y referenciada que brinda Python, así como la aplicación
de las functools.
La herramienta C2G_app presenta diferentes funcionalidades, diseñadas y programadas con el
objetivo de ser amigables para cualquier tipo de usuario, ya que esta puede ser usada por
personal de perfil investigativo o con fines puramente artísticos. La primera versión en estado
beta, cuenta con las siguientes funcionalidades principales:
- Trabajo con imágenes
- Carga
- Salva
- Impresión
- Conversión Figura 21 Muestra del trabajo con imágenes.
46
- Algoritmos de Transformación - Medidas Objetivas
Figura 22 Muestra de las medidas de evaluación.
Figura 23 Muestra de los algoritmos de transformación.
El trabajo con imágenes le permite al usuario usar cualquier tipo de imagen, independientemente
de su formato, tamaño o sus dimensiones1.
La conversión puede ser aplicada seleccionando una imagen, varias o una carpeta. Al aplicar el
algoritmo de conversión las imágenes resultantes serán enviadas al path actual o al elegido por
el usuario en la ventana de selección.
Figura 24 Muestra seleccionar imagen.
La aplicación de las medidas objetivas devuelve los valores específicos de aplicar sobre un rango
diferentes medidas de comparación a imágenes decoloradas; estas son CCPR, CCFR y el
promedio de ambas: E-score.
1 Se recomienda usar imágenes con tamaño menor a 3500x3500p al usar los métodos Decolor_Linear y
Decolor_NonLinear debido a que las operaciones con matrices de imágenes con dimensiones mayores a estas
pueden ser extremadamente costosas en memoria RAM lo que puede llegar levantar una excepción de stack
overflow.
47
Figura 25 Muestra resultados de la aplicación.
3.3 Conclusiones del capítulo
En el presente capítulo se exponen los resultados de las pruebas objetivas y subjetivas
desarrolladas, así como las evaluaciones estadísticas creadas de las mismas, gracias a la
herramienta SPSS. Se especifican las bibliotecas utilizadas en el desarrollo del paquete y la
aplicación visual. Se ofrece una ayuda detallada dirigida a los usuarios finales de la aplicación.
Esta sirve como guía principal para su uso y posibles mejoras a tener en cuenta en la
aproximación futura de esta investigación. Este manual ha sido añadido íntegramente a la
aplicación C2G_app, para facilitar su alcance. De esta forma se concluye el capítulo tercero de
la presente tesis de diploma.
48
CONCLUSIONES
El problema de la conversión de imágenes C2G ha tomado gran interés en los últimos años. Es
un tema de investigación activo y amplio que recorre el ilimitado rango de variabilidad a la hora
de convertir imágenes de color a escala de grises. Al ser fundamentalmente un proceso de
reducción de dimensionalidad es inevitable la pérdida de información. Muchos de los métodos
de conversión se han enfocado en la percepción visual de las imágenes en escala de grises con
propósitos en la impresión de documentos y representaciones artísticas. La otra parte de los
métodos tienen como objetivo su procesamiento digital para análisis automático.
El análisis individual de las imágenes ha llevado a la conclusión de que ningún método produce
un buen resultado para todas las imágenes que convierte. Todos los métodos han probado ser
efectivos para un aspecto en específico. En este trabajo se elaboró un paquete que permite la
conversión de imágenes de color a escala de grises mediante la implementación de varios
métodos de conversión en estado-del-arte. Se desarrolló la implementación en el lenguaje de
programación Python, con el objetivo de contar con éstas en un lenguaje fácil y portable. Se
desarrolló una interfaz de usuario amigable mediante la herramienta PyQt para proveer ayuda
en la ejecución del paquete. Se desarrollaron pruebas de evaluación de los métodos para la
validación de los resultados, de forma objetiva y subjetiva.
La implementación final del software es lo suficientemente flexible para ser extendida por
Cibernéticos-Informáticos con otras implementaciones de otros métodos y finalmente lograr
soluciones de consenso de interés para la comunidad de investigadores de este tema. Se logró
además una visualización de las imágenes convertidas para no especialistas en la disciplina de
Ciencias de la Computación.
49
RECOMENDACIONES
1. Continuar este trabajo con representaciones de otros de los métodos de conversión de imágenes de color a escala de grises.
2. Implementar complementos de utilidad para no especialistas en Computación como
Conversión Estilizada y Transformaciones Dinámicas con asistencia de usuario.
3. Portar la herramienta C2G_app a otras plataformas como Android o MacOS.
50
BIBLIOGRAFÍA
Ancuti, C. O., Ancuti, C. and Bekaert, P. (2011) ‘Enhancing by saliency-guided decolorization’,
Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern
Recognition, pp. 257–264. doi: 10.1109/CVPR.2011.5995414.
Anderson, D. (no date) ‘Color Spaces in Frame Grabbers: RGB vs. YUV’.
Bala, R. and Braun, K. M. (2003) ‘Color-to-grayscale conversion to maintain discriminability’,
Proceedings of SPIE - The International Society for Optical Engineering, 5293(1), pp. 196–
202. doi: 10.1117/12.532192.
Bala, R., Eschbach, R. and York, N. (2004) ‘Spatial Color-to-Grayscale Transform Preserving
Chrominance Edge Information’, Proc ISTSIDs 12th Color Imaging Conference, 100(2), p. 4.
Available at: http://chester.wrc.xerox.com/~raja/papers/CIC12_Bala_Eschbach.pdf.
Benedetti, L. et al. (2010) ‘Color to gray conversions in the context of stereo matching
algorithms’, Machine Vision and Applications, 57(2), pp. 254–348. doi: 10.1007/s00138-010-
0304-x.
Chi-cuadrado, P. et al. (no date) ‘ESTADÍSTICA NO PARAMÉTRICA ’:, pp. 1–20.
Cui, M. et al. (2010) ‘Color-to-gray conversion using ISOMAP’, Visual Computer, 26(11), pp.
1349–1360. doi: 10.1007/s00371-009-0412-7.
Du, H. et al. (2015) ‘Saliency-guided color-to-gray conversion using region-based
optimization’, IEEE Transactions on Image Processing, 24(1), pp. 434–443. doi:
10.1109/TIP.2014.2380172.
Gooch, A. et al. (2002) ‘Color2gray: salience-preserving color removal’, Dl.Acm.Org, pp. 634–
639. Available at: https://dl.acm.org/citation.cfm?id=1073241.
Grundland, M. and Dodgson, N. A. (2007) ‘Decolorize: Fast, contrast enhancing, color to
grayscale conversion’, Pattern Recognition, 40(11), pp. 2891–2896. doi:
10.1016/j.patcog.2006.11.003.
Güneş, A., Kalkan, H. and Durmuş, E. (2016) ‘Optimizing the color-to-grayscale conversion
for image classification’, Signal, Image and Video Processing, 10(5), pp. 853–860. doi:
10.1007/s11760-015-0828-7.
Haritha, M. and Reddy, R. S. (2013) ‘COLOR CONVERSION AND WATER SHED
SEGMENTATION FOR RGB IMAGES’, pp. 82–87.
Hassen, R., Wang, Z. and Salama, M. M. A. (2015) ‘Objective Quality Assessment for
Multiexposure Multifocus Image Fusion’, 24(9), pp. 2712–2724.
Havlicek, C. T. N. and J. P. (no date) ‘Color To Grayscale Image Conversion Using Modulation
Domain Quadratic Programming’.
Ji, Z. et al. (2016) ‘Efficient decolorization preserving dominant distinctions’, Visual Computer.
BIBLIOGRAFÍA
51
Springer Berlin Heidelberg, 32(12), pp. 1621–1631. doi: 10.1007/s00371-015-1145-4.
Jin, Z., Li, F. and Ng, M. K. (2014) ‘A Variational Approach for Image Decolorization by
Variance Maximization’, SIAM Journal on Imaging Sciences, 7(2), pp. 944–968. doi:
10.1137/130935197.
Kim, Y. et al. (2009) ‘Robust color-to-gray via nonlinear global mapping’, ACM Transactions
on Graphics, 28(5), p. 1. doi: 10.1145/1618452.1618507.
Kingdom, F. A. A. (2011) ‘Lightness, brightness and transparency: A quarter century of new
ideas, captivating demonstrations and unrelenting controversy’, Vision Research. Elsevier Ltd,
51(7), pp. 652–673. doi: 10.1016/j.visres.2010.09.012.
Knowlton, J. (2009) ‘Python’.
Kuk, J. G., Ahn, J. H. and Cho, N. I. (2011) ‘A color to grayscale conversion considering local
and global contrast’, Lecture Notes in Computer Science (including subseries Lecture Notes in
Artificial Intelligence and Lecture Notes in Bioinformatics), 6495 LNCS(PART 4), pp. 513–
524. doi: 10.1007/978-3-642-19282-1_41.
L.~Busin, N.~Vandenbroucke and L.~Macaire (2008) ‘Color spaces and image segmentation’,
Advances in Imaging and Electron Physics, 151(7), pp. 65–168.
Liu, Q. et al. (2015) ‘GcsDecolor: Gradient Correlation Similarity for Efficient Contrast
Preserving Decolorization’, IEEE Transactions on Image Processing, 24(9), pp. 2889–2904.
doi: 10.1109/TIP.2015.2423615.
Liu, Q. et al. (2017) ‘Semiparametric Decolorization with Laplacian-Based Perceptual Quality
Metric’, IEEE Transactions on Circuits and Systems for Video Technology, 27(9), pp. 1856–
1868. doi: 10.1109/TCSVT.2016.2555779.
Lu, C., Xu, L. and Jia, J. (2012) ‘Real-time contrast preserving decolorization’, SIGGRAPH
Asia 2012 Posters on - SA ’12, 1(212), p. 1. doi: 10.1145/2407156.2407174.
Lu, C., Xu, L. and Jia, J. (2014) ‘Contrast Preserving Decolorization with Perception-Based
Quality Metrics’, International Journal of Computer Vision, 110(2), pp. 222–239. doi:
10.1007/s11263-014-0732-6.
Martelli, A. (2007) ‘Python. Guía de referencia’.
Neumann, L., Cadik, M. and Nemcsics, A. (2007) ‘An Efficient Perception-based Adaptive
Color to Gray Transformation’, Proceedings of the Eurographics Workshop on Computational
Aesthetics in Graphics, Visualization and Imaging 2007 (CAe 2007, June 20--22, 2007, Banff,
Alberta, Canada), pp. 73–80. doi:
http://dx.doi.org/10.2312/COMPAESTH/COMPAESTH07/073-080.
Oliphant, T. E. (2007) ‘Python for Scientific Computing’, Computing in Science & Engineering,
9(3), pp. 10–20. doi: 10.1109/MCSE.2007.58.
Ortod, R. E. (2005) ‘La imagen digital’, pp. 255–266.
Plackett, R. L. (1983) ‘Karl Pearson and the Chi-Squared Test’.
Rasche, K., Geist, R. and Westall, J. (2005) ‘Detail preserving reproduction of color images for
monochromats and dichromats’, IEEE Computer Graphics and Applications, 25(3), pp. 22–30.
doi: 10.1109/MCG.2005.54.
BIBLIOGRAFÍA
52
Smith, K. (2008) ‘2008-27-2-Apparent Greyscale A Simple and Fast Conversion to perceptually
accurate image and video.pdf’, 27(2), pp. 193–200.
Song, M. et al. (2010) ‘Color to gray: Visual cue preservation’, IEEE Transactions on Pattern
Analysis and Machine Intelligence, 32(9), pp. 1537–1552. doi: 10.1109/TPAMI.2009.74.
Song, M. et al. (2013) ‘Color-to-gray based on chance of happening preservation’,
Neurocomputing, 119, pp. 222–231. doi: 10.1016/j.neucom.2013.03.037.
Wright, W. D. (1981) ‘50 years of the 1931 CIE Standard Observer’.
Wu, J., Shen, X. and Liu, L. (2012) ‘Interactive two-scale color-to-gray’, Visual Computer,
28(6–8), pp. 723–731. doi: 10.1007/s00371-012-0683-2.
Wu, T. and Toet, A. (2014) ‘Color-to-grayscale conversion through weighted multiresolution
channel fusion’, Journal of Electronic Imaging, 23(4), p. 43004. doi:
10.1117/1.JEI.23.4.043004.
You, S., Barnes, N. and Walker, J. (2016) ‘Perceptually Consistent Color-to-Gray Image
Conversion’, p. 18. Available at: http://arxiv.org/abs/1605.01843.
Zhu, W., Hu, R. and Liu, L. (2014) ‘Grey conversion via perceived-contrast’, Visual Computer,
30(3), pp. 299–309. doi: 10.1007/s00371-013-0854-9.