Lantialiasing nelle schede video Metodi e tecniche di correzione.

29
L’antialiasing nelle schede video Metodi e tecniche di correzione

Transcript of Lantialiasing nelle schede video Metodi e tecniche di correzione.

Page 1: Lantialiasing nelle schede video Metodi e tecniche di correzione.

L’antialiasing nelle schede video

Metodi e tecniche di correzione

Page 2: Lantialiasing 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

Page 3: Lantialiasing nelle schede video Metodi e tecniche di correzione.

Un esempio

Supponiamo di dover rasterizzare questo triangolo e consideriamo ogni quadratino con il punto rosso un singolo pixel

Page 4: Lantialiasing nelle schede video Metodi e tecniche di correzione.

Un esempio

Con un campionamento puntuale, si ottiene il seguente triangolo

Ed in arancione vengono evidenziati i pixel non considerati

Page 5: Lantialiasing nelle schede video Metodi e tecniche di correzione.

Un esempio

In verde si notano i pixel interamente accesi nonostante si trovino sul bordo della figura

In rosso viene evidenziato l’errore introdotto

Page 6: Lantialiasing nelle schede video Metodi e tecniche di correzione.

I metodi Antialiasing più utilizzati

Questi sono il Supersampling e il Multisampling

Consistono sostanzialmente nella suddivisione dei singoli pixel in più punti di campionatura

Page 7: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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”

Page 8: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 9: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 10: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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)

Page 11: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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)

Page 12: Lantialiasing nelle schede video Metodi e tecniche di correzione.

Caratteristiche principali

Jittered sampling:questa volta i punti di campionamento sono

distribuiti nuovamente in modo casuale ma all’interno del confine del singolo subpixel

Page 13: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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é

Page 14: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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)

Page 15: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 16: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 17: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 18: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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)

Page 19: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 20: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 21: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 22: Lantialiasing nelle schede video Metodi e tecniche di correzione.

I samples ATI

No Anti Aliasing Anti Aliasing 2x

Anti Aliasing 4x Anti Aliasing 6x

Page 23: Lantialiasing nelle schede video Metodi e tecniche di correzione.

I samples NVIDIA

ATI e NVIDIA utilizzano disposizioni simili per i salmples ma con angolazioni di rotazioni opposti (entrambi però utilizzano una griglia ruotata)

Page 24: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 25: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 26: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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.

Page 27: Lantialiasing nelle schede video Metodi e tecniche di correzione.

Il Temporal AntiAliasing

2x 2xTAA 4x 6x 6xTAA 8xSNVIDIA

Page 28: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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

Page 29: Lantialiasing nelle schede video Metodi e tecniche di correzione.

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