• No se han encontrado resultados

Una solución paralela simple al método de difusión de error

N/A
N/A
Protected

Academic year: 2021

Share "Una solución paralela simple al método de difusión de error"

Copied!
14
0
0

Texto completo

(1)

Una Soluci´

on Paralela Simple al M´

etodo de

Difusi´

on de Error

G. Abdala, R. Guerrero, F. Piccoli

*

L´ıneas Inform´atica Gr´afica y Paralelismo y Distribuci´on del Laboratorio de Investigaci´on y Desarrollo en Inteligencia Computacional

Universidad Nacional de San Luis 5700 - San Luis - Argentina e-mail:{rag, mpiccoli}@unsl.edu.ar

Abstract

Digital halftoning is a well-known technique for electronic devices that can reproduce only black and white pixels. It converts gray scale images into black and white ones creating the illusion of continuous tones. Besides the large number of existing methods and algorithms, all of them share the same problem: image size and selected algorithm dependence. As a consequence, it is necessary to develop new techniques in an independent method and data way. This paper presents two parallel implementations of Floyd-Steinberg´s diffusion error method; an inherently sequential method. The first one implements a proposed design by Metaxas, and the second one tries, proposed by authors, a simple segmentation and coarse grain parallel techniques. In addition, an experimental comparison of the implementations are shown.

Keywords: Digital Halftoning, Computer Graphics, Image Processing, Parallel Systems, Parallelism Grain.

Resumen

El Halftoning o Mediotonado Digital se utiliza para plasmar im´agenes en escala de grises en disposi-tivos electr´onicos que s´olo pueden reproducir elementos binarios creando la ilusi´on de tonos continuo. A pesar de los numerosos m´etodos de halftoning existentes, todos ellos comparten la problem´atica de que su tiempo de procesamiento es dependiente de las caracter´ısticas de la imagen y el algorit-mo utilizado. Es de inter´es la generaci´on de propuestas para acelerar los tiempos de procesamiento independientemente de los m´etodos y los datos. En este trabajo se presentan dos sistemas paralelos del M´etodo de Difusi´on de Error establecido porFloyd y Steinberg, considerado un m´etodo inherente-mente secuencial. El primero es la implementaci´on del dise˜no desarrollado por Metaxas y el segundo, propuesto por los autores, se caracteriza por aplicar una segmentaci´on simple de la imagen de entrada y t´ecnicas paralelas de gr´anulo grueso. Adem´as de presentar ambos sistemas, se muestran algunos resultados experimentales, tanto en el desempe˜no como en la calidad de las im´agenes resultantes.

Palabras claves: Mediotonado Digital, Computaci´on Gr´afica, Procesamiento de Im´agenes, Sistemas Paralelos, Gr´anulo de Paralelismo.

*Grupo subvencionado por la UNSL y ANPCYT (Agencia Nacional para la Promoci´on de la Ciencia y

(2)

1.

INTRODUCCI ´

ON

La palabra halftoning (mediotonado) tiene sus or´ıgenes en la antig¨uedad; describe una t´ecnica utilizada durante los siglos XVII y XVIII para crear la ilusi´on de im´agenes de tono continuo mediante una plantilla de cobre y un ´unico tono de tinta.

En la actualidad, el “mediotonado digital” es una t´ecnica muy conocida en procesamiento de im´agenes [9], ´esta permite convertir una imagen representada a trav´es de un rango de niveles de intensidad de luz en una imagen consistente solamente de puntos blancos y negros. La propuesta ha sido concebida principalmente para el plasmado de im´agenes a trav´es de dispositivos de impresi´on y visualizaci´on binarios, uso de pixels blancos y negros, pero con la intenci´on de ser percibidas como una imagen en tonos de grises. El objetivo del proceso es lograr, como declara Ulichney: “la ilusi´on de im´agenes en tono continuo a partir de una cuidadosa ubicaci´on de elementos de dibujo binarios” [13].

Por ser un proceso que proyecta una escala continua en una escala binaria, adolece de p´erdida de informaci´on. Para asegurarse el ´exito del proceso, la t´ecnica se apoya en las propiedades del sistema de visi´on humano conjuntamente con los atributos propios de la imagen. ´Esta intenta establecer un ordenamiento de los elementos de dibujo, de manera tal de generar en el observador una impresi´on visual lo m´as parecida posible al original.

Desafortunadamente, se desconocen a´un todos los factores intervinientes en la percepci´on humana y en la formaci´on de las im´agenes, as´ı como tambi´en las m´etricas cuantitativas reales que puedan correlacionar la calidad subjetiva de una imagen [4]. En consecuencia, una variedad de algoritmos para el proceso de halftoning ha sido desarrollada a lo largo de los a˜nos [5, 7, 13]. La caracter´ıstica com´un a todos es el tiempo de procesamiento de una imagen, el cual es direc-tamente proporcional al tama˜no de la misma m´as el tiempo asociado al m´etodo en particular. Los algoritmos simples y de bajo tiempo de proceso producen resultados de baja calidad, mien-tras que los algoritmos con buenos resultados poseen tiempos de ejecuci´on prolongados. Estas caracter´ısticas en conjunto con la natural autocorrelaci´on de los datos involucrados convierte al problema de mediotonado en una propuesta de an´alisis y estudio v´alida para la aplicaci´on de modelos de programaci´on paralela [3, 16].

Este trabajo est´a organizado de la siguiente manera, en la pr´oxima secci´on se detallan los m´etodos m´as comunes para obtener im´agenes mediotonadas. En la secci´on 3 se explica con mayor detalle el M´etodo de Difusi´on de Error. En la secci´on 4 se presentan las dos soluciones paralelas a dicha t´ecnica. Finalmente, se realiza un an´alisis de los resultados obtenidos desde el punto de vista de tiempos de proceso y de la calidad cualitativa y cuantitativa de las im´agenes.

2.

T ´

ECNICAS PARA MEDIOTONADO DE IM ´

AGENES

No existe un ´unico m´etodo para obtener una imagen mediotonada a partir de otra en tonos continuos de grises. Los m´etodos existentes intentan crear im´agenes consistentes solamente de tonos negros y blancos que sean buenas aproximaciones de las im´agenes originales en escalas de grises. La calidad de una aproximaci´on es com´unmente evaluada en funci´on a la calidad en la

(3)

reproducci´on de la intensidad local y la ausencia de artifi-cios (discontinuidades en la imagen resultante). Las t´ecnicas de difusi´on de error [2, 13] intentan aproximar la intensi-dad local de una escala de grises por medio del umbralizado de una regi´on de la imagen y la distribuci´on del error de cuantizaci´on de la region procesada a regiones vecinas a´un sin procesar. La distribuci´on intenta compensar los errores de cuantizaci´on locales asegur´andose que sobre una regi´on levemente mayor, la aproximaci´on de la escala de grises es correcta. La figura 2(a) ilustra el m´etodo de difusi´on de

Floyd y Steinberg de la figura 1.

Los m´etodos de matrices de umbralizaci´on[8] usan una

disposici´on predefinida de los pixels blancos y negros para Figura 1: Imagen Original aproximar la intensidad local de la imagen. Estos m´etodos no compensan los errores de cuanti-zaci´on local puesto que se amparan en la baja probabilidad de variaci´on de la intensidad local. Un ejemplo de ello se muestra en la figura 2(b). Las matrices establecen adem´as el orden en que los pixels deben ser coloreados. Si se cambia la disposici´on de los pixels en la matriz, se altera la forma de los pixels que son aproximados y por consiguiente la imagen resultante. Estas t´ecnicas intentan balancear la cantidad de tonos de escala de grises aproximados con la cantidad de artificios introducidos. Las investigaciones [13] en esta ´area se centran principalmente en el desarrollo de matrices que minimicen la generaci´on de artificios.

(a) Difusi´on de Error (b) Matriz de Umbral

Figura 2: Im´agenes Mediotonadas

Por otra parte, los m´etodos de halftoning h´ıbridos [1, 11] intentan combinar las t´ecnicas de distribuci´on del error local de los m´etodos de difusi´on de error con la eficiencia de la disposici´on local de pixels de los m´etodos de matrices de umbral. Estos m´etodos calculan el error basados en un solo pixel o regi´on de pixels (segmento, curva o matriz). De la misma manera, algunos m´etodos intentan eliminar la generaci´on de artificios mediante la alteraci´on del recorrido de la imagen. La aplicaci´on repetitiva de un mismo proceso a lo largo de una ruta predefinida resulta en la aparici´on recurrente de patrones en la imagen resultante. Los m´etodos de difusi´on de error y matrices de umbral utilizan un paso de fila-columna pre-establecido. Otras t´ecnicas de me-diotonado proponen el uso de curvas de llenado de espacios [14] y pasos de onda (wavefront)[7]. El m´etodo de difusi´on de punto de Knuth [5] utiliza una matriz de valores para especificar el orden en el que se debe distribuir el error dentro de la matriz.

(4)

3.

M ´

ETODO DE DIFUSI ´

ON DE ERROR

El m´etodo de Difusi´on del Error,M DE, para el mediotonado de im´agenes en tonos de grises fue propuesto por Floyd y Steinberg [2] y ha sido tomado como est´andar por su simplicidad y calidad de la imagen mediotonada resultante. La figura 3 muestra gr´aficamente como se realiza el procesamiento de los pixels a trav´es de la

t´ecnica de Difusi´on de Error.

En M DE los pixels de una imagen de tonos de grises (J[n]) son procesados en forma lineal de izquierda a derecha y de arriba hacia abajo. Cada pixel, representado por un valor entre 0

y 255, es comparado con un valor de umbral,

por ejemplo 128. Si el valor es mayor que el Figura 3: Diagrama de ProcesoM DE umbral, el pixel se considera como blanco y la salida (I[n]) es colocada en 1. Caso contrario se considera negro e I[n] es instanciado en 0. La diferencia entre el valor original del pixel y el umbral es considerado un error, el cual es distribuido a los cuatro pixels vecinos no procesados a´un. La difusi´on del error a los vecinos de un pixel es hecha en forma proporcional, ver fig. 4.

El proceso es netamente secuencial y exhibe una gran dependencia entre los datos de en-trada, pixels en tono de gris. Analizando las dependencias, se observa que el valor del pixel de la posici´on (fil, col) en la imagen mediotonada depende de

su valor de gris y de los errores difundidos por sus vecinos

(fil,col-1), (fil-1, col-1), (fil-1,col) y (fil-1,col+1) procesados previamente. La dependencia entre los pixels es transitiva, a excepci´on del pixel en la posici´on (0,0).

El algoritmo secuencial deM DEconsta de tres partes: lectu-ra de la imagen de tonos de gris, procesamiento de la imagen

y grabado de la imagen mediotonada resultante. En la figura Figura 4: Difusi´on del Error 5 se muestra un pseudo-c´odigo simplificado del procesamiento de una imagen deM*N pixels.

1. for i = 1 to M 2. for j = 1 to N 3. {

4. I[i,j] = (J[i,j] < 128)? 0 : 1 //blanco=1 y negro=0 5. err = J[i,j] - I[i,j]*255

6. if(PixelValido(i+1,j)) J[i+1,j] += err*(7/16) 7. if(PixelValido(i-1,j+1)) J[i-1,j+1] += err*(3/16) 8. if(PixelValido(i,j+1)) J[i,j+1] += err*(5/16) 9. if(PixelValido(i+1,j+1)) J[i+1,j+1] += err*(1/16) 10. }

Figura 5: Etapa de Procesamiento de M DE

Los valores de blanco o de negro para cada pixel de la imagen de salida son determinados en la l´ınea 4 y el error a difundir a todos los vecinos no procesados se calcula en la l´ınea 5. Finalmente, se realiza la difusi´on del error a cada uno de los vecinos (l´ıneas 6 a 9). La funci´on

(5)

4.

APLICANDO PARALELISMO A

M DE

Como se mencion´o anteriormente, aplicar t´ecnicas paralelas en la soluci´on computacional de M DE resulta, a primera vista, una tarea dif´ıcil. Proponer soluciones paralelas implica intentar resolver o ignorar la dependencia de los datos.

En este trabajo se presentan dos soluciones paralelas de M DE. La primera, basada en la propuesta de paralelizaci´on de Metaxas [6], presenta un paralelismo de gr´anulo fino, a nivel de pixel. La segunda (propuesta de los autores), en cambio, propone una soluci´on simple y d´ebilmente acoplada a costa de ignorar parcialmente la dependencia entre los datos, pixels de la imagen y error difundido. En la siguientes secciones se especifican las caracter´ısticas b´asicas de cada una de ellas.

4.1. Soluci´on Paralela de Gr´anulo Fino

A partir de su formulaci´on, M DE ha sido considerado un m´etodo inherentemente secuen-cial. Del an´alisis detallado de las dependencia, en [6] se demuestra lo contrario: no existe una interrelaci´on generalizada entre todos los pixels, sino entre

un subgrupo regional de los mismos. El valor de un pixel de la imagen resultante, ubicado en la posici´on(fil, col) de-pende del valor de gris de dicho pixel en la imagen original y de los errores difundidos por sus vecinos (fil,col-1), (fil-1, col-1), (fil-1,col) y (fil-1,col+1), los cuales ya han sido procesados. A su vez, cada uno de los vecinos depende de sus propios vecinos, tambi´en ya procesados. La aplicaci´on

transitiva de esta propiedad genera un ´area trapezoidal de Figura 6: Dependencia de los pixels dependencias. En la figura 6 se puede observar el ´area trapezoidal, zona gris, de la cual depende el pixel indicado con color negro.

Como la relaci´on entre los pixels debe respetarse, es necesario planificar el orden de proce-samiento de cada uno de ellos. La manera de planificar el proceproce-samiento fue denominada Inva-riante I [6]. LaInvariante I establece que todo pixel en la posici´on (fil, col) es procesado en el tiempo T, siempre y cuandoT(fil, col) cumpla con:

T(f il, col)> M AX{T(f il, col1), T(f il1, col1), T(f il1, col), T(f il1, col+ 1)}

El M´etodo Paralelo de Difusi´on de Error, M P DE, propone resolver en paralelo el medio-tonado de una imagen de tonos de grises respetando la formulaci´on original y aplicando las consideraciones enunciadas anteriormente. Para ello propone segmentar la imagen en forma diagonal, ver figura 7(a).

Los segmentos diagonales poseen cierta independencia en el tiempo: en un segmento existen pixels cuyo procesamiento es independiente de los pixels asignados a otros. Los pixels depen-dientes de los errores de otros pixels en otros segmentos son aquellos ubicados en los l´ımites del segmento o cercanos a ellos. Cuanto mayor es la cantidad de pixels internos de un segmento, mayor ser´a la independencia de los mismos.

Cada procesador deber´ıa ser responsable del mediotonado de un segmento de la imagen, ver figura 7(b). El procesamiento es sincronizado, todos aquellos pixels con igual identificador pueden procesarse en paralelo siempre y cuando ya fueron procesados los pixels de menor identificador.

(6)

(a) Divisi´on de la Imagen (b) Planificaci´on y Asignaci´on

Figura 7: Tratamiento de una Imagen en M DEP

En este trabajo, la implementaci´on deM DEP se realiz´o teniendo en cuenta lo anteriormente expresado y asumiendo una imagen cuadrada con al menos 2 filas. Dichas restricciones fueron hechas a efecto de simplicidad; m´ınimas modificaciones son necesarias para ofrecer generalidad. La figura 8 muestra el pseudo-c´odigo del algoritmo general de M P DE. Cada procesador realiza los c´alculos iniciales para establecer los valores adecuados de distancia de los segmentos (ancho m´aximo del segmento), cantidad de procesadores utilizados y cantidad de procesadores libres (l´ınea 1). Luego, se realiza la lectura del segmento correspondiente (l´ınea 2). El procesa-miento se inicia cuando el procesador Pk realiza elPaso Inicial (l´ınea 3). Posteriormente, cada

procesador realiza el mediotonado del segmento correspondiente (l´ınea 4) y env´ıan su segmen-to mediosegmen-tonado al procesador Pk (l´ınea 12). El procesador Pk se encarga de recibir todas los

segmentos mediotonados y realizar el armado de la imagen resultante (l´ıneas 5 a 10). 1. C´alculos iniciales.

2. Lectura del Segmentoi de la imagen.

3. if(id_procesador==k) PasoInicial 4. Mediotonado(Segmentoi, SegmentoMi).

5. if(id_procesador == k) 6. {

7. For(i=1; i < Po-1 ; i++)

8. Recibir SegmentoMi modificado desde procesadori > 10.

9. Armar imagen de salida. 10. }

11. else

12. Enviar SegmentoMi al procesador k.

Figura 8: Pseudo-c´odigo de M P DE

M DEP involucra varios aspectos:

Los c´alculos iniciales de distancia, procesadores ocupados y procesadores libres son de-terminados seg´un el tama˜no de la imagen y la cantidad de procesadores disponibles. El tama˜no de los segmentos se determina de manera tal de maximizar el n´umero de proce-sadores ocupados.

(7)

El inicio del procesamiento es responsabilidad del procesador Pk, quien es responsable de

procesar dos pixels antes de que otro procesador inicie sus tareas. El procesador Pk debe

procesar y difundir el error de los pixels: (0,0) y (0,1). La difusi´on es tanto a los pixels pertenecientes a su segmento como a los pertenecientes al segmento del procesadorPk1.

El procesamiento del pixel en la posici´on (0,0) es denominado “Paso Inicial”

Los procesadores sincronizan su ejecuci´on a trav´es de los mensajes con los errores di-fundidos, un procesador trata un determinado pixel cuando todos los errores necesarios est´an presentes. Los procesadores intercambian los errores seg´un corresponda. El uso de comunicaciones de tipo bloqueante permite sincronizar el trabajo paralelo sin tener que recurrir a sincronizaciones explicitas. Despu´es de realizar los c´alculos iniciales, la primera instrucci´on a ejecutar por todo procesador distinto de k, es recibir el error difundido por otro procesador.

La estructura de almacenamiento para los segmentos es una matriz, donde la cantidad de columnas es igual a la distancia y el n´umero de filas var´ıa de una a otra, dependiendo del segmento. Toda fila cuya cantidad de columnas es menor a la distancia se la denominafila incompleta. Una fila incompleta se completa con valores de relleno a fin tener la misma cantidad de columnas en todo el segmento.

Respetando la formulaci´on de M DE, el error del pixel actualmente procesado debe ser difundido a sus vecinos sin procesar a´un. La tarea de difusi´on del error debe incorporar el error al pixel indicado si es un pixel del segmento. Si en cambio el pixel corresponde a un segmento de otro procesador, se procede a enviarle el error, error remoto. Los pixels internos del segmento realizan una difusi´on interna del error, no ocurre los mismo con los pixels situados en los bordes del segmento, la difusi´on ser´a realizada a los segmentos vecinos.

El proceso aplicado a cada pixel de la imagen, a excepci´on del pixel procesado en el Paso Inicial, se encarga de: recibir y agregar los errores remotos, realizar el procesamiento del pixel indicado y difundir el nuevo error.

Al finalizar el proceso de mediotonado de los segmentos, el procesador Pk recibe los

segmentos de la imagen procesados en los otros procesadores y armar la imagen de salida. Todos estos aspectos son coordinados en la cuidadosa planificaci´on del procesamiento que resuelve en paralelo al M DE respetando la formulaci´on original.

4.2. Soluci´on Paralela de Gr´anulo Grueso

El M´etodo de Difusi´on de Error Paralelo con enfoque Trivial Din´amico,M DEP T D, resulta de aplicar t´ecnicas de programaci´on paralela alM DE ignorando parcialmente la propiedad de los datos de entrada. Para ello, propone resolver en paralelo M DE dividiendo la imagen en

(8)

subim´agenes e ignorando la dependencia de los datos en los bordes de dichas particiones. Para ello, la imagen original, en tonos de grises, es dividida en porciones o segmentos, a los cuales se le aplica el proceso normal deFloyd y Steinberg. M DEP T D tiene una estructura del tipo f arm[10], cada proceso trabaja en forma independiente a los dem´as, s´olo se comunica con el proceso responsable de la distribuci´on de los segmentos de la imagen en tono de grises y del armado de la imagen mediotonada de salida. La cantidad de procesos trabajando es determinada por la cantidad de procesadores disponibles. Es por ello que la divisi´on de la imagen se fija en tiempo de ejecuci´on seg´un el n´umero de procesadores

disponibles. Respetando la secuencia de almacenamiento de Figura 9: Divisi´on en 8 segmentos los pixels, la divisi´on de la imagen se realiza en forma horizontal, ver figura 9.

Como M DEP T D no tiene en cuenta la dependencia de los pixels en el l´ımite de los segmentos ni el error acumulado, es de esperar la aparici´on de artificios no presentes en la imagen original. Para minimizar su aparici´on se propone considerar un solapamiento de los segmentos, para cada segmento se consideran PA filas del segmento anterior. Esto tiene como objetivo aproximar el error acumulado de los pixels residentes en el l´ımite superior del segmento. En la figura 10 se muestra el pseudo-c´odigo correspondiente a la estructura general de M DP E T D.

1. C´alculos iniciales.

2. Lectura del Segmentoi de la imagen.

3. Mediotonado(Segmentoi, SegmentoMi).

4. if(id_procesador == 0) 5. {

6. For(i=1; i < Procesadores_disponibles-1 ; i++)

7. Recibir SegmentoMi modificado desde procesadori > 0.

8. Armado imagen de salida. 9. }

10. else

11. Env´ıo SegmentoMi al procesador 0.

Figura 10: Pseudo-c´odigo deM DP E T D

Al inicio de la computaci´on cada procesador realiza los c´alculos iniciales y obtiene el seg-mento de la imagen correspondiente (l´ıneas 1-2) para luego aplicar la funci´on Mediotonado()

(l´ınea 3). Esta funci´on es id´entica al proceso secuencial. Para el caso de la imagen mediotanada resultante, la responsabilidad de su armado recae en uno de los procesadores, en este caso el

procesador 0. Por esta raz´on al finalizar el mediotanado de cada segmento, todos los proce-sadores env´ıan sus resultados al procesador 0 (l´ınea 11), quien los recibe y arma la imagen mediotonada resultante (l´ıneas 4-8).

M DEP T D propone una soluci´on paralela de gr´anulo grueso simple y escalable seg´un el tama˜no de la imagen y la cantidad de procesadores. Aunque su formulaci´on parte de ignorar la dependencia de los datos, permite atenuar sus consecuencias.

(9)

5.

RESULTADOS EXPERIMENTALES

En esta secci´on se muestran algunos resultados experimentales del trabajo realizado. Cada sistema se implement´o en lenguaje C, utilizando la biblioteca de pasaje de mensajes MPI [12]. Todas las soluciones fueron ejecutadas sobre la computadora paralela Cray Origin 2000 perteneciente a la Secretaria de Ciencia, T´ecnica e Innovaci´on ProductivaSeCyT. Los resultados reportados corresponden a tiempos totales promedios (tiempo total= lectura de la imagen, proceso de mediotonado y armado de la imagen). En todos los casos se aplic´o el proceso a im´agenes cuadradas de 300, 600 y 2000 pixels cada una, denominadas Im-C, Im-M y Im-G

respectivamente. En todas las soluciones paralelas se utilizaron 4, 16 y 24 procesadores. En la figura 11 se presenta el desempe˜no de ambas propuestas paralelas. En la parte (a) se muestra la aceleraci´on obtenida por el sistemaM DEP para los distintos tama˜nos de im´agenes. Se puede observar un mejor desempe˜no de M DEP T D, parte (b). Esto obedece al grado de paralelismo involucrado en cada soluci´on,M DEP es un soluci´on paralela gr´anulo fino, el grado de paralelismo es determinado por el tama˜no de los segmentos y los pixels involucrados. Por lo contrario, el proceso de mediotonado de cada pixel en cada segmento en M DEP T D es totalmente independiente de los pixels en los otros segmentos. Adem´as, en ambos casos se puede apreciar la influencia de las comunicaciones en el desempe˜no de los sistemas, torn´andose evidente para im´agenes m´as peque˜nas y mayor n´umero de procesadores.

0 1 2 3 4 4 8 12 16 20 24 SpeedUp Nro de Procesadores ImC ImM ImG (a) M DEP 0 2 4 6 8 10 12 4 8 12 16 20 24 SpeedUp Nro de Procesadores ImC ImM ImG (b)M DEP T D Figura 11: Aceleraci´on obtenida para cada M´etodo

Del an´alisis de los resultados y en funci´on a las caracter´ısticas de cada propuesta, se pue-de establecer que en ambos casos se obtuvieron aceleraciones aceptables, teniendo un mejor desempe˜noM DEP T D.

Adem´as del an´alisis de tiempo de los procesos, y dado que las propuestas difieren en las consideraciones de interrelaci´on entre pixels, es necesario el an´alisis de la calidad de las im´age-nes resultantes. Para poder evaluarlas es prioritaria la valoraci´on de las mismas mediante algun m´etodo. Tanto en el area de computacion grafica como en el ´area de procesamiento de im´agenes se han adoptado dos tipos de m´etodos para la valoraci´on de las im´agenes:medidas cualitativas y cuantitativas. La evaluaci´on cualitativa de las im´agenes se basa principalmente en el sistema visual humano y las observaciones de los participantes de dicha evaluaci´on. En consecuencia, las evaluaciones de las im´agenes tienden a ser altamente subjetivas. La m´etricas cuantitativas proveen una evaluaci´on mas objetiva de las im´agenes. Sin embargo, estas evaluaciones general-mente no son completas pues no existe una ´unica m´etrica para evaluar todas las dimensiones necesarias para la valoraci´on de la imagen. Debido justamente a la falta de una m´etrica com-pleta, es que uno de los m´etodos mas com´unmente utilizados es la comparaci´on visual.

(10)

Las im´agenes pueden ser comparadas analizando los componentes comunes de las im´agenes mediotonadas, tales como la reproducci´on de la intensidad de la escala de grises, bordes y la preservaci´on de la informaci´on de alta frecuencia, as´ı como tambi´en la incorporaci´on de artificios. Dado que no se est´a comparando m´etodos de halftoning diferentes sino diferentes implementaciones del mismo m´etodo, todas ellas reproducir´an de la misma manera la escala tonal y mayormente preservar´an los bordes y la informaci´on de alta frecuencia. La diferencia estar´a dada entonces por la incorporaci´on de artificios producto de la segmentaci´on de la imagen. En el ap´endice se presentan un conjunto de im´agenes para la evaluaci´on cualitativa por medio de la comparaci´on visual de sus componentes. De la misma manera, con el objeto de poder realizar una comparaci´on objetiva de los resultados, otras im´agenes son presentadas para ser evaluadas mediante una m´etrica cuantitativa propuesta por Veryovka et al. [15]. Dicha m´etrica permite medir la preservaci´on de bordes y la creaci´on de bordes artificiales a m´ultiples resoluciones de las im´agenes (escalas).

Para la evaluaci´on cualitativa se presentan dos im´agenes de Lena, la cuales son el resultado de aplicar las dos propuestas presentadas (M DEP y M DEP T D). Como era de esperar, la imagen producto de aplicarM DEP tiene caracter´ısticas semejantes a la obtenida con el proceso original, ver figuras 12(a) y 2(a) respectivamente. Para el caso de la imagen mediotonada resultante del proceso M DEP T D, el ojo adiestrado podr´ıa observar la aparici´on de artificios horizontales derivados de ignorar parcialmente la dependencia de los datos, ver figura 12(b). Dicha imagen se ha obtenido de aplicarM DEP T D sin considerar solapamiento de segmentos. Para la evaluaci´on cuantitativa se presentan dos nuevas im´agenes. La primera es una rampa de tono continuo generada por computadora que va del negro total (100 %) al 75 % de negro, ver fig. 13(a). Esta imagen es utilizada para indicar la incorporaci´on de artificios en una regi´on de tono continuo (artificios de bordes). La otra imagen es una imagen de negro al 50 % como fondo, con una banda blanca, una banda de rampa de tono continuo desde el negro al blanco y una banda negra. Esta imagen provee diferentes bordes definidos por medio de distintos cambios de intensidad, fig. 13(b). Es utilizada para indicar la destrucci´on o preservaci´on de bordes.

La tabla 1 muestra los resultados de utilizar la m´etrica de artificio de bordes de Veryovka sobre las im´agenes de la fig. 14. Los valores reportados en esta tabla reflejan la fuerza de los artificios no deseados donde los valores altos indican mayor cantidad de artificios. La tabla muestra el m´ınimo, promedio y m´aximo valor de fuerza de los bordes. El an´alisis de los tres valores permite formular una conclusi´on.

En la escala 1, las tres m´etricas tienen el mismo valor m´aximo.M DEP T Dintroduce bordes d´ebiles debido al particionado propio de la implementaci´on. Analizando los valores se puede concluir que M DEP T D obviamente introduce m´as bordes d´ebiles en comparaci´on con las otras dos, considerando la ca´ıda en el promedio reportado en la fuerza del borde. En la segunda escala, M DEP T D se comporta peor en promedio que las otras dos implementaciones. La fuerza de borde m´ınima es tan peque˜na como la de Floyd-Steinberg, sin embargo el m´aximo es el mayor de todas, esto se refleja en el incremento en el valor promedio. En las escalas 3 y 4, el valor promedio deM DEP T D es nuevamente mayor que los otros dos. Sin embargo, la fuerza de borde m´axima en ambas escalas es menor que la de Floyd-Steinberg. La m´ınima fuerza de borde para M DEP T D es, sin embargo, mayor causando el incremento en el valor promedio. En la escala 5, el valor promedio de la fuerza de borde para M DEP T D es comparable con la de Floyd-Steinberg y es menor que M DEP. Los valores de fuerza de borde m´aximo y m´ınimo para M DEP T D son comparables a las de las otras dos.

La tabla 2 muestra los resultados de medir la preservaci´on de bordes en las im´agenes de la fig. 15. Esta medida toma en cuenta que el sistema visual humano no detecta peque˜nos

(11)

desplazamientos en la ubicaci´on de los bordes, de modo que se preserva la geometr´ıa de los bordes. De la misma manera, bordes muy peque˜nos no son detectados o son detectados como ruido o artificios, en lugar de bordes, los cuales deben ser descartados. Los valores presentados en la tabla miden las distorsiones de bordes de la escala 4. Un valor de cero o cercano a cero es una valor deseable. Un valor negativo representa un suavizado de los bordes a consecuencia del proceso de halftoning y un valor positivo representa una exageraci´on del borde a causa del proceso. M DEP T D tiene una distorsi´on en promedio parecida a los otros dos. De la misma manera, exagera bordes producto del tratamiento particionado.

6.

CONCLUSIONES

Si bien existen varios m´etodos para obtener im´agenes mediotonadas a partir de im´agenes en tonos de grises, la aplicaci´on de un m´etodo en particular depende de los recursos disponibles y de la calidad de la imagen resultante deseada. El M´etodo de Difusi´on de Error es considerado un m´etodo simple y con buenos resultados. Por mucho tiempo fue considerado inherentemente serial dada la fuerte dependencia entre los pixels. A partir de un an´alisis detallado de la corre-laci´on de los datos y el orden de procesamiento, el mismo puede ser paralelizado, optimizada su performance y lo m´as importante, hacer su procesamiento portable.

Este trabajo implementa el sistema paralelo propuesto por Metaxas y propone un sistema alternativo. Ambos sistemas fueron desarrollados para el paradigma de pasaje de mensajes. Las diferencias en los resultados obtenidos para ambos est´an directamente relacionadas a las caracter´ısticas propias de cada uno: el gr´anulo de paralelismo implicado en la soluci´on.

Si bien los resultados son alentadores, principalmente para M DEP T D por su simplicidad y performance, un an´alisis m´as exhaustivo debe ser hecho respecto al grado de solapamiento de los segmentos. Por ello, determinada el ´area influyente para los pixels de cada segmento, la interrelaci´on de los pixels de la imagen puede ser sobrellevada.

Adem´as de evaluar detalladamente los costos-beneficios de cada una de las soluciones para-lelas, resulta necesario analizar la posibilidad de migraci´on de los sistemas propuestos a arqui-tecturas paralelas d´ebilmente acopladas y evaluar, consecuentemente, su buen desempe˜no.

Respecto a la calidad de las im´agenes mediotonadas obtenidas, ambos sistemas ofrecieron buenos resultados, no s´olo comprobables visualmente (al ojo humano), sino tambi´en mediante m´etricas aplicadas a la imagen propiamente dicha. Perceptualmente, las im´agenes obtenidas aumentan su similitud a medida que los procesos disponen de mayor informaci´on (mayor reso-luci´on), no presentando diferencias evidentes para ambos m´etodos. Para el caso deM DEP T D, la aparici´on de artificios fue m´ınima cuando no exist´ıa solapamiento de los segmentos. Al in-troducir solapamiento se obtuvo una mejor calidad de imagen manteni´endose los tiempos de procesamiento.

La medida de artificios de bordes propuesta por Veryovka et al. muestra que en las escalas 1 y 5 nuestra propuesta se desarrolla en forma semejante a Floyd-Steinberg, sin embargo en las escalas de 2 a 4, los artificios de borde promedio introducidos son mas fuertes y aparentes. La medida de preservaci´on de bordes muestra que nuestra propuesta exagera los bordes s´olo en las regiones de uni´on de segmentos procesados. Estos resultados se correlacionan con aquellos que surgen de la evaluaci´on perceptual.

En conclusi´on, dependiendo de las caracter´ısticas de resoluci´on y composici´on de la imagen los bordes se evidenciar´an en mayor o menor medida. A grandes rasgos se puede afirmar que ambas propuestas generan im´agenes mediotonadas altamente semejantes a costos totalmente dis´ımiles.

(12)

REFERENCIAS

[1] H. Aguirre, K. Tanaka, T. Sugimura, and S-Oshita. Halftone image generation with im-proved multiobjective genetic algorithm. In EMO, pages 501–515, 2001.

[2] Robert W. Floyd and Louis Steinberg. An adaptive algorithm for spatial grayscale. In

Proceedings of the Society for Information Display 17, volume 2, pages 75–77, 1976. [3] A. Grama, A. Gupta, G. Karypis, and V. Kumar. Introduction to Parallel Computing.

Addison- Wesley, 2003.

[4] Timothy A. Grogan. Image quality evaluation with a contour-based perceptual model.

Human Vision, Visual Processing and Digital Display III, 1666, 1992.

[5] D.E. Knuth. Digital halftone by dot difusion. InACM transaction on Graphics, volume 6, pages 245–273. ACM Collection, October 1987.

[6] P. Metaxas. Parallel digital halftoning by error-diffusion. InACM International Conference Proceeding Series, volume 41, pages 35–41, 2003.

[7] A.C. Naiman and D.T.W. Lam. Error diffusion: Wavefront traversal and contrast consi-derations. In Computer Graphics (SIGGRAPH ’96 Proceeding), volume 19, pages 78–86, 1996.

[8] V. Ostromoukhov, R.D. Hersch, and I. Amidror. Rotated dispersed dither: A new technique for digital halftoning. InComputer Graphics (SIGGRAPH 94 Proceedings), pages 123–130, 1994.

[9] J. Parker. Algorithms for Image Processing and Computer Vision. J. Wiley & Sons, 1997. [10] S. Pelagatti. Structured Development of Parallel Programs. Taylor& Francis, 1998.

[11] H. Saito and N. Kobayashi. Evolutionary computation approach to halftoning algorithm. In Proc. of the First IEEE Conf. on Evolutionary Computation, volume 2, pages 787–791, June 1994.

[12] M. Snir, S. Otto, S. Huss-Lederman, D. Walker, and J. Dongarra. MPI: The complete Reference. MIT Press, 1996.

[13] R. Ulichney. A review of halftoning techniques. SPIE - International Society for Optical Engineering, 3963:378–391, 2000.

[14] L. Velho and J. de Miranda Gomes. Digital halftoning with space filling curves. In

Computer Graphic (SIGGRAPH ’91 Proceedings), volume 25, pages 81–90, July 1991. [15] O. Veryovka, A. Founier, and J. Buchanan. Muti-scale edge analysis for halftoned images.

In Proceedings, SPIE-The International Society for Optical Engineering: Human Vision, Visual Processing, and Digital Display VIII, January 1998.

[16] B. Wilkinson and M. Allen. Parallel programming: Techniques and Application using Networked Workstations. Prentice-Hall, 1997.

(13)

7.

AP ´

ENDICE

Im´agenes y tablas de evaluaci´on cualitativa y cuantitativa.

(a) M DEP (b) M DEP T D

Figura 12: Imagenes Mediotonadas para Evaluaci´on Cualitativa

(a) Rampa del 100 %-75 % negro (b) Imagen de bandas

(14)

(a) Floyd-Steinberg (b) M DEP (c) M DEP T D Figura 14: Im´agenes Mediotonadas para Evaluaci´on de Incorporaci´on de Artificios

(a) Floyd-Steinberg (b) M DEP (c) M DEP T D

Figura 15: Im´agenes Mediotonadas para Evaluaci´on de Preservaci´on de Bordes Tabla 1: Incorporaci´on de Artificios

T´ecnica Valores Escala 1 Escala 2 Escala 3 Escala 4 Escala 5

Min. 85.166 1.774 0.171 0.560 0.015 Floyd-Steinberg Promedio 103.979 14.406 5.257 5.728 3.022 Max. 120.443 33.336 26.964 23.674 21.853 Min. 26.719 8.871 0.484 0.619 0.220 M DEP Promedio 101.298 16.273 5.439 5.627 5.285 Max. 120.443 31.937 20.822 18.303 16.862 Min. 14.361 1.774 2.065 1.619 0.219 M DEP T D Promedio 98.352 22.127 8.655 8.145 3.107 Max. 120.443 44.357 22.134 16.684 16.016 Tabla 2: Preservaci´on de Bordes

T´ecnica M´ınimo Promedio M´aximo Floyd-Steinberg -5.779 3.289 83.600

M DEP -5.679 5.463 79.723

Referencias

Documento similar

[r]

Debido al riesgo de producir malformaciones congénitas graves, en la Unión Europea se han establecido una serie de requisitos para su prescripción y dispensación con un Plan

Como medida de precaución, puesto que talidomida se encuentra en el semen, todos los pacientes varones deben usar preservativos durante el tratamiento, durante la interrupción

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

Abstract: This paper reviews the dialogue and controversies between the paratexts of a corpus of collections of short novels –and romances– publi- shed from 1624 to 1637:

Habiendo organizado un movimiento revolucionario en Valencia a principios de 1929 y persistido en las reuniones conspirativo-constitucionalistas desde entonces —cierto que a aquellas

The part I assessment is coordinated involving all MSCs and led by the RMS who prepares a draft assessment report, sends the request for information (RFI) with considerations,

Para denegación hegeliana del mal: «Así como no existe lo fal- so, no existe el mal, es objetada primero por Sade y luego por la subjetividad romántica: en la mé- dula de la