Sistemas de Graficación
Temario Introducción. Lineamientos generales
1.A.1 Relación histórica 1.A.2 Sistemas de graficación
1.A.3 Tecnologías de entrada y salida
Modos de representación: raster, vectorial 1.B.1 Librerías gráficas: Primitivas. Líneas, polilíneas. Polígonos.
Atributos. Texto
1.B.2 Algoritmos básicos de generación
1.B.3 Modos raster, vectorial, pixel y puntos. Algoritmos de barrido.
Discretización
1.B.4 Rellenado
1.B.5 "Aliasing" y "antialiasing"
Sistemas de graficación
Dinámica del movimiento
Dinámica de la actualización
Marco conceptual
Programa de
Aplicación
Modelo de
Aplicación
Sistema
Grafico
Marco conceptual Modelo de aplicación
Datos u objetos que se mostrarán Las relaciones de conectividad y ubicación entre
ellos Descripción de procedimientos de presentación
Programa de aplicación Graficación interactiva: crea, edita y almacena
el modelo
Sistema gráfico Maneja los drivers como intermediario de E/S
El proceso de obtención de imágenes se puede tratar desde
dos puntos de vista
– Tratamiento de imágenes
• La adquisición y tratamiento de una imagen para
conseguir un modelo informático de la misma
– Síntesis de imagen
• La representación gráfica en el computador
del modelo informático de una imagen
El proceso de síntesis de una imagen
(proceso de visualización)
– Conjunto de operaciones (en 3D y en 2D)
sobre un modelo informático de datos que
resultan en una representación gráfica del
mismo en un dispositivo físico de representación
El proceso de obtención de imágenes
En general, se considera disponible:
– Una descripción geométrica 3D de los objetos
– Una descripción física asociada a los objetos
– Un observador de la escena (conjunto de objetos)
– Unas condiciones de iluminación
– Un dispositivo físico de representación
– Un objetivo a cumplir (realismo,rapidez,
codificación por colores,etc.)
El proceso de obtención de imágenes
Proceso de visualización La creación de gráficos por computadora se lleva a cabo
mediante la aplicación en cadena de un conjunto ordenado de tareas, lo que se conoce como cadena de visualización o, en inglés, rendering pipeline.
Involucra tres tareas fundamentales, que pueden ser asumidas de manera independiente por programas diferentes.
The rendering pipeline No existe una única cadena de acciones para todos
los procesos de síntesis de imágenes.
Depende del tipo de proyección deseado, los algoritmos de eliminación de superficies ocultas y de iluminación, así como del tipo de primitivas con las que se trabaje.
Modelado Proceso de descripción del conjunto de objetos
que formarán la escena, incluyendo no sólo geometría, sino también parámetros de visualización como la posición de la cámara.
Modelado de objetos:
Rendering Conjunto de acciones encaminadas a la obtención de una
imagen a todo color a partir del modelo de la escena. Entre otros parámetros, el sistema encargado de este paso debe conocer la posición de la cámara y la resolución en pixels que debe tener la imagen.
Para llevar a cabo este proceso es preciso contar con un algoritmo de eliminación de líneas o superficies ocultas y un modelo de iluminación o sombreado.
La combinación de ambos no es arbitraria, sino que la elección de un tipo de algoritmo de ocultación influye en el modelo de iluminación que se ha de utilizar y viceversa.
Juntos constituyen el rasgo diferenciador entre los diferentes sistemas.
Cuantización y visualización
La labor de esta última etapa es la de dibujar la imagen generada en el dispositivo de salida del computador, normalmente una pantalla o monitor.
La cuantización de los colores es necesaria en aquellos sistemas que tienen limitado el número de colores que pueden mostrar en cada momento.
En ese caso, se escogería un subconjunto representativo de los colores con el que se visualizaría una aproximación de la imagen.
Proceso de visualización
– La escena es el conjunto de objetos que se quieren
representar y su entorno (luces, cámaras, etc.)
– La geometría de los objetos se describe con un modelo
– El recorrido de la escena comprende los métodos de
interrogación de las características de los objetos a visualizar
– Sistemas de coordenadas
• Sistema 3D particular de los objetos
• Sistema de coordenadas de la escena
– Técnicas implicadas
• Modelado geométrico
• Modelado jerárquico
• Métodos de recorrido y edición
Recorrido de la escena
Modelo de cámara sintética
Es el modelo más universal y sencillo que se utiliza para generar imágenes por computador.
Permite obtener la imagen de un punto de un objeto sobre una hipotética pantalla situada entre el objeto y la cámara, trazando una línea desde el punto hacia el centro de la lente de la cámara.
Modelo de cámara sintética
Modelo de cámara sintética
Desde un punto de vista más académico se denomina proyección a la representación sobre una superficie bidimensional de la forma de un objeto tridimensional.
Cualquier proyección se obtiene a partir de los puntos de intersección de unas líneas, llamadas proyectores, con una superficie, denominada superficie de proyección. El punto en el que convergen los proyectores se denomina centro de proyección.
Modelo de cámara sintética
La obtención de la imagen de una escena depende de un conjunto de parámetros:
Sistema de coordenadas local para cada objeto. Sistema de coordenadas del mundo con el cual
situamos los objetos dentro de la escena. Sistema de referencia de visión que es el espacio
tridimensional en el que se realiza la proyección, cuyo origen de coordenadas suele ser la posición del observador.
Plano de visión donde se realiza la proyección y que incluye la ventana de visión, que delimita la región del plano sobre la que se realiza la proyección.
Modelo de cámara sintética
Parámetros (cont.):
Punto de referencia de proyección, que en proyección perspectiva coincide con el centro de proyección.
Volumen de visualización, que define la porción del espacio de la escena que interviene en el proceso de proyección.
Puerto de visión en donde se representa la imagen. Sistema de referencia del puerto, que es el sistema de
coordenadas del puerto, pantalla o ventana sobre la que dibujemos.
– Habitualmente es necesario colocar los objetos en la escena a
partir de un sistema particular dónde se definieron
– La transformación del modelo supone un cambio de sistema de
coordenadas:
– Técnicas implicadas:
• Espacio afín (vectores y puntos)
• Transformaciones afines (traslación, giro y escalado)
• Matrices de transformación
Transformación del modelo
– Toda visualización precisa de un observador.
– La transformación de la vista, una vez conocida la posición del observador, supone un cambio de coordenadas de la escena al sistema local de observación.
– El sistema local de observación viene definido por el modelo de la vista
(cámara).
– Técnicas implicadas:
• Modelado de la vista (cámara, volumen de la vista, etc)
• Transformaciones afines
• Matrices de transformación
Transformación de la vista
– El observador tiene un campo de visión determinado por el volumen de la vista.
– Lo que queda fuera del campo de visión debe ser eliminado de las posteriores operaciones: proceso de recortado.
– En general, el recortado calcula la parte común entre dos entidades geométricas. En este caso, una de ellas es el volumen de la vista; la otra cada uno de los objetos.
– Técnicas implicadas:
• Cálculo de intersecciones
• Criterios de interioridad
• Algoritmos de recortado de rectas
• Algoritmos de recortado de polígonos Volumen
Recortado
– En una escena, los objetos se tapan a sí mismos y entre sí, quedando siempre partes ocultas al observador.
– Las partes ocultas deben ser eliminadas de posteriores operaciones: proceso de visibilidad.
– El proceso de visibilidad es complejo, por lo que existen numerosas soluciones.
– Técnicas implicadas:
• Cálculo de normales
• Ordenación
• Algoritmos de visibilidad
• Aceleración por coherencia
Eliminación de caras ocultas
– La representación en el dispositivo es en 2D, la escena está en 3D.
– La operación de paso de un sistema 3D a uno 2D se conoce como proceso de proyección.
– La proyección de un punto 3D sobre un plano se calcula trazando una visual por el punto y calculando la intersección con el plano.
– Tipos de proyección:
• Paralela: visuales paralelas
• Perspectiva: visuales partiendo del observador
– Técnicas implicadas:
• Matrices de proyección
Proyección
– Los objetos proyectados están referidos a un sistema de coordenadas 2D
procedente del de la vista.
– Los objetos inscritos en un rectángulo del plano de proyecciones
(ventana) se visualizarán en un rectángulo del dispositivo físico (marco).
– El cambio de sistema de coordenadas del mundo real (vista) al
del dispositivo se conoce como transformación del dispositivo.
– Técnicas implicadas:
• Cambio de sistemas de coordenadas 2D
• Sistemas y transformaciones normalizados
• Recortado en 2D
Transformación al dispositivo
– Actualmente la representación de gráficos en un computador se realiza activando puntos discretos de una matriz: el raster.
– Las entidades gráficas a representar (primitivas) son de naturaleza continua.
– Al proceso de conversión de una entidad continua en un conjunto de puntos discretos se le denomina conversión al raster.
– Técnicas implicadas:
• Algoritmos de conversión de rectas
• Algoritmos de conversión de curvas (circunferencias, elipses, etc.)
• Representación de texto gráfico
• Relleno de áreas y polígonos
• Técnicas de anti- aliasing
Conversión al raster
– Conocido los puntos a iluminar es necesario conocer el color que se debe asignar a cada uno de ellos.
– El color depende de:
• Las condiciones de iluminación del punto 3D sobre la superficie
del objeto
• La forma (normal) de ese objeto en ese punto.
• Las propiedades ópticas del material
• El acabado superficial (rugosidad).
• El color del objeto (del material o de la pintura).
–Un modelo de iluminación tiene en cuenta todos los factores anteriores
para calcular el color que se ve en ese punto,
– Técnicas implicadas:
• Modelos de iluminación y sombreado, texturas, ...
Iluminación
– Interactividad
• Respuesta a las acciones del usuario sobre la pantalla.
• Una interacción comprende:
– La acción del usuario
– La comprensión del evento
– La comunicación a la aplicación
– La actualización del gráfico
– Construcción del modelo
• El modelo se construye:
– A partir de una imagen real (adquisición)
– A partir de una idea (editor)
– Uso de librerías y herramientas
• Todas las operaciones descritas se programan por medio de librerías gráficas (OpenGL, Java3D, etc.)
Otras operaciones
Top Related