Lantialiasing nelle schede video Metodi e tecniche di correzione.
-
Upload
pino-de-rossi -
Category
Documents
-
view
212 -
download
0
Transcript of Lantialiasing nelle schede video Metodi e tecniche di correzione.
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ù posizionidi 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 regolarepermette 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 2x
Anti Aliasing 4x 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 8xSNVIDIA
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