SIGGRAPH 2007 "Escalado de imágenes sin perdida"
viernes, 24 de agosto de 2007
Lo he visto en mil sitios no pensaba decir nada, pero si Víctor dice que es digno de mi blog tengo que ponerlo.
SigGraph es un grupo con interés en infografía o computación gráfica de la ACM, también es el nombre de la feria más importante de diseño por ordenador. En la feria de este año parece ser que ha llamado la atención un novedoso método para escalar imágenes. La técnica se basa en buscar caminos de píxeles que son menos relevantes en la imagen para eliminarlos y así poder reducir el tamaño de la imagen, o repetirlos si lo que se quiere es agrandarla. En el vídeo se ve mucho mejor todo esto (atención a cuando elimina a una persona de la foto, los artistas del photoshop seguros que están encantados con estas cosas):
Hay muchos algoritmos para agrandar y reducir imágenes, tal vez menos impresionantes que el que acabáis de ver, pero me gustaría destacar uno. Como ya mencione cuando hable de fractales, estos podían utilizarse para comprimir imágenes con perdida (como el jpg). Esta técnica para comprimir imágenes se basa en los atractores de punto fijo, es decir, en sistemas dinámicos que independientemente del estado inicial y que tras un número de iteraciones llegan a una situación estable de la que ya no salen. La forma en la que se aplica esto para comprimir imágenes es la siguiente. Primero se divide la imagen en partes y, después, para cada parte se busca otra a partir de la que se pueda obtener con una simple operación matemática del tipo y = a·x+b. Finalmente se guardan las operaciones matemáticas y las partes sobre las que se aplican para poder volver a obtener luego la imagen original. Al haber conseguido fórmulas matemáticas que forman "el atractor de la imagen" podemos utilizarlas a "cualquier escala", es decir, no es necesario que las zonas en las que se dividió la imagen tengan el mismo tamaño que las originales y podemos hacerlas más pequeñas o más grandes para conseguir una nueva imagen de un tamaño distinto a la original. Evidentemente esto tiene sus limitaciones porque para conseguir las fórmulas matemáticas no hemos utilizado una imagen con infinito grado de detalle, pero hasta cierto punto esta técnica es interesante, sobre todo cuando se trata de imágenes de objetos naturales que se pueden considerar fractales, cómo los árboles, o pseudofractales, como las nubes.
Árboles fractales
miércoles, 22 de agosto de 2007
Hace unos años tuve que crear un fractal y me dio por hacer un árbol, el resultado fue siguiente:
La forma de hacerlo es bastante sencilla, básicamente se coge un patrón simple y se va copiando a escalas más pequeñas. Lo único que hay que hacer para darle un efecto más "natural" o más "realista" es añadir algo de aleatoriedad en cada copia. En la siguiente imagen se aprecia mejor el proceso:
Hace unas semanas me dio por intentar volver a hacer un árbol, pero esta vez tenia que parecer más natural, al menos en la forma (no quería entretenerme mucho con los colores, la iluminación y las texturas). El resultado es este:
Si queréis os podéis descargar el código fuente, esta hecho para ser renderizado con POV-Ray. Y ya de paso podéis echar un vistazo al Hall of Fame de la página del POV-Ray, es bastante impresionante.
Fractal
lunes, 20 de agosto de 2007
La palabra fractal aparecio en 1975, propuesta por el matemático Benoît Mandelbrot. En sus propias palabras:
Quería recoger la impresión de una piedra que golpeas, y se fractura. De ese fractus latín surgió el fractal. La terminación se debió a que quería que funcionara en inglés y francés.El objetivo de los fractales fue intentar representar las figuras geométricas de la naturaleza que la geometría clásica, euclidiana, era incapaz de abordar. En contraposición a la geometría euclidiana, donde todos los elementos siguen unas bases matemáticas bien definidas, la geometría fractal se presenta como un modelo donde se pretender romper la armonía de los elementos y donde se busca la regularidad en las relaciones entre un objeto y sus partes a diferentes escalas. Es decir, es un modelo donde un objeto puede ser expresado como el límite de un proceso geométrico iterativo, donde en cada iteración se produce una ruptura de la forma original.
En general un fractal es un objeto que cumple las siguientes propiedades (o al menos la mayoría):
- Autosemejanza, el objeto fractal aparece a diferentes escalas
- Tiene detalles en escalas arbitrariamente pequeñas.
- Definición sencilla
- Son generados por procesos iterativos o recursivos
- Son demasiado irregulares para describirse en términos clásicos
- Su dimension de Hausdorff-Besicovitch no es entera
Actualmente los fractales tiene diferentes aplicaciones de las cuales voy a destacar tres:- Crear música
- Generación de imágenes de elementos de la naturaleza como árboles, estructuras moleculares cosas, montañas...
- Compresión de imágenes con perdidas (con resultados mejores que el formato jpg tan extendido hoy en día, pero más lentas en el tiempo de compresión, no en el de descompresión).
Un ejemplo muy simple de una imagen de unas montañas creada con técnicas fractales.
Vista aérea de unas montañas a diferentes alturas (gracias google maps):
El conjunto de Mandelbrot a diferentes escalas:
Enlaces:Jiro
viernes, 10 de agosto de 2007
Era de noche, una noche muy distinta a todas las demás. La luna llena brillaba en todo su esplendor pero las densas nubes impedían que ningún mortal pudiera contemplarla. Gracias ello pude salvar mi vida. Nuestro ataque a media noche pretendía acabar con todos, pero nos estaban esperando. La batalla fue una masacre y solo algunos logramos escapar con las pocas fuerzas que nos quedaban.
Mientras caminaba por el bosque las horas pasaban como si fueran días, apenas podía mantener la llama con la que iluminaba el camino. El silencio y la oscuridad se apoderaban de mi a cada paso que daba. Parecía que los animales tenían miedo y habían decidido esconderse hasta que llegará el día.
De repente una brisa de viento permitió a la luna aparecer entre aquellas densas nubes. Cuando quise darme cuenta ya era tarde, allí estaba él. Apareció de entre las sombras, era como si se hubiera sincronizado con la Luna. Enseguida supe de quién se trataba. Nunca antes le había visto, ni conocía a nadie que lo hubiera hecho, ni siquiera me creía que existiera. Era como si fuese una historia que había sido inventada para aterrorizar a los más cobardes y asustar a los niños. Desgraciadamente para mi era real. Su túnica azul y oscura como la noche, su cabeza afeitada, su pose en guardia esperando la lucha y, sobre todo, su katana manchada con ríos de sangre le hacían único e inconfundible. Cualquier otro ser humano al verme en el bosque hubiera pedido clemencia por su vida, pero en este caso era yo quién tenía que hacerlo.
Existían miles de leyendas que hablaban de él. Las más antiguas decían que era un hombre tranquilo, amable, pacífico con un trabajo honrado, era un hombre como cualquier otro y que como mortal siempre se había preguntado sobre el significado de la vida. Un día decidió retirase al Tibet y convertirse en monje. Pensaba que allí encontraría la respuesta. Fue en el templo de la montaña más alta, donde solo los más fuertes y valientes habían podido llegar, el lugar que escogió para su retiro. Sus hermanos le enseñaron a dominar su mente, su cuerpo y el arte de la espada. Tal fue su dominio de la espada que fueron muchos maestros los que fueron a buscarle al templo para enfrentarse a él. La leyenda del gran maestro de la espada había comenzado. Al principio solo aparecían en el templo para aprender del maestro, pero poco a poco aparecieron los más osados que quería demostrar que eran mejores, y lo único que consiguieron fue la muerte y extender su leyenda. Entonces, tal y como había llegado al templo se fue y desapareció. Algunos piensan que fue expulsado por sus hermanos cansados de tanta muerte sin sentido, otros creen que simplemente se canso de luchar contra rivales tan débiles. Con el tiempo, se convirtió en una historia de charlatanes que viajan de pueblo en pueblo y su verdadera existencia se puso en duda.
Cuando aparecimos nosotros, los humanos nos temían y, durante un tiempo, nos creímos capaces de dominar el mundo. Eramos infalibles en cuando atacábamos, ningún pueblo sobrevivía y nunca habían logrado herir a uno de los nuestros. Hasta que un día en el poblado como otro cualquiera en medio de la montaña, un sólo hombre logró aniquilar a 13 de los nuestros con su espada. Ese fue el comienzo en el que los hombres dejarían de temernos. La historia se repitió una y otra vez, y siempre era un único hombre el que lograba acabar con los nuestros. No sabíamos quien era ese hombre ni si existía de verdad, pero cada vez más de los nuestros morían y más historias aparecían del gran maestro de la espada. Todas contaban lo mismo, el gran maestro de la espada cansado de luchar contra humanos había vuelto de su escondite para luchar contra rivales más dignos y aniquilarnos a todos nosotros. Para muchos el asesino del templo del Tibet se había convertido en un héroe, para otros solo había encontrado otros seres que matar.
Seguramente fue él quien advirtió de nuestro ataque y ahora nos estaba buscando por el bosque para acabar, uno por uno, con todos los que habíamos logrado huir. Pero no podía estar más equivocada. Apenas me miro durante un segundo, envainó su espada, se giro y continuó su camino. No entendía nada, pero no podía quedarme sin saber cuál era su nombre. Se lo pregunte antes de que pudiera perderle de vista, él se giro, me miró y con una tenue voz de alguien que se encontraba perdido me dijo: "mi nombre es Jiro". En ese momento, su voz y sus breves palabras me hicieron comprender que no era él el quién había escogido matar. Para Jiro no existía el bien o el mal, solo vagaba por el mundo intentando buscar respuestas que nunca encontraría, luchando por sobrevivir y defendiendo aquello que le parecía injusto. Para algunos era un héroe, para otros un asesino. Cuando quise volver a hablar con él, ya había desaparecido.
Jiro nunca se dará cuenta que el significado de su vida es equilibrar la balanza entre el bien y el mal. Siempre seguirá vagando y buscando aquello que tanto ansia. Tal vez algún día nuestros destinos vuelvan a cruzarse, y entonces pueda darle una respuesta. Después, me veré obligada a matarle.
Bueno, y esta historia a que viene, pues no podía evitar crear un superhéroe sin ponerle una historia. Así de paso me introduzco en el mundo de los relatos, del que puede que salga pronto. Lo mío no es escribir, prefiero los números, así que no seas muy duros conmigo.
Tenéis la aplicación para hacer vuestro propio superheroe en UnderGround Online.



