Anda di halaman 1dari 0

ALIASING Y

CMO COMBATIRLO
David Miraut Andrs david.miraut@urjc.es
T

c
n
i
c
a
s

a
v
a
n
z
a
d
a
s

d
e

g
r

f
i
c
o
s

3
D
Itss important to keep in mind that a pixel is actually
not a little square, and that samples outside the pixels
grid can -and should- influence the pixels color.
-- Tomas Akenine-Mller
(A pixel is not a little square !)
-- Alvy Ray Smith
3
In our last episode the evil high frequencies from the
Aliasing Empire were sneaking into our image and
transforming themselves into deadly Jaggies. Our
research labs had come up witha theoretical weapon
to defeat the Jaggies. Unfortunately, the purely
theoretical solution cannot be used in practice...
-- Jim Blinn
NOTAS
NDICE
Todas las marcas y productos mencionados
en estas trasparencias estn registradas por
sus respectivas compaas, y su uso es de
carcter descriptivo con fines docentes.
c
Parte de las tablas y grficos y el texto estn
basados en el libro Real Time Rendering de
Tomas Akenine-Mller y Eric Haines, y en
los libros mencionados en la bibliografa
Ejemplos visuales
Definicin formal del problema del aliasing
Conceptos sencillos de muestreo y reconstruccin
Tecnicas tradicionales de antialiasing
Tecnicas implementadas en HW grfico (GPUs)
Detrs del teln: el dominio de la frecuencia y la
verdadera causa del aliasing
Trataremos el problema de la forma ms intuitiva posible
dentro del dominio del tiempo y el espacio, cuando la base
est ms asentada pasaremos al dominio de la frecuencia
dnde se puede profundizar en el problema y su solucin
ms rigurosamente.
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
ALIASING
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
ALGUNOS EJEMPLOS
Probablemente al hablar de aliasing, lo primero que nos vienen a la
mente son imgenes como stas:
Por lo que le echamos la culpa a los famosos
pixeles cuadrados, pero podemos conseguir
mucha mejor calidad en nuestros grficos si
indagamos en el problema para atajarlo de raz.
Las lneas horizontales
y los rectngulos no
tienen artefactos
extraos
Las lneas diagonales y
curvas se ven mucho
peor, tenemos bordes
dentados y un pixelado
muy molesto
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Rueda del vagn del tren
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Supongamos que nos equivocamos de codec con la cmara digital
y, por error, elegimos uno de baja calidad que toma las imgenes a
intervalos mayores (menor frecuencia). Por ejemplo, en lugar de
las 50 imgenes por segundo slo tomamos 7 por segundo
Qu ocurre al reproducir el vdeo?
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Supongamos que nos equivocamos de codec con la cmara digital
y, por error, elegimos uno de baja calidad que toma las imgenes a
intervalos mayores (menor frecuencia). Por ejemplo, en lugar de
las 50 imgenes por segundo slo tomamos 7 por segundo
Qu ocurre al reproducir el vdeo?
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
Tarjeta Hrcules
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Supongamos que nos equivocamos de codec con la cmara digital
y, por error, elegimos uno de baja calidad que toma las imgenes a
intervalos mayores (menor frecuencia). Por ejemplo, en lugar de
las 50 imgenes por segundo slo tomamos 7 por segundo
Qu ocurre al reproducir el vdeo?
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
EFECTO DE LA RUEDA DE TREN
Imaginemos que estamos filmando con nuestra flamante cmara de video
un tren en movimiento, y nos fijamos en el movimiento de las ruedas
de los vagones, en el mismo sentido de avance del tren...
Supongamos que nos equivocamos de codec con la cmara digital
y, por error, elegimos uno de baja calidad que toma las imgenes a
intervalos mayores (menor frecuencia). Por ejemplo, en lugar de
las 50 imgenes por segundo slo tomamos 7 por segundo
Qu ocurre al reproducir el vdeo?
Parece que la rueda se mueve hacia ATRS
Aliasing temporal
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
QU ES EL ALIASING?
OTROS LUGARES DONDE NOS LO ENCONTRAMOS
Aliasing espacial, en grficos:
tablero de ajedrez
Patrones de Moire en mapas de textura
y warping de imgenes
Bordes dentados en el rendering
Aliasing temporal en audio
Cuando se remuestrea una seal a
una frecuencia notablemente menor,
p. ej. el audio que tenemos en el
mvil est lejos de tener calidad CD
Aliasing temporal en video y animacin
Efecto estroboscpico (como en la discoteca)
Saltos en la animacin (no hay suavidad de movimientos)
El efecto de la rueda de tren
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
CMO ES EL ALIASING?
ALIASING IS BAD!
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
--- Paul S. Heckbert (ex-profesor de la Carnegie Mellon
University y ahora Arquitecto grfico en nVIDIA)
Bordes dentados (jaggies), patrones de Moire, aliasing temporal y otros
sntomas debidos al aliasing son artefactos no deseados:
En una imagen fija, estos artefactos empobrecen la sensacin visual
y dan una senacin de irrealidad
En audio, suelen dar una tonalidad metlica y distorsioinan las voces
En animaciones pueden deviar la atencin del usuario, esto
se nota especialmente en los antiguos simuladores (de vuelo)
Por ello, uno de nuestros objetivos al generar grficos
(en tiempo real o no) ser eliminar o paliar en lo posible
su efecto
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
QU ES EL ALIASING?
DEFINICIN FORMAL
El aliasing es el efecto que causa que seales continuas distintas
se tornen indistinguibles cuando se les muestrea digitalmente.
Cuando esto sucede, la seal original no puede ser reconstruida de
forma unvoca a partir de la seal digital.
En anteriores asignaturas vimos que en el ordenador no podemos
manejar directamente seales analgicas, contnuas y de precisin
infinita, sino que tenemos que partir la seal en pequeos trozos
(muestrear) y darle unos valores finitos (discretizar) que podamos
codificar con un conjunto de bits (digitalizar).
ANALGICO vs DIGITAL
Ambos tienen sus ventajas e inconvenientes, pero si estamos
hablando de ordenadores hemos de cruzar la frontera y
movernos en el mundo digital (mucho ms limitado).
Seal Analgica Seal digital
Tenemos que:
Muestrear
(Slo podemos coger unos cuantos puntos)
El ordenador tiene una precisin finita y limitada, eso
conlleva un rango dinmico limitado para las seales
digitales (y agujeros entre los nmeros)
Discretizar
Trabajamos con modelos, no con la realidad
Ejemplo
pixel
El aliasing es causado por un muestreo incorrecto
de la seal que se est digitalizando, de modo que
aparecen artefactos (imperfecciones) en la misma.
En el caso de PCs (y derivados como consolas),
tenemos dos lugares criticos en los que hay que tener
en cuenta este problema: la generacin de la imagen
(precisin limitada) y su representacin en pantalla
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
QU ES EL ALIASING?
DEFINICIN FORMAL
Las imgenes rasterizadas son representaciones
digitales discretas de una realidad contnua
(seales pticas), incluso las magenes snteticas
son matemticamente contnuas
El muestreo y la reconstruccin son fundamentales
en los grficos por ordenador
Normalmente tratamos con imgenes de una
complejidad y detalle que superan el ancho de
banda de los medios de los que disponemos
para su representacin, por lo que tenemos
que adaptarnos a lo que tenemos (*).
alta frec.
N
o

p
o
d
e
m
o
s

c
n
t
r
r
l
o
o
o
l
a
p
o
r

e
r
a
l

n
e
m
o
s
l
o

g
n
e
t
e
u
n

d
e
t
a
l
e

c
s
i

i
i
n
i
t
o
n
f

!
!
l
a
Aprovechamos que la
percepcin humana no
es perfecta y podemos
permitirnos un cierto
error debajo del umbral
no nos caben tantos
detalles en tan pocos
pxeles (aparentemente)!!
En la pantalla tenemos
una resolucin fija, mucho
menor que lo que perciben
nuestros ojos, que tambien
son discretos
muy baja
frecuencia
Podriamos dar un cuatrimestre entero
de procesado de seal y no veramos
ms que una minscula parte
no podemos
aumentar la
frecuencia de
muestreo.
Es fija!
NOTAS
TEORIA DE
MUESTREO Y
RECONSTRUCCIN
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
TEORA DE MUESTREO Y FILTRADO
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
El proceso de rendering o representacin de graficos 3D en el rea de
visualizacin ( el framebuffer) puede verse como una tarea de muestreo
Al sintetizar la imagen, muestreamos la descripcin de una escena
tridimensional para obtener los valores de color en cada pixel de la
imagen (un array bidimensional de pixeles discretos)
seal continua
original
seal muestreada
(a intervalos regulares)
seal reconstruida
muestreo
recons-
truccin
(Por simplicidad veremos los ejemplos en una dimensin)
Informacin
infinita
(aunque tiene
cierto ruido)
Reducimos la cantidad
de infomacin para
poderlo manejar
Despus necesitaremos
reconstruir la seal
(mediante filtrado)
NOTAS
TEORA DE MUESTREO Y FILTRADO
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
En nuestro caso, al trabajar con seales con componentes frecuenciales
casi infinitas (ancho de banda ilimitado), el problema del aliasing vendr
derivado de muestrear (para hacer la representacin en memoria y
en pantalla) a una frecuencia demasiado baja
La energa asociada a las componentes de alta frecuencia que
no alcanzamos no desaparece, sino que se convierte en
parte de la seal errneamente reconstruida de baja
frecuencia alias
NOTAS
t
t
f
f
rango dinmico
del display
rango dinmico
del display
seal original
seal
reconstruida
TEORA DE MUESTREO Y FILTRADO
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
En nuestro caso, al trabajar con seales con componentes frecuenciales
casi infinitas (ancho de banda ilimitado), el problema del aliasing vendr
derivado de muestrear (para hacer la representacin en memoria y
en pantalla) a una frecuencia demasiado baja
La energa asociada a las componentes de alta frecuencia que
no alcanzamos no desaparece, sino que se convierte en
parte de la seal errneamente reconstruida de baja
frecuencia alias
Parte de la energa
de la seal de alta
frecuencia se puede
colar como energa
de baja frecuencia.
NOTAS
TEOREMA DE NYQUIST
La frecuencia de muestreo debe ser al menos 2 veces mayor que la
mxima frecuencia de la seal que almacenamos y luego queremos
reconstruir.
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
frec = 1rpm
1 muestra por revolucin
Un poco ms de una
muestra por revolucin
2 muestras por revolucin
Ms de dos muestras
por revolucin
La seal tiene
que ser limitada
en frecuencia
Pero los limites de los polgonos, bordes de
las sombras... son discontinuidades que
introducen componentes frecuenciales infinitas!
NOTAS
RECONSTRUCCIN DE LA SEAL
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
FILTRO CUADRADO VECINO MS PRXIMO
Para reconstruir una seal de ancho de banda limitado, que ha sido
muestreada, es necesario filtrarla. Esto es, para convertirla en una seal
continua propagamos o rellenamos con los valores que tenamos para
puntos concretos (en forma de deltas de dirac) sobre el resto del
dominio R, R , R ...
2 3
Lo ms sencillo es dar a cada punto el valor correspondiente a la muestra
ms cercana en distancia, o lo que es lo mismo, tomar el valor y
expandirlo en el trozo correspondiente a los alrededores del punto de
muestreo, a eso le llamamos filtrado por vecino ms prximo.
Es muy utilizado en grficos debido a su gran simplicidad,
hace lo mnimo que se le pide a un filtro para esta labor, pero
como comprobaremos ms adelante, esta aproximacin es muy
ruda, y el filtro penaliza algunas componentes de baja frecuencia
que nos pueden interesar y deja pasar altas frecuencias.
Como dice J. Blinn, puede ser pura coincidencia que justo lo
que buscamos tenga esta forma en el dominio de la frecuencia :-)
introduce un cierto
emborronamiento
nuestros odiados
bordes dentados
NOTAS
RECONSTRUCCIN DE LA SEAL
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
FILTRO CUADRADO VECINO MS PRXIMO
0
0
1
1
2
2
3
3
4
4
5
5
6
6
7
7
0
0
-2
1
-1 0 1 2 3 -3
0
convolucionamos con el filtro
foto con cmara digital
Zoom ptico x10
Zoom digital x10
NOTAS
RECONSTRUCCIN DE LA SEAL
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
FILTRO TRIANGULAR LINEAL
0
0
1
1
2
2
3
3
4
4
5
5
6
6
7
7
0
0
-2
1
-1 0 1 2 3 -3
0
convolucionamos con el filtro
El siguiente filtro ms sencillo de implementar (y barato de calcular).
Interpola linealmente las (dos) muestras vecinas
La seal resultante es continua
Pero lo obtenido no es especialmente suave, tenemos cambios bruscos
en la pendiente, justo en los puntos de muestreo.
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
RECONSTRUCCIN DE LA SEAL
FILTRO TRIANGULAR LINEAL
Lineal Vecino ms prximo
imgenes de 52x60 pxeles
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
RECONSTRUCCIN DE LA SEAL
FILTRO TRIANGULAR LINEAL
Lineal
Vecino ms prximo
Borde ideal
en una malla de
baja resolucin
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
RECONSTRUCCIN DE LA SEAL
FILTRO PASO BAJO SINC
Puesto que al muestrear la seal inicial, aunque fuera acotada en frecuencia,
se convierte en una seal de banda ilimitada (como veremos ms adelante),
el filtro que debemos utilizar para su reconstruccin ha de eliminar las altas
frecuencias necesitamos un filtro paso bajo
-2
- -4
-3 2
3
4
1
0
sinc(x)=
sin( x)
x
hacia el infinito
hacia el
menos infinito
introduce
variaciones
muy bruscas
de la seal
debido a los
impulsos
Tericamente es perfecta, pero presenta problemas prcticos:
Es una seal ilimitada en frecuencia
Es una seal perfectamente continua
Tiene partes positivas y negativas...
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
RECONSTRUCCIN DE LA SEAL
FILTRO PASO BAJO SINC
0
0
1
1
2
2
3
3
4
4
5
5
6
6
7
7
0
0
convolucionamos con el filtro
1
0
-2 -1 0 1 2 3 -3
Recontruye la seal perfectamente siempre que esta originalmente
fuera una seal slo con componentes de baja frecuencia que no
haya dado lugar a fenmenos de aliasing en el muestreo.
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
RECONSTRUCCIN DE LA SEAL
FILTRO GAUSIANO
0
0
1
1
2
2
3
3
4
4
5
5
6
6
7
7
0
0
convolucionamos con el filtro
1
0
-2 -1 0 1 2 3 -3
Puesto que no es posible utilizar sincs en la prctica, se suele considerar
un excelente filtrado cuando lo aproximamos con una funcion con forma
de campana de Gauss
NOTAS
RECONSTRUCCIN DE LA SEAL
FILTRO GAUSIANO
filtro gaussiano filtro rectangular
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
REMUESTREO
Lo vamos a utilizar para ampliar o comprimir en la dimensin
en la que hemos tomado las muestras (espacio o tiempo), u de esta
forma resaltar el problema del aliasing en grficos.
Supondremos que las muestras se han tomado unniformemente
a intervalos unidad, por ejemplo 1, 2, 3, 4...
Las nuevas muestras (que tambin vamos a suponer con un intervalos
constante) se encontrarn a una distancia proporcional de las anteriores,
esto lo vamos a cuantificar en este ejemplo con el parmetro a que
multiplicar el intervalo
a < 1 el intervalo resultante ser ms pequeo, por tanto
aumentamos la frecuencia y el nmero de muestras
para cubrir el mismo espacio interpolacin
a > 1 el intervalo ser mayor, disminuimos la frecuencia
en el nuevo muestreo y el numero de muestras para
representar la misma informacin hay que eliminar
y nos podemos cargar cosas interesantes si no se
hace con cuidado diezmado

(aliasing)
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
REMUESTREO
REMUESTEO: INTERPOLACIN
Parece ms simple, podemos reconstruir la seal con un filtro (sinc)
y luego volver a tomar los valores en los intervalos deseados
a = 05
nuevas muestras
dibujo de Tomas Akenine
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
REMUESTREO
SUBMUESTREO: DIEZMADO
Estamos reduciendo el nmero de muestras, por lo que las varaiaciones
producidas por las componentes de frecuencia de la seal original puede
ser demasiado rpidas para ser capturadas con las pocas muestras
de las que vamos a disponer aliasing
No se parece a la
seal original !!!
muestras eliminadas
quitamos
demasiados
pilares,
la seal se
derrumba
dibujo de Tomas Akenine
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
REMUESTREO
SUBMUESTREO: DIEZMADO
Estamos reduciendo el nmero de muestras, por lo que las varaiaciones
producidas por las componentes de frecuencia de la seal original puede
ser demasiado rpidas para ser capturadas con las pocas muestras
de las que vamos a disponer aliasing o solapamiento de la seal
No se parece a la
seal original !!!
muestras eliminadas
quitamos
demasiados
pilares,
la seal se
derrumba
Qu podemos hacer?
Tpicamente, tendriamos
que filtrar previamente
la seal para eliminar
esas componentes de
alta frecuencia y luego
realizar el muestreo.
Eso nos va a hacer perder
detalles, pero no hacer
nada es mucho peor.
Y si la seal ya nos la dan muestreada?
Tcnicas de anti-aliasing a pantalla completa
NOTAS
ANTIALIASING
A PANTALLA
COMPLETA
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
NOTAS
TCNICAS DE ANTI-ALIASING
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
Podemos distinguir tres familias de tcnicas de anti-aliasing
en sntesis de grficos:
Anti-aliasing a pantalla completa
Anti-aliasing de texturas
Anti-aliasing de lneas
Cuidado, el remuestreo del
rendering de Acrobat Reader
puede introducir artefactos
en las imgenes, haced zoom
para verlo adecuadamente
Geometra original Bordes prefiltrados
Filtro vecino ms prximo Filtro gausiano
la lnea se puede simular
como un rectngulo muy fino
y aplicar las terceras tcnicas
NOTAS
TCNICAS DE ANTI-ALIASING
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
Cuidado, el remuestreo del
rendering de Acrobat Reader
puede introducir artefactos
en las imgenes, haced zoom
para verlo adecuadamente
NVIDIA Quadro FX 2000, 16x AA (4x4 regilla ordenada) Original (aliasing)
Sander et al. [2001] (hardware line antialiasing)
Filtro triangular Filtro gausiano
ATI Radeon 9800 Pro, 6x (regilla rotada e intercalada)
NOTAS
TCNICAS DE ANTI-ALIASING
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
Cuidado, el remuestreo del
rendering de Acrobat Reader
puede introducir artefactos
en las imgenes, haced zoom
para verlo adecuadamente
Original (aliasing) NVIDIA Quadro FX 2000,
16x AA (4x4 regilla ordenada)
ATI Radeon 9800 Pro, 6x
(regilla rotada e intercalada)
NOTAS
TCNICAS DE ANTI-ALIASING
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
Cuidado, el remuestreo del
rendering de Acrobat Reader
puede introducir artefactos
en las imgenes, haced zoom
para verlo adecuadamente
Sander et al. [2001]
(hardware line antialiasing)
Filtro triangular Filtro gausiano
NOTAS
TCNICAS DE ANTI-ALIASING
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
Podemos distinguir tres familias de tcnicas de anti-aliasing
en sntesis de grficos:
Anti-aliasing a pantalla completa
Anti-aliasing de texturas
Anti-aliasing de lneas
Cuidado, el remuestreo del
rendering de Acrobat Reader
puede introducir artefactos
en las imgenes, haced zoom
para verlo adecuadamente
vecino ms
prximo
filtro bilineal
filtro
trilineal
filtro
aniso-
tropico
4x
filtro
aniso-
trpico
16x
Tenemos control
sobre el primero
de los muestreos
pero se aplica
polgono a polgono
los bordes y el
conjunto pueden
no tener calidad
suficiente
NOTAS
TCNICAS DE ANTI-ALIASING
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
Podemos distinguir tres familias de tcnicas de anti-aliasing
en sntesis de grficos:
Anti-aliasing a pantalla completa
Anti-aliasing de texturas
Anti-aliasing de lneas
Operamos sobre los fragmentos al final del pipeline grfico
sin necesidad de conocer los objetos que componen la imagen.
El secreto est en utilizar ms muestras (fragmentos) por
celda de la malla (pxel) de representacin y luego fusionarlos:
p(x,y)=
i=1
i=1
n
n
w c(i,x,y)
w = 1
i
i peso
valor de color de la muestra que
contribuye a la celda (pxel)
La posicin relativa de las muestras puede variar para cada
pxel, as la funcin c(i,x,y) se descompone en una funcin
f(i,n) que nos devuelve la posicin (x,y) de la muestra.
El caso por defecto en HW grfico es n=1 y las
muestras centradas en el pixel.
Se le llama
supermuestreo
NOTAS
POR QU LOS MTODOS
DE SUPERMUESTREO?
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
En la pizarra
Realidad contnua (matemtica o no)
a representar. Tres dimensiones
Valor muestreado Dimension nula
Espacio de memoria en que se almacena
la muestra/fragmento (framebuffer + Z)
En funcin de la resolucin de la pantalla
abarcar varios elementos/pixeles del
monitor. Dos dimensiones
Hay que rellenar un rea con un nico valor
Tenemos la
mala suerte
de muestrear
en un punto
de variacin
rpida y
afecta a
varios pixeles
Ejemplo:
Si escogemos un nico valor muestreado sin tener en cuenta
lo que hay alrededor en el rea que va a mostrar en pantalla,
probablemente cometeremos un error ya que su color no
ser representativo del rea que ocupa en pxeles
NOTAS
MTODOS SUPERMUESTREO:
FULL SCENE ANTIALIASING (FSAA)
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
En la pizarra
Este mtodo (FSAA) renderiza la escena a una resolucin mayor y luego
hace una media ponderada de los valores de color para crear la imagen.
Por ejemplo, si queremos una imagen de 1024 x 768 con cuatro muestras
(2x2) por pixel necesitaremos ms de 3 millones de fragmentos super-
vivientes al final del pipeline.
Puesto que representan una pequea cantidad de lo que se ha generado
en el pipeline nos da una idea de la carga extra que han de han de
soportar las etapas que siguen al rasterizado.
Es muy simple y fcil de implementar en la arquitectura grfica,
pero implica un gran consumo de recursos en la GPU
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
En la pizarra
MTODOS SUPERMUESTREO:
ACUMULATION BUFFER (PURO)
Frame n - imagen 1
Tenemos un buffer de la misma
resolucin y ms bits para color
(xn) que la imagen deseada
Detalle
El primer clculo es igual que en el render normal
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
En la pizarra
MTODOS SUPERMUESTREO:
ACUMULATION BUFFER (PURO)
Frame n - imagen 2 Frame n -
imagen 1
Tenemos un buffer de la misma
resolucin y ms bits para color
(xn) que la imagen deseada
Detalle
El clculo se repite las veces que se desee, desplazando
ligeramente la posisin de las muestras que se toman,
y el resultado se va sumando al buffer de acumulacin.
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
En la pizarra
MTODOS SUPERMUESTREO:
ACUMULATION BUFFER (PURO)
Frame n - imagen 3 Frame n -
imagen 1
Tenemos un buffer de la misma
resolucin y ms bits para color
(xn) que la imagen deseada
Detalle
Frame n -
imagen 2
Cuando ya se tienen todas las muestras sumadas se divide
entre el numero de las mismas en cada futuro pixel.
Los bufferes de acumulacin son parte de OpenGL y pueden utilizarse
para otros efectos como motion blur y profundidad de campo.
Re-renderizar la escena varias veces por frame lo hace muy
costoso en escenas complejas en tiempo real.
Ha de tener bastante precisin,
para que no se pierdan los
bits menos significativos y se
produzca un efecto de bandas
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODOS SUPERMUESTREO:
EL BUFFER T
En lugar de utilizar disparidad puramente espacial podemos aprovechar
tambin la temporal para reducir la exigencia grfica.
Consiste en un conjunto de 2, 4, o ms imgenes y Z buffers con mscaras
que determinan donde las primitivas (tringulos) estn localizados. La
circuitera de composicin se encarga de combinar los buffers como una
nica imagen poderada.
En lugar de hacer multiples pasadas, un tringulo puede ser enviado y
procesarlo en paralelo en todos los buffers simultneamente, con un
ligero cambio en el punto de vista para cada uno, con lo que los
desplazamientos x e y se determinan por separado.
La ventaja es que se puede aplicar sin tener que hacer cambios en
los programas, con una sola pasada. Basta con indicarselo al driver
de la tarjeta grfica en el modo de antialiasing.
Sacrificamos memoria para obtener velocidad
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODOS SUPERMUESTREO:
EL BUFFER T
Esta tecnologa fue por primera vez implementada en hardware de
consumo por 3DFX, quien la populariz, y desde entonces las tcnicas
antialiasing a pantalla completa han sido un factor determinante en la
calidad de las imgenes de las tarjetas grficas.
Voodoo3
Cuidado, el remuestreo del
rendering de Acrobat Reader
puede introducir artefactos
en las imgenes, haced
zoom para verlo
adecuadamente
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
PATRONES DE MUESTREO:
Una ventaja del Buffer-T sobre el FSAA (y el Buffer A) es que el el
muestreo no tiene porqu ser ortogonal dentro de la rejilla de celdas
(pxeles), y cada paso es independiente de los anteriores.
Uno de los patrones ms populares por sus buenas caracteristicas de
antialiasing es el Rotated Grid Super Sampling.
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
PATRONES DE MUESTREO:
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MUESTREO ESTOCSTICO:
El muestreo regular no puede eliminar el aliasing, slo reducirlo.
Por qu?
Siempre vamos a tener elementos arbitrariamente pequeos en
pantalla que ningn periodo por pequeo que sea va a poder capturar
Los bordes provocan componentes frecuenciales infinitas
Si distribuimos las muestras aleatoriamente podemos reemplazar los
efectos repetitivos del aliasing por ruido
El ojo humano es mucho ms tolerante al ruido que a los artefactos
del aliasing mejor calidad percibida
El mas comn es el jittering,
un tipo de muestreo estratificado
que divide el rea en subpixeles
en los que se aplica esta idea.
De esta forma, las muestras
siempre cubren todo el rea
Ejemplos de arquitecturas que utilizan este mtodo:
Infinite Reality (Stanford) y SuperScene (3DLabs)
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODOS SUPERMUESTREO:
EL BUFFER A
Bastante utilizado en software para rendering a velocidades no interactivas
y debido a sus cualidades ya tenemos implementaciones HW en GPUs
Calcula la cobertura aproximada de cada polgono sobre la celda de la
malla (pixel) y, a diferencia de los anteriores, comparte esa informacin
con las muestras cercanas de la celda.
0
0
0 0 0 0
1
1
1
1 1
1
1
1 1 1
Hasta ahora hemos visto como una
desventaja el que los bordes de los
polgonos (primitivas) tengan una
precisin infinita matemticamente
(introducen componentes de alta frec.)
En este caso lo vamos a aprovechar
para saber cunto y cmo cubren cada
una de las celdas de la malla.
mscara de
cobertura
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODOS SUPERMUESTREO:
EL BUFFER A
0
0
0 0 0 0
1
1
1
1 1
1
1
1 1 1
Con cada polgono generamos una mscara de cobertura para cada celda,
que nos va a ayudar a determinar la contribucin del mismo a su color.
Slo se hace un clculo de iluminacin y profundidad por polgono y celda,
que suponemos centrado en el pxel para ambos, y se comparte la informa-
cin para todas las muestras. Esto conlleva que:
Tenemos menos coste computacional
No podemos hacer antialiasing de texturas y sombras
Est especializado en antialiasing de bordes y transparencias
Fragmento = mascara del polgono + shade + profundidad
(color + atributos)
Una celda tendr tantos fragmentos como polgonos
contribuyan en ella (independientemente de las
muestras que dependen de la precisin con la
que se define la mscara en cada una de las
celdas)
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODOS SUPERMUESTREO:
EL BUFFER A
Los fragmentos se descartan en el caso de que el rea de cobertura sobre
la celda sea tapada por un fragmento de otro polgono opaco que tenga
una distancia menor de profundidad.
Con los fragmentos supervivientes (transparentes y que no hayan sido
tapados) se determina el color final en funcin de las reas que ocupa
cada uno y su visibilidad.
1 1 1 1 1 1 1 1
0 0 0 1 1 1 1 1
0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 1 1
0 0 0 0 0 1 1 1
0 0 0 0 1 1 1 1
0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0

A B
A (adelante) B (en el medio) C(atrs)
colores de los
subpixeles
A cubre 15/32 del pixel
A B cubre 7/32 del pixel
A B C cubre 7/32 del pixel
color final
del pixel
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODOS SUPERMUESTREO:
EL BUFFER A
La arquitectura hardware de este tipo de aliasing es algo distinta a la
que hemos estudiado hasta ahora, pues los lmites de la etapa de
geometra y rasterizado se desdibujan, o bien da lugar a una nueva
etapa presente en las tarjetas de nueva generacin: etapa de primitivas
y una fuerte modificacin del buffer Z.
Ventajas del Buffer-A respecto a los anteriores mtodos:
Menos espacio de almacenamiento
Menos pasadas de renderizado
Menos clculos: sombreado y profundidad slo
una vez por fragmento (pixel/poligono)
Matrox tiene
implementado
y optimizado
este mtodo
en hardware
0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 1 1 1 1 0 0
0 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 1 1 1 1 1 1
0 0 1 1 1 1 1 1
0 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 1 1 1 1 1
0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0
Formacin de la mscara
NOTAS
IMPLEMENTACION
HARDWARE DEL
ANTIALIASING
A PANTALLA
COMPLETA
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
GeForce4
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODO QUINCUNX de nVIDIA
Tambin llamado High Resolution Antialiasing (HRAA)
El nombre viene por la disposicin de las muestras,
y su relacin con el nombre en latn que recibe.
Es un trmino muy antiguo, que se corresponde con la
formacin tctica ms comn en el ejercito romano
Quincunx
o tablero
de Galton
El principal problema de los mtodos de supermuestreo
es el coste del clculo del muestreo de varios puntos
por celda (o pixel)
nVIDIA busca maximizar la mejora de calidad/coste
tomando las muestras en el borde de la celda para poder
compartir su valor entre varias.
De esta forma slo necesitamos dos muestras
por pixel y se obtiene mejor calidad que en
los FSAA tradicionales del mismo nmero
de muestras.
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODO QUINCUNX de nVIDIA
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
MTODO QUINCUNX de nVIDIA
GeForce Mx4000
Accuview Antialiasing
(2xFSAA, 4xFSAA,
Quincunx a 4XS)
No todas las muestras contribuyen con el mismo
peso al color final de la celda. La muestra central
tiene un peso de y las de las esquinas slo 1/8
Con ello se obtiene un aliasing de mucha mejor
calidad que con el tpico filtro cuadrado y algo
mejor que un bilineal supermuestreado.
En la implementacin hardware se han cuidado especialmente aspectos
de ahorro en ancho de banda y potencia de clculo.
Sin embargo, esta tcnica introduce
un ligero error en la forma en la que
se toman las muestras.
Esto ha sido solucionado en la
siguiente generacin de tcnicas
de antialiasing de nVIDIA:
Accuview (GeForce4)
Que desplaza el patrn de
muestreo y la malla de celdas
NOTAS
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
INTERLEAVED SAMPLING
Esta tcnica fue inicialmente utilizada en Pixel Machine (de AT&T),
VGX (de Silicon Graphics) y la tecnologa SMOOTHVISION de ATI
Toma algunas ideas del buffer de acumulacin, pero en lugar de tomar
varias muestras (hasta 16 por celda) con un patrn puramente repetitivo,
tiene un conjunto de posibles patrones (tb. hasta 16) que puede ir
mezclando e intercambiando (pseudo-aleatorio).
No llega a convertir los artefactos en ruido como haca el muestreo
estocstico, pero los artculos de Molnar, Keller y Heidrich demuestran
que esta forma discreta de simularlo reduce significativamente los
artefactos producidos por el efecto de aliasing.
ATI Radeon 8500 ATI Radeon 8500
2X Performace AA
nVIDIA GeForce3
Ti 500 Quincunx AA
Ms ntido, pero
requiere mucho
ms tiempo de
clculo
NOTAS
TENDENCIAS FUTURAS
POISSON DISK SAMPLING
MUESTREO CON REFINAMIENTO ADAPTATIVO
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
Para comprender las tcnicas actuales de antialiasing a pantalla completa
tenemos que introducir ms conceptos relacionados con los avances en
las ltimas etapas (no programables del pipeline): Test de transparencia,
composicin, blending, niebla... Si nos da tiempo lo contaremos al final
de la clase
Puntos no uniformemente distribuidos separados por una distancia
mnima que despus se reconstruye con un filtro gaussiano.
Esta ntimamente relacionado con el point based rendering.
La imagen mejora con el tiempo, a medida que se van tomando
ms muestras de esa zona. Es til en aplciaciones interactivas:

- No tendremos gran detalle si la escena o el punto de vista
cambia rpidamente (pero el ojo en ese caso tampoco lo
captara a esa velocidad)
- Mejora poco a poco en escenas estticas
En juegos no hay
grandes cambios de
un frame al siguiente
Evolucin del buffer de acumulacin
Ambos implican cambios en la concepcin del pipeline
grfico actual, pero se pueden simular en software
NOTAS
DETRS DEL TELN:
Anti-aliasing
HW GPUs
Dom. frecuencia
Aliasing
Teora de
Muestreo y
Reconstruccin
EL DOMINIO DE LA FRECUENCIA
En la pizarra
Esta seccin (dominio de
la frecuencia) no entrar
en el examen
NOTAS
LECTURA RECOMENDADA
NOTAS
BIBLIOGRAFA
Cap.4
NOTAS
RESUMEN
NOTAS

Anda mungkin juga menyukai