Post on 26-Oct-2020
UNIVERSIDAD DE ALCALÁ
Escuela Politécnica Superior
Ingeniería Informática
Trabajo Fin de Carrera
Simulación y Visualización del modelo GrayScott en soportes tangibles.
Una aproximación artística.
Autor: Eduardo Moriana Delgado Director: Elena García Barriocanal
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
2
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Dedicado A todos los que han compartido su conocimiento
3
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
4
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Agradecimientos A mi Familia A Susana
5
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
6
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Índice
Dedicado 5 Agradecimientos 5
Índice 7 Resumen 9 Palabras clave 9 Introducción 11 Objetivos y Aportaciones 12
Otra forma de crear y percibir obra pictórica 12 Realidad aumentada espacial con contenido generado a partir del soporte 12
Campo de aplicación 12 Metodología y Planificación 13
Resultado 14 Estado del arte 15
Reacción difusión 15 Realidad aumentada espacial 17
Características 21 Simulación Gray-Scott 21
Mecanismo de las ecuaciones 21 Implementación 24
Adquisición de datos 25 Visualización 26 Planteamiento de Pruebas 26
Soluciones, descripción Funcional 27 Adquisición de datos 27 Simulación 28
Tiempo Real 28
Aparapi 29 Alimentación del modelo 29 Visualización 30
Construcción, Descripción técnica 31 Simulación 31
Renderizado 33
7
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Ejecución de Pruebas 35
Prueba 0 Funcionamiento de la simulación 35 Ondas viajeras, (Travelling waves) 37 Solitons 37 Moving solitons 38 Pulsating Solitons 38 Self organized Fingerprints 39 Moving Spots 39 Conclusiones 40
Prueba 1, Variación espacial de los parámetros 41 Resultados Gráficos 42 Conclusiones 48
Prueba 2, Obra pictórica 49 Descripción del soporte 49 Fotos tomadas con distintos parámetros 50 Conclusiones 54
Prueba 3, Realidad aumentada espacial + Iluminación sintética 55 Descripción del montaje 56 Fotos tomadas con distintos parámetros 57
Conclusiones 61
Conclusiones 63
Trabajos futuros 65 Índice de figuras 67 Índice de diagramas 69 Bibliografía 71 Anexo 1 Pliego de condiciones 73 Anexo 2 Presupuesto 75
8
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Resumen El objetivo de este proyecto es construir una herramienta que permita experimentar la
simulación y visualización del modelo GrayScott a partir de soportes tangibles y, más
concretamente, en piezas artísticas. Para la simulación es necesario obtener datos de la
pieza, los cuales posibiliten modificar los parámetros del modelo manteniendo una relación
espacial, estando así los patrones obtenidos integrados con la pieza. Para la visualización
se van a utilizar técnicas de realidad aumentada espacial.
El resultado del proyecto será la documentación de una serie de pruebas realizadas sobre
diversas piezas artísticas.
Palabras clave Gray Scott Reacción Difusión Realidad Aumentada Espacial Arte Computación
9
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
10
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Introducción El arte computacional es la expresión artística donde la tecnología electrónica ha sido
herramienta imprescindible en la producción artística y/o vehículo necesario para la
percepción de la pieza en sí. A mediados del siglo XX surgen los primeros usos de
dispositivos mecánicos, así como “ordenadores analógicos" en la creación de piezas
artísticas. Por ejemplo, ‘Oscillon 40’, creado por Ben Laposky en 1952, consistente en un
osciloscopio manipulado, en donde los patrones que formaban las ondas se muestran sobre
una pantalla fluorescente. Otro ejemplo es ‘Drawing machine’, creado por Desmond Paul
Henry, estudiante de filosofía en la Universidad de Manchester, el cual a través de
computadoras analógicas de cálculos de balística de la IIGM desarrolló experimentos con
efectos visuales sintéticos, ejemplos hallados en Computer Graphics, de Herbert W. Franke.
Imagen Oscillon Imagen Drawing Machine
Por otro lado tenemos el concepto de computación creativa, que puede entenderse como un
subconjunto del arte computacional, en cuyo caso, la diferencia se encuentra en la
cooperación necesaria del algoritmo o mecanismo diseñado en la creación de la pieza, más
lejos del uso de una herramienta y más cerca de la creación de elementos con capacidades
creadoras.
11
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Objetivos y Aportaciones
El objetivo de este proyecto es experimentar la simulación y visualización del modelo
GrayScott a partir de diversas piezas artísticas. Para la simulación es necesario obtener 1
datos de la pieza que permitan modificar los parámetros del modelo, de este modo los
patrones obtenidos deberían estar integrados con la pieza, pues se crearían a partir de
ciertas propiedades de ésta. Con la información obtenida de la simulación, se va a proponer
un método de visualización basado en realidad aumentada espacial, que nos permite
visualizar el modelo sobre el mismo espacio que lo modifica, sin necesidad de uso de
dispositivos extra por cada observador.
Otra forma de crear y percibir obra pictórica
Las investigaciones halladas en el proceso de documentación en relación a la proyección de
imágenes sobre obra pictórica, desarrollan el objetivo de añadir más información al soporte
artístico que se está observando, como la señalización de zonas de interés, información del
autor, técnica de creación, … . Este proyecto de un modo abstracto explora ciertas
posibilidades de creación que logran modificar la experiencia clásica que tiene el
observador de una pieza de arte pictórica.
Realidad aumentada espacial con contenido generado a partir del soporte
Las técnicas más modernas utilizadas en el desarrollo de este proyecto hace décadas que
se empezaron a utilizar, pero se estima conveniente señalar el concepto más singular que
podría derivarse de este proyecto, y está en la fusión de la realidad aumentada espacial y la
creación del contenido a proyectar de un modo autogenerado.
Campo de aplicación
El objetivo de este proyecto de final de carrera es artístico y/o estético. En él se parte del
conocimiento de distintas ramas de la ciencia para generar una experiencia visual sintética.
1 Desarrollado en la sección de reacción difusión.
12
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Es por ello, que sus campos de aplicación pueden hallarse en la decoración de espacios, la
creación de piezas artísticas o publicidad.
Alguna de las técnicas utilizadas están basadas en la realidad aumentada, visualización de
datos o simulaciones físicas, campos en los que ésta forma de visualización de datos en el
propio soporte que las modifica, podría ser una técnica a explorar para la comprensión de
grandes volúmenes de datos o procesos físicos complejos en diferentes tipos de
estructuras.
Metodología y Planificación
Debido al carácter experimental de este proyecto se estima conveniente el uso de una
metodología iterativa incremental unida a un “divide y vencerás” de los distintos problemas.
Vamos primeramente a señalar las tareas, se espera ir realizando iterativas sucesiones
sobre cada una hasta completarlas con éxito.
Investigación
Documentación
Implementación de Simulación
Modificación de simulación
Pruebas de relación de parámetros
Realidad Aumentada Espacial
Iluminación sintética
Integración simulación Realidad Aumentada Espacial
Integración de iluminación
Pruebas de integración
Escritura de la memoria del trabajo
13
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Diagrama de gantt
Resultado
El resultado del proyecto será una herramienta que permita realizar experimentos visuales
en piezas artísticas. La herramienta ha de crear una propuesta funcional, que resolverá
distintos aspectos necesarios para completar los retos que se plantean y que se enumeran
a continuación:
Sistema de adquisición de datos de la pieza.
Propuesta de relación de los parámetros del modelo con la información adquirida.
Implementación en OPENCL / GLSL OPENGL.
Propuesta de visualización de los patrones obtenidos con video proyección.
Sistema de calibración para realidad aumentada espacial.
Experimentación en piezas artísticas.
Análisis de resultados y propuesta de futuras líneas de investigación.
14
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Estado del arte Los patrones reconocibles en la naturaleza han sido objeto de estudio e imitación en todas
las civilizaciones a lo largo de la historia, quizás debido a la atracción natural creada en el
devenir de la evolución, pues es el entorno que nos acoge. De algún modo, podemos
disfrutar embriagados de las decisiones estéticas que la morfogénesis, el proceso biológico
que lleva a un organismo desarrollar su forma, ha creado para nuestro uso y disfrute. Las
tormentas tropicales en forma de espiral, las rayas de las cebras, las manchas hexagonales
de los leopardos, la distribución de flora en una pendiente, huellas dactilares o incluso la
división celular, nos indican que existen procesos microscópicos que dan lugar a una u otra
solución.
Los sistemas no lineales representan sistemas cuyo comportamiento no es expresable
como la suma de los comportamientos de sus descriptores, antes del S. XX se creían
actores secundarios de los procesos naturales, incluso apuntadores que simplemente
ayudaban a los actores protagonistas, los sistemas lineales, a obtener los cálculos que
controlan los procesos naturales, donde el resultado es la suma de las partes. Pero Henri
Poincaré (18541912) señaló que los procesos no lineales debían ser responsables
primeros en procesos naturales y, a su vez, también advirtió que estos sistemas, tenían una
sensibilidad extremadamente notable en los resultados futuros a pequeñas variaciones de
las condiciones iniciales, por extraño que parezca, tratándose de sistemas deterministas.
Hendrik Antoon lorentz (18531928) fue el responsable de mostrarnos un ejemplo
simplificado de un sistema dinámico caótico en el desarrollo de la formación de las
convenciones en la atmósfera. Desde entonces la teoría del caos se ha erigido como una
rama del conocimiento en campos como las matemáticas, la física o la ecología.
Reacción difusión La reacción difusión define un modelo donde se calcula la concentración de una o más
sustancias en espacios ndimensionales en base a dos procesos, reacciones, que
provocan que unas sustancias se conviertan en otras, y difusión, que provoca que se
expandan en el espacio. Los sistemas de reaccióndifusión tienen la forma de ecuaciones
parabólicas en derivadas parciales y pueden representarse bajo la siguiente forma general:
15
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Como ejemplos más sencillos en una dimensión tenemos por un lado la ecuación de Fisher,
que describe la expansión de poblaciones biológicas para R(u) = u(1u), por otro, la
ecuación de la propagación del calor cuando sustituimos por cero la componente R.
En dos dimensiones los patrones que surgen son mucho más variados que en una
dimensión, el modelo GrayScott ha sido ampliamente estudiado, así como otros procesos
de ReacciónDifusión desde que Alan Turing señaló en la publicación de 1952 ‘The
chemical basis of morphogenesis’ una característica importante de estos procesos: si en un
sistema estable añadimos la difusión, este puede volverse inestable y ofrecer morfogénesis.
Imagen Retrato de Alan Turing con GrayScott
El uso de técnicas de realidad aumentada espacial donde los contenidos visuales se
adaptan a las formas de los soportes de proyección, y su integración con procesos de
simulación, pueden ofrecer posibilidades de experimentación en arte y ciencias, cómo se
desarrolla en el apartado correspondiente. Al plantearse desde la perspectiva de los
modelos de reacción difusión, donde vamos a alterar los parámetros de las ecuaciones en
base a las propiedades del soporte en cada área del espacio que simulamos. se espera
poder ver y llegar a modificar en tiempo real los procesos que están sucediendo en el
mismo espacio que se percibe.
16
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen de Patrones Naturales
En la propuesta del modelo GrayScott para dos dimensiones, encontramos la aparición de
una gran variedad de patrones complejos que podemos reconocer en la naturaleza, como
división celular, ondas viajeras, espiral rotante o patrones auto organizados de huella, entre
otros.
Realidad aumentada espacial Realidad aumentada, es el término que se usa para definir el añadido de información
perceptiva a través de un dispositivo tecnológico directa o indirectamente, en un entorno
físico del mundo real, cuyos elementos se combinan con elementos virtuales para la
creación de una realidad mixta en tiempo real. Existe una subcategoría denominada
realidad aumentada espacial o también llamado videomapping, donde en base al uso de
proyectores digitales se permite mostrar información gráfica sobre los objetos físicos, la
principal ventaja de este método de creación de realidad aumentada, está en que no es
necesario el uso de una pantalla por cada usuario, ni tampoco dispositivos que permitan
visualizar los contenidos que deban ser portados por los observadores. Raskar, Ramesh, et
al. “Shader lamps: Animating real objects with imagebased illumination.”
La primera pieza con una proyección sobre una superficie irregular data del año 1969, y fue
utilizada en la ‘Mansión Encantada’ de DisneyWorld. Esta atracción consta de un gran
número de interesantes ilusiones ópticas, entre las que encontramos los ‘5 bustos
cantantes’ ‘Grim Grinning Ghosts‘, donde tenemos un video y audio con caras de 5
17
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
cantantes que se proyectan sobre los bustos, creando una ilusión de movimiento. Bimber,
Oliver, Ramesh Raskar, and Masahiko Inami. Spatial augmented reality.
Imagen de ‘Grim Grinning Ghosts‘
En los primeros años del siglo XXI, el uso de estas técnicas ha tenido cierta difusión en la
creación de espectáculos o piezas artísticas, o también como herramienta para la creación
de escenografías en teatro, conciertos y televisión. En el ‘mapping monumental’ donde se
utilizan proyectores de alta potencia para crear experiencias aumentadas sobre espacios
arquitectónicos como catedrales, puentes, etc., tenemos que los contentenidos
audiovisuales son preproducidos, es decir no se calculan en tiempo real, siendo un video
que se adapta a la superficie y se da al play. Esta técnica es óptima cuando se quieren
crear efectos de iluminación hiperrealistas o cálculos cinéticos de millones de partículas,
pues las herramientas a utilizar son las mismas que se utilizan para la postproducción de
efectos especiales cinematográficos, donde el renderizado no es viable realizarlo en tiempo
real sin unos costes disparatados.
18
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen de Mapping monumental con simulación de rotura de paredes
Imagen Klaus Obermaier, APPARITION
De forma más concreta y con el acceso a una nueva técnica de creación, los artistas han
explotado este vehículo de expresión en la creación de sus piezas. Parte de la inspiración
para la creación de este proyecto, está en la documentación publicada por Robert Munafo's
en relación al modelo GrayScott, donde a parte de contener información de los distintos
19
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
patrones que nos ofrece la simulación, desarrolló un salvapantallas que hacía uso de la
cámara del ordenador, transformando la información de cada pixel para en los parámetros
del modelo.
Imagen de ANTICOnforme exhibition, Rabarama
20
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Características
Para poder llevar a cabo el proyecto, se han de resolver distintos problemas, a continuación
se van a describir las características de cada uno de ellos.
Imagen Diagrama General
Simulación Gray-Scott Como ya se ha explicado, disponemos de dos elementos químicos genéricos que vamos a
denominar U y V, cuya concentración en un punto dado en el espacio vamos a definirlo por
las variables u y v. Tenemos que los compuestos van a reaccionar y difundirse a través del
espacio, por lo tanto, la concentración de U y V en cualquier lugar cambia con el tiempo, y
puede diferir de la que existe en otros lugares . A continuación se va a desarrollar el
mecanismo de las ecuaciones, para luego describir los pormenores de la implementación.
Mecanismo de las ecuaciones
El comportamiento global del sistema se describe por la siguiente fórmula, dos ecuaciones
que describen fuentes de aumento y disminución para cada uno de los dos productos
químicos, con dos reacciones que se producen a diferentes velocidades a lo largo del
espacio:
U + 2V → 3V
V → P
21
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Según la publicación, ‘Reactiondiffusion model as a framework for understanding biological
pattern formation’ definimos P como un producto inerte o vacío y se asume por simplicidad
que las reacciones inversas no se van a producir (esto es una simplificación útil cuando un
suministro constante de reactivos impide la consecución del equilibrio). Debido a que V
aparece en ambos lados de la primera reacción, actúa como un catalizador para su propia
producción.
A continuación se van a desarrollar los mecanismos de la fórmula anterior, teniendo u = [U]
como la concentración de U, y v = [V] la concentración de V. En casos generales de
simulación podríamos considerar Du, Dv, F y K constantes, pero en el caso que atañe a
este proyecto, algunos de los parámetros van a ser calculados a partir de información del
medio en ese lugar del espacio.
22
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Distribución de los patrones GrayScott para f, k.
La primera ecuación va a indicar la rapidez con la que u aumenta. Hay tres términos, el
primer término, Du∇2u, es el término difusión, en él se especifica que u aumentará en
proporción al Laplaciano (una especie de segunda derivada multidimensional en la
cantidad de variación local del gradiente) de U. Cuando la cantidad de U es mayor en las
zonas vecinas, u aumentará pero ∇2u será negativo, cuando las regiones circundantes
tengan concentraciones más bajas de U. En tales casos el término de difusión es negativo
y u disminuye. Si calculamos una ecuación para u con sólo el primer término, tendríamos
∂u / ∂t = Du∇2u, que es un sistema de difusión única equivalente a la ecuación del
calor.
El segundo término es uv2 y determina la velocidad de reacción. La primera reacción
mostrada se lleva a cabo a una velocidad proporcional a la concentración de U veces el
cuadrado de la concentración de V. También el aumento de v es igual a la disminución de u
(como se muestra por UV2 positivo en la segunda ecuación). No hay un comportamiento
constante sobre las condiciones de reacción, pero la fuerza relativa de los otros términos se
puede ajustar a través de las constantes Du, DV, F y K.
El tercer término, F (1u), es el término reposición. Dado que la reacción consume U y
genera V, la cantidad del elemento químico U puede llegar a cero a menos que haya una
23
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
manera de reponerlo. El término reposición dice que u se incrementará a una velocidad
proporcional a la diferencia entre su nivel actual y 1. Como resultado, incluso si los otros dos
términos no tuvieron efecto, 1 sería el valor máximo de u. La constante de F es la velocidad
de alimentación y representa la tasa de reposición o alimentación.
La única diferencia significativa en la segunda ecuación está en su tercer elemento. El
tercer término es el término de consumo del elemento, sin el término de disminución, la
concentración de V podría aumentar sin límite. En la práctica V podría permitir que se
acumule durante más tiempo sin interferir con la producción adicional de V, pero se difunde
fuera del sistema. La velocidad de disminución es proporcional a la concentración de V en el
momento actual, y también a la suma de dos constantes F y K.
No hay nada en las ecuaciones que limite la existencia del sistema en un espacio de dos
dimensiones (como una placa de Petri) o en tres dimensiones ( crecimiento del coral ), o
incluso algún otro número de dimensiones. De hecho, cualquier número de dimensiones es
posible, y el comportamiento resultante es bastante similar. La única diferencia significativa
es que cuantas más dimensiones, más direcciones de difusión son posibles, y el primer
término de la ecuación se vuelve relativamente más fuerte.
Implementación Necesitamos un componente software que permita realizar los cálculos del modelo
GrayScott bajo ciertos requerimientos. Es necesario que el sistema sea capaz de generar
los resultados con un ratio mínimo de 25 simulaciones por segundo, permitiendo de este
modo generar una animación continua y fluida al ojo humano. Debido a la cantidad de datos
a calcular si, por ejemplo, se realizan las simulaciones en una matriz de 1024 x 768 (19.6
millones de operaciones por segundo) se apunta el análisis de soluciones de computación
paralela ejecutada en la GPU con OPENCL o basada en GLSL.
En lo relativo a la simulación un punto a destacar, es la realización de modificaciones en los
parámetros del modelo en base a información del propio soporte, por lo tanto se necesita un
conjunto de datos ordenados de la pieza elegida, como podŕia ser una imagen a color, que
permitirán calcular el valor para cada uno de los parámetros y para cada discretización del
espacio.
24
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
A partir de la información obtenida del soporte, se ha de definir un método para la
adaptación y/o transformación a los parámetros de la simulación, ‘F’, ‘K’, ‘Du’ y ‘Dv’. Por
supuesto esta entrada de datos obtenidos a partir de información real de la pieza, han de
fomentar que los patrones creados se puedan integrar visualmente con el propio soporte.
Adquisición de datos Las simulaciones a realizar, se van a calcular a partir de la información obtenida del propio
objeto, donde se van a proyectar los resultados de la simulación. La información a obtener,
en este caso de una pieza artística, puede ser de distintas naturalezas, color, profundidad,
materiales, temperatura, … . Por lo tanto se ha de definir un proceso de adquisición de los
datos de la pieza, así como qué tipos de datos se van a utilizar. Se apunta que, debido al
uso de proyectores digitales que proyectan luz visible, el tipo de información que se extraiga
podría ser algún tipo de información que también se vea, para facilitar una comprensión
natural entre los resultados del modelo y la realidad espacial creada. Se apuntan como
información a analizar en primera instancia la colorimetría o la forma.
25
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Visualización La visualización va a estar basada en técnicas de realidad aumentada espacial, que
consiste en la proyección de imágenes adaptadas a soportes irregulares. Por lo tanto, el
prototipo a construir ha de añadir alguna solución para la adaptación de las imágenes
proyectadas en el propio soporte.
Otro aspecto a solventar es cómo se pretende integrar el resultado obtenido en la
simulación con el propio soporte. La salida del modelo GrayScott es la cantidad de
concentración de dos reactivos en el espacio dado, es decir, para cada pixel tenemos dos
valores. A partir de estos datos se quiere crear alguna solución, que permita integrar en
color y forma con el soporte, e incluso crear una iluminación simulada a partir de la
iluminación real del entorno.
Para poder mostrar la imagen en un frame de una aplicación se va a necesitar desarrollar
una pieza de software basada en alguna tecnología como DirectX u OPENGL, que ofrezca
la visualización de los contenidos así como un GUI que permita configurar y utilizar la
herramienta.
Planteamiento de Pruebas
Debido a la naturaleza experimental de este PFC, se va a plantear un experimento que
permita llevar a cabo la obtención de conclusiones de las soluciones propuestas para cada
una de las partes en un marco simplificado.
Las pruebas se deberían realizar sobre soportes reales y sintéticos que añadan la máxima
simplificación en el proceso de pruebas, tanto en la adquisición de datos, simulación,
visualización y verificación de los resultados.
26
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Soluciones, descripción Funcional
Como herramienta base para la creación de las piezas de software necesarias, se ha
elegido Processing ( processing.org ), un lenguaje de programación y entorno de desarrollo
integrado de código abierto basado en Java, de fácil utilización, y que sirve como medio
para la enseñanza y producción de proyectos multimedia e interactivos de diseño digital.
Fue iniciado por Ben Fry y Casey Reas a partir de reflexiones en el Aesthetics and
Computation Group del MIT Media Lab dirigido por John Maeda. Aunque ofrece un entorno
de desarrollo integrado, se hará uso del IDE Eclipse por sus capacidades avanzadas en el
manejo de tecnologías Java.
Adquisición de datos
Como se ha desarrollado en la descripción de los problemas a solventar, primeramente se
debe elegir el tipo de información que se va a utilizar para la alimentación de los parámetros
de la simulación. Debido a que el objetivo concreto de este proyecto tiene fines estéticos,
entre las dos posibilidades que se han barajado, usar colorimetría o la forma del soporte, se
ha elegido el uso de la colorimetría, con miras de poder explorar iluminación integrada con
los colores de las piezas, así como el acceso más limitado a la obtención de información del
volumen de la pieza, pues se necesitaría algún tipo de escáner 3D.
A la hora de tomar imágenes de las piezas, hay que tener en cuenta la perspectiva desde la
que se realiza la fotografía y la geometría de la lente de la cámara así como la del
proyector. Como el objetivo es proyectar esta misma imagen modificada por el modelo
GrayScott, la perspectiva ideal ha de ser la misma que tenga el proyector digital que
muestre el resultado. El objetivo de buscar ésta similitud es facilitar el proceso de
adaptación del resultado visual al propio soporte, que va a ser mediante técnicas de
corrección trapezoidal. Cabe destacar que las correcciones de perspectivas utilizadas a la
hora de la calibración de la proyección, son capaces de asumir grandes variaciones entre
las posiciones del proyector y la perspectiva en la adquisición de los datos, pero cuanto más
difieren, más pérdidas en la resolución y luminosidad de las piezas.
27
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Simulación
Los procesos de reacción difusión están definidos por ecuaciones parabólicas diferenciales,
y para el modelo GrayScott en un espacio bidimensional, se han desarrollado los
mecanismos matemáticos que controlan los procesos. El objetivo a cumplir en la simulación
es realizar los cálculos en tiempo real y en base a la información adquirida del soporte. A
continuación se indican las soluciones elegidas.
Tiempo Real
Para la primera parte se han realizado pruebas con lenguajes que permiten acceder a la
computación paralela ofrecida por la GPU. Existen dos formas de acceder, una es mediante
OPENCL, una solución software que permite crear aplicaciones con paralelismo a nivel de
datos, con una filosofía de uso para cálculo general. Por otro lado está GLSL, un lenguaje
utilizado para la creación de shaders, elementos software en OPENGL que únicamente
permiten realizar cálculos de rasterización de texturas y polígonos.
Los cálculos de la simulación tienen una característica en común con el famoso “Game of
Life” donde la existencia de vida en cada pixel, se calcula en base a las propiedades de los
píxeles del entorno. De igual modo el modelo GrayScott calcula la concentración de una
sustancia en función de las propiedades de sus 4 vecinos (norte, sur, este, oeste). Una vez
se ha calculado el resultado para cada pixel, se puede volver a calcular el siguiente
resultado. Por lo tanto, en el algoritmo va a ser necesario el uso de algún patrón que nos
permita manejar dos estructuras de datos, una con el estado anterior del sistema, y otra
donde se van guardando los nuevos resultados. La dificultad en describir las ecuaciones
programáticamente será baja, debido a la facilidad intrínseca en la conversión de este tipo
de ecuaciones en algoritmos.
Para poder utilizar la imagen tomada en los cálculos de la simulación, donde tenemos una
imagen donde cada pixel se compone de una tupla de 3 elementos, RGB, Red (rojo),
Green, ( verde ), Blue ( azul ), es necesario realizar una transformación de estos datos en
los parámetros del modelo. Para realizar el prototipo se van a probar con las
28
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
transformaciones más sencillas donde cada parámetro va a aumentar a partir de la
componente de cada color aplicando un factor de multiplicación.
Aparapi
Es una librería desarrollada por ATI que facilita la creación de programas en Java que se
ejecuten en la GPU, convirtiendo código java a kernels OPENCL de forma casi
transparente. La principal desventaja está en que no es sencilla la compartición de datos en
la memoria de la GPU, entre el subsistema que realiza la simulación y el subsistema de
visualización. Aún así se ha tomado como herramienta para la realización de los cálculos de
la simulación pues se estima que el rendimiento será suficiente, en caso de no serlo, se
analizarán otras soluciones.
Alimentación del modelo
El sistema de simulación debe permitir realizar cambios en tiempo real, de los cálculos de
transformación a partir de la imagen. Como primera aproximación se propone realizar una
transformación geométrica de cada dimensión del color en cada parámetro. Para poder
llevar a cabo pruebas, el factor de multiplicación de cada color se va poder modificar, con el
objetivo de facilitar la búsqueda de diferentes patrones.
Visualización
La simulación da como resultado la concentración de dos elementos en el espacio, y es
necesario determinar cómo se van a convertir en una textura RGB, que finalmente se
proyectará sobre el soporte.
En la simulación, la salida debe ser un conjunto ordenado de bytes con los valores de u y v.
A partir de este array, se va a crear a una textura que se pueda renderizar en la aplicación.
Como ya se ha comentado todo el renderizado se va a llevar a cabo con Processing que a
su vez hace uso de OPENGL.
29
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen con Diagrama de Módulos por Responsabilidades
Para la adaptación espacial al soporte, se va a utilizar una librería llamada Keystone, que
permite la proyección de vídeo en soportes irregulares, deformando las imágenes mediante
distorsión trapezoidal, que permite independizarse de la posición y orientación del proyector.
A partir de aquí será necesario el diseño y la creación de un GUI, que permita realizar todos
los procesos necesarios en el uso de la herramienta.
30
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Construcción, Descripción técnica
En base a las responsabilidades definidas, el sistema consta de una pieza software
independiente y desacoplada que calcula la simulación del modelo, basada en la librería
aparapi y en opencl. Por otro lado tenemos el renderizado en un frame de una aplicación
gráfica, de toda la información del modelo así como las herramientas necesarias para la
adaptación de la proyección al soporte.
Imagen con Diagrama de Bloques
Simulación
Como ya se ha desarrollado en puntos anteriores, la herramienta a utilizar, Aparapi, busca
diferenciarse de implementaciones similares como JOCL, JOpenCL (wrappers Java a
OpenCL), y JCUDA (wrapper Java a CUDA); implementaciones de uso complejo, que
simplemente permiten el acceso al modelo de programación en GPU. Aparapi trata de
realizar una implementación contraria y muy diferenciada de las existentes, realizando una
conversión prácticamente transparente y en tiempo real del código java, a código OpenCL,
lidiando con las posibles dificultades y peculiaridades, y desviando la carga al bloque de
ejecución estándar de Java (por CPU) cuando sea conveniente. De esta forma permite a los
desarrolladores de aplicaciones y plugins Java aprovechar el poder de cómputo de los
GPUs y APUs sin demasiadas complicaciones.
El proyecto Open Source Aparapi está disponible en la dirección
http://code.google.com/p/aparapi y funciona con cualquier GPU compatible con OpenCL.
31
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen Diagrama Funcionamiento Aparapi
A continuación se añade la pieza de código que va a realizar los cálculos de la simulación y
Aparapi va a convertir en kernels OPENCL. En la descripción del funcionamiento de la
ecuación en puntos anteriores, se señaló que la codificación de ecuaciones diferenciales en
algoritmos no es un problema complejo.
uu como array con el estado anterior del elemento u en espacio bidimensional
vv como array con el estado anterior del elemento v en espacio bidimensional
currF como el parámetro Feed del modelo
currK como el parámetro Kill del modelo
Du como la fuerza de difusión
Dv como la fuerza de reacción
32
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
float currU = uu[idx]; float currV = vv[idx]; float currF = getF(idx); float currK = getK(idx); float d2 = currU * currV * currV; float sumu = (uu[right] + uu[left] + uu[bottom] + uu[top]); float tempu = currU + t * ((dU * (sumu 4 * currU) d2) + currF * (1.0f currU)); tempu = max(0, tempu); float sumv = (vv[right] + vv[left] + vv[bottom] + vv[top]); float tempv = currV + t * ((dV * (sumv 4 * currV) + d2) currK * currV); tempv = max(0, tempv); u[idx] = tempu; v[idx] = tempv;
La entrada de datos por tanto son las matrices con las concentraciones de U en el estado
anterior, F y K como tasas de reposición y eliminación, y U y V como reacción difusión.
Renderizado
Los datos de salida de la simulación son dos matrices con la información de la
concentración de los elementos U y V en el espacio. Para poder visualizar esta información
del modo más sencillo simplemente vamos a transformar las concentraciones de los
reactivos en un valor de 0 a 255, resultando una imagen en blanco y negro que va a permitir
iluminar la pieza.
33
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen con Diagrama de Dependencias en renderizado
El siguiente paso es portar esta imagen a OPENGL, donde el proceso se reduce a la
actualización de los pixels de la textura con los valores de la simulación. A partir de aquí y
mediante la librería Keystone, se va a crear una geometría con corrección de perspectiva
donde se dibuja la textura obtenida en la simulación. En la imagen que se añade a
continuación, se puede observar cómo el contenido a proyectar, en nuestro caso los
patrones de la simulación, se pueden relacionar con una estructura mallada, que permite
transformar en el espacio cada una de las cuatro esquinas por separado, pero siempre
manteniendo una relación de aspecto.
Imagen con Ejemplo de Corrección Trapezoidal
34
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Ejecución de Pruebas
A continuación se va a desarrollar cómo se van a realizar las pruebas de funcionamiento así
como los resultados esperados y su resultado real. Para empezar se va a probar la
implementación desarrollada para la simulación, probando si es posible obtener los
patrones más representativos de GrayScott sin variación de parámetros en el espacio.
Posteriormente se va a probar la modificación de la simulación en base a la colorimetría
como ya se ha explicado, y se va a utilizar un diagrama de color que ofrezca el espectro de
rgb en una imagen. Por último y una vez comprobado el funcionamiento correcto del
sistema se va a probar con la imagen de un cuadro.
En todas las imágenes tomadas de la simulación existe una forma en el centro, debido a un
aporte de elemento químico u forzada en ese espacio de la simulación, para permitir el
inicio de las reacciones químicas.
Prueba 0 Funcionamiento de la simulación
Para realizar una evaluación de la implementación de las ecuaciones de GrayScott llevada
a cabo, se espera obtener los patrones característicos en el modelo. En esta primera
prueba no se van a alterar los parámetros de la simulación, únicamente se va a probar
distintas configuraciones, basándose en las ecuaciones sin una variación de f, k, Du y Dv a
lo largo del espacio de simulación.
35
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Patrones Gray-Scott f(x) k(y)
Las imágenes que se ofrecen a continuación con los distintos patrones obtenidos, van a
denotar la concentración del químico U a lo largo del tiempo, en un rango variable desde 0 a
255, pues se va a utilizar un único byte para su almacenamiento. Por lo tanto las imágenes
se van a mostrar en blanco y negro sobre un fondo de contraste con el espacio rgb.
36
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Ondas viajeras, (Travelling waves)
Solitons
37
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Moving solitons
Pulsating Solitons
38
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Self organized Fingerprints
Moving Spots
39
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Conclusiones
Ha sido posible obtener los patrones característicos, Robert Munafo (2014). ‘Stable
localized moving patterns in the 2D GrayScott model’, por lo tanto se da por válida la
implementación realizada. El proceso de estabilización de la simulación puede ser un tanto
dilatado en el tiempo por lo que se señala como posible solución la implementación en
GLSL o el uso de técnicas de compartición de memoria en GPU con OPENCLOPENGL
40
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Prueba 1, Variación espacial de los parámetros
Para simplificar el análisis de los resultados así como favorecer la detección de posibles
errores, se ha optado por partir de una imagen formada por un degradado de los colores
rgb. En este experimento se van a probar distintas configuraciones que permitan
transformar a partir de la información de esta imagen, el espacio de de parámetros U,V y f, k
para variar el comportamiento y resultados de la simulación en el espacio definido.
Imagen diagrama RGB
El modelo de transformación de los parámetros va a estar basado en la siguiente fórmula,
dónde tenemos que el valor para cada momento del espacio, va a ser la suma del
parámetro definido para todo el espacio y los valores de cada una de las componentes de
color en ese espacio, teniendo que cada componente de color va a tener una multiplicación
para controlar la cantidad de variación en cada componente de color.
(xy) Fα R(xy)⋅Rf G(xy)⋅Gf B(xy) ⋅BfF = + + +
(xy) Kα R(xy)⋅Rk G(xy)⋅Gk B(xy) ⋅BkK = + + +
u(xy) Duα R(xy)⋅Rdu G(xy)⋅Gdu B(xy) ⋅BduD = + + +
v(xy) Dvα R(xy)⋅Rdv G(xy)⋅Gdv B(xy)⋅BdvD = + + +
41
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
En las anteriores fórmulas tenemos que el valor para cada parámetro en las posiciones
cartesianas x e y , es la suma del valor global configurado desde la aplicación y el ,α
resultado de la cantidad de color en cada dimensión RGB, multiplicado por el factor
correspondiente. En las pruebas se van a realizar variaciones por separado en cada una de
las componentes de color que afectan a los 4 parámetros, por lo tanto se van a tomar 12
imágenes.
Los resultados esperados son una imagen donde los patrones obtenidos varían a lo largo
del espacio de color, cambiando el patrón de un modo continuo. Se van a realizar pruebas
variando cada una de las componentes de color en relación a los parámetros, por lo tanto
debido a la disposición de los gradientes en la imagen de muestra, las variaciones en
componente roja deben aparecer desplazadas a la izquierda, las componentes verdes al
centro y las azules hacia la derecha.
Resultados Gráficos
Variación en R del parámetro F
42
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Variación en G del parámetro F
Variación en B del parámetro F
43
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Variación en R del parámetro K
Variación en G del parámetro K
44
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Variación en B del parámetro K
Variación en R del parámetro Du
45
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Variación en G del parámetro Du
Variación en B del parámetro Du
46
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Variación en R del parámetro Dv
Variación en G del parámetro Dv
47
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Variación en B del parámetro Dv
Conclusiones
Existe gran tendencia a la inestabilidad del sistema, solo funciona bien con ciertas
configuraciones de las transformaciones por color, cuando funciona mal el sistema se
desestabiliza y el estado de cada pixel abandona un crecimiento controlado. Si se anula el
parámetro f y k a valores cero, el espacio se vuelve a estabilizar.
En la imagen se ha percibido que la variación de los patrones es contínua y da un aspecto
natural e integrado. Se establece apropiado realizar el siguiente experimento sobre un
cuadro abstracto.
48
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Prueba 2, Obra pictórica
Descripción del soporte,
Para el segundo experimento se ha elegido una pieza pictórica de arte abstracto, motivado
por la variedad de colores y gradientes que ofrecen este tipo de piezas, con el objetivo de
analizar cómo afecta a los patrones obtenidos, tomando como referencia a Bimber, Oliver,
et al. “Superimposing pictorial artwork with projected imagery.”
Del mismo modo que en el experimento anterior, la transformación de la información de la
colorimetría del soporte, va a transformar cada uno de los parámetros de la simulación
mediante factores de multiplicación.
El resultado esperado son la creación de patrones lumínicos que se integren con el cuadro,
procurando obtener distintos patrones en función del contenido pictórico.
49
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Fotos tomadas con distintos parámetros
Imagen 1 prueba 2
50
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen 2 prueba 2
51
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen 3 prueba 2
52
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen 4 prueba 2
53
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Conclusiones
Cada patrón probado en la simulación, ofrece varios estados de funcionamiento, que
describo a continuación:
Crecimiento, si partimos de un espacio sin componentes químicos y añadimos un conjunto
de valores con el componente químico que se transforma, o si variamos las condiciones de
la simulación, se van a crear distintos patrones a lo largo del espacio en función del valor de
los parámetros.
Patrones estables, ciertos patrones tienden a crear su forma y cuando la han desarrollado
si no existe ninguna variación externa tienden a mantener el valor a lo largo del tiempo.
Patrones dinámicos, otros patrones no tienen una forma estable ofreciendo una variación
a lo largo del tiempo dentro de las características de un patrón.
La librería utilizada para la correción trapezoidal ha funcionado de un modo correcto,
permitiendo adaptar los contenidos al soporte, aunque sería positivo mejorar el sistema de
movimiento de los puntos de referencia pues ahora se hace con el ratón, y se necesitaría
más precisión.
Los patrones se adaptan al soporte pictórico con un buen aspecto, pero la proyección se
percibe de cierto modo inconexa con la realidad, es decir se percibe que es una fuente de
luz extraña. Una posible solución a este problema sería crear una modificación en la forma
de renderizar el patrón generado en escala de grises, buscando una integración con la
iluminación del entorno.
Una posible prueba a realizar sería crear un sistema que utilice el patrón generado a modo
de mapa de altura, y mediante un shader en OPENGL simule la existencia de un foco de
luz, creando las sombras y brillos a partir de dicho mapa de profundidad.
54
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Prueba 3, Realidad aumentada espacial + Iluminación sintética
Mapeado topológico (en inglés, bump mapping) es una técnica de gráficos
computacionales 3D creada por James F. Blinn en 1978. Consiste en dar un aspecto rugoso
a las superficies de los objetos, esto se realiza gracias a una imagen que va a contener la
información de la rugosidad del objeto, como un mapa de normales. Información obtenida
del libro, ‘OpenGL® Shading Language’.
La idea base de esta prueba es utilizar los patrones generados en la simulación como un
mapa de normales. El efecto esperado es un acabado más realista si la posición de la luz
simulada coincide con la iluminación real del entorno.
Imagen ejemplo de BumpMap
El modelo de iluminación utilizado se basa en el modelo Lambertian, donde para cada pixel
vamos a calcular el vector que define su normal, obteniendo el plano a partir de los píxeles
circundantes.
55
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen Iluminación Vectorial
Una vez calculado el vector con la normal en cada pixel a partir de sus vecinos, y sabiendo
la posición y altura de la luz, simplemente se ha de realizar una multiplicación vectorial para
saber cómo va a incidir la iluminación en cada pixel. A estos cálculos vamos a añadir una
disminución de la cantidad de luz reflejada, en relación a la distancia desde cada punto al
foco de luz.
Descripción del montaje
Para el montaje se va a necesitar:
Proyector.
Ordenador con GPU compatible OPENCL.
Soporte de proyector.
Pieza pictórica
56
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Fotos tomadas con distintos parámetros
Prueba 3 Imagen 1
57
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Prueba 3 Imagen 2
58
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Prueba 3 Imagen 3
59
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Prueba 3 Imagen 4
60
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Conclusiones
El añadido de este modelo de iluminación sintética mejora la percepción de los patrones
proyectados sobre la pieza. La mejora en percepción se debe por un lado a que la
iluminación del proyector ya no forma un espacio que aparece “de repente” como en la
prueba 2, gracias al decaimiento añadido al modelo de iluminación. Por otro lado estamos
acostumbrados a ver este tipo de iluminación en el día a día sobre todo tipo de objetos, por
tanto tenemos el cerebro entrenado para reconocer la volumetría de los objetos por cómo
incide la luz, y este modelo simula de un modo muy realista la incidencia de la luz.
Como añadido se ha observado interesante el añadido de un elemento de atrezo que simula
ser la fuente de luz, para facilitar al observador asociar los brillos que ve a una fuente de luz
que participa en la escena.
61
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
62
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Conclusiones
El resultado del proyecto ha sido satisfactorio, pues se ha desarrollado un prototipo que ha
permitido realizar las pruebas con los conceptos que se querían analizar tanto en viabilidad
como en resultado si era viable.
Por otro lado no se ha conseguido una funcionalidad maximizada pues este prototipo no ha
sido capaz de obtener todos los patrones característicos en una misma pieza,
responsabilidad del sistema de transformación de los parámetros basado en el color, por lo
que realizar un desarrollo más profundo de esta sección podría ser un trabajo futuro.
La elección de la librería Aparapi en detrimento de un shader GLSL, no ha sido la mejor
opción, pues ahora mismo es necesario que toda la información calculada en la GPU, sea
llevada a la CPU, para luego volver a pasarla a la CPU debido a la falta de interoperabilidad
entre OPENCL, APARAPI, PROCESSING.
Una implementación basada en WEBGL habría sido factible en el momento tecnológico que
nos encontramos, la accesibilidad a la herramienta y la facilidad de uso habrían sido
mayores que con la solución tecnológica elegida para el desarrollo del prototipo.
En cuanto a las posibilidades de creación y modificación de la experiencia de percepción de
una pieza de arte, las técnicas desarrolladas y probadas en este proyecto han concretado
una herramienta experimental funcional, que permite elucubrar con diseños de interacción
hombremáquinaarte, distintos de la clásica experiencia de observación de una pieza
estática.
63
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
64
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Trabajos futuros
Como se indica en las conclusiones, el desarrollo de una herramienta web con toda esta
funcionalidad se estima un proyecto interesante, debido a la facilidad de uso que
representa.
También se estima oportuno como se ha indicado en las conclusiones, realizar un análisis
más profundo en el modo de transformar los parámetros en función de los datos de la pieza.
Dentro de los objetivos de este proyecto se han percibido nuevas posibilidades a explorar
una vez realizado. Una posibilidad reside en el uso de información alterada del propio
soporte, ahora se usa una foto, que por un lado se le podría realizar procesos de edición
fotográfica para eliminar unas áreas o modificar la intensidad de otras, con el objetivo de
poder controlar los patrones enfatizando las áreas que defina el artista. Por otro lado se
podría utilizar datos dinámicos basados en la realimentación del propio modelo, es decir, la
imagen tomada de la pieza se podría modificar en base a los propios patrones, o a la
posición del sol.
También la experimentación sobre piezas con volumen sería otra vía interesante a explorar,
señalando que tanto la información de colorimetría como la del volumen del soporte podrían
ser modificadores de las ecuaciones.
Un uso fuera de la simple estética con objetivos quizá más funcionales, está en el uso de
estas técnicas variando el modelo de simulación, como podría ser los cálculos de tensión de
una estructura, la disipación de calor de un diseño industrial, o las capacidades
aerodinámicas en maquetas de edificios. El uso principal que se podría atisbar, estaría en la
creación de un software que a partir de una adquisición de datos en colorimetría, volumen,
densidad, …, etc; se pudiera observar rápidamente cómo afectaría a la simulación si estos
prototipos se realizan con algún material que permita un desarrollo rápido de prototipos.
65
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
66
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Índice de figuras
Imagen Oscillon
Imagen Drawing Machine
Imagen Retrato de Alan Turing con GrayScott
Imagen de Patrones Naturales
Imagen de ‘Grim Grinning Ghosts’
Imagen de Mapping monumental con simulación de rotura de paredes
Imagen Klaus Obermaier, APPARITION
Imagen de ANTICOnforme exhibition, Rabarama
Imagen con Ejemplo de Corrección Trapezoidal
Patrones GrayScott f(x) k(y)
Ondas viajeras, (Travelling waves)
Solitons
Moving Solitons
Pulsating Solitons
Self organized Fingerprints
Moving Spots
Imagen diagrama RGB
Variación en R del parámetro F
Variación en G del parámetro F
Variación en B del parámetro F
Variación en R del parámetro K
Variación en G del parámetro K
Variación en B del parámetro K
Variación en R del parámetro du
Variación en G del parámetro du
Variación en B del parámetro du
Variación en R del parámetro dv
Variación en G del parámetro dv
Variación en B del parámetro dv
Imagen 1 prueba 2
Imagen 2 prueba 2
67
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Imagen 3 prueba 2
Imagen 4 prueba 2
Imagen ejemplo de Bump Map
Imagen Iluminación Vectorial
Imagen 1 prueba 3
Imagen 2 prueba 3
Imagen 3 prueba 3
Imagen 4 prueba 3
68
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Índice de diagramas
Imagen Diagrama General
Imagen Distribución de los patrones GrayScott para f, k.
Imagen con Diagrama de Módulos por Responsabilidades
Imagen con Diagrama de Bloques
Imagen Diagrama Funcionamiento Aparapi
Imagen con Diagrama de Dependencias en renderizado
69
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
70
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Bibliografía
[1] Herbert W. Franke, Computer Graphics,Springer Science & Business Media, 2012
[2] A. M. Turing (1952). The chemical basis of morphogenesis, Philosophical Transactions of
the Royal Society of London, series B (Biological Sciences),
[3] Kondo S, & Miura T (2010). Reactiondiffusion model as a framework for understanding
biological pattern formation. Science (New York, N.Y.),
[4] Randi J. Rost & Bill Licea (2009). OpenGL® Shading Language, Third Edition. Addison
Wesley Professional
[5] Robert Munafo (2014). Stable localized moving patterns in the 2D GrayScott model.
http://arxiv.org/abs/1501.01990, Cornell University Library.
[6] Raskar, Ramesh, et al. “Shader lamps: Animating real objects with imagebased
illumination.” Proceedings of the 12th Eurographics Workshop on Rendering Techniques.
2001.
[7] Bimber, Oliver, et al. “Superimposing pictorial artwork with projected imagery.” ACM SIGGRAPH 2006 Courses. ACM, 2006.
[8] Bimber, Oliver, Ramesh Raskar, and Masahiko Inami. Spatial augmented reality. AK
Peters, 2005.
71
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
72
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Anexo 1
Pliego de condiciones
El objetivo de este proyecto es iluminar de forma sintética piezas artísticas, por lo que es
necesario un espacio que permita este cometido. Las características necesarias en el
espacio son el control de la luminosidad ya sea iluminación natural o artificial, pero
controlada, y una instalación eléctrica con toma de tierra.
Los materiales necesarios para esta instalación artística son:
Pieza artística pictórica.
Proyector de óptica y potencia apropiada a las dimensiones de la pieza.
Ordenador con tarjeta gráfica de 1Gb de ram mínimo compatible con estándar
OPENCL.
Soporte para proyector.
Soporte pieza artística.
Cableado.
Teclado y ratón.
Controlador midi.
Dependiendo de la óptica del proyector y las dimensiones de la pieza, se necesitará más o
menos espacio, así como un proyector de mayor o menor potencia. La cantidad de lúmenes
( medida de la cantidad de luz visible ) necesarios para iluminar de forma apropiada la pieza
en unas condiciones de iluminación tenue, debe ser entre 1500 y 2000 lúmenes por metro
cuadrado.
En caso de realizar una instalación permanente, el tipo de proyector y ordenador deben de
ofrecer funcionalidades 24/7, así como procurar una refrigeración de la infraestructura en
caso necesario.
73
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
74
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
Anexo 2
Presupuesto
Licencia de uso del software 2.500,00 €
Adaptación del software a una pieza 5000,00 €
Ordenador 1000,00 €
Proyector 600,00 €
Cableado 150,00 €
Soporte proyector 240,00 €
Mueble guarda ordenador 90,00 €
Materiales fungibles 150,00€
1 jornada de técnico de instalación de proyector 240,00 €
1 jornada de ingeniero de montaje 360,00 €
TOTAL: 10.830,00 € ( + impuestos)
75
PFC Ingeniería Informática 2015 Universidad de Alcalá de Henares
76