책 OpenGL로 배우는 3차원 컴퓨터 그래픽스를 기반으로 작성.
1. 컴퓨터 그래픽스(Computer Graphics)
1) 컴퓨터를 사용하여 그림을 생성하는 기술(게임, 애니메이션, VR, AR ..._)
* 영상 처리(Digital Image processing) : 기존에 존재하는 그림을 개선/인식하는 기술 (Photoshop..)
2) 그래픽스 구성요소
- 모델링(Modeling) + 렌더링(Rendering)
- 모델링 : What to draw, 그래픽으로 표현하고 자하는 장면(Scene) 내부의 물체(Object)를 정의하는 작업
- 렌더링 : How to Draw, 모델링에 정의된 물체를 어떻게 그릴 것인가.
(조명을 어떻게 할지, 관찰자의 위치는 어디인지, 3차원의 물체를 어떻게 2차원으로 그릴지, 물체의 재질은 어떻게 할지 등등)
2. 그래픽 컬러처리
(1) 컬러이론
1) 색상, 명도, 채도
- 색상(Hue, Color) : 빨강, 초록, 파랑 등 어떤 색을 다른색과 구별하는 고유한 속성
- 채도(Saturation, Purity) : 색의 선명도, 색상의 진하고 엷음을 나타내는 정도, 원색에 가까운 것을 채도가 높다고 한다.
-> vivid color : 채도가 높은 선명한 색, (<-> 파스텔 칼라)
-> 흰색과 검정색은 채도가 없어 무채색
* 색상표현원리
1) 태양광이나 형광등 같은 일반적인 광원(Light Source)은 백색광(White Light)를 발한다.
2) 백색광은 보라~적색까지 모든 색상성분을 갖고 있다.
3) 이 빛이 물체 표면에 부딪혀 어떤 주파수 성분은 흡수, 어떤성분은 반사
4) 반사된 빛 중 가장 많은 에너지를 지닌 파장의 주파수를 우세 주파수라고 한다. 우세 주파수의 색으로 보인다.(아래그림에서 볼록 튀어나온부분)
아래 그림에서 황색부분. Ed가 높은 것이 물체의 색.
*채도란 색의 선명도로 Ed-Ew를 말한다. 채도가 높다란 것은 이 차가 크단 것으로 갖고 있는 색상에너지가 크단 것이다.
색상에너지가 크단것은 뚜렷한(선명한)색상을 갖고있단 것을 의미.
반대로, 파스텔 색은 이 차가 적은 색을 말한다.
- 명도(Luminance) : 색의 밝고 어두운 정도.
(밝다,흰색----->어둡다,검정)
* 자체 명도(Brightness, Self-Luminance) : 스스로 빛을 발하는 물체의 명도
* 반사 명도(Lightness) : 반사된 빛을 발하는 물체의 명도
2) 컬러 매칭(Color Matching)
- R,G,B 세가지 색으로 조합하여 색 성분을 만드는 것.
- 그러나 R,G,B 컬러 매칭으로는 모든 자연색을 표현할 수 없다.
- CIE 가상 삼원색을 설정하여, 이 함수를 통해 자연색 표현가능
(2) 컬러모델
1) RGB 컬러 모델
- 우리눈에 가장 민감하게 반응 하는 세가지 색 R(630nm), G(530nm), B(450nm)만을 합성하여 색을 인식한다는 삼중 자극 이론에 따름.
- 이 세가지 색을 x, y, z축에 놓고, 가중치에 따라 색을 정의하는 것이 RGB 컬러모델
- RGB모델을 가산모델이라고도 한다. 삼원색을 더해 다른 색을 만들기 때문.
* 일반적인 컬러모니터는 RGB모델을 사용하여, 세가지 빛의 합성에 의해 표현한다.
그래서 사람이 인식할 수 있는 모든 색을 표현하기는 불가능
* 위 그림에서 육면체 정중앙을 중심으로 서루 마주 보는 색은 보색이다.(R,G,B 각각 C,M,Y)
2) CMY 컬러 모델
- RGB 모델은 빛의 합성에 의한 모델, CMY는 빛이 물체에 반사되었을 때의 색에 관한 모델
- 컬러프린터, 컬러 플로터 등 인쇄장비에 적용
- CMY를 사용한 빼기 계산으로 필요한 색을 만들어, 감산 모델이라고 한다.
- 빛의 3요소 r,g,b가 물체(cyan,magenta,yellow)에 흡수,반사되는 모습을 표현한 그림이다.(감산모델)
* 보색관계는 백색광(RGB)이 입사되었을 때 물체표면에서 보색은 흡수된다.(보색관계:RGB<->CMY)
(a) 백색광(RGB)는 물체(Magent)에서 보색인 G는 흡수, 나머지 R/B는 반사. R+B=M, Magenta로 표현
(b) 백색광(RGB)는 물체(M+C)에서 보색 R, G를 흡수, B를 반사하여 Blue로 표현
(c) 백색광(RGB)는 물체(M+C+Y)에서 보색 R+G+B를 모두 흡수하여 Black으로 표현
* RGB와 CMY의 결과는 대조적이다.
* CMY모델에서 K(Black)을 추가한 모델이 CMYK.
주로 인쇄시 사용. 회색 농도를 좀더 정밀하게 표현 가능하며, 검정잉크를 사용함으로 잉크의 양을 줄일 수 있다.
YUV컬러모델은 아래링크가 쉽게 정리되어있어 이해가 잘됐다.
http://blog.ggaman.com/965
참고)
https://blog.naver.com/startdomtt/10133124290
http://terms.naver.com/entry.nhn?docId=960339&cid=47310&categoryId=47310
'Software Development > Graphics' 카테고리의 다른 글
컴퓨터 그래픽스 이론 정리 - 정규좌표와 화면좌표 (0) | 2018.05.02 |
---|---|
컴퓨터 그래픽스 이론 정리 - 더블버퍼링(Double Buffering) (0) | 2018.04.28 |
게임을 움직이는 수학과 물리 4장 - 2차원 (0) | 2018.02.04 |
OpenGL SuperBilbe Chapter3, 파이프라인을 마치며.. (1) | 2018.01.27 |
OpenGL Super Bible 그래픽스 공부하기 - 3. 파이프라인 따라가기 - 5) 프래그먼트 쉐이더~프레임버퍼 (0) | 2018.01.27 |