En la actualidad existe software de todo tipo, propietario, open source, freeware, shareware, etc., todos ellos con diversos fines y a veces específicos para tareas muy particulares.

Mathematica creado por Stephen Wolfram es un programa utilizado en áreas científicas, de ingeniería, matemáticas y áreas computacionales al que hoy se le puede añadir otro uso: Encontrar a Wally (también conocido como Waldo en norteamérica).

Todo surge de un algoritmo creado por Arnoud Buzing mismo que lo publicó en el popular sitio de preguntas y respuestas Stack Overflow. Ahora para no aburrirnos con tanta teoría, primero probemos suerte tratando de encontrar al famoso personaje, después de la imagen encontraremos el procedimiento paso a paso.

¿Lo lograste? Si has llegado hasta aquí sin intentarlo te animo una vez más a hacerlo, vale la pena y es un buen ejercicio para activar algunas neuronas. Ahora veamos como encontrarlo a través del método cíentifico.

1. Filtrar todos los colores que no sean rojos.

waldo = Import["http://www.findwaldo.com/fankit/graphics/IntlManOfLiterature/
Scenes/DepartmentStore.jpg"];
red = Fold[ImageSubtract, #[[1]], Rest[#]] &@ColorSeparate[waldo];

2. Calcular la correlación de la imagen y un patrón simple en blanco y negro, esto con el fin de encontrar las transiciones rojo y blanco en la camiseta.

corr = ImageCorrelate[red,
Image@Join[ConstantArray[1, {2, 4}], ConstantArray[0, {2, 4}]],
NormalizedSquaredEuclideanDistance];

3. Usar Binarize para seleccionar los pixeles en la imagen con una correlación suficientemente alta y dibujar un círculo blanco alrededor para recalcarlos usando Dilation.

pos = Dilation[ColorNegate[Binarize[corr, .12]], DiskMatrix[30]];

Se debe tener cuidado con el valor de Binarize pues si es demasiado alto puede arrojar muchos falsos positivos.

4. Finalmente, combinar el resultado con la imagen original.

found = ImageMultiply[waldo, ImageAdd[ColorConvert[pos, "GrayLevel"], .5]]

Claro que no se trata de un algoritmo perfecto, de hecho depende de ciertos factores como el contraste dentro de la imagen, pero para efectos de esta demostración funciona excelente.

Relacionado  Las 3 mejores formas de escanear y digitalizar fotos antiguas

Por supuesto, si el tema te ha interesado y te gustaría profundizar puedes hacerlo desde el blog de Keshav Saharia que ha dividido el post en dos partes a las que puedes acceder siguiendo los enlaces: Enlace a parte 1 y Enlace a parte 2.

Ahora sólo queda elegir que método usar para seguir jugando, en lo personal me decanto por la opción clásica de buscar a Wally que por cierto ayuda a trabajar la paciencia.

[adsense2]

Vía | Design Taxi

You May Also Like

Los algoritmos priorizan contenidos en medios sociales ¿Lo aprenden o se les entrena para hacerlo?

Las plataformas sociales podrían estar organizando la información de tu feed de…

Tecnologías que transforman nuestro entorno cotidiano

Desde que nos levantamos hasta que nos acostamos, estamos constantemente interactuando con…

DATAtab, alternativa simple y efectiva a SPSS, Minitab, SAS, R

La estadística desempeña un papel fundamental en el mundo de los negocios…

Cómo la tecnología ayuda al medio ambiente

En la era actual, la preocupación por el medio ambiente ha alcanzado…