Tuesday, November 20, 2018

Otras maneras de hacer dithering: ordenado y disperso




El tema de dithering es importante porque lo usamos cotidianamente aunque no nos demos cuenta. Llamaos dithering, o tramado, a una técnica usada en computación gráfica para crear la ilusión de profundidad de color en imágenes con una paleta de colores limitada (reducción de color) (https://es.wikipedia.org/wiki/Tramado). Cuando se trata de imágenes en tonos de gris, entonces las convertimos en general en pequeños patrones (tramados), de puntos en blancos y negros.

Una idea para hacer dithering es usar una de las siguientes matrices:

8  3  4                       1  7  4
6  1  2          y            5  8  3
7  5  9                       6  2  9

La primera matriz se le llama "clustered" u ordenada, mientras que a la segunda se le denomina matriz dispersa. Para usar cada una de estas matrices, tomamos una región de 9 pixeles (en una caja de 3x3) y usamos los valores de la matriz como umbrales de los valores de los pixeles que leímos, los cuales deben estar dentro del rango del 1 al 9. S dividimos los valores de 255 en diez posibles elementos, tendremos simplemente 255/9 = 28.333...

Entonces, para cada pixel leído, dividimos de forma entera entre 28 y comparamos ese valor con el del umbral.  Si el valor de la imagen, el pixel pues (escalado en el rango de 0 a 9), es menor que el número que corresponde al valor de la matriz, entonces ponemos ese pixel en 0 (negro) y en caso contrario en 255 (blanco).

Hagamos unas pruebas con imágenes en tonos de gris.

Por ejemplo, esta es la imagen de Ilse en tonos de gris:



Y esta es la imagen procesada con el dithering ordenado



y con el dithering disperso.



¿Cuál le parece mejor?

Hice un par de manipulación y puse una región de cada ditherizado para comparar mejor y ver cuál queda más satisfactoriamente.


Otro ejemplo es el de la imagen de Benjamín Franklin (ver el inicio del artículo). A la izquierda aparece la imagen original, en medio al imagen con dithering ordenado y a la derecha la imagen con dithering disperso. ¿Cuál les parece mejor?

El código de este esquema de dithering ordenado o disperso me lo pueden pedir a mi correo y a vuelta del mismo recibirán un enlace para instalar el programa, el cual contiene otros filtros e ideas.

No comments: