Condividi tramite


Illuminazione HDR (Direct3D 9)

L'illuminazione nel mondo reale contiene un intervallo dinamico molto elevato (HDR) di valori di luminanza. Il mondo reale ha circa 10 ordini di intervallo dinamico (DR) per i valori di luminanza distribuiti nello spettro delle tenebre alla luminosità. D'altra parte, una schermata computer ha un intervallo di visualizzazione molto limitato (o intervallo di valori di luminanza): circa due ordini di intervallo dinamico. La sfida di produrre immagini con rendering HDR consiste nel mappare i valori HDR reali nella gamma limitata di uno schermo del computer.

Il mapping dei toni è la tecnica utilizzata da DirectX per il mapping delle informazioni HDR in un intervallo più limitato. Il mapping dei toni applicato al rendering CGI può migliorare notevolmente la quantità di dettagli di illuminazione visualizzati, consentendo ai dettagli nelle aree più scure di essere viste e fornendo il contrasto nelle aree così luminose, appaiono bruciate. Le scene risultanti vengono eseguite con dettagli di illuminazione molto più visibili.

L'esempio DI HDRLighting è un esempio di SDK che illustra l'illuminazione HDR.

Mapping tono

Il mapping dei toni simula in genere fenomeni ottici che non possono essere causati dal ripristino di emergenza del monitoraggio. Esempi di questo sono razzi o fioriture (che sono principalmente proprietà di lenti), lo spostamento blu che si verifica nell'occhio umano in condizioni di bassa luce e altri adattamenti che sono un risultato della biochimica dell'occhio. Se il ripristino di emergenza del display era abbastanza grande, il mapping dei toni non sarebbe necessario, ad eccezione di fornire effetti artistici o alcune delle proprietà di un obiettivo della fotocamera o di un dispositivo di carica associato (CCD).

Il mapping dei toni divide l'intervallo di valori di luminanza in una scena in un set di zone. Ogni zona comprende un intervallo di valori di luminanza.

HDR usa i termini seguenti:

  • Zona - Intervallo di valori di luminanza
  • Grigio medio - area di luminosità centrale della scena
  • Intervallo dinamico: rapporto tra la luminanza più alta della scena e la luminanza più bassa della scena
  • Chiave - misurazione soggettiva dell'illuminazione della scena: questa varia da luce a moderata a scura

Per calcolare la luminanza dai valori RGB, usare questa procedura:

L = 0.27R + 0.67G + 0.06B;

La luminanza media del log è un'approssimazione utile per la chiave di una scena. Un'equazione generale è simile alla seguente:

Lw = exp[ 1/ N( sum[ log( delta + Lw( x, y ) ) ]

Dove:

  • Lw - luminanza media log
  • N - Numero di pixel nell'immagine
  • delta - un fattore piccolo per evitare problemi con pixel neri
  • Lw( x, y ) - la luminanza dello spazio mondiale per pixel ( x, y )

Per eseguire il mapping di questo valore a un valore grigio intermedio, ecco un operatore di ridimensionamento della luminanza:

L( x, y ) = a * Lw( x, y ) / Lw

Dove:

  • L( x, y ) - luminanza ridimensionata per pixel ( x, y )
  • a - Valore chiave immagine dopo aver applicato il ridimensionamento

Infine, ecco un semplice operatore di mapping dei toni per comprimere le luminazioni elevate:

Ld( x, y ) = L( x, y ) / ( 1 + L( x, y ) )

Dove:

  • Ld( x, y ) - luminanza compressa e ridimensionata per pixel ( x, y )
  • a - Valore chiave immagine dopo aver applicato il ridimensionamento

Questo operatore ridimensiona le luminazioni elevate di 1/L e le luminazioni basse di 1. Per altre informazioni, vedere il documento seguente.

Reinhard, Erik, Mike Stark, Peter Shirley e James Ferwerda. "Riproduzione del tono fotografico per le immagini digitali". ACM Transactions on Graphics (TOG), Proceedings of the 29th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH), pp. 267-276. New York, NY: ACM Press, 2002.

Argomenti avanzati