Iluminação Global Rastreamento de Raios Estocástico “Those Were the Days” “In trying to improve the quality of the synthetic images, we do not expect to be able to display the object exactly as it would appear in reality, with texture, overcast shadows, etc. We hope only to display an image that approximates the real object closely enough to provide a certain degree of realism.” – Bui Tuong Phong, 1975 L I s (cos ) nsh in y n shiny Novas demandas Física da luz • Modelo de ondas – Óptica geométrica • Modelo quântico Energia de um photon: ef h f h = constante de Planck (6.62610-34 J.s) f = freqüência (Hz) [ c = f m/s] c = velocidade da luz (2.997925108 m/s) Energia e Fluxo Radiante 1 fótom com comprimento de onda : n fótons com comprimento de onda : e h c Q n e n h c [J/nm] Energia radiante: Q Q d 0 Fluxo radiante: dQ dt [J] [J/s=Watts] Revisão: Três conceitos básicos importantes • área aparente • ângulo sólido • luminosidade vs. radiação Área aparente (foreshortening) Uma área A vista de um ângulo é equivalente a uma área menor, A cos, tanto para emitir quanto para receber radiação luminosa. n θ A A A cos Ângulo sólido l r (rad ) l r a α r esfera círculo 02 (rad ) a 2 r (esfero radianos) 04 str Ângulo sólido em coordenadas polares Ângulo sólido em coordenadas polares r sin d r d (height )( width ) d r2 (rd )( r sin d ) d r2 r d d sin d d Ângulos de elementos infinitesimais dl r d cos dl r n cos dl (rad ) dA cos d r2 (esfero radiano) Luminosidade vs. Radiação: sensibilidade dos cones do olho humano olho humano: cones (SML) e bastonetes (cegos para cor) .20 fração de luz absorvida por cada cone .18 m( ) .16 ( ) .14 .12 .10 .08 .06 .04 .02 0 400 380 nm s ( ) 440 480 520 560 600 comprimento de onda (nm) 640 680 780 nm Luminosidade vs radiação sensibilidade relativa 100% Fração da luz absorvida pelo olho 50% 0% 380 430 480 530 580 630 680 730 780 (nm) Luminous efficacy – the efficiency of a light source in producing visible light, expressed in lumens per Watt. Note – the Watts can be measured as a radiometric quantity or at the electrical source. The distinction is generally specified. Radiometria “Newcomers to light measurement are often bewildered by the galaxy of arcane terms which surround it. To make matters worse, some of these terms (the worst offender is probably “intensity”) are common words that often carry different meanings in other, even closely related, fields .” Sunrise Instruments, LLC http://www.sunriseinstruments.com/radiometry.html Potência Radiante • Energia total emitida por/que atravessa/incide em uma superfície por unidade de tempo. • Unidade: Watt (W) = Joules/segundo (J/s) Exemplos: Sol: Corpo negro: Sol 3.9110 Watt 2 C1 5 C ( T ) (e 1) 26 2 Irradiancia (irradiação?) ou iluminação Irradiance – flux per unit area impinging onto a surface. The radiometric unit is “watts per square meter; ” the photopic unit is “lumens per square meter” or, equivalently, “lux”. Note – the term “irradiance says nothing about the direction at which light strikes the surface. Illuminance – photopic irradiance. The unit is “lumens per square meter”, or, equivalently, “lux”. fluxo [ Watts ou Lumens] d p dA d E (p) dA W ou lum ens lux m2 m 2 E (p) dA A Radiosidade • Potência radiante emitida por uma superfície, por unidade de área d p dA fluxo [ Watts ou Lumens] d B(p) dA W m2 lum ens lux m 2 Radiancia ou Luminância d 2 L dA d d p d dA W m 2 sr lum ens lux m 2 sr sr L(p ) recebida L(p ) em itida L(p ) L(p ) no espaço Radiancia ou Luminância d 2 L dA d d p dA Radiance – the amount of flux radiated by a projected area of surface per steradian of solid angle. The radiometric unit is “watts per square meter per steradian”; Luminance – photopic radiance. The unit is “lumens per square meter per steradian” or, equivalently, “candela per square meter”. Radiancia ou luminosidade numa superfície d L dA d 2 d 2 L(p, , ) dAcos d d 2 L(p, , ) cos dAd d 2 L(p, , ) cos sin dAd d L(p, , ) cos sin dAd d A H2 Radiosidade Radiancia d B(p) dA nˆ d L(p, , ) dAcos d d B(p) L(p, , ) cos d dA ' / 2 2 L(p, , ) cos sin d d 0 0 B(p) L(p, ' )(nˆ ' ) d Radiosidade de refletores lambertianos • Na radiosidade clássica, a reflexão é perfeitamente lambertiana, isto é, espalha luz incidente uniformemente em todas as direções – A radiância L (p, θ, ) de um ponto p não depende da direção e pode ser escrita mais simplesmente como L(p) – A radiosidade B(p) pode ser então ser escrita como: / 2 2 B(p) L (p) cos sin d d o 0 0 / 2 2 L(p) cos sin d d L(p) 0 0 Esperança e Cavalcanti UFRJ Fluxo Radianate de um Emissor Difuso Uniforme L(p, , ) L d L dAcos d d L(p, , ) L dAcos d L dAcos d 2 2 A L dA cos d LA cos sin d d A 2 0 0 sin 2 LA d sin cos d LA2 2 0 0 0 2 L A BA 2 AL L A Radiância do sol Rsol 6.95108 m 3.911026 Watt ( A 4 R 4 6.9510 2 ) 8 2 6.071018 m2 supondo uniforme 3.911026Watt 7W L(sol) 2 . 05 10 str m2 A 6.071018 m2 ( str ) ( ) Irradiação do Sol na Terra e em Marte Terra vácuo Marte Sol s E(p) L(p, ' )(nˆ ' ) d 12:00 h nˆ ' 1 E(p) Lsol d Lsol s Ângulos sólidos na Terra e no Sol s Adisco solar cos d2 2 r 2 d2 Terra 2 r 2 2 (6.95108 ) 2 8 1.35 10 srd 2 11 2 d (1.5 10 ) Marte 2 r 2 2 (6.95108 ) 2 8 0.584 10 srd 2 11 2 d (2.2810 ) E(pTerra ) 2.3E(p Marte ) Que medida física da luz corresponde a “intensidade rgb”? Modelo de câmera pinhole nˆ c dAc dAp nˆ p radiância dos pontos visíveis na direção da câmera irradiação sobre o pixel Câmeras e olhos humanos são sensíveis a radiância Câmeras reais Ri ds d dAi dL lens f Image Irradiance: E n Rs d i image plane dAs scene z Scene Radiance: L Câmeras com lentes dAc c α O dAp (área correspondente p a dAc) d E dAp Radiancia emitida por c na direção de p dAc c Ω d α O dAp p d L(c)(dAc cos ) dAC d E (p) L(c) cos dAp dAp Ângulo sólido dAc c 2 1 d 2 cos 4 r Ω r α d O Zˆ cos d 4 Zˆ 2 3 2 Relação entre as áreas dAc c dAc cos o 2 ˆ Z cos Ωo α O Ωi dAp p Zˆ i zˆ 2 dAp cos 3 zˆ 2 dAc cos cos Zˆ 2 2 dAp cos ( cos ) zˆ dAc Zˆ cos dAp zˆ cos 2 Irradiação sobre o sensor dAc E (p) L(P) cos dAp dAc P 3 cos 2 d 4 Zˆ 2 d α O d d 1 ˆ dAc Z cos zˆ F dAp zˆ cosf 2 dAp Zˆ zˆ p Zˆ 2 cos 2 cos3 E (p) L(c) d cos ˆ 2 ˆ Z z cos 4 quando foco no ∞ d 2 4 E (p) L(c) cos 4 zˆ Irradiação (irradiância) no sensor da câmera é proporcional a: d 2 4 E (p) L(c) cos 4 zˆ • radiância do objeto da cena; • área da lente; • variação do cos4 Equipamento utilizado Creative WebCam Pro 640x480 (VGA) color CMOS Sensor USB 1.1 Interface = arc tg (0,9/2,0) = 24o 1,8m 2,0m cos4 = 0,7 Calculou-se, segundo as proporções de captura sobre as quais foram geradas as imagens da tela, o ângulo . Foi possível verificar que a iluminação nos pontos da tela decresce proporcionalmente a cos4. P1 • 0,7 R=53 G=67 B=115 0,7 P1 R=75 G=95 B=165 P1 – pixel no centro da tela P2 – pixel no canto da tela, na horizontal de P1 P2 R=55 G=70 B=110 Sem correção Com correção radiométrica Sem correção Com correção radiométrica Sem correção Com correção radiométrica Sem correção Com correção radiométrica Estudo da Radiância Propriedades da Radiância • Radiância é invariante em uma linha reta nˆ y y L(x y) L(y x) y dAy nˆ x x x dAx rxy A radiância que sai de x em direção a y é igual a radiância que chega em y vindo de x. (se o meio não interfere) prova: • potência emitida de dAx para dAy d 2(x y) L(x y) cos x dAx dxdAy nˆ y y y dAy nˆ x x rxy x dxdAy dAy cos y dAx d (x y) L(x y) 2 rxy2 cos x cos y 2 xy r dAx dAy prova: (cont.) • potência recebida em dAy vinda de dAx d 2(y x) L(y x) cos y dAy dydAx nˆ y y y dAy nˆ x x rxy x d y dAx dAx cos x rxy2 d (y x) L(y x) 2 cos x cos y 2 xy r dAx dAx dAy d 2(y x) d 2(x y) L(x y) cos x cos y 2 xy r dAx dAy L(y x) cos x cos y 2 xy r dAx dAy L(y x) L(x y) Radiância de uma superfície Fluorescência: freqüência diferente Fosforescência: freqüência diferente e significativamente mais tarde da absorção Radiância de uma superfície (2) Modelagem de pele Images from Jensen et. al, SIGGRAPH 2001 Simplificação: emite no mesmo ponto, tempo e freqüência dL(p o ) nˆ dE(p i ) L(p i )(nˆ i )di o i p dωi BRDF: Bidirectional Reflectance Distribution Function f r : M H 2 H 2 0 constante (experimentalmente) dL(p o ) (sr -1) fr dE(p i ) dL(p o ) L(p i )(nˆ i )di BRDF – Bidirectional Reflectance Distribution Function (em coordenadas esféricas) Lo Li θi p i dω dLo (p, o , o ) f r (p, o , o ,i , i ) Li (p,i , i ) cosi di (sr -1) Modelos para a BRDF Medidas de modelos reais Images from Marc Levoy Tipos de efeitos modelados Plastico vs Metal Anisotropia Lo θi p Ei i Materiais Fisicamente Plausíveis • Reciprocidade • Conservação de energia Reciprocidade Fonte de luz detector detector Fonte de luz Conservação de Energia • Tomando Cálculo da radiância refletida em uma direção nˆ x L(p ) Lr (p ) p L(p ) d f (p, ) L (p ) cos( nˆ r H2 r x , )d Radiância que chega no sensor ye ze eye Câmara L(x e ye) xe yo h(p) L pixel xo zo L(p eye )h(p)dp L(x eye )h(p)dp plano da imagem plano da imagem Equação de renderização L(x ) Le (x ) Lr (x ) L(x ) Le (x ) L (x ) f (x, ) cos(nˆ r H2 r x , )d Integração de Monte Carlo b 1 n f ( xi ) E[ I ] n i 1 p( xi ) I f ( x ) dx a 1 1 n I f ( x)dx f ( xi ) n i 1 0 xi - variável aleatória uniforme [ p(xi) = 1 ] f(x) 0 1 x Exemplo de MC f ( x) 2 sin( x 2 ) 2 1 0 1 1 1 f ( x)dx 2 sin( 0 0 x 2 4 )dx cos( x 1 4 ) 1.273 2 0 Exemplo de MC p( y ) 2 y 2 CDF ( x) x 1 p ( x) 1 CDF ( y) y 2 0 1 2 4 f ( x)dx 0 1.273 0 1 Estimativa da reflexão local Lr (x ) L (x ) f (x, ) cos( nˆ r r x , )d H2 1 N Lr (x i ) f r (x, i ) cos(nˆ x , i ) Lr (x ) N i 1 p(i ) Lr (x i ) Lr (r (x, i ) i ) i Lr (x ) i x r (x, i ) Rstreamento de Raios Estocástico x Probabilidade Uniforme da Semi-Esfera P{ } p()d p( )d 1 p( ) c 2 cos1 (u1 ) 2 u2 1 p( ) 2 c d 1 2 … u1 e u2 são duas variáveis aleatórias em [0,1] 1 c 2 Uma Arquitetura para Síntese de Imagens Fotorrealistas Baseada em Técnicas de Monte Carlo Otávio de Pinho Forin Braga Reflexão Local • Sabemos que • Integrando sobre o hemisfério superior • BRDF define operador de reflexão Reflexão Local Formulação por Área é a função de visibilidade Emissão de Luz • Gerada por inúmeros processos: – – – – – Incandescência Quimiluminescência Fluorescência Fosforescência Etc... • Nos interessa apenas a distribuição resultante • Definida em A Equação do Transporte da Luz • Emissão independente da reflexão • Expandindo o operador de reflexão: Expansão em Série de Neumann • Convergência garantida pela conservação de energia Integral de Caminhos onde Integral de Caminhos Integral de Caminhos Primeira Aproximação • Resta ainda saber como calcular cada termo • Integral de dimensão arbitrariamente grande Primeira Aproximação (Recapitulando...) • Resta ainda saber como calcular cada termo • Integral de dimensão arbitrariamente grande Solução para a ETL por Integração de MC • Calculamos cada termo por integração de MC • Geramos n caminhos • Estimador Amostrando Caminhos • Devemos priorizar a escolha dos caminhos mais importantes • Fazer isso de maneira global é difícil • Construir caminhos com decisões locais Caminhos como Cadeias de Markov (Kajiiya 86) • Construção incremental partindo de • Em cada , escolhemos probabilidade • Distribuição dos caminhos com Construindo os Caminhos • Dado um vértice , como escolher ? Transições Internas • Caminhos geometricamente impossíveis Transições Internas • Amostrar direção • Automaticamente amostramos por importância Transições Internas • Densidade em relação ao ângulo sólido • Novo estimador: Transição final Transições internas Amostrando BRDFs Transição Final Problema puramente geométrico Amostrando Uma Fonte Amostragem Amostragem Amostragem uniforme uniforme por uniforme ângulo por ângulo por sólido área sólido projetado Amostrando Várias Fontes • n fontes de luz • Escolhemos uma das fontes com probabilidade qi • Ponderamos o estimador i por 1/qi • Caso mais simples: qi = 1/n • qi igual à fração da potência da fonte i Roleta Russa • Problemas: – Gastamos mais tempo nos termos menos importantes – Onde truncar a série? Roleta Russa • Evitar aleatoriamente a avaliação do resto da soma • Podemos fazer isso a cada passo • n pode ser arbitrariamente grande Consideração sobre Eficiência Reutilização de Prefixos • Introduz correlação entre os termos • Aumento na variância • Mas calculamos mais caminhos em um dado tempo O Ciclo de Amostragem do Filme O Núcleo da Geometria Estratégias para Calcular a Radiância Implementam uma estratégia em computeRadiance(ray) BRDF spectrum evaluate(vector wi, vector wo); spectrum sample(vector wo, vector *wi, float *pdf); float pdf(vector wo, vector wi); Fontes de Luz • Toda primitiva pode ser emissora • Coleção das primitivas emissoras na cena • Permite que amostremos somente as fontes • Esforço principal está nas primitivas geométricas: vector sample(point p, float *pdf, ray *r); vector sample(point p, vector n, float *pdf, ray *r); Resultados Iluminação Iluminação global direta Resultados 1 amostra por pixel 10 amostras por pixel 100 amostras por pixel Resultados 25 amostras por pixel 81 amostras por pixel 1000 amostras por pixel 512x512 ~ 5h 30 min Resultados Geometria complexa ~ 900 mil triângulos ~ 3 min Resultados FIM