0% encontró este documento útil (0 votos)
148 vistas16 páginas

Tema 1 (Informática Gráfica)

El documento presenta una introducción al curso de Informática Gráfica. Explica que los gráficos por computadora se encargan de generar imágenes estáticas o en movimiento por medio de un computador. Describe los conceptos básicos como la formación de imágenes, el modelo de cámara oscura y los diferentes algoritmos de renderizado. También introduce el concepto de cauce gráfico, que es el proceso mediante el cual se transforman los modelos tridimensionales en la imagen final a través de una serie de etapas como la transformación de vértices,

Cargado por

Y T
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
148 vistas16 páginas

Tema 1 (Informática Gráfica)

El documento presenta una introducción al curso de Informática Gráfica. Explica que los gráficos por computadora se encargan de generar imágenes estáticas o en movimiento por medio de un computador. Describe los conceptos básicos como la formación de imágenes, el modelo de cámara oscura y los diferentes algoritmos de renderizado. También introduce el concepto de cauce gráfico, que es el proceso mediante el cual se transforman los modelos tridimensionales en la imagen final a través de una serie de etapas como la transformación de vértices,

Cargado por

Y T
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Informática Gráfica - Curso 2021/22

Tema 1: Introducción

• Gráficos por Computador

▪ Definición: El campo de los gráficos por computador se encarga del


estudio de las técnicas relacionadas con la generación de imágenes
estáticas o secuencias de imágenes por medio de un computador.

▪ Es síntesis de imagen (Visualización): consiste en generar imágenes


sintéticas en un computador.

▪ No es procesado de Imagen (Visión): la adquisición de una imagen para


conseguir un modelo informático de la misma o un determinado
tratamiento de la misma.

▪ Proceso de Visualización: es el conjunto de operaciones sobre un


Modelo Informático de Datos (Modelado) para obtener una
Representación Gráfica (Renderizado) del mismo en un dispositivo físico
de representación.

▪ Procesado de Imágenes:

▪ Generación de Imágenes:

▪ Aspectos Relevantes:

➢ Aplicación:

❖ El objetivo final es una representación gráfica integrada


dentro de otra aplicación software.

❖ Animación, videojuego, mundo virtual, película,


publicidad, etc.

Página | 1
➢ Software:

❖ Software de Modelado y Renderizado: Maya, Blender,


etc.

❖ Interfaces de Programación de Aplicaciones (APIs)


Gráficas: OpenGL, DirectX.

➢ Hardware: PC con tarjetas gráficas para modelado y renderizado.

▪ Las fuerzas impulsoras de los GC son: la industria cinematográfica, los


videojuegos (interactividad), la imagen médica, la visualización
científica y el diseño asistido por computador.

▪ Historia y Evolución (1): Evolución de los computadores.

➢ 1ª Generación: Válvulas de vacío (1946 – 1957).

➢ 2ª Generación: Transistores (1958 – 1964).

➢ 3ª Generación: Circuitos integrados (1965 – 1971).

➢ 4ª Generación: Microprocesador (1971 – Hoy).

Página | 2
▪ Historia y Evolución (2): Evolución de los gráficos por computador.

➢ 1952, primer videojuego (OXO): tres en raya para EDSAC.

➢ 1961, Spacewar para PDP-1.

➢ 1963: Ivan Sutherland desarrolla el primer sistema para la


manipulación directa de objetos gráficos, precursor de los
modernos sistemas CAD.

➢ Sutherland ingresa en la universidad de Utah, y esta empieza a


ganar reputación como lugar para la investigación de gráficos
computacionales.

❖ Edwin Catmull (Pixar), John Warnock (PostScript), Jim


Clark (Silicon Graphics Inc.), etc.

▪ Historia y Evolución (3): Evolución de los gráficos por computador.

➢ 1971: surge el microprocesador (Altair 8800, una de las primeras


microcomputadoras de escritorio diseñada para uso personal).

➢ Años 70: CAD, Plotters, Videojuegos 2D.

➢ Años 80: Animación por computador (Lucasfilm, Pixar, ...).

➢ Años 90: Industria del videojuego (Tarjetas PC: NVIDIA, ATI, ...).

➢ 2000: Videojuegos 3D (PlayStation, XBOX, ...).

➢ Realidad virtual, realidad aumentada, ...

• Formación de la Imagen

▪ Conceptos Básicos (1):

➢ El objetivo es obtener una imagen 2D en un dispositivo de


visualización de una escena 3D cuando es observada desde un
determinado punto de vista.

Página | 3
➢ Adicionalmente, se pretende “colorear” la imagen resultante de
forma que tenga la apariencia lo más realista posible.

▪ Conceptos Básicos (2):

➢ La imagen puede describirse como una representación de la


variación de una magnitud o un parámetro sobre una superficie.

➢ En nuestro caso, casi siempre, esta magnitud física será la


intensidad de la luz en un plano bidimensional, pero es posible
“mostrar” magnitudes “invisibles” al ojo humano y las relaciones
entre ellas.

▪ Conceptos Básicos (3):

➢ Una imagen está compuesta de píxeles, cuyo nombre viene de la


contracción de los términos “picture element”.

➢ Estos elementos se almacenan de forma digital con una precisión


y numero de bits que puede cambiar según el sistema de
adquisición (ó síntesis) de la imagen.

➢ Uno de los principales retos (y dificultades) en el procesado de


imágenes es el manejo y cálculo de gigantescos volúmenes de
datos.

Página | 4
▪ Conceptos Básicos (4):

➢ La imagen que percibimos depende de: la geometría, las


características de la luz y las características de los materiales.

➢ Los procesos de generación de imágenes sintéticas y


visualización real por el ojo humano son muy similares:

▪ Modelo de Cámara Oscura:

➢ La cámara oscura es un instrumento óptico que permite obtener


una proyección plana de una imagen externa sobre la zona
interior de su superficie.

➢ El modelo de cámara oscura describe las relaciones matemáticas


entre las coordenadas de un punto en el espacio (3D) y su
proyección sobre el plano de la imagen de una cámara oscura
ideal.

▪ Algoritmos de Renderizado (1):

➢ A la hora de renderizar una imagen, existen dos planteamientos


para determinar el color de cada una de las superficies visibles
en función de su interacción con la luz:
Página | 5
❖ Emplear modelos físicos detallados (óptica, radiación
térmica, radiación electromagnética, etc.):

❖ Buscar modelos empíricos que produzcan resultados


visuales razonablemente buenos (modelo aditivo):

▪ Algoritmos de Renderizado (2):

➢ Otra clasificación de los algoritmos de renderizado es según el


número de interacciones luz-material consideradas:

❖ Métodos Locales: sólo consideramos la interacción


fuentes de luz-objetos (se usan en aplicaciones
interactivas): Forward rendering, Ray casting y Deferred
rendering.

❖ Métodos Globales: se consideran también las


interacciones mutuas entre objetos (más complejo, pero
también mucho más realista): Ray Trazing, Radiosity,
Radiancia y Photon Mapping.

▪ Iluminación Local: se ilumina un punto teniendo en cuenta


exclusivamente:

➢ Las propiedades del punto.

➢ Las luces activas.

➢ En función de cómo se utilice el modelo de iluminación


(ecuación) para calcular el color de todos los puntos de la
superficie, se tienen diferentes modelos de sombreado:

▪ Iluminación Global: se ilumina un punto teniendo en cuenta la luz que le


llega: de las fuentes de luz (tiene en cuenta oclusiones) y de otros
objetos.

Página | 6
➢ Los efectos son: producen sombras, reflexión difusa y especular,
refracción, transparencias y causticas.

• El Cauce Gráfico

▪ ¿Cómo se pasa de los modelos tridimensionales a la imagen final?

➢ Respuesta: se hace mediante el cauce (pipeline) gráfico. Se trata


de un conjunto de transformaciones y proceso de imagen que se
realizan a los elementos que forman la escena hasta llegar a la
imagen final.

▪ ¿Qué es un pipeline?

➢ Se divide el proceso de generación en etapas.

➢ Las salidas de una etapa son las entradas de la siguiente.

➢ Cada etapa debe tener sus propios recursos.

➢ Permite paralelizar etapas: no se mejora el tiempo de ejecución


de una tarea, pero sí la productividad general.

➢ Las etapas deben estar equilibradas: Es importante tenerlo en


cuenta a la hora de buscar cuellos de botella.

▪ Segmentación:

➢ Las tarjetas implementan un proceso de generación


segmentado.

➢ Las instrucciones que se ejecutan en las GPUs están


segmentadas.

▪ Paralelismo:

➢ Poca dependencia entre datos.

➢ Paralelismo tipo SIMD.

➢ Múltiples unidades de proceso.

Página | 7
▪ Diferencias en el Cauce según el Autor:

➢ Hoy en día hay un consenso más o menos establecido sobre qué


etapas deben formar parte de un cauce gráfico, las etapas básicas
son las mismas.

➢ Aun así, cada API (OpenGL, DirectX…) y cada autor propone su


propio cauce y lo modifica de una versión a otra para adaptarse
a las necesidades del momento, cambiando el orden de algunas
etapas o introduciendo nuevas.

▪ Cauce Simplificado:

➢ Aplicación: selecciona las primitivas a pintar y configura el cauce.

➢ Transformación o Vértices: proyecta las primitivas.

➢ Rasterizado: transforma las primitivas en fragmentos.

➢ Sombreado o Fragmentos: colorea los fragmentos (similar a un


píxel).

➢ Añade los fragmentos a la imagen (frame buffer).

Página | 8
▪ ¿Un cauce algo más detallado (GPU)?

1. Transformación (1)

❖ La entrada de esta etapa son los vértices de las primitivas


(no las primitivas en sí).

1. Transformación (2)

❖ ¿Cómo se representa el objeto en el mundo 3D?

1. Transformación (3): Del Modelo (objetos)

❖ Se transforma de coordenadas del objeto a coordenadas


del mundo. Se posiciona el objeto en la escena.

❖ El orden en el que se aplican las coordenadas influye en el


resultado final.

Página | 9
1. Transformación (4): De la Vista (cámara)

❖ Se transforma de coordenadas del mundo virtual a


coordenadas de la cámara.

2. Proyección (1):

❖ Transformación que obtiene las coordenadas sobre el


plano de vista (2D), P(x,y), del punto en el espacio (3D),
P(x,y,z).

2. Proyección (2):

❖ Principalmente se usan dos tipos de proyecciones:


ortográfica y perspectiva.

❖ Cada proyección necesita ser configurada con sus propios


parámetros.

Página | 10
2. Proyección (3):

❖ Además, hay que pasar de coordenadas normalizadas a


coordenadas del frame buffer (“pantalla”).

❖ Definir en qué parte de la imagen se va a pintar: Viewport.

2. Transformación + Proyección:

❖ Estas etapas suelen hacerse de forma simultánea.

3. Iluminación (1):

❖ ¿Cómo se calcula el color de un punto de un objeto?

3. Iluminación (2):

❖ Esta etapa puede hacerse en distintos puntos: a nivel de


vértice o a nivel de fragmento.

Página | 11
4. Ensamblado:

❖ ¿Qué primitivas vamos a pintar?

5. Visibilidad I (1):

❖ Determinar qué puntos caen sobre el plano de la vista:


Culling y Clipping.

5. Visibilidad I (2):

❖ Culling: Eliminación de caras ocultas.

Página | 12
5. Visibilidad I (3):

❖ Clipping: eliminar partes fuera del volumen de vista o


frustum.

6. Rasterizado (1):

❖ ¿Qué píxeles de la pantalla pertenecen a la primitiva que


se está pintando?

❖ Hay que determinar si un píxel está dentro o fuera


de la primitiva.

❖ Además, hay que calcular los valores asociados a


partir de los de los vértices de la misma.

6. Rasterizado (2):

❖ Se calculan los fragmentos:

❖ El valor de los parámetros del fragmento se interpola a


partir del de los padres (sombreado de Gouraud):

Página | 13
7. Sombreado:

❖ ¿Cómo se calcula el color de un fragmento?

❖ Se calcula el color del fragmento con los datos


interpolados por el rasterizador.

❖ Otra opción es evaluar aquí la iluminación


(sombreado de Phong).

❖ Se accede a las texturas.

8. Visibilidad II:

❖ Un píxel puede ocultar a otro. ¿Cómo saber cuál debemos


pintar?

❖ La técnica más utilizada es el z-buffer o buffer de


profundidad:

❖ Se sustituye al píxel actual en el buffer sólo si su


valor de z (profundidad) es menor al del píxel
actual.

Página | 14
9. Operaciones con la Imagen (1):

9. Operaciones con la Imagen (2): Antialiasing.

❖ Aliasing: Frecuencia de muestreo insuficiente.

❖ Las fronteras de las primitivas aparecen escalonadas:

9. Operaciones con la Imagen (3): Antialasing.

❖ Una posible solución es la basada en estrategias de


super/multi sampling:

❖ Repetir el rasterizado desplazando la rejilla (x2,


x4…).

❖ Fusionar los distintos resultados.

Página | 15
9. Operaciones con la Imagen (4): Antialiasing.

❖ Otras soluciones son las basadas en filtros morfológicos,


las cuales consisten en detectar y corregir los siguientes
bordes en sierra.

❖ Ambas soluciones, estrategias de super/multi sampling, y


los filtros morfológicos, pueden fusionarse para conseguir
resultados mejorados.

Página | 16

También podría gustarte