원문 : http://graphics.pixar.com/library/ReflectanceModel/paper.pdf
주의 : 번역이 개판이므로 이상하면 원문을 참조하십시오.
주의 : 허락받고 번역한 것이 아니므로 언제든 내려갈 수 있습니다.
A Reflectance Model for Computer Graphics
ROBERT L. COOK
Lucasfilm Ltd.
and
KENNETH E. TORRANCE
Cornell University
컴퓨터 합성 이미지를 위한 새로운 반사도 모델이 제시됩니다. 이 모델은 같은 장면 내의 다양한 재질과 광원의 상대적인 밝기를 고려합니다. 이는 입사각과 함께 반사도가 변경될 때마다 발생하는 반사되는 빛의 지향성 분포( directional distribution )와 색상 변화에 대해 기술합니다. 특정한 실제 재질로 구성된 오브젝트로부터 반사광의 스펙트럼 에너지 분포( spectral energy distribution )를 획득하기 위한 기법이 제시되며, 스펙트럼 에너지 분포와 관련된 색상을 정확하게 복제하기 위한 방법이 논의됩니다. 이 모델은 금속과 플라스틱의 시뮬레이션에 적용됩니다.
Categories and Subject Descriptors: I.3.7 [Computer Graphics]: Three-Dimensional Graphics and Realism--color, shading, shadowing, and texture
General Terms: Algorithms
Additional Key Words and Phrases: image synthesis, relfectance
INTRODUCTION
컴퓨터 그래픽스에서 사실적인 이미지를 렌더링하는 것은 오브젝트가 빛을 반사하는 방법에 대한 모델을 요구합니다. 반사도( reflectance ) 모델은 반사되는 빛의 색상 및 공간적 분포를 설명해야만 합니다. 이 모델은 surface geometry representation 과 hidden surface algorithm 과 같은 이미지 합성의 다른 관점들과는 독립적입니다.
대부분의 실제 서피스들은 이상적인 스펙큘러( 거울같은 ) 반사체나 이상적인 디퓨즈( 램버시안, Lambertian ) 반사체가 아닙니다. Phong [14, 15 ] 은 컴퓨터 그래픽스를 위한 반사도 모델을 제안했는데, 이는 스펙큘러 반사와 디퓨즈 반사에 대한 선형 결합( linear combination )입니다. 스펙큘러 요소는 power 로 증가하는 코사인( cosine ) 함수를 사용함으로써 스펙큘러 방향 주변에서 퍼집니다. 그 다음에 Blinn [5, 6] 은 [23] 의 스펙큘러 반사 모델과 유사한 아이디어를 사용했는데, 이는 서피스 노멀( normal )에 대해 상대적인 지표각( grazing angle )에서 빛이 입사할 때 발생하는 off-specular peaks 를 고려합니다( 역주 : off-specular peak 는 입사각과 반사각이 다른 specular 를 의미합니다. 번역이기는 하지만 원문에는 없는 그림을 추가합니다. 그림 R1 참조 ). Witted [24] 는 완전히 부드러운 서피스( surface )로부터의 이상적인 스펙큘러 반사를 위한 항을 추가함으로써 이 모델들을 확장했습니다( 역주 : Witted Ray Tracing 으로 검색 ). 이러한 모든 모델들은 geometrical optics( ray theory )에 기반합니다.
그림 R1: Off-specular reflection 의 예: 지표각에 가까워질 수록 specular 의 방향( M ) 이 반사각과 달라지는 모습을 보여줌.
앞에서 말한 모델들은 반사를 세 가지 요소로 구성된 것으로 취급합니다: 앰비언트( ambient ), 디퓨즈( diffuse ), 스펙큘러( specular ). 앰비언트 요소는 환경으로부터 고르게 입사해서 서피스에 의해 모든 방향으로 동일하게 반사한다고 가정하는 빛을 표현합니다. 디퓨즈 성분과 스펙큘러 성분은 특정 광원으로부터 오는 빛과 관련이 있습니다. 디퓨트 성분은 모든 방향으로 동일하게 산란하는 빛을 표현합니다. 스펙큘러 성분은 하이라이트( highlight )를 표현하는데, 빛이 미러 방향 주변에 집중되어 있습니다. 스펙큘러 요소는 광원의 색상으로 간주되었습니다; Fresnel 공식은 각도 별로 다양해지는 스펙큘러 인텐서티( intensity )를 획득하기 위해서 사용되었지만, 색상에 대한 것이 아닙니다. 앰비언트 요소와 디퓨즈 요소는 재질의 색상으로 간주되었습니다. 최종 모델은 즉정 유형의 재질에 대해 사실적인 모양을 보여주는 이미지를 산출합니다.
이 논문은 이전 모델들보다 더 일반적인 거친 서피스를 위한 반사도 모델을 제시합니다. 이는 geometrical optics 에 기반하며, 다양한 범위의 재질들, 서피스 조건들, 라이팅 상황들에 적용할 수 있습니다. 이 모델의 중심은 반사율에 대한 정의인데, 이는 광원의 인텐서티와 사이즈에 대한 오브젝트의 밝기와 관련이 있습니다. 이 모델은 반사되는 빛에 대한 지향성 분포( directional distribution )와 스펙트럼 조합( spectral composition )을 예측합니다. 스펙트럼 에너지 분포로부터의 RGB 값을 계산하는 방법에 대해 기술합니다. 새로운 반사도 모델은 금속과 플라스틱의 시뮬레이션에 적용되는데, 이전의 모델들을 사용해서 렌더링된 이미지들이 종종 플라스틱처럼 보이는 이유에 대해서 설명하고, 이 플라스틱 외형을 피할 수 있는 방법에 대해 설명합니다.
THE REFLECTANCE MODEL
광원, 서피스, 관찰자가 주어질 때, 반사도 모델은 관찰자에게 도달하는 반사광의 인텐서티와 스펙트럼 조합에 대해 기술합니다. 반사광의 인텐서티는 광원의 인텐서티와 사이즈, 그리고 재질의 반사 능력과 서피스 특성에 의해 결정됩니다. 반사광의 스펙트럼 조합은 광원의 스펙트럼 조합과 서피스의 파장 선별 반사( wavelength-selective reflection, 역주 : 우리가 알고 있는 albedo 를 의미하는 듯함 )에 의해 결정됩니다. 이 섹션에서는 적절한 반사도 정의를 소개하고 그것을 일반적인 반사도 모델과 결합시킬 것입니다. 그림 1 은 이 모델에서 사용되는 심볼들에 대한 요약을 포함합니다.
그림 1: 심볼 요약.
그림 2에는 반사에 대한 기하학적 구조가 나와 있습니다. 관찰자는 서피스상의 점 P 를 바라보고 있습니다. V 는 관찰자 방향에 대한 단위 벡터입니다. N 은 서피스의 단위 노멀입니다. L 은 지정된 광원 방향의 유닛 벡터입니다. H 는 V 와 L 사이의 각을 이등분한 곳의 정규화된 벡터입니다. H 는 다음과 같이 정의됩니다.
이것은 광원에서 관찰자를 향해 거울같이 빛을 반사하는 가상의 서피스에 대한 단위 노멀입니다. α 는 H 와 N 사이의 각도이며, θ 는 H 와 V 사이의 각도입니다. 그래서 cos(θ) = V˙H = L˙H 입니다.
그림 2: 반사의 기하구조.
빛의 입사빔( beam )의 에너지는 단위 시간과 반사하는 서피스의 단위 면적 당 에너지로 표현됩니다. 입사광의 인텐서티는 이와 유사하지만, 단위 사영 면적과 단위 입체각에 대해서 표현됩니다 [20, 8]. ( 입체각은 광원의 사영된 면적을 광원으로부터의 거리의 제곱으로 나눈 것이며, 멀리 있는 광원을 위한 상수로 취급될 수 있습니다. ) 입사광에서의 에너지는 다음과 같습니다.
거울이나 거울에 가까운 것들을 제외하고, 입사빔은 광범위한 각도로 반사됩니다. 이런 이유로, 주어진 방향에서의 반사 인텐서티는 입사 인텐서티뿐만 아니라 입사 에너지에도 의존하게 됩니다. ( 작은 입체각 내의 ) 다른 방향으로부터의 입사 에너지에 대한 주어진 방향에서의 반사 인텐서티의 비율은 양방향 반사도( bidirectional reflectance )라 불립니다. 이 반사율은 반사 연구에 있어서 기본입니다( 부가적인 논의에 대해 알려면 [20, 8]을 참조하십시오 ). 각 광원에 대해, 양방향 반사도 R 은 다음과 같습니다.
각 광원으로부터 관찰자에게 도달하는 반사 인텐서티는 다음과 같습니다.
양방향 반사도는 두 개의 요소로 분리될 수 있습니다; 스펙큘러, 디퓨즈. 스펙큘러 요소는 재질의 표면으로부터 반사되는 빛을 표현합니다. 디퓨즈 요소는 ( 재질의 서피스 안으로 파고든 입사광에 의해 발생하는 ) 내부 산란이나 ( 서피스가 충분히 거칠면 발생하는 ) 다중 서피스 반사로부터 기인합니다. 만약 재질이 균질하지 않다면 스펙큘러 요소와 디퓨즈 요소는 서로 다른 색상을 가질 수 있습니다. 그래서 양방향 반사도는 다음과 같습니다.
개별 광원에 의한 직접 조명과 더불어, 오브젝트는 배경이나 앰비언트 조명에 의해 조명을 받을 수 있습니다. 특정 광원으로부터 직접 비춰지는 것이 아닌 모든 빛은 앰비언트 조명으로 뭉뚱그려집니다. 앰비언트 조명의 특정 방향으로부터 관찰자를 향해 반사되는 빛의 양은 적지만, 전체 반구상에서 오는 빛을 합치면 이것의 효과는 커집니다. 따라서, 앰비언트( 혹은 hemispherical-directional ) 반사 Ra 를 소개하는 것이 편리합니다. 이 반사는 양방향 반사도 R 의 적분이며, 즉 Rs 와 Rd 의 선형결합입니다. 단순함을 위해, 우리는 Ra 가 뷰 방향에 대해 독립적이라 가정합니다. 추가적으로 우리는 앰비언트 조명이 고르게 입사한다고 가정합니다. 앰비언트 조명 때문에 생기는 반사 인텐서티는 다음과 같이 정의됩니다.
f 항은 ( 코너와 같은 ) 근처에 있는 오브젝트들에 의해 차폐되지 않는 조명을 비추는 반구의 양( fraction, 비율? )입니다 [25]. 이는 다음과 같이 주어집니다.
여기에서 적분은 빛을 비추는 반구의 비차폐 영역에 대해서 수행됩니다.
관찰자에게 도달하는 빛의 전체 인텐서티는 모든 광원으로부터의 반사 인텐서티의 합에 모든 앰비언트 조명으로부터의 반사 인텐서티를 더한 것입니다. f = 1 이라고 가정하면, 이 논문에서 사용된 기본 반사도 모델은 다음과 같습니다.
이 공식은 씬에 조명을 비추는 서로 다른 인텐서티와 사영 면적을 가진 광원들의 효과를 고려합니다. 예를 들어, 어떤 조명빔( illuminating beam )과 동일한 인텐서티( Ii )와 조명 각( N˙L )을 가지지만 두 배 큰 입체각( dωi )을 가진 조명빔은 서피스를 두 배 밝게 만듭니다. 다른 빔보다 두 배의 인텐서티를 가지지만 같은 조명각과 입체각을 가진 조명빔도 서피스를 두 배 밝게 만듭니다.
이 논문은 환경 내의 다른 오브젝트들로부터 오는 빛에 대한 반사를 고려하지 않습니다. 이 반사는 서피스가 완전히 부드럽다면 [24] 나 [6] 에서처럼 계산될 수 있습니다. 하지만 이러한 순수한 거울면 반사라하더라도 파장에는 종속적입니다.
위의 반사도 모델은 묵시적으로 몇 가지 변수들에 의존합니다. 예를 들어, 인텐서티는 파장에 의존하며, s 와 d 는 재질에 의존하며, 반사도는 이런 변수들과 함께 반사 기하구조 및 서피스 러프니스( roughness )에 의존합니다. 다음 두 섹션들은 반사도 모델의 지향성 의존 및 파장 의존을 고려합니다.
DIRECTIONAL DISTRIBUTION OF THE REFLECTED LIGHT
앰비언트 및 디퓨트 요소들은 모든 방향으로 동일하게 빛을 반사합니다. 그러므로 Ra 와 Rd 는 관찰자의 위치에 의존하지 않습니다. 반대로 스펙큘러 요소는 다른 것보다 특정 방향으로 더 많은 빛을 반사합니다. 그래서 Rs 는 관찰자의 위치에 의존합니다.
스펙큘러 요소가 각에 따라 퍼지는 것은 서피스가 미세면( microfacet )으로 구성되었고 각 미세면들은 거울면 반사를 수행한다는 가정에 의해 설명됩니다 [23]. 노멀이 H 방향인 미세면만이 L 에서 V 로의 반사에 대한 스펙큘러 요소에 기여합니다. 이 스펙큘러 요소는 다음과 같습니다.
프레넬( Fresnel ) 항 F 는 빛이 부드러운 미세면으로부터 반사되는 방식을 설명합니다. 그것은 입사각과 파장에 대한 함수이며, 다음 섹션에서 설명됩니다. 기하학적 감쇠( geometrical attenuation ) 요소 G 는 다른 미세면에 의해 그림자가 드리워지거나 마스킹되는 미세면을 고려합니다. 그리고 이는 [5, 6, 23 ] 에 세부적으로 설명되어 있습니다. 간단하게 말하자면, 그것은 다음과 같습니다.
미세면의 기울기 분포 함수 D 는 H 방향을 바라보는 미세면들의 양( fraction )을 표현합니다. Blinn [5, 6]에 의해 다양한 미세면 기울기 분포 함수들이 고려되었습니다. 그가 기술한 공식 중 하나는 Gaussian 모델입니다 [23].
여기에서 c 는 임의의 상수입니다.
Blinn 에 의해 언급된 것과 더불어, 다른 미세면 기울기 분산 모델들을 이용하는 것도 가능합니다. 특히 서피스로부터의 적외선과 레이더 산란( scattering of radar )을 위한 모델들을 이용할 수 있으며, 그것들은 가시 파장들에 적용될 수 있습니다. 예를 들어 Davies [9] 는 완벽한 전도체로 구성된 거친 표면으로부터 반사되는 전자기 복사의 공간적 분포에 대해 기술했습니다. Bennett 와 Porteus [3] 는 이 결과를 실제 금속에 대해 확장했으며, Torrance 와 Sparrow [22] 는 그것들이 비금속에도 적용됨을 보여주었습니다. Beckmann [2] 은 이러한 모든 재질들을 망라하는 포괄적인 이론을 제공했으며, 이는 부드러운 표면으로부터 매우 거친 표면까지를 포함하는 넓은 범위의 서피스 상태들에 적용됩니다. 거친 서피스의 경우, Beckmann 분포 함수는 다음과 같습니다.
이 분포 함수는 Blinn 에 의해 언급된 세 가지 함수와 그 형태가 비슷합니다. Beckmann 함수의 이점은 임의의 상수를 사용하지 않고도 반사도의 절대량을 제공한다는 것입니다; 단점은 그것이 더 많은 계산을 요구한다는 것입니다.
모든 미세면 기울기 분포 함수 내에서 스펙큘러 요소의 퍼짐( spread )은 root mean square ( rms ) 기울기 m 에 의존합니다. 작은 m 값은 미세면 기울기가 작다는 것을 의미하며 반사 각도 주변에서 매우 지향성있는 분포를 제공합니다. 이는 그림 3 에 나와 있는데요, 3a 는 Beckmann 분포 모델이고 3b 는 Gaussian 모델입니다. 큰 m 값은 뾰족한 미세면 기울기를 나타내는데 퍼져나가는 형태의 분포를 제공합니다. 3c 와 3d 는 각각 Beckmann 과 Gaussian 모델을 보여줍니다. 두 모델의 유사성에 주목하십시오.
그림 3: (a) Beckmann 분포 m = 0.2, (b) Gaussian 분포 m = 0.2,
(c) Beckmann 분포 m = 0.6, (d) Gaussian 분포 m = 0.6.
SPECULAR COMPOSITION OF THE REFLECTED LIGHT
앰비언트, 디퓨즈, 스펙큘러 반사도는 모두 Ra, Rd, Rs 의 F 항에 의존하는데, 이것들은 재질의 적절한 반사도 스펙트럼들에서 획득될 수 있습니다. Ra 가 Rs 와 Rd 의 선형 결합으로 제한됨에도 불구하고 비균일한 재질은 세 반사도 각각에 대한 서로 다른 반사도 스펙트럼들을 가집니다.
[10, 17-19] 에서 수 천개의 재질들을 위한 반사도 스펙트럼들이 측정되고 수집되어 왔습니다. 반사도 데이터는 보통 수직 입사( normal incidence )에서의 조명에 대한 것입니다. 이 값들은 보통 연마된 서피스들을 위해 측정되었으며, 거친 서피스를 위한 양방향 반사도를 획득하기 위해서는 1/π 를 곱해야만 합니다 [20]. 대부분의 재질들은 가시범위 내의 적은 개수( 10 ~ 15 )의 파장들에서만 측정되었습니다. 그래서 중간의 파장들을 위한 값들은 보간되어야만 합니다( 간단한 선형 보간으로도 충분한 것으로 보입니다 ). 수직 입사를 위한 구리 거울의 가시 파장을 위한 반사도 스펙트럼은 그림 4a 에 나와 있습니다. 반사도 스펙트럼을 선택하는데 있어, 주의깊게 고려해야 할 것은 어떤 조건에서 측정이 이루어졌느냐 입니다. 예를 들어 어떤 금속들은 시간을 두고 산화막을 만들수 있는데, 이는 색상을 급격하게 변화시킵니다 [1].
반사광의 스펙트럼 에너지 분포( spectral energy distribution )는 입사광의 스펙트럼 에너지 분포에 서피스의 반사도 스펙트럼을 곱함으로써 구해집니다. 이것의 예가 그림 4b 에 나와 있습니다. 태양의 스펙트럼 에너지 분포와 CIE( 국제 조명 위원회 ) 표준 빛( standard illuminants )은 [7]에서 이용할 수 있습니다. CIE 표준 빛 D6500 의 스펙트럼 에너지 분포는 구름낀 날의 태양빛을 근사계산한 것으로, 이는 그림 4b 의 위쪽 커브입니다. 아래쪽 커브는 CIE 표준 빛 D6500 을 수직 입사했을 때 구리 거울로부터 반사된 빛의 스펙트럼 에너지 분포를 보여 줍니다. 이것은 그림 4a 의 반사도 스펙트럼에다가 위쪽 커브를 곱함으로써 획득된 것입니다.
그림 4: (a) 수직 입사에 대한 구리 거울에 대한 반사도. 파장의 단위는 micrometer.
(b) 위쪽 커브: CIE 표준 빛 D6500 의 스펙트럼 에너지 분포.
아래쪽 커브: D6500 에 의해 비춰지는 구리 거울로부터 반사된 빛의 스펙트럼 에너지 분포.
일반적으로, Rd 와 F 는 반사 기하구조에 따라 다양해집니다. 편의를 위해, 우리는 반사하는 서피스에 대한 노멀 방향으로 비추기 위한 양방향 반사도로 Rd 를 취합니다. 이는 합리적입니다. 왜냐하면 서피스 노멀에 대해 70 도 정도 안쪽에서는 반사도가 입사각에 대해 약간만 변하기 때문입니다 [21]. 우리는 F 에 대한 지향성 의존성( directional dependence )을 허용합니다. 그러나 이는 입사 방향과 반사 방향이 지표각 근처에 있을 때 색상 변화를 일으킵니다.
반사도 F 는 프레넬 공식으로부터 이론적으로 구해질 수 있습니다 [21]. 이 공식은 완전히 부드러운 거울같은 서피스에 대한 반사도를 굴절률( n )( index of refraction ) 항, 서피스에 대한 소광계수(k)( 흡광계수, extinction coefficient ), 조명각( θ )( angle of illumination )으로 표현합니다. 일반적으로 n 와 k 는 파장에 따라 다양하지만, 그것들의 값은 흔히 알려져있지 않습니다. 반대로 수직 입사시 경험적으로 측정된 반사도 값은 흔히 알려져 있습니다.
F 의 스펙트럼과 각에 대한 다양성을 획득하기 위해서, 우리는 실용적인 타협안을 수용했습니다. 만약 n 과 k 가 알려져 있다면, 우리는 프레넬 공식을 사용합니다. 만약 그렇지 않고 일반 반사도가 알려져 있다면, 우리는 프레넬 공식을 연마된 서피스를 위해서 측정된 일반 반사도에 맞춥니다. 비금속의 경우 k = 0 인데, 이것은 우리에게 굴절률 n 에 대한 추정치( estimate )를 제공합니다. 금속의 경우 k 는 일반적으로 0 이 아닌데, 우리는 k 를 0 으로 설정하고 일반 반사도로부터 n 을 위한 효과적인 값을 얻습니다. 그러면 F 에 대한 각 의존성을 프레넬 공식으로부터 이용할 수 있습니다. 앞의 방법은 수직 입사를 위한 F 의 정확한 값을 산출하며, 그것의 각 의존성에 대한 좋은 추정치를 제공합니다. 이는 소광계수 k 에 약하게 의존할 뿐입니다.
이 방법을 설명하기 위해서, 비편광( unpolarized ) 입사광과 k = 0 을 위한 프레넬 공식은 다음과 같습니다.
여기에서
입니다.
( [5] 에서 이와 유사한 표현식은 1/2 요소를 빼먹었습니다. ) 수직 입사시, θ = 0; 그래서 c = 1, g = n 입니다. 그리고
입니다.
n 에 대해서 풀면 다음 공식이 나옵니다.
이런 방식으로 결정된 n 값은 다른 입사각에서의 반사도 F 를 획득하기 위해서 원래의 프레넬 공식을 대체하게 됩니다. 이 방법은 반사도의 스펙트럼 및 지향성 의존성을 획득하기 위해서 다른 파장들에 대해서 반복될 것입니다.
파장과 입사각 상에서의 반사도에 대한 의존성은 반사광의 색상은 입사각에 따라 변경된다는 것을 내포합니다. 구리에 대한 반사도 스펙트럼들은 그림 5a 에 나와 있습니다. 입사각( θ )는 π/2 에 접근하기 때문에, 반사광의 색상은 광원의 색상에 접근합니다( since the reflectance F approaches unity ). 구리로부터 흰색 빛( CIE 표준 빛 D6500 )의 반사와 관련된 색상들은 그림 5b 에서 θ 에 대한 함수로서 나타납니다. 프레넬 공식으로부터의 색상 변화는 θ 가 π/2 에 접근했을 때만 중요하다는 것이 분명해집니다( 즉, V 와 L 사이의 각이 π 에 접근할 때 ).
색상 변화에 대한 계산은 계산적으로 비쌉니다. 그것은 두 방식 중의 하나를 사용해 단순화될 수 있습니다; 룩업 테이블( lookup table )을 생성하거나 다음 근사계산을 사용. 평균 일반 반사도와 연관된 n 의 값을 위해서 먼저 F 의 값들이 계산됩니다. 다음으로 이 값들은 θ = 0 일 때와 θ = π/2 일 때의 색상 사이를 보간하기 위해서 사용됩니다. θ = π/2 일 때의 색상은 광원의 색상과 동일한데 그 이유는 Fπ/2 는 모든 파장에서 1.0 이기 때문입니다. 예를 들어 수직 입사시 색상의 red 요소가 Red0 이라 하고 입사광의 색상의 red 요소가 Redπ/2 라고 합시다. 그러면 다른 각도에서 색상의 red 요소는 다음과 같습니다.
Green 요소와 blue 요소도 비슷하게 보간됩니다. 그림 5c 는 입사각에 대한 함수로서 구리의 색상을 추정하기 위해 근사계산 방법을 사용하는 효과를 보여 줍니다. 이 근사계산 방법은 완전한( 하지만 더 비싼 ) 방법( 그림 5b )의 결과와 비슷한 결과를 산출합니다. 앞의 근사계산은 반사광의 스펙트럼 에너지 분포가 알려지지 않았고 RGB 값들에 대한 추정치를 모두 가지고 있는 경우에는 항상 사용되어야 합니다.
그림 5: (a) 파장과 입사각에 대한 함수로서 구리 거울의 반사도.
(b) 입사각에 대한 함수로서 구리의 색상.
(c) 이 논문에서 논의된 기법으로 근사계산된 것으로서의 구리의 색상.
DETERMINING THE RGB VALUES
컴퓨터 함성 씬이 사실적이 되도록 하기 위해서는, 컬러 텔레비전 모니터를 통해 합성 씬을 보고 있는 관찰자의 색상 감각이 실세계에서 관련 씬을 보고 있는 관찰자의 색상 감각과 거의 비슷해야만 합니다. 이 비슷한 색상 감각을 생성하기 위해서, 반사광의 스펙트럼 에너지 분포를 특정 모니터를 위한 적절한 RGB 값으로 변환하기 위해서 3색 색상 복제 법칙( the law of trichromatic color reproduction )이 사용됩니다.
모든 색상 감각은 삼차원 색상 공간에서의 위치로 일관성있게 기술될 수 있습니다. 그런 색상 공간들 중 하나는 XYZ 공간이라 불립니다.이 공간에서의 점은 세 개의 좌표로 지정되는데, 이는 색상의 XYZ 3자극( tristimulus ) 값들입니다. 각각의 스펙트럼 에너지 분포는 XYZ 색상 공간의 점, 즉 3자극 값들과 연관되어 있습니다. 만약 두 개의 스펙트럼 에너지 분포가 같은 삼자극 값들과 연관되어 있다면, 그것들은 같은 색상 감각을 생성하고 이는 metamer( 조건 등색을 나타내는 색 )라 불립니다. The red, green and blue phosphors of a monitor can be illuminated in proportions to produce a set of spectral energy distributions which define a region of XYZ space called the gamut of the monitor( 역주 : Understanding the Color Gamut of an LCD monitor 참조 ). 그러면 목표는 반사광의 스펙트럼 에너지 분포의 metamer 인 스펙트럼 에너지 분포를 생성하는 인광물질 조명의 비율을 찾는 것입니다.
이 비율은 반사광의 스펙트럼 에너지 분포와 연관된 XYZ 3자극 값들을 계산하고 나서 이 3자극 값들을 가지고 스펙트럼 에너지 분포를 생성하는 RGB 값들을 계산함으로써 결정됩니다. 이를 위해, 반사광의 스펙트럼 에너지 분포는 모든 파장에서 ( [7]에서 가져온 ) XYZ 매칭 함수들과 곱해집니다. 그리고 나서 최종적인 스펙트럼들은 XYZ 3자극 값들을 획득하기 위해서 적분됩니다. 이 XYZ 값들은 광원 유형과 서피스 재질의 조합별로 미리 계산될 수 있는데, 이는 특정 인광물질 집합과 모니터 화이트 포인트( white point, 모니터에서 가장 흰색이 이상적으로 보이게 맞추는 상태 )를 위한 RGB 선형 휘도( luminance )에 대한 행렬 곱셈을 통해 변환될 수 있습니다. 그리고 나서 이 선형 휘도들은 RBG voltages 로 변환되는데, 이 때 모니터의 비선형성과 시청 환경 효과들을 고려하게 됩니다. 이 방법에 대한 더 정확한 설명을 원한다면 [13] 을 참조하십시오.
모니터는 주어진 색도( chromaticity )를 복제할 수 있는 최대 휘도를 가집니다. 이 최대값보다 큰 휘도를 표현하는 모든 XYZ 값들은 모니터 gamut 의 권한 밖입니다. 그런 색상은 모니터 내에서 어떤 휘도로도 복제될 수 없기 때문에, 그것은 반드시 모니터 gamut 내의 비슷한 색상에 의해 근사계된되어야 합니다. 이 색상은 매우 다양한 방식으로 선택될 수 있습니다; 이 논문을 위해, 우리는 같은 hue 를 유지하고 필요하면 채도를 감소시키는 것이 적절하다고 결정했습니다. 이를 위해 3자극 XYZ 값들은 색상 공간으로 변환되는데, 그것의 위치는 주요 파장( dominant wavelength )과 순도( purity )에 의해 지정됩니다. 그리고 나서 주요 파장( 그리고 거의 hue )은 색상이 모니터 gamut 내부에 놓일 때까지 유지되는 반면 순도는 감소합니다. 그리고 나서 최종 색상은 XYZ 공간으로 다시 변환됩니다. ( 주요 파장과 순도에 대한 논의를 위해서는 [12] 를 참조. )
APPLICATIONS
이 섹션은 두 개의 특별한 재질인 금속과 플라스틱에 대해 반사도 모델을 적용하는 것에 대해 논의합니다. 가장 고려해야 할 점은 재질의 균일성입니다. 서피스 위와 아래가 다른 재질로 구성된 것처럼 서로 다른 재질로 구성된 물질은 비균질하며, 이는 스펙큘러 요소와 디퓨즈 요소가 다른 색상으로 나오게 만듭니다.
일반적인 플라스틱은 투명하거나 흰 substrate( 기질, 도장되지 않은 표면, 접착 기면 )를 가지는데, 내부에 안료 입자들을 포함합니다 [11]. 즉 서피스로부터 직접적으로 반사되는 빛은 광원으로부터의 색상을 약간 수정하게 됩니다. 모든 색상 변경은 서피스 재질의 반사도의 결과입니다. 재질을 뚫고 들어 가는 빛은 안료와 상호작용하게 됩니다. 그러므로 내부 반사는 색이 들어 간 골고루 분포된 디퓨즈 반사를 증가시킵니다.
그래서 플라스틱은 색상이 있는 디퓨즈 요소와 흰 스펙큘러 요소를 사용해서 시뮬레이션 될 것입니다. 이는 그냥 Phong 과 Blinn 에 의해 사용된 모델일 뿐이며, 많은 컴퓨터 그래픽스 이미지들이 플라스틱처럼 보이는 심각한 스펙큘러 요소들을 가지고 있게 되는 이유입니다. 그림 6a 는 구리 색상 플라스틱 꽃병을 시뮬레이션한 것을 보여 줍니다. 이 그림은 다음 파라미터들을 사용해서 생성되었습니다.
그림 6: (a) 구리 색상 플라스틱 꽃병. (b) 구리 꽃병.
금속은 전도체입니다. 전자기파 충돌( impinging electromagnetic wave )은 서피스 근처의 전자의 활동을 활발하게 만들 수 있습니다. 이는 순차적으로 전자기파 재방출( reflection )을 유도합니다. 약간 깊은 침투( depth penetration )가 있는데, 이 깊은 침투는 소광계수( extinction coefficient ) k 의 값을 증가시키면서 감소됩니다. 결과적으로 금속으로부터의 반사는 본질적으로 서피스에서 발생합니다 [17]. 그러므로 내부 반사들은 디퓨즈 요소에 기여하지 않습니다. 이는 비금속에서는 중요할 수 있습니다. rms( root mean squre ) 러프니스 기울기 m 이 작을 때, 다중 서피스 반사들 또한 무시되고 전체 디퓨즈 요소들이 사라지게 됩니다. 그림 6b 는 구리 꽃병을 시뮬레이션한 것을 보여 줍니다. 이 그림은 다음 파라미터들을 사용해서 생성되었습니다.
rms 기울기에 대한 두 값들이 사실적인 거친 서피스 마무리를 위해 사용되었다는 점에 주목하십시오. 스펙큘러 반사도 요소는 구리 색상을 가집니다. 그림 6b 의 구리 꽃병은 그림 6a 에서 보이는 꽃병의 플라스틱 외형을 보여주지 않습니다. 이는 사실적인 비플라스틱 외형을 취하기 위해서 필요한 스펙큘러 요소의 색상을 올바르게 취급했다는 것을 보여 줍니다.
그림 7 은 다양한 재질로 구성된 꽃병들을 보여 줍니다. 모든 경우에 스펙큘러 요소와 디퓨즈 요소들은 같은 색상을 가집니다( 즉 Rd = F0/π ). 모든 꽃병에 대한 조명 조건은 그림 6a 와 6b 를 위한 조명 조건과 동일합니다. 6 개의 금속들은 반사도 스펙트럼을 제외하고는 그림 6b 와 같은 파라미터들을 사용해서 생성되었습니다. 6 개의 비금속들은 Table I 에 보이는 파라미터들을 사용해서 생성되었습니다.
그림 7: 다양한 꽃병들.
그림 8 은 다양한 재질과 서피스 조건으로 구성된 시계를 보여 줍니다. 그것은 단일 광원으로부터 빛을 받습니다. 시계의 외부 밴드는 금으로 구성되었고, 내부 밴드는 스테인리스강으로 구성되었습니다. 외부 밴드의 연결부위 상의 패턴은 더 거친 서피스로 구성되어 있는데, 경계보다는 내부가 더 거칩니다. LED 는 표준 red 640 nanometer LED 입니다. 그리고 그것들의 색상은 같은 주요 파장을 가진 색상을 사용해서 근사계산되었습니다.
그림 8: 시계.
CONCLUSION
다음과 같이 결론을 내릴 수 있습니다.
- 스펙큘러 요소는 보통 재질의 색상이며, 광원의 색상이 아닙니다. 앰비언트, 디퓨즈, 그리고 스펙큘러 요소는 재질이 비균질할 경우에 서로 다른 색상이 될 수 있습니다.
- 양방향 분포의 개념은 같은 장면에서의 다양한 광원 및 재질을 시뮬레이션하기 위해 필요합니다.
- Blinn 에 의해 사용된 미세면 기울기 분포 모델들은 광학 문헌에서의 다른 것들과 매우 유사하며 계산하기 쉽습니다. 하나 이상의 미세면 기울기 분포 함수들이 서피스를 표현하기 위해 조합될 수 있습니다.
- 프레넬 공식은 지표각에서의 스펙큘러 요소의 색상 변화를 예측합니다. 이 색상 변화를 계산하는 것은 근사계산 방법이나 룩업 테이블을 사용하지 않는다면 계산적으로 비쌉니다.
- 특정 재질에서 반사된 빛에 대한 스펙트럼 에너지 분포는 광원의 스펙트럼 에너지 분포 재질의 반사도 스펙트럼과 함께 반사도 모델을 사용해서 획득할 수 있습니다. 3색 색상 복제 법칙을 사용해서 이 스펙트럼 에너지 분포를 특정 모니터에 적합한 RGB 값들로 변환할 수 있습니다.
- 페인트를 칠한 오브젝트나 플라스틱과 같은 특정 유형의 재질들은 같은 색상으로 표현되지 않는 스펙큘러 요소와 디퓨즈 요소를 가집니다. 금속들은 광원과 금속의 반사도에 의해서 결정되는 색상을 가진 스펙큘러 요소를 가집니다. 디퓨즈 요소들은 보통 금속에서는 무시됩니다.
'Graphics' 카테고리의 다른 글
Texture Size 와 MipMap Level (4) | 2018.06.02 |
---|---|
[ 번역 ] 실제 이미지에서 specular 와 diffuse 분리하기 (0) | 2017.09.03 |
[ 질문 공유용 ] dead-end detection 에 대한 질문 (0) | 2017.05.04 |
[ 번역 ] Terrain Synthesis from Digital Elevation Models (0) | 2017.04.15 |
[ 번역 ] Signed Distance Fields (3) | 2017.01.20 |
[ 번역 ] Improved Alpha-Tested Magnification for Vector Textures and Special Effects (0) | 2017.01.20 |
[ 번역 ] Microfacet Models for Refraction through Rough Surfaces (0) | 2016.12.02 |
[ 번역 ] Physically-Based Shading at Disney (2) | 2016.11.30 |
[ 번역 ] Real Shading in Unreal Engine 4 (0) | 2016.11.21 |
GGX 라는 용어에 대해 (4) | 2015.12.14 |