domingo, 23 de octubre de 2016

eL FoToCoPiaR Y PaSaR aPuNTeS Se Va a aCaBaR…


Matt Zucker ha desarrollado un algoritmo llamado “NoteShrink” con una excelente página explicativa sobre su funcionamiento limpiar y mejorar las imágenes escaneadas de apuntes escritos a mano. Además de eso, el resultado pasado x la compresión es mucho menor q el de las imágenes originales

Los ejemplos q aporta son bastante impresionantes: las típicas zonas grises de sombras de los escaneados desaparecen, también la transparencia de las notas tomadas en la parte de atrás de las hojas. Sin embargo si hay “líneas guía”, como las de las hojas a rayas o cuadros, las guías se mantienen aunque con el contraste conveniente para q la legibilidad

Una página de apuntes escritos a mano escaneada a 300 ppp puede tener unos 7 MB (en PNG/TIFF); convertida a JPEG calidad 85 se queda en unos 800 KB. El algoritmo de Zucker produce un fichero resultante de alrededor de 100 KB. Otra ventaja es q además separa correctamente la letra escrita en varios colores: negro, rojo azul… Y mantiene el fondo del papel si es relevante

El algoritmo comienza calculando cuál es el color de fondo y luego los colores de escritura; esto consiste en reducir los bits de la profundidad de color (de 8 x canal a 4) seleccionando luego solo los q deben corresponderse a la “escritura” (q suele ser un 3% del total)

Luego se agrupan los colores similares, como x ejemplo el gris claro del texto q “transparenta” y el fondo blanco, ambos muy cerca en la paleta de color. Y se hace prevalecer la mayoría, (lo cual equivaldría a dar x sentado q la gente utiliza colores q contrastan mucho para escribir, una suposición generalmente correcta). Como el 80-90% de los colores de los píxeles de fondo suelen ser blancos, al reemplazar todos los grises claros x blanco esa escritura transparente q no es válida simplemente desaparece

La imagen original tiene 24 bits x pixel de color, pero una vez simplificada se puede elegir un conjunto de colores representativos, x ejemplo rojo, azul, negro (y quizá el rosa de las rayas de fondo) x métodos estadísticos y de agrupación. El resultado es una paleta indexada de tan solo 8 colores q reproduce fielmente el original. (Todo esto se puede hacer variando algunos parámetros, pero para un mismo tipo de apuntes los valores x defecto parecen captar bien la idea)

Finalmente se puede encapsular toda la imagen, q sale en JPEG, dentro de un archivo PDF estándar, lo cual apenas añade unos pocos bytes. Y listo: el archivo documental en formato abierto queda listo para la posteridad. El código, es software libre y tiene una licencia MIT. Quienes quieran utilizarlo, examinarlo o combinarlo con otros proyectos pueden descargarlo de “Github”: “NoteShrink”. Entran ganas de sacar viejos cuadernos de notas y empezar a escanear…