1 / 34

Iluminação e FotoRealismo

Integração de Monte Carlo Luís Paulo Peixoto dos Santos. Iluminação e FotoRealismo. Competências. Específicas :. 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;

mahala
Download Presentation

Iluminação e FotoRealismo

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Competências Específicas : 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; 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. RayTracing Clássico Iluminação e Fotorealismo 2007/08 • O raytracing 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

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

  6. Integração de Monte Carlo: Formulação • Objectivo: calcular o integral de no domínioD: • O valor esperado de umafunçãoaleatória é o valor médio da função, calculadosobre um conjunto de valoresx pertencentesaodomínio da função e distribuídos com probabilidadep(x): • O valor esperado de umafunção é aproximadopelamédia de um número de amostrasaleatórias - converge para o valor correctoquando o número de amostras se aproxima de infinito (Lei dos GrandesNúmeros): Iluminação e Fotorealismo 2007/08

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

  8. Integração de Monte Carlo: Distribuição Uniforme • Esteintegradornuméricopermiteaproximar o valor do integral seleccionandoestocasticamentepontos (amostras) no domínio da função! • Se a distribuição de probabilidadeusadaparaseleccionarospontos de amostrageméuniforme, entãotodosospontostêm a mesmaprobabilidade • O integradorpassa a ser: Iluminação e Fotorealismo 2007/08

  9. 9 8 7 f(x) 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 Integração de Monte Carlo: Distribuição Uniforme Valores para N=5 Iluminação e Fotorealismo 2007/08

  10. Integração de Monte Carlo: Semi-Esfera Uniforme 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 Amostragem Uniforme da Semi-Esfera

  11. Monte Carloraytracing Radiância reflectida por p na direcção ωr devida a iluminação directa 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 indirecta Iluminação e Fotorealismo 2007/08

  12. Monte Carloraytracing Iluminação e Fotorealismo 2007/08

  13. Monte Carlopathtracing Iluminação e Fotorealismo 2007/08 • Para cada pixel gerar N raios primárioscujas direcções são seleccionadasestocasticamente 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 shadowrays • Seleccionar estocasticamente uma únicadirecção de amostragem na semi-esfera

  14. Monte Carlopathtracing Iluminação e Fotorealismo 2007/08

  15. Monte Carlopathtracing Iluminação e Fotorealismo 2007/08 for each pixel pontheimage 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 shadowrays if (depth < MAX_DEPTH) sec_ray = select_dir_stochastically (p, pdf, &prob) rad += BRDF * path_trace (sec_ray, depth++) * cos(θ) / prob return (rad) }

  16. Integração de Monte Carlo : Variância • O processo estocásticointroduz variância, percepcionada como ruído Cornell box PathTracing 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 PathTracing 4spp; 17,5 seg Cornell box PathTracing 1spp; 4.3 seg Cornell box PathTracing 16spp; 71.7 seg Cornell box PathTracing 512spp; 2294.4 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 f(x) 6 m=1 m=0 m=2 5 4 3 2 1 0 1 2 3 4 5 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 Iluminação e Fotorealismo 2007/08

  20. Integração de Monte Carlo: estratificação f(x) Valores para m=N=5 (1 sampleperstratum) 6 5 4 3 2 1 Nota: I=13,5 e <I>=12.12 com uniforme 0 1 2 3 4 5 Iluminação e Fotorealismo 2007/08

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

  22. Integração de Monte Carlo: importância f(x) f(x) 6 6 5 5 p(x)=2x/15 4 4 3 3 p(x)=1/3 2 2 1 1 Amostragem Uniforme Amostragem por Importância 0 0 1 1 2 2 3 3 4 4 5 5 Distribuição de probabilidadeuniforme : paraseleccionar as amostrasnão é usadainformaçãoacerca 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. Iluminação e Fotorealismo 2007/08

  23. Integração de Monte Carlo: importância f(x) Valores para N=5 6 5 4 3 2 1 Nota: I=13,5 e <I>=12.12 com uniforme 0 1 2 3 4 5 Iluminação e Fotorealismo 2007/08

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

  25. Monte Carlo: bias Iluminação e Fotorealismo 2007/08 • Quando parar a emissão de raios secundários (pathlength)? • 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)!

  26. Monte Carlo: roleta russa Iluminação e Fotorealismo 2007/08 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

  27. Monte Carlo: roleta russa Iluminação e Fotorealismo 2007/08 for each pixel pontheimage 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 shadowrays if (ξ > α) sec_ray = select_dir_stochastically (p, pdf, &prob) rad_incident = path_trace (sec_ray) / ( prob * (1 – α)) rad += BRDF * rad_incident * cos(θ) return (rad) }

  28. Integração de Monte Carlo 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 Radiância reflectida por p na direcção ωr Radiância auto-emitida por p na direcção ωr 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 ωLi Iluminação e Fotorealismo 2007/08 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

  31. Integração de Monte Carlo: iluminação directa 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. 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: Iluminação e Fotorealismo 2007/08

  32. Integração de Monte Carlo: iluminação indirecta • 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 Nota: apenas são consideradas contribuições que não tenham origem directamente nas fontes de luz. Iluminação e Fotorealismo 2007/08

  33. PathTracing: 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. BiDirectionalPathTracing q1 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 q3 p3 q2 p2 p1 Iluminação e Fotorealismo 2007/08

More Related