Come funziona l'antialiasing con sovracampionamento?


0

Dalla lettura online capisco l'idea di base di come funziona l'antialiasing con sovracampionamento, rende la scena con una risoluzione più alta rispetto a quella visualizzata dall'utente, utilizza i pixel extra per calcolare una media e poi sottocampionarla.

Tuttavia, non capisco bene come funzioni in pratica. Ad esempio, se c'è un pixel rosso di un muro accanto a un pixel blu di un cielo, quando la scena viene renderizzata x2 SSAA, il pixel rosso non sarà più solo quattro pixel rossi e lo stesso con il pixel del cielo blu, come aiuta questo nel calcolo di una media.

I quattro nuovi pixel rossi sono sovrapposti all'immagine originale, in questo modo otterresti una combinazione di pixel rossi e blu e sarai in grado di calcolare una media per facilitare la transizione tra il muro e il cielo?

Qualsiasi aiuto sarebbe apprezzato.


Ovviamente, se si scala e si riduce il risultato sarebbe lo stesso, ma viene caricata una trama più alta, ovvero: il pixel rosso in realtà , ad alta risoluzione sono 4 diversi colori di rosso e quindi si otterrà un risultato diverso .
Larkey,

Risposte:


2

Aiuta molto. Nel tuo esempio originale:

... Rosso Rosso Rosso Blu Blu Blu ...

Il confine tra rosso e blu sembra un caso di scale

Nell'immagine sottocampionata

... Rosso Rosso Rosso Rosso Blu Blu Blu ...

Mentre effettuiamo il downsample

... Rosso] [Rosso Rosso] [Rosso Blu] [Blu Blu] [Blu ...

Ora abbiamo un pixel che è rosso e blu in media insieme, sfocando il confine tra le regioni rossa e blu.

Se immagini un confine diagonale tra due regioni, rosso e blu, il sovracampionamento inserirà pixel intermedi ai bordi del gradino della scala poiché molte delle caselle 2x2 includono necessariamente pixel rossi e blu al loro interno.

inserisci qui la descrizione dell'immagine


Ciao @ David, grazie per la risposta. Devo essere un idiota perché non lo capisco ancora del tutto. Quando il pixel viene ingrandito di quattro volte rispetto alle dimensioni (con 2x SMAA), gli altri 3 pixel del nuovo sqaure 2x2 hanno tutti lo stesso colore del pixel originale?
RJSmith92,

@ RJSmith92 Il pixel non è aumentato. Si verifica solo il downscaling. Considera una linea diagonale, sovrapponi caselle 2x2, è necessario che alcune caselle contengano pixel su entrambi i lati della linea.
David Schwartz,

Grazie @ David, questo ha più senso. Quando guardo online tutte le spiegazioni dicono che l'immagine è resa ad una risoluzione più alta, non sono abbastanza sicuro di come questo si lega al processo che hai descritto?
RJSmith92,

1
Giusto. L'immagine viene renderizzata con una risoluzione più elevata e quindi ridimensionata. Non c'è upscaling.
David Schwartz,

OK, quindi un pixel sarà rappresentato da quattro pixel quando l'immagine viene renderizzata con una risoluzione più alta (usando x2). Il colore medio di quei quattro pixel calcolato e quindi utilizzato per un pixel quando viene ridimensionato?
RJSmith92,

2

Bene, proverò a spiegarlo, perché ho già usato metodi come questo prima di lavorare con le foto, per applicare alcuni degli algoritmi di "smoothing" alle foto o alle foto a bassa risoluzione, senza ottenere un smoothing molto ampio.

va qualcosa del genere.

Ecco i tuoi pixel con la solita risoluzione in cui ti aspetteresti. In un disperato bisogno di anti-aliasing o smoothing i jaggies.
aliasing

Da un lato qui abbiamo ridimensionato l'immagine a 4X quindi applicato lo stesso algoritmo di antialiasing Alto e basso

È importante notare che come uno stupido computer, non posso semplicemente piegare il nero al bianco (cambiando la quantità di bianco), ma devo anche piegare il bianco al nero (bilanciando l'equazione :-). Sto applicando una matrice matematica alla cieca dove mi è stato detto di applicarla. Sebbene gli algoritmi della scheda video siano molto sofisticati e in realtà non sono così ciechi come questo.

Esempio osservabile di equilibrio nei giochi, non vorrai che la tua recinzione scompaia nel cielo e non vuoi che il tuo cielo diventi la recinzione, quindi qualsiasi regolazione deve essere applicata sia ai pixel del cielo che ai pixel della recinzione in modo più equo. Anche un esempio dei modi in cui le schede video e i motori di gioco sconvolgono questo equilibrio per ottenere un'immagine migliore andando ancora con quel tipo di dettagli difficili.

Ad un certo punto tutto questo deve tornare alla risoluzione del display, dove sarà la risoluzione più bassa, e dopo avere una vasta gamma di elementi da regolare, quel gruppo extra di pixel verrà ora perfettamente miscelato in meno pixel.
(beh non era il colore perfetto per quella sfumatura, ma non ho fatto i conti) Torna a bassa risoluzione E come puoi vedere, sembra di nuovo terribile nella risoluzione del display.

Sul lato a bassa risoluzione abbiamo questa vasta area modificata / modificata mentre pieghiamo tutti questi pixel l'uno verso l'altro (sia il nero che il bianco) e abbiamo un'enorme striscia di livellamento perché stavamo lavorando solo a bassa risoluzione.

Sul nostro lato ad alta risoluzione abbiamo invece ottenuto un perfetto set di bilanciamento di pixel mescolando pixel 4X che rende un'area di levigatura più piccola. quindi il lato ad alta risoluzione trova i pixel che renderebbero tutto molto carino, ma non lascia un gran casino confuso.

Perché (di nuovo) dobbiamo piegare molti più pixel, per mantenere il bilanciamento della fusione l'uno con l'altro, se prima abbiamo ingrandito possiamo creare questa fusione di piegatura su una scala più piccola, mantenendo comunque il bilanciamento della piegatura l'una con l'altra e il risultato finale è pixel meno influenzati, lo stesso nascondiglio jaggie.

Quando si confrontano i 2 metodi fianco a fianco usando i giochi, la differenza che si ottiene con quello che sembra un sacco di lavoro extra non è poi così tanto. La stessa cosa quando elaboro foto che verranno utilizzate a bassa risoluzione, è un grande sforzo per me e per la macchina, ei risultati sono appena migliori.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.