1. Color
- 결국 사람이 보는 color란 빛이 반사되어 눈으로 들어오는 것을 말한다.
- 사람은 가시광선 범위의 빛을 인식할 수 있다.
- 빛은 파동이면서 입자이기 때문에 광자의 분포로 나타내면 다음과 같다.
- 빛의 종류에 따른 분포를 나타낸 그림이다.
- 아래처럼 파장에 따른 BRDF를 구할 수 있다.
- 그럼 reflectance에 따라서 파장별 iradiance를 곱해서 color가 도출된다.
- reflectance는 특정 파장의 빛을 흡수하거나 특정 파장 빛을 잘 반사하는 등 물질의 성질을 말한다.
- 뿐만아니라 투명도를 계산할수도 있다. transmittance는 특정 파장의 빛을 얼마나 잘 통과시키는가? 등의 성질을 나타낸다.
- 실제 물체 표면의 reflectance를 살펴보자. 토마토는 빨간색 파장의 반사정도가 집중되어있다.
2. Eye
- 물체에서 반사된 빛은 동공을 통과해 망막에 상으로 맺힌다. 시신경이 이를 감지하여 뇌로 신호를 보내서 시각정보를 받아들인다.
- 크게 두종류의 시각 세포가 감지를 한다. Rods는 밝기(빛의 양)를 감지하고 Cones는 빛의 색을 감지한다.
- 망막의 영역에 따라 두 세포의 분포가 다르다.
- 맹점에는 세포가 아예 없기 때문에 맹점에 맺힌 상은 인지할 수 없다.
3. Normal distribution
- 눈으로 들어오는 모든 빛을 normal distribution형태로 간단하게 나타낼 수 있다.
- mean의 변화는 곧 색(파장)의 변화를 의미한다.
- 분산의 변화는 퍼진 정도를 의미한다. 즉 분산이 크면 특정 빛의 분포가 크지 않은 것이고 반대로 분산이 작으면 특정 파장의 빛이 분포되어 있다는 것이다.
- 즉 채도를 의미한다.
- area는 밝기를 나타낸다.
- 세가지 cone이 인지하는 파장 영역을 나타내면 아래와 같다.
- 오른쪽 그림은 평균적으로 세 cone의 개수 분포를 나타낸다. 붉은색이 제일 많다.
4. Color Matching
- rgb 세가지 빛으로 모든 빛을 합성할 수 있는지 실험한 것이다.
- rgb세 빛을 합성(R,G,B값 조절)해서 test light를 만들어 primary light와 같은지 확인한다.
- 모든 색의 빛의 유사하게 만들어낼 수 있었으나 빨간색의 negative영역에 한해서 뺄셈이 필요했다.
- CIE가 세개의 color matching function은 정의했다. 전부 positive light만 있다고 가정한다.
- 이 세가지 파장을 합쳐서 모든 색을 조합할 수 있다.
- 이것을 CIE XYZ color space라고 부른다.
5. Chromaticity Diagram
- 이 CIE color space를 약간 변형해서 normalization을 해준다.
- 빛의 밝기를 나타내는 Luminance Y와 chromaticity x,y,z를 분리한다.
- normalization을 했기 때문에 x,y,z를 합하면 1이 된다. 즉 두개만 알면 하나는 구할 수 있다.
- 따라서 특정 색을 (x,y,Y)로 나타낼 수 있게 된다.
- 검은색 line을 따라 spectrum 분포가 이어진다.
- 검은 Line으로부터 안쪽으로 이동할 수록 여러 파장의 빛의 combination 색을 나타낸다.
- 가장자리를 따라서 hue가 변화한다.
- 가운데로 이동할수록 saturation이 낮아진다.
- z값이 커질수록 x,y의 값은 작아진다 (x+y+z = 1)
- 증가한 y의 모습
6. 색온도, white
- white는 결국 x,y,z 비율이 1,1,1이 되는 것을 말한다.
- 색온도는 따듯할수록 붉은색, 차가울수록 푸른색에 가까워진다.
- 중간을 가로지르는 선이 색온도에 따라 변화하는 선이다.
7. Complementary color
- 보색 : 두 색을 합했을때 white가 되는 두 색을 말한다.
8. Color Gamut
- 사용하는 color space에 따라서 표현할 수 있는 빛의 영역을 말한다.
- 예로 rgb space가 나타낼 수 있는 범위는 그림에 표시된 검은색 삼각형 영역이다.
- adobe rgb는 기존 rgb보다 더 넓은 파란색 삼각형 영역을 표현할 수 있다.
- 왼쪽 그림은 color film, color monitor, color printer에 따른 표현 가능한 영역을 나타낸다.
9. CIELAP space
- 타원형의 영역은 사람이 보기에 똑같다고 인지하는 영역이다.
- Chromaticity Diagram에서 타원형이 uniform하게 distribute되어있지 않기 때문에 이를 균일하게 분포하는 모형을 다시 정의할 수 있다.
- 그렇게 정의한 방법이 CIELAP space이다.
- L은 밝기를 나타내고 a는 red green 축을 나타내고 b는 blue yellow축을 나타낸다.
10. RGB color space
- r,g,b각각을 축으로 3차원 큐브 형태를 정의할 수 있다.
- 모니터나 tv같은 디바이스에서 사용하기 쉽다.
- 노랑을 빨강과 초록의 배합으로 표현하기 때문에 perceptual하지 않다.
11. Perceptually organized color space
- 직관적으로 더 알기 쉬운 color space를 정의하였다.
- 예술가들이 물감을 사용해서 원하는 색을 만드는 방법에서 착안하였다.
- pure blue에서 white와 black을 섞어서 tint, shade를 만든다.
12. HSV (Hue - Saturation - Value)
- 순서대로 색, 채도, 밝기를 의미한다.
- red를 기준으로 각도에 따라 색을 결정한다.
- 가장자리에 가까울수록 값이 1에 가까워 saturation이 크다.
- 세로가 light의 밝기를 나타낸다.
13. Additive color
- 우리는 세가지 color를 합쳐서 하나의 색을 표현한다.
14. Subtractive color
- rgb대신 c(1-r), m(1-g), y(1-b)를 대신 사용한다. 색을 합칠수록 어두워진다.
- 프린터는 이미지에서 C, M, Y 부분을 나누고 같은 위치에 잉크를 출력함으로써 사진을 완성한다.
'ComputerScience > Computer Graphics' 카테고리의 다른 글
CG - 19. Animation (0) | 2021.12.10 |
---|---|
CG - 18. Halftoning, Dithering (0) | 2021.12.05 |
CG - 16. Advanced Rendering : real-time rendering (0) | 2021.11.25 |
CG - 15. Advanced Rendering : Refectance (0) | 2021.11.24 |
CG - 14. Global illuminations(Ray Tracing) (0) | 2021.11.19 |