Algoritmos geneticos e imagenes 2

Hace ya algún tiempo hice un programa para generar imágenes con algoritmos genéticos, que tendieran hacia una imagen dada, de modo que no tuvieran el mismo color, pero sí la misma sensación de luz. El problema era que con el algoritmos genético tardaba mucho en procesar todas las imágenes que usaba, por lo que tenía que usar imágenes demasiado pequeñas (el ejemplo que puse es una de 20×20). Después leí sobre comprimir imágenes con pixeles de tamaños distintos, lo que me hizo pensar en el algoritmo genético que había hecho, pues al tener pixeles de distintos tamaños, entre ellos algunos grandes, con un sólo campo se ocupaba un bueno trozo de la imagen, por lo que debía ser mucha menos la información que debía manejar y se podría trabajar con imágenes de tamaños más normales (tal vez 600×400, no lo sabía). Entonces decidí hacer mi implementación con python, y ya que estuvo lista hice un nuevo programa para generar imágenes con algoritmos genéticos y fue lo que estuve probando ayer. Obtuve un programa que con varias versiones mejoré (o probé), y con casi todas tardaba muchísimo tiempo (hasta 8 horas), pero que obtenía un resultado bastante bueno. cara-1000gen-mutvar300

Algo de lo que no me acordé cuando hice ese programa, es que se comparaba la imagen con la imagen original tomando en cuenta los colores, por lo que el resultado no es tan colorido. Pero para la siguiente versión que hice, evolucionando pixel por pixel no olvidé esa parte, y las imágenes salen más coloridas. Y es muchísimo más rápido, pues la evolución de cada pixel por separado pasa en muy pocas generaciones.

evolucion pixel por pixel

 

 

 

 

 

 

El código aquí

Deja un comentario