A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Iluminação e FotoRealismo

Apresentações semelhantes


Apresentação em tema: "Iluminação e FotoRealismo"— Transcrição da apresentação:

1 Iluminação e FotoRealismo
Integração de Monte Carlo Luís Paulo Peixoto dos Santos Iluminação e FotoRealismo

2 Competências GERAIS : Relacionar os vários métodos de iluminação global com o modelo geral sustentado pela equação de rendering, inferindo quais os fenómenos de iluminação modelados; Projectar, implementar e avaliar soluções para novos problemas de iluminação por recombinação de soluções conhecidas; Reconhecer as limitações funcionais e/ou de desempenho associadas a cada algoritmo de iluminação global; Específicas : Iluminação e Fotorealismo 2007/08

3 Motivação A equação de rendering não tem solução analítica
Os algoritmos de rendering calculam soluções numéricas aproximadas O domínio de integração (semiesfera) é discretizado e são seleccionadas amostras deste domínio discreto A contribuição de cada amostra é adicionada ao resultado final com um determinado peso, wi: o integral transforma-se numa soma A selecção de quais e quantas as direcções a amostrar e qual o peso wi de cada amostra determinam a qualidade e desempenho dos algoritmos de iluminação global Iluminação e Fotorealismo 2007/08

4 Ray Tracing Clássico O ray tracing clássico selecciona deterministicamente quais as direcções a amostrar com wi=1: ILUMINAÇÃO DIRECTA: Amostragem das fontes de luz, pois estas provavelmente correspondem a máximos da radiância incidente REFLEXÃO ESPECULAR: Amostragem da direcção de reflexão especular ideal, pois esta corresponde a um máximo da BRDF TRANSMISSÃO ESPECULAR : Amostragem da direcção de transmissão especular ideal, pois esta corresponde a um máximo da BRDF Iluminação e Fotorealismo 2007/08

5 Ray Tracing Clássico A selecção determinística de um número limitado de direcções de amostragem resulta em: Descontinuidades abruptas, principalmente as resultantes de efeitos de iluminação Simulação de um número limitado de efeitos de iluminação aliasing Iluminação e Fotorealismo 2007/08

6 Integração de Monte Carlo: Formulação
Objectivo: calcular o integral de no domínio D: O valor esperado de uma função aleatória é o valor médio da função, calculado sobre um conjunto de valores x pertencentes ao domínio da função e distribuídos com probabilidade p(x): O valor esperado de uma função é aproximado pela média de um número de amostras aleatórias - converge para o valor correcto quando o número de amostras se aproxima de infinito (Lei dos Grandes Números): Iluminação e Fotorealismo 2007/08

7 Integração de Monte Carlo: Formulação
Combinando estes dois resultados podemos construir um integrador numérico <I> para estimar o valor do integral: O integrador é com O integral pode ser estimado pelo somatório pesado de amostras de f(x) geradas aleatoriamente Iluminação e Fotorealismo 2007/08

8 Integração de Monte Carlo: Distribuição Uniforme
Este integrador numérico permite aproximar o valor do integral seleccionando estocasticamente pontos (amostras) no domínio da função! Se a distribuição de probabilidade usada para seleccionar os pontos de amostragem é uniforme, então todos os pontos têm a mesma probabilidade O integrador passa a ser: Iluminação e Fotorealismo 2007/08

9 Integração de Monte Carlo: Distribuição Uniforme
Valores para N=5 ξ xi f(xi) 0,31 1,92 3,92 0,59 2,76 4,76 0,61 2,82 4,82 0,09 1,26 3,26 0,15 1,45 3,45 1 2 3 4 5 6 7 8 9 f(x) Iluminação e Fotorealismo 2007/08

10 Integração de Monte Carlo: Semi-Esfera Uniforme
Amostragem Uniforme da Semi-Esfera O ângulo sólido da semi-esfera é 2π, logo p(ω)=1/ 2π Seleccionar as direcções aleatoriamente e seguir o raio com direcção φ θ Ψi Iluminação e Fotorealismo 2007/08

11 Monte Carlo ray tracing
Radiância reflectida por p na direcção ωr Radiância auto-emitida por p na direcção ωr Radiância reflectida por p na direcção ωr devida a iluminação directa Radiância reflectida por p na direcção ωr devida a iluminação indirecta Iluminação e Fotorealismo 2007/08

12 Monte Carlo ray tracing
Iluminação e Fotorealismo 2007/08

13 Monte Carlo path tracing
Para cada pixel gerar N raios primários cujas direcções são seleccionadas estocasticamente sobre a área do pixel As contribuições destes raios são integradas usando o integrador de Monte Carlo para calcular o valor daquele pixel Quando um raio intersecta um objecto: Calcular iluminação directa disparando shadow rays Seleccionar estocasticamente uma única direcção de amostragem na semi-esfera Iluminação e Fotorealismo 2007/08

14 Monte Carlo path tracing
Iluminação e Fotorealismo 2007/08

15 Monte Carlo path tracing
for each pixel p on the image plane { i=0 for (i=0 ; i<N ; i++) ray = select_dir_stochastically (p, pdf, &prob) rad[p] += path_trace (ray, 0) / prob rad[p] /= N; } path_trace (ray, depth) { point = intersect (ray, scene) rad = direct_lighting (point) // trace shadow rays if (depth < MAX_DEPTH) sec_ray = select_dir_stochastically (p, pdf, &prob) rad += BRDF * path_trace (sec_ray, depth++) * cos(θ) / prob return (rad) Iluminação e Fotorealismo 2007/08

16 Integração de Monte Carlo : Variância
O processo estocástico introduz variância, percepcionada como ruído Cornell box Path Tracing 1spp; 4.3 seg A variância varia com 1/N, o desvio padrão com 1/N2 Para reduzir o ruído a metade, precisamos de 4 vezes mais amostras (N*4) Iluminação e Fotorealismo 2007/08

17 Integração de Monte Carlo : Variância
Cornell box Path Tracing 1spp; 4.3 seg Cornell box Path Tracing 4spp; 17,5 seg Cornell box Path Tracing 16spp; 71.7 seg Cornell box Path Tracing 512spp; seg Iluminação e Fotorealismo 2007/08

18 Integração de Monte Carlo
Redução da variância Aumento do número de amostras Amostragem Estratificada Amostragem por Importância Iluminação e Fotorealismo 2007/08

19 Integração de Monte Carlo: estratificação
As amostras podem ser melhor distribuídas no domínio se este for subdividido em subdomínios disjuntos (strata) e o integral calculado separadamente em cada estrato 1 2 3 4 5 6 f(x) m=0 m=1 m=2 Iluminação e Fotorealismo 2007/08

20 Integração de Monte Carlo: estratificação
Valores para m=N=5 (1 sample per stratum) ξ αj xi f(xi) 0,97 1 1,43 3,43 0,23 1,6 2,18 4,28 0,85 2,2 2,63 4,63 0,36 2,8 2,98 4,98 0,19 3,4 3,66 5,66 1 2 3 4 5 6 f(x) Nota: I=13,5 e <I>=12.12 com uniforme Iluminação e Fotorealismo 2007/08

21 Integração de Monte Carlo: estratificação
Amostragem Estratificada da SemiEsfera O ângulo sólido da semiesfera é 2π, logo p(ω)=1/ 2π Seleccionar as direcções com M strata em θ e N strata em ψ: O integrador é: Iluminação e Fotorealismo 2007/08

22 Integração de Monte Carlo: importância
Distribuição de probabilidade uniforme : para seleccionar as amostras não é usada informação acerca do integrando, f(x); Algumas partes de f(x) contribuem mais para o valor do integral: aquelas onde o valor de f(x) é maior; Se p(x) tem uma forma similar a f(x), então as amostra ficarão localizadas, com maior probabilidade, nas partes mais importantes do domínio. 1 2 3 4 5 6 f(x) p(x)=1/3 Amostragem Uniforme 1 2 3 4 5 6 f(x) p(x)=2x/15 Amostragem por Importância Iluminação e Fotorealismo 2007/08

23 Integração de Monte Carlo: importância
Valores para N=5 ξ xi p(xi) f(xi) 0,82 3,64 0,49 5,64 0,39 2,63 0,35 4,63 0,80 3,60 0,48 5,60 2,86 0,38 4,86 0,72 3,45 0,46 5,45 1 2 3 4 5 6 f(x) Nota: I=13,5 e <I>=12.12 com uniforme Iluminação e Fotorealismo 2007/08

24 Integração de Monte Carlo: importância
Integrando é um produto: seleccionar um dos factores. Cosine Weigthed Importance Sampling: Iluminação e Fotorealismo 2007/08

25 Monte Carlo: bias Quando parar a emissão de raios secundários (path length)? Usar uma profundidade máxima fixa Quando a contribuição esperada de um raio é inferior a um dado limite Estes são métodos determinísticos que afectam o valor do integral (bias)! not biased biased Iluminação e Fotorealismo 2007/08

26 Monte Carlo: roleta russa
Definir a probabilidade α de terminar a travessia (não disparar um raio secundário) Antes de disparar um raio gerar um número aleatório, ξ, uniformemente distribuído em [0, 1[ Se ξ <= α então não disparar o raio Se ξ > α então disparar o raio Uma vez que há uma probabilidade α de não disparar um raio, a contribuição dos raios disparados deve ser multiplicada por 1/(1- α), para compensar aqueles que não são disparados Iluminação e Fotorealismo 2007/08

27 Monte Carlo: roleta russa
for each pixel p on the image plane { i=0 for (i=0 ; i<N ; i++) ray = select_dir_stochastically (p, pdf, &prob) rad[p] += path_trace (ray) / prob rad[p] /= N; } path_trace (ray) { point = intersect (ray, scene) rad = direct_lighting (point) // trace shadow rays if (ξ > α) sec_ray = select_dir_stochastically (p, pdf, &prob) rad_incident = path_trace (sec_ray) / ( prob * (1 – α)) rad += BRDF * rad_incident * cos(θ) return (rad) Iluminação e Fotorealismo 2007/08

28 Integração de Monte Carlo
Radiância reflectida por p na direcção ωr Radiância auto-emitida por p na direcção ωr Radiância reflectida por p na direcção ωr devida a iluminação directa Radiância reflectida por p na direcção ωr devida a iluminação indirecta Iluminação e Fotorealismo 2007/08

29 Integração de Monte Carlo: iluminação directa
Nota: apenas são consideradas contribuições que tenham origem directamente nas fontes de luz Abordagem 1 – Iterar sobre todas as fontes de luz e tirar NLi amostras de cada: Iluminação e Fotorealismo 2007/08

30 Integração de Monte Carlo: iluminação directa
A selecção das amostras ωi pode ser feita usando distribuição uniforme ou estratificada ou amostragem por importância sobre o ângulo sólido definido pela fonte de luz, ωLi ωLi Iluminação e Fotorealismo 2007/08

31 Integração de Monte Carlo: iluminação directa
Abordagem 2 – Seleccionar com probabilidade p=1/NLi uma fonte de luz e amostrar apenas essa. A sua contribuição é, obviamente, dividida pela sua probabilidade: Em vez de seleccionar a fonte de luz com probabilidade uniforme podem-se usar outras distribuições. Exemplo: baseada na potência, área e distância da fonte de luz. Iluminação e Fotorealismo 2007/08

32 Integração de Monte Carlo: iluminação indirecta
Nota: apenas são consideradas contribuições que não tenham origem directamente nas fontes de luz. A selecção de quais as direcções da semi-esfera a amostrar é vulgarmente baseada em: Amostragem estratificada Amostragem por importância baseada na distribuição do cosseno Amostragem por importância baseada na forma da BRDF Neste caso é necessário derivar uma distribuição da probabilidade que tenha uma forma semelhante à da BRDF Iluminação e Fotorealismo 2007/08

33 Path Tracing: limitações
Para algumas condições de iluminação a maioria dos trajectos gerados NUNCA encontram as fontes de luz: a sua contribuição será ZERO Os poucos trajectos que encontram a fonte de luz são os únicos que contribuem para o valor do pixel, resultando em grande variância (ruído) Iluminação e Fotorealismo 2007/08

34 BiDirectional Path Tracing
q1 q2 q3 Gerar caminho a partir do observador Gerar caminho a partir da fonte de luz Unir os 2 caminhos e pesar a contribuição de cada ql para cada pi p1 p2 p3 Iluminação e Fotorealismo 2007/08


Carregar ppt "Iluminação e FotoRealismo"

Apresentações semelhantes


Anúncios Google