280 likes | 427 Views
Fundamentos de Computação Gráfica Prof. Marcelo Gattass. Espectro de LUZ e Modelos de Reflexão. Guilherme Schirmer de Souza. Introdução.
E N D
Fundamentos de Computação Gráfica Prof. Marcelo Gattass Espectro de LUZ e Modelos de Reflexão Guilherme Schirmer de Souza
Introdução • O objetivo dessa apresentação é fazer uma breve descrição teórica do primeiro trabalho da disciplina de Fundamentos de Computação Gráfica além de mostrar os resultados obtidos. • O Trabalho consistia em através de um determinado espectro de luz mostrar os diversos tipos de reflexão em um determinado objeto.
Espectro de luz e Sistema de Cor • Fisicamente a cor é produzida por uma radiação eletromagnética cujo comprimento de onda está na faixa visível (entre 380 nm e 800 nm aproximadamente). Devido aos diversos tipos de radiação, a CIE, criou tipos padrão de iluminantes, como o Iluminante C e o Iluminante D65, para representar algumas das diferentes fontes de iluminação que existem. O Iluminante D65 (CIE D65), por exemplo, representa a luz do dia (vide Figura 1).
2 1 0 380 480 580 680 780 Figura 2 Figura 1 Além disso, a CIE criou o sistema CIE-XYZ de cores, para poder representar as cores visíveis do espaço. Tal sistema é baseado em três dimensões (sensores) devido ao fato do sistema visual humano possuir moléculas fotossensíveis de amostragem nas faixas Vermelho, Verde e Azul (vide Figura 2).
Para calcular a cor XYZ de um espectro utiliza-se as seguintes equações: sendo P o espectro o qual se deseja a cor, x, y e z os sensores do modelo e Ф o iluminante considerado como branco padrão (no caso, D65). Para o caso discreto, as equações são as seguintes:
Sistema XYZ para sRGB • Os monitores dos computadores não utilizam o sistema XYZ de cores, sendo assim as cores XYZ devem ser convertidas para o espaço RGB de cor. Porém, cada dispositivo usa seu próprio tipo específico de sistema de cor RGB. Por isso, foi criado o sistema sRGB, de forma a padronizar as cores e as estratégias de manipulação das mesmas. A conversão de XYZ para sRGB é feita da seguinte forma:
ref_X = 95.047 //Observer = 2°, Illuminant = D65ref_Y = 100.000ref_Z = 108.883var_X = X / 100 //X = From 0 to ref_Xvar_Y = Y / 100 //Y = From 0 to ref_Yvar_Z = Z / 100 //Z = From 0 to ref_Yvar_R = var_X * 3.2406 + var_Y * -1.5372 + var_Z * -0.4986var_G = var_X * -0.9689 + var_Y * 1.8758 + var_Z * 0.0415var_B = var_X * 0.0557 + var_Y * -0.2040 + var_Z * 1.0570if ( var_R > 0.0031308 ) var_R = 1.055 * ( var_R ^ ( 1 / 2.4 ) ) - 0.055else var_R = 12.92 * var_Rif ( var_G > 0.0031308 ) var_G = 1.055 * ( var_G ^ ( 1 / 2.4 ) ) - 0.055else var_G = 12.92 * var_Gif ( var_B > 0.0031308 ) var_B = 1.055 * ( var_B ^ ( 1 / 2.4 ) ) - 0.055else var_B = 12.92 * var_BR = var_R * 255G = var_G * 255B = var_B * 255
Modelos de Iluminação • Em um ambiente físico, os objetos não são iluminados apenas pela luz de uma lâmpada e pela luz solar. Eles também são iluminados pelos demais objetos do meio que se encontram, através da reflexão desses com as fontes de luz supracitadas. Vários fatores influenciam a forma como cada objeto reflete a luz recebida como o ângulo de incidência do raio de luz, o espectro da luz incidente e a direção da qual se mede a reflexão.
Através de várias medições realizadas, foi verificado que a luz que incide numa superfície divide-se em uma parcela absorvida (reflexão ambiente), uma parcela refletida sem direção preferencial (reflexão difusa), uma parte que é refletida na direção do reflexo (reflexão especular), entre outras (vide figura 3). • Dessa forma, para calcular as cores de um objeto iluminado, para cada uma dessas parcelas, existem diversos modelos, sendo uns bem simples e outros bem complexos e realistas. Figura 3
Modelo de Reflexão Ambiente • A reflexão ambiente é um artifício introduzido para simular as reflexões mútuas entre os objetos. A intensidade da iluminação ambiente em um objeto é dada por: onde ka é o coeficiente de reflexão ambiente específico de cada objeto e Ia é a intensidade da luz ambiente.
Modelo de Reflexão Difusa • Superfícies que refletem de forma perfeitamente difusa seguem a lei de Lambert, que afirma que a intensidade da radiação refletida por unidade de área independe da direção de reflexão (vide figura 4). A reflexão difusa é dada por: ou onde θ é o ângulo entre a luz (L) e a normal da superfície (N), kd é o coeficiente de difusão específico do objeto (determina a cor do objeto) e I é a intensidade da luz.
luz incidente luz incidente luz incidente Figura 4
Modelo Especular de Phong • Superfícies lisas ou brilhantes refletem a fonte de luz e causam um espalhamento da luz ao redor do reflexo. Este efeito é simulado pelo modelo de Phong. O espalhamento é conseguido por um aumento na intensidade de luz em direções próximas da reflexão especular R (vide Figura 5). A intensidade depende da posição V do observador, e é máxima na direção de R. O vetor R é obtido pela fórmula:
A reflexão é dada por: ou onde ke é o coeficiente especular de cada objeto e n é uma constante característica da superfície. • O modelo de Phong é um modelo empírico, baseado em observações físicas. Figura 5
Modelo Especular de Blinn-Phong • O modelo de Blinn-Phong é muito similar ao modelo de Phong. A diferença é a utilização do vetor H (bissetriz entre a luz e o observador) e da normal N ao invés de R e V no cálculo do coeficiente especular. O objetivo é otimizar pois a bissetriz H só precisa ser calculada uma vez, ao contrário do R.
Modelo Especular de Cook-Torrance • A reflexão da luz de superfícies reais tem sido objeto de muito estudo teórico e experimental. Os resultados experimentais foram próximos do modelo de Phong, porém com algumas diferenças. As diferenças são que a intensidade da reflexão especular varia de acordo com a direção da fonte de luz e o ângulo de pico da reflexão especular não é sempre o ângulo de incidência. Com isso, Cook e Torrance criaram um modelo diferente de reflexão levando em conta essas diferenças físicas.
Assim, é suposto que a superfície simulada é composta por uma coleção de micro facetas espelhadas que são orientadas de forma aleatória na superfície. Além disso, é assumido que a componente especular da luz refletida vem da reflexão das facetas orientas na direção H (o mesmo H do modelo Blinn-Phong). Portanto a reflexão especular é uma combinação dos seguintes fatores: onde D é a função de distribuição da direção das micro facetas, G é a quantidade de sombra e cobertura que as facetas provocam entre si e F é a lei de reflexão de Fresnel.
Função de Distribuição D • A luz refletida especularmente em uma determinada direção pode vir somente das facetas orientadas para refletir a luz naquele direção, ou seja, as facetas orientadas na direção de H. D representa exatamente essa quantia. O cálculo exato de D é na forma de uma exponencial (distribuição de Beckmann), porém para facilitar a sua obtenção, D pode ser calculado da seguinte forma:
Essa fórmula é baseada no modelo de micro facetas como elipsóides de revolução e c é a excentricidade dos elipsóides. c é 0 para superfícies brilhantes e 1 para superfícies difusas.
Fator de Atenuação Geométrica G • Algumas das facetas provocam sombras nas outras, reduzindo assim a luz que chegua em cada uma delas. O fator de atenuação (G) é o valor dessa atenuação e varia de 0 a 1 para representar a proporção de luz remasnecente. O cálculo de G leva em conta todas as situações: quando não existe interferência entre as micro facetas, quando a reflexão é bloqueada e quando a luz incidente é bloqueada. O valor de G é portando o menor entre esses 3 valores:
Para o caso a Ga = 1.0 Para o caso b Gb = 2(N·H)(N·E)/(E·H) Para o caso c Gc = 2(N·H)(N·L)/(E·H) G = min (Ga, Gb, Gc) Figura 6
Reflexão de Fresnel F • A reflexão de Fresnel obtém a fração de luz incidente em uma faceta que é refletida ao invés de absorvida. onde , e n é o índice de refração do objeto
Modelo de Reflexão Global • A intensidade global de iluminação de um ponto é dado, portanto, pelo somatório das componentes ambiente, difusa e especular:
Resultados Cook Blin-Phong Phong • Material: Alumínio ka = (0,0,0); kd=(0.6,0.6,0.6); ks=(0.4,0.4,0.4) n (Phong) = 200; n (Blinn-Phong) = 200; n (Cook) = 200 c = 0.35 (Cook) • Iluminante: D65
Cook Blin-Phong Phong • Material: Aleatório ka = (0.9,0.2,0.2); kd=(0.9,0.2,0.2); ks=(1,1,1) n (Phong) = 50; n (Blinn-Phong) = 50; n (Cook) = 50 c = 0.35 (Cook) • Iluminante: D65
Cook Blin-Phong Phong • Material: Cerâmica de óxido de magnésio ka = (0,0,0); kd=(0.333,0.333,0.333); ks=(0.667,0.667,0.667) n (Phong) = 58; n (Blinn-Phong) = 58; n (Cook) = 1.8 c = 0.35 (Cook) • Iluminante: D65
Referências • Notas de aula. • http://www.cie.co.at/publ/abst/datatables15_2004/sid65.txt • http://www.isc.tamu.edu/~astro/color/cie_xyz1964.html • http://en.wikipedia.org/wiki/D65 • http://en.wikipedia.org/wiki/Chromaticity_coordinate#The_CIE_xy_chromaticity_diagram • Gomes, Jonas; Velho, Luiz. Computação Gráfica, Vol 1. Rio de Janeiro, IMPA, 1998. • http://users.directnet.com.br/val/tutor/tutor.html#capit5
https://www.siggraph.org/education/materials/HyperGraph/illumin/similum0.htmhttps://www.siggraph.org/education/materials/HyperGraph/illumin/similum0.htm • http://en.wikipedia.org/wiki/Cook-Torrance#Cook.E2.80.93Torrance_model