L’antialiasing nelle
schede video
Metodi e tecniche di
correzione
Cos’è l’aliasing


Un'immagine generata dal computer è composta
da pixel che possono essere ovviamente di un
solo colore
L’aliasing si manifesta come una imprecisione
dovuta all’incapacità da parte di un calcolatore di
eseguire elaborazioni con una precisione infinita
ed alla necessità di rappresentare i dati in forma
discreta
Un esempio

Supponiamo di dover
rasterizzare questo
triangolo e
consideriamo ogni
quadratino con il
punto rosso un
singolo pixel
Un esempio


Con un
campionamento
puntuale, si ottiene il
seguente triangolo
Ed in arancione
vengono evidenziati i
pixel non considerati
Un esempio


In verde si notano i
pixel interamente
accesi nonostante si
trovino sul bordo della
figura
In rosso viene
evidenziato l’errore
introdotto
I metodi Antialiasing più utilizzati

Questi sono il Supersampling e il Multisampling
 Consistono
sostanzialmente nella
suddivisione dei singoli pixel in più punti di
campionatura
Il Supersampling

Passaggi principali:
 il
pixel viene campionato in più posizioni
 di seguito viene eseguito un filtraggio ed uno
scalamento alla risoluzione originale

Il sistema più semplice è denominato
“Oversampling”
L’oversampling



Si scalano gli assi di un fattore intero (nell’esempio di 2)
Si esegue il rastering dell’immagine ad una risoluzione
superiore
Di seguito avviene il filtraggio e lo scalamento alla
risoluzione originale
Scalamento e rastering a
risoluzione maggiore
Filtraggio e ritorno alla
risoluzione originale
Il Supersampling

Esistono però altri metodi di supersampling più
complessi ed essi sono:
 l’uniform
sampling
 il random sampling
 il jittered sampling
 il semi-jittered sampling
 il weighted sampling
 il weighted distribution
 l’adaptive sampling
Caratteristiche principali

Uniform sampling:
 esso
crea una griglia di subpixel regolare
 permette di ottenere un’immagine di alta
qualità soggetta però ad un effetto Moiré (un
effetto dovuto alla sovrapposizione di due reticoli con passi
diversi che creano una serie di frange scure nell’immagine
finale)
Caratteristiche principali

Random Sampling:
i
punti di campionamento sono distribuiti in
modo casuale per evitare i problemi
dell’uniform sampling (la distribuzione può essere
sbilanciata verso certe zone rispetto ad altre)
Caratteristiche principali

Jittered sampling:
 questa
volta i punti di campionamento sono
distribuiti nuovamente in modo casuale ma
all’interno del confine del singolo subpixel
Caratteristiche principali

Semi-Jittered sampling
 tramite
esso lo schema di subpixel jittered
viene ripetuto per tutti i punti dello schermo
risultando più veloce, ma reintroducendo un
possibile effetto Moiré
Caratteristiche principali

Weighted sampling:
 viene
calcolata una media pesata dei valori
dei subpixel dove quelli centrali hanno
un’importanza maggiore rispetto ai periferici
(ovviamente ciò richiederà maggiore potenza di calcolo)
Caratteristiche principali

Weighted distribution:
 avendo
un maggior peso i subpixel centrali,
con tale metodo la griglia di campionamento
viene ridistribuita in modo da avere una
migliore efficienza senza intaccare
ulteriormente le prestazioni
Caratteristiche principali

Adaptive sampling:
 si
ha una griglia che si adatta alla posizione
del segnale in ingresso risultando quindi
ancora più efficiente, ma comportando un
elevato livello di complessità di calcolo
Il Multisampling
I subpixel, in questo caso vengono salvati
temporaneamente in un buffer
 Si campiona un valore per ognuno di
questi subpixel e tale dato viene quindi
salvato

Il Multisampling
Successivamente verrà effettuato il
downfiltering che calcolerà la media dei
valori contenuti nel blocco
 Se i valori del blocco sono tutti uguali al
pixel verrà assegnato uno di questi (si
occuperanno risorse hardware quindi,
solamente per i bordi delle figure)

Rotazione della griglia

Un’altra tecnica molto diffusa ed utilizzata
particolarmente con il Multisampling è
l’implementazione delle griglie ruotate in modo
da ottenere risultati migliori su spigoli obliqui
Il Multisampling
In conclusione il multisampling ha il
vantaggio di fornire un’ottima qualità
migliorando le prestazioni
 Si ha però meno libertà nel
riposizionamento della griglia di
campionamento rispetto al supersampling

Le scelte delle costruttrici


ATI utilizza un motore di antialiasing totalmente
programmabile che permette ai tecnici di
scegliere qualunque distribuzione dei samples
per un numero massimo di 6.
Questa caratteristica ha permesso alla casa
canadese di offrire sempre una migliore qualità
dell’immagine almeno sino a prima dell’uscita
del chip grafico G70 della concorrente NVIDIA
I samples ATI
No Anti Aliasing
Anti Aliasing 4x
Anti Aliasing 2x
Anti Aliasing 6x
I samples NVIDIA

ATI e NVIDIA utilizzano disposizioni simili
per i salmples ma con angolazioni di
rotazioni opposti (entrambi però utilizzano
una griglia ruotata)
I samples NVIDIA

NVIDIA supporta anche un antialiasing ad
8 samples ottenuto mixando la tecnica
multisampling con la supersampling che
però risulta molto dispendiosa in termini di
prestazioni
L’antialiasing gamma corrected


Utilizzato da ATI dal 2002 ed implementato
anche a partire dal chip G70 di NVIDIA, consiste
nel non eseguire gradazioni lineari tra le zone
più scure e le più chiare, ma nell’assegnare un
maggior numero di sfumature ai livelli più
delicati.
Questo modo di trattare l’immagine porta ad un
antialiasing che viene percepito dall’occhio
umano in maniera più morbida e piacevole
Il Temporal AntiAliasing


Il Temporal AntiAliasing è una speciale modalità
che, alternando su frame pari e dispari due
differenti distribuzioni dei samples (sempre
grazie alla programmabilità della GPU ATI),
portano ad una resa effettiva pari al doppio dei
samples realmente utilizzati.
Il TTA 2x ha quindi la stessa qualità
dell’antialiasing 4x e così via sino al 6x pari ad
un 12x. Il Temporal AntiAliasing però soffre della
limitazione che la sua abilitazione è possibile
solo se il numero di frame al secondo è pari o
superiore al refresh del monitor.
Il Temporal AntiAliasing
2x
2xTAA
4x
6x
6xTAA
8xS
NVIDIA
Transparency AntiAliasing (NVIDIA) e
Adaptive AntiAliasing (ATI)

Sono entrambe tecniche adattative a livello
texture che ammorbidiscono non più i contorni
delle figure, ma i bordi delle texture nelle zone in
cui essi divengono trasparenti
Bibliografia
Multisampling e Supersampling
http://www.3dcenter.org/artikel/multisampling_anti-aliasing/index_e.php
Supersampling
http://www.neoseeker.com/Hardware/faqs/kb/10,72.html
Approcci all’anti-aliasing
http://minosse.dibe.unige.it
Antialiasing nelle schede video
http://www.hwupgrade.it
Scarica

Brunello_aliasing