CAPITULO 18. TÉCNICAS DE REPRESENTACIÓN REALISTA

Prof. Dr. D. Carlos González Morcillo

Profesor Titular de Universidad – Escuela Superior de Informática
Universidad de Castilla-La Mancha. UCLM. Ciudad Real. España.


“El ‘realismo’ es el concepto que acompaña de manera inevitable el desarrollo y la asimilación de las imágenes 3D por ordenador. En los medios, en las publicaciones divulgativas y en los artículos científicos, la historia de la innovación e investigación se presenta como un progreso hacia el realismo, entendido como la capacidad de simular cualquier objeto de tal manera que no se pueda distinguir su imagen por ordenador de una fotografía.”

Manovich, 2001: 246.


“La imagen sintética pone en escena esa paradoja de lo real de una forma como ningún otro medio lo había hecho antes. Actualmente, es el medio que más recuerda el realismo (mientras que otras artes van sistemáticamente en dirección contraria) y, sin embargo, contradictoriamente, es el más abstracto de todos los sistemas expresivos, pues sus referentes más inmediatos son las ecuaciones matemáticas que le dan vida”.

Machado, 2000: 103.



BREVE DESCRIPCIÓN DE LOS CONTENIDOS

Con este capítulo finalizamos el módulo dedicado a la Visualización Avanzada del Patrimonio. En el mismo se nos presenta el ciclo de generación de gráficos por computador o producción de animaciones 3D para su utilización en proyectos de visualización de patrimonio (basados en Realidad Aumentada, Realidad Virtual o generación de contenido multimedia), con todas sus etapas y fases principales dentro de cada una, hasta la generación de una imagen 2D a partir de ese modelo tridimensional, todo ello basado en las técnicas de representación de imágenes realistas, partiendo de una descripción general del concepto de realismo gráfico.

Hemos de tener en cuenta que este realismo sintético es hoy protagonista de gran parte del espectáculo comercial masivo: posee un grado alto de inserción y aceptabilidad social y en consecuencia contribuye a moldear las pautas de representación contemporáneas.

Grosso modo en este tema han sido tratados los siguientes contenidos:
  •   Técnicas de generación de imagen en medios interactivos y en síntesis de imagen realista.
  •   Uso del pipeline de visualización gráfico
  •   Creación y explotación de sistemas de representación realistas en el ámbito del patrimonio virtual.
  •   Gestión y adaptación de contenidos multimedia específicos para su utilización en sistemas gráficos de visualización de patrimonio.
  •   Uso de métodos, técnicas, programas de uso específico, normas y estándares en el ámbito de la Computación Gráfica para la visualización de patrimonio.
  •   Evaluación del rendimiento y la complejidad de los sistemas de representación realistas aplicados a la visualización de patrimonio.



OBJETIVOS ALCANZADOS

Este tema se presenta como uno de los más interesantes ya que el procesado de escenas complejas para la generación de imágenes realistas es uno de los objetivos generales en gráficos por computador, y especialmente importante en la visualización correcta del patrimonio virtual.

Tanto las actividades como la prueba objetiva han sido muy útiles para profundizar en el estudio de esta temática, pasando por el análisis de los diferentes motores rendering existentes en el mercado –comerciales y open source-, realizando prácticas con Blender y el uso de Cycles mediante el cual fue generado un modelo tridimensional mediante el proceso tratado en el tema: modelado, asignación de materiales y texturas, situación de las luces virtuales y finalmente el proceso de representación (render) , todo ello con la finalidad de generar imágenes 2D con acabados fotorrealistas –productos cada vez más demandados por todo tipo de usuarios en los productos finales de virtualización del patrimonio-;  y por último afianzando el complejo contenido expuesto a lo largo del capítulo.



Tras finalizar el estudio del mismo he logrado afianzar por un lado y comenzar a desarrollar por otro, las siguientes aptitudes:

  •   Utilizar métodos de computación gráfica interactivos y de síntesis para representar por ordenador modelos e información relativa al patrimonio.
  •   Iniciación en la aplicación de técnicas de optimización en los datos asociados a modelos, materiales, animaciones y texturas para facilitar la construcción y uso de sistemas gráficos en patrimonio virtual y visualización arquitectónica.
  •   Imaginar, diseñar, evaluar y explotar sistemas de representación gráfica realista en patrimonio virtual.




DATOS DE INTERÉS ASIMILADOS

CONCEPTOS

Realistic Image Synthesis. Campo de trabajo dedicado a la representación de imágenes de objetos tridimensionales, cuya descripción matemática está almacenada en la memoria de un computador, con el mayor realismo posible de forma que un observador humano no pueda diferenciar si se trata de una fotografía o de una imagen generada mediante un motor de render.

Motion Blur. Es el rastro dejado por los objetos en movimiento en una fotografía o en una secuencia de imágenes como una película o una animación. Aparece cuando el objeto siendo grabado cambia su posición durante la captura de un fotograma debido a su velocidad o al movimiento de la cámara.

Método Scanline. Pipeline gráfico. El pipeline gráfico de aplicaciones interactivas puede describirse de forma general como el que, a partir de una lista de objetos geométricos a representar y, tras aplicar la serie de transformaciones geométricas sobre los objetos (traslación, rotación, escalado...), la vista y la perspectiva, obtienen una imagen de mapa de bits dependiente del dispositivo de visualización (según la resolución y tamaño del mismo). En este enfoque, las primitivas se ordenan según la posición de la cámara y sólo las visibles serán dibujadas.

Método RayCasting. Método de síntesis de imagen realista que calcula los rayos que pasan por cada píxel de la imagen y recorre la lista de objetos, calculando la intersección (si hay alguna) con el objeto más cercano. Una vez obtenido el punto de intersección, se evalúa (empleando un modelo de iluminación) el valor de sombreado correspondiente a ese píxel.

UVMapping. Proceso de mapeado que consiste en la asignación de los píxeles de una imagen 2D a la superficie de asignaciones en un polígono 3D. Las letras "U" y "V" denotan los ejes de la textura 2D, porque "X", "Y" y "Z" ya se utilizan para referirse a los ejes del objeto 3D en el espacio modelo; pero el cálculo de representación utiliza las coordenadas de textura UV para determinar cómo pintar la superficie en tres dimensiones.

Mapas HDRI. Son las siglas en inglés para “High Dynamic Range Imaging” es decir, creación de imágenes utilizando mapas de alto rango dinámico, en una extendida técnica de simulación para iluminación en modelos virtuales. Por medio del uso de este método en programas de simulación tridimensional, se pueden lograr ambientes foto-realistas emulando muchas de las propiedades reales de la luz como la reflexión, la radiosidad, la refracción y la contaminación cáustica.

Pirámide Frustum. Pirámide truncada que selecciona los objetos que serán representados en la escena, definiendo el volumen de visualización en imágenes generadas en perspectiva.

Teselación. En el proceso de modelado, la Tessellation consiste en transformar la superficie continua, eligiendo un conjunto de puntos situados sobre la misma para posteriormente conectarlos mediante aristas, formando así una red de caras triangulares.

Texel. Píxel de una textura.

Lumel. Píxel de un mapa de iluminación.



REFLEXIONES

Como bien define el Prof. Dr. D. Carlos González Morcillo a lo largo del presente capítulo, la renderización es el proceso de cálculo desarrollado por un ordenador, a partir del uso de un motor de renderizado, con el fin de generar una imagen 2D a partir de una escena 3D.

Un motor de render puede ser un plugin o software independiente que nos permite generar una vista realista de un 3D. Cada motor render trabaja de diferente modo y a la vez parecido porque la mayoría trabaja en base a GI (iluminación global). El motor de render hace un cálculo de las sombras que proyecta cada fuente de luz,  partir de ese cálculo, interpolando los mapas de sombras obtenidos por cada fuente de luz (de haber más de una), podemos saber si un elemento de la escena (vértices, caras, polígonos...) está iluminado o no, y en qué grado, dependiendo del número de fuentes de luz que incidan sobre él.

En el mercado existen multitud de motores de rendering, tanto comerciales como Open Source. A continuación expondremos algunos de ellos:


Para el desarrollo de este post me voy a basar en el análisis de Cycles, ya que es el motor opcional que actualmente presenta la última versión de Blender, y en cuyo aprendizaje estoy inmersa a día de hoy; LuxRender ya que me ha resultado impresionante el realismo que presentan las imágenes que genera; y por último Maxwell Render, que pese a ser un motor comercial, es uno de los más recomendados en el campo de la arquitectura y he pensado que sería interesante comparar sus características con los seleccionados.


CYCLES. http://www.blender.org/

Cycles es un nuevo motor de procesamiento habilitado desde la versión 2.61 de Blender, desarrollado por Brecht van Lommel que trabaja para la Blender Foundation.

Aún se encuentra en desarrollo y pretende convertirse en un motor de procesamiento enfocado en la interactividad y la facilidad de uso, conservando aún muchas características útiles en producción, reemplazando el motor de renderizado interno de Blender, permitiendo una realimentación en tiempo real al diseñador gracias a la utilización de la GPU como hardware de cálculo, en lugar de la tradicional CPU. Viene incluido como un agregado habilitado de forma predefinida. Para usarlo, debe ser establecido como el motor de procesamiento activo en el cabezal superior de la interfaz.

Es un motor Path Tracing, imparcial de base física, diseñado para animaciones, lo que significa que produce una imagen mediante el trazado de los caminos de "rayos" a través de la escena. En concreto, Cycles es un “backwards” Path Tracer, es decir, que rastrea los rayos de luz mediante el envío de la cámara en lugar de enviarlos desde la fuente de luz.

Este motor de render actualmente presenta una cantidad limitada de características, que se irán ampliando en las siguientes versiones. Actualmente Cycles ofrece:

  •   GPU y CPU rendering.
  •   Ventana de vista previa Realtime.
  •   Soporte de iluminación HDR.
  •   Licencia permisiva para vincular con software externo.



Más características específicas en:

A continuación expongo a modo de ejemplos algunas pruebas para Cycles Render efectuadas por usuarios de la comunidad de Blender:






LUXRENDER. http://www.luxrender.net/

LuxRender es un programa de renderización de código abierto que utiliza un sistema de física "correcta" para la creación de imágenes generadas por computadora, simula el flujo de luz de acuerdo a las ecuaciones físicas, produciendo de este modo imágenes realistas de calidad fotográfica.

LuxRender se basa en PBRT, el RayTracers desarrollado por Matt Pharr y Greg Humphreys para uso académico. Pharr y Humphreys tuvieron la amabilidad de proporcionar el código fuente de su programa bajo los términos de la GPL, con lo que pasó a ser un software libre.

En 2007, un pequeño grupo de programadores dirigido por Terrence Vergauwen asumió el reto de modificar el programa y hacerlo apto para el uso artístico. A finales de 2007, la versión inicial de LuxRender fue puesta en libertad. Con el lanzamiento de LuxRender 0.5 en junio de 2008, el programa fue considerado lo suficientemente útil para su uso general, desde entonces, la velocidad de representación y el número de características y exportadores disponibles ha ido creciendo de forma constante.


Características. Presenta multitud de características, por lo que aquí tan solo presentamos algunas de ellas.
  •   Representación espectral de base física. LuxRender se basa en ecuaciones basadas en la física que modelan el transporte de la luz. Esto le permite captar con precisión una amplia gama de fenómenos que la mayoría de los otros programas de renderizado son simplemente incapaces de reproducir. Esto también significa que es totalmente compatible con alto rango dinámico (HDR).
  •   Materiales. Cuenta con una gran variedad de tipos de materiales. Además de los materiales genéricos como mates y brillantes representaciones, están presentes los de metal, vidrio y pintura de coches, físicamente exactos. están disponibles propiedades complejas tales como la absorción, refracción y dispersión y recubrimiento de película fina.
  •   Fleximage (película virtual). La película virtual permite pausar y continuar la prestación en cualquier momento. El estado actual de la prestación, incluso se puede escribir en un archivo, de modo que el ordenador (o incluso otro ordenador) pueden seguir haciendo en un momento posterior.
  •   Gratis para todo el mundo. LuxRender es y siempre será software libre, tanto para el uso privado y comercial. Está siendo desarrollado por personas con una pasión por la programación y de los gráficos de computadora que les gusta compartir su trabajo. Le animamos a descargar LuxRender y lo utilizan para expresar sus ideas artísticas.
  •   Representación sesgada y no sesgada. Los usuarios pueden elegir entre la precisión física (imparcial) y la velocidad (sesgada).
  •   Representación de espectral completo. En lugar del espectro de color RGB, se utilizan espectros completos para los cálculos internos.
  •   Sistema basado en texturas procesales y de imagen. Las texturas procesales y de imagen se pueden mezclar en diversas formas, lo que hace posible la creación de materiales complejos.
  •   Salida HDR. Los resultados se pueden guardar en varios formatos de archivo, incluyendo png, tga y exr.
  •   Instancias. Instancing significativamente ahorra recursos del sistema, en particular, el consumo de memoria mediante la reutilización de datos de malla en los objetos duplicados.
  •   Construido en post-proceso.
  •   Desenfoque de movimiento, profundidad de campo y efectos de lente.
  •   Eliminación de ruido de imagen.
  •   Etc.


Usos:

Virtualización del Patrimonio.

LuxRender, junto al Blender Internal, son ejemplos de los motores más utilizados en la virtualización del Patrimonio. Los resultados obtenidos son realmente buenos, tanto en la aplicación de texturas como iluminación, generando atmósferas impresionantes.

 Fig. Imágenes del Proyecto de Juan Diego Carmona, estudiante del curso Especialización en Virtualización del Patrimonio, de la Universidad de Alicante.


Visualización en Arquitectura e Interiorismo.

En la galería de LuxRender tenemos multitud de ejemplos de proyectos correspondientes a este ámbito, en los cuales podemos observar resultados espectaculares.

 Fig. Ejemplos de aplicaciones en el campo de la arquitectura e interiorismo. http://www.luxrender.net/


Visualización en Diseño.

Otros de los ejemplos hallados en la galería de LuxRender son los dedicados al campo del Diseño. Los resultados son impecables, a la altura de los resultados de otros motores de renderizado comerciales como Maxwell.

Fig. Ejemplos de aplicaciones en el campo del diseño. http://www.luxrender.net/



MAXWELL RENDER. http://www.maxwellrender.com/

Maxwell Render fue una de las primeras implementaciones ampliamente disponibles de prestación imparcial y su algoritmo de GI estaba vinculado directamente a un paradigma de la cámara física para proporcionar una experiencia de representación simplificada en la que el usuario no estaba obligado a ajustar la configuración de los parámetros de iluminación arbitrarias, como era típico de la línea de exploración y RayTracers de la época.

Maxwell Render ha sido desarrollado por Next Limit Technologies con sede en Madrid, que fue fundada en 1998 por los ingenieros Víctor González e Ignacio Vargas.

Presenta una serie de herramientas asociadas, cuyas características pasamos a describir a continuación:

  •   Editor de Materiales. El sistema de Maxwell material es intuitivo y fácil de usar, consta de componentes que se pueden apilar como las capas en un programa de edición de imágenes. Los usuarios tienen acceso gratuito a más de 3.500 listas para usar los materiales en línea.
  •   Maxwell Studio.
  •   Maxwell Fire. Previsualización de la escena en tiempo real, dando una respuesta inmediata en el procesado de ajustes en la iluminación, los materiales y ajustes de la cámara. Es compatible con todos los materiales y las características de Maxwell.
  •   Multiligth TM. Permite el ajuste de la intensidad de la luz y el color en tiempo real sin la necesidad de volver a rehacer la escena.
  •   Maxwell Render. Presenta una increíble precisión en la iluminación, por lo que los materiales, detalles de texturas y modelos presentan resultados totalmente realistas.
  •   Maxwell Monitor Manager y Nodo. Componentes de red.
  •   Plugins.
  •   Geometría de procedimientos para la piel, el cabello y las partículas. La herramienta cabello de Maxwell convierte automáticamente las primitivas de la mayoría de los sistemas de cabello. Las partículas de Maya, 3ds Max, Softimage Houdini, etc, pueden ser renderizadas directamente con estas herramientas, a las que se puede aplicar a posteriori cualquier material de Maxwell.
  •   Compatibilidad universal. Ofrece una perfecta integración con las principales plataformas en 3D, y es compatible con ALAMBIQUE, en el fondo la composición y formatos OpenEXR 2.0, así como Pixar OpenSubdiv e integración con RealFlow. Maxwell tiene un Python y C + + SDK con documentación en línea.
  •   Massive. Gestiona la memoria de una manera limpia y lineal - lo que es lo suficientemente robusta como para manejar, literalmente, cientos de millones de primitivas sin ninguna pérdida de rendimiento.


Usos:

Visualización en Arquitectura.

Se nos ofrece a Maxwell como la elección profesional para la visualización arquitectónica.
Maxwell Render es impecablemente preciso, debido a que su motor está basado en la física de la luz verdadera. Esto significa la obtención de resultados realistas precisos y predecibles con muchos menos ajustes. Maxwell es tan preciso que muchos arquitectos lo utilizan no sólo para renders final, sino como una parte integral del proceso de diseño.

Maxwell tiene un solo modelo de material para todas las aplicaciones 3D y CAD, lo que permite cambiar entre plataformas en el mismo proyecto, como de ArchiCAD a SketchUp o Rhino, sin necesidad de convertir los materiales o la iluminación.


 Fig. Ejemplos de aplicaciones en el campo de la arquitectura. http://www.maxwellrender.com/


Visualización del Diseño.

Este potente motor de render se asoció con grandes características de ahorro de tiempo, como la escena vista previa en tiempo real, y la famosa característica de Maxwell Multilight ™ para ajustar la intensidad de luz y colores de postproducción (que significa que se pueden salvar a tantas imágenes como se quiera del mismo render). Maxwell Render tiene un solo modelo de material universal para todas las aplicaciones de CAD en 3D y con plugins totalmente integrados.

Fig. Ejemplos de aplicaciones en el campo del diseño. http://www.maxwellrender.com/


Cine, Animación y VFX.

Maxwell Render trae un enfoque más realista y natural de representación que habla el mismo idioma que los directores de fotografía. No sólo se utiliza ampliamente para el renderizado final, sino también como un elemento clave en el desarrollo de look.

Esta herramienta permite hacer renders que pueden ser retenidos y reanudados en cualquier momento. Este enfoque único significa que en realidad se puede solapar la post-producción con la representación de forma que tengan lugar simultáneamente.

Fig. Ejemplos de aplicaciones en el campo de la animación. http://www.maxwellrender.com/


Productos:

En su página web podemos observar que ofrecen diversos software. Por un lado nos encontramos con Maxwell Render Suite V3 con diversos packs, que son la versión comercial, cuyos precios oscilan entre los 600 y 2200 €; las versiones educativas las cuales sorprendentemente también son de pago, cuyo precios oscilan entre los 75 y 1350 €; y por último se nos presentan dos versiones de Maxwell para su uso con Sketchup, una versión con licencia por 75 € y una versión libre.

Esta última es un plugin autónomo que ha sido diseñado expresamente para la representación en SketchUp, de fácil instalación. Tiene el motor de procesamiento incorporado, por lo que no se requiere de otras aplicaciones o programas.

Incorpora toda su tecnología por lo que no es necesario ser un experto en CG para obtener imágenes fotorrealistas en los modelos 3D, además permite renderizado en tiempo real.
Es compatible con los materiales de Sketchup y permite el uso de los materiales MXM de Maxwell, ofreciendo acceso gratuito a cientos de los mismos vía on line, en la Comunidad maxwell.

Fig. Tabla comparativa de productos Maxwell.





 PROYECTOS DE INTERÉS.

Esta semana he decidido añadir un nuevo apartado al blog dedicados a la compilación de una serie de proyectos interesantes que he ido conociendo a lo largo de estos meses de curso, gracias a esos longevos momentos de indagación por la red buscando información para el desarrollo de las diversas temáticas trabajadas a lo largo del presente curso.

Hoy me he decantado por el Digital Hadrian´s Villa Project dirigido por Bernard Frischer, Director del Virtual World Heritage Laboratory, de la Universidad de Virginia. En el desarrollo del mismo se hace uso de tecnologías de mundos virtuales aplicadas de manera muy útil en el ámbito de la investigación del Patrimonio Cultural.


A continuación dejo varios enlaces, correspondientes a la web del proyecto y un artículo de Bernard Frischer y John Fillwalk sobre el desarrollo del mismo.

http://vwhl.clas.virginia.edu/villa/index.php

Espero que disfruten con él tanto como yo.







PROYECTO. DOMUS DEL MITREO.

A lo largo de estos días mi trabajo se ha centrado en el estudio de paramentos y compilación de datos en campo, por lo que por el momento los avances en el proyecto son escasos. Espero que en el próximo capítulo me sea posible presentar algunas de las hipótesis preliminares a plantear.






No hay comentarios:

Publicar un comentario